Beiträge von Mayo

    ganz oben :
    new Text:txtSprite1;


    public OnPlayerConnect(playerid)
    {
    txtSprite1 = TextDrawCreate(0.0, 0.0, "loadsc9:loadsc9"); // hier kannst du das bild ändern dazu musst du die txd aus lesen und dann so eintragen "DATEINAME:BILDNAME IN DER DATEI" <- ist bei den loadscreens der gleiche.(hier ist es der macker mit dem Gasbrenner
    TextDrawFont(txtSprite1, 4); // der font ist 4
    TextDrawColor(txtSprite1,0xFFFFFFFF);//die farbe
    TextDrawTextSize(txtSprite1,700.0,512.0); //hier ist die größen anpassung. Bei mir passt das ;)
    TextDrawShowForPlayer(playerid,txtSprite1);/hier wird der textdraw gezeigt
    }


    Hierdas tool zum auslesen: TXD TOOL 4.5
    Die TXD sind im GTA ordner unter models und dann txd. Eigentlich musst du bei:


    txtSprite1 = TextDrawCreate(0.0, 0.0, "loadsc9:loadsc9");


    nur die zahl hinter loadsc ändern auf beiden seiten muss es aber die gleiche sein.
    Die zahlen gehen von 0-14 <-das sind alle 15 loadscreens ;) such dir das beste raus ;)


    Und jenachdem was du für ein login system hast musst du das einbauen.
    Ich habe es so:
    Das ist jetzt bei OnDialogResponse
    if(dialogid==DIALOG_LOGIN)
    {
    if(response==0)
    {
    SendClientMessage(playerid,0xFF0A00FF,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,0xFF0A00FF,"Das Passwort ist nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Gib dein Passwort ein um dich einzuloggen.","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    TextDrawDestroy(txtSprite1);//hier wird er zerstört
    return 1;
    }
    }
    }


    und bei register:


    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,0xFF0A00FF,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,0xFF0A00FF,"Das Passwort ist nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein gewünschtes Passwort ein um dich zu Registrieren.","Registrieren","Abbrechen");
    SendClientMessage(playerid,0xFF0A00FF,"Server verarbeitet dein Daten...");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    TextDrawDestroy(txtSprite1);//hier wird er zerstört


    return 1;
    }
    }
    }


    Also du musst nur nach dem login dialog da rein machen:


    TextDrawDestroy(txtSprite1);


    Viel spaß damit

    Hallo,
    ich hab mich mal versucht an etwas kleinem :D


    Hier ein Bild:


    Also wenn jemand AFK geht sagt er durch die ganze Welt .. ist AFK gegangen. Genauso wie bei /back.
    Wenn ihr wollt könnt ihr das ja ändern ;)


    Drück mich Feste
    Pastebin


    Viel Spaß damit.
    Bitte bewerten.
    //edit
    PS: Geht nur mit 0.3d ;) Ihr könnt damit machen was ihr wollt.
    + Pastbin


    Danke an InternetInk aka Benjamin

    OnGameModeInit


    SetTimer("Wetter",900000, 1);
    SetTimer("SetWetter",1000, 1);
    SetTimer("AutoNaricht",600000,1);
    SetTimer("ServerMinute",60000,1);
    T1 = SetTimer("Servername1",5000,1);
    T2 = SetTimer("Servername2",10000,0);
    T3 = SetTimer("Servername3",15000,0);


    OnPlayerspawn hab ich was:
    TutTime[playerid] = 1;
    TutTimer[playerid] = SetTimerEx("Tutorial",800,1,"i",playerid);


    OnPlayerSpawn
    SetTimerEx("tot",60000,0,"i",playerid);


    if(strcmp(cmdtext, "/Drivein", true) == 0)
    {
    if(IsPlayerConnected(playerid)) // Der Spieler muss eingeloggt sein.
    {
    if(IsAtDrivein(playerid)) // Der Spieler muss an einem DriveIn sein.
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE," Willkommen am Drivein! Ihre bestellung wird aufgenommen!");
    SendClientMessage(playerid, COLOR_LIGHTBLUE," Bitte warten Sie. Ihr Essen wird zubereitet.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE," Bitte haben Sie ein wenig Geduld.");
    SetTimerEx("Drivein",7000,0,"i",playerid); // Timer wielang der Spieler warten muss. *
    TogglePlayerControllable(playerid, 0); // Der Spieler wird unfreezt.
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du bist an keinem Drivein !"); // Meldung wenn man an keinem Drivein Steht.
    return 1;
    }
    }
    }


    ocmd:robbank(playerid,params[])
    {
    if(IstSpielerInFraktion(playerid,1)|| IstSpielerInFraktion(playerid,2)||IstSpielerInFraktion(playerid,3))
    {
    SendClientMessage(playerid,ROT,"Als Staatsbeamter darfst du nicht die Bank ausrauben!");
    }
    else
    if(robbed[playerid] == 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,15,2309.4956,-8.3965,26.7422)) return SendClientMessage(playerid,COLOR_GREY,"Du befindest dich nicht in der 'LS' Bank!");
    {
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"* Du raubst grad die Bank!");
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"* Die Polizei wurde Alarmiert!");
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"* um den Ausraub Erfolgreich abzuschließen bleibe in der Bank für 1 min.!");
    SetTimerEx("Robbing",1,0,"i",playerid);
    SetPVarInt(playerid,"BankAusrauben",1);
    GivePlayerMoney(playerid, 50000);
    SetTimer("ausgeraubt",1800000,false);
    SetPlayerWantedLevel(playerid,4);
    robbed[playerid] = 1;
    for(new i= 0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IstSpielerInFraktion(playerid,1)|| IstSpielerInFraktion(playerid,2)||IstSpielerInFraktion(playerid,3))
    {
    SendClientMessage(i,ROT, "HQ: An alle Einheiten, die Bank von LS wird überfallen!");
    return 1;
    }
    }
    }
    }
    }
    else
    if(robbed[playerid] == 1)
    {
    SendClientMessage(playerid,COLOR_GREY,"Die Bank wurde vor kurzem ausgeraubt. Warte 30 min.");
    }
    return 1;
    }


    public OnPlayerRequestSpawn(playerid)
    {
    SendClientMessage(playerid,Rot,"Spawn drücken bringt nichts :P");
    SetTimerEx("LoginWait", 3500, false, "i", playerid);
    return 1;
    }


    public clock(){
    new Text:Clock;
    new hour,minute,second;
    new string[10];
    gettime(hour,minute,second);
    format(string, sizeof string, "%s%d:%s%d:%s%d", (hour < 10) ? ("0") : (""), hour, (minute < 10) ? ("0") : (""), minute, (second < 10) ? ("0") : (""), second);
    TextDrawHideForAll(Clock);
    Clock = TextDrawCreate(542.0, 24.0, string); // Koordinaten, wo die Uhr angezeigt wird
    TextDrawLetterSize(Clock, 0.6, 1.8);
    TextDrawFont(Clock, 3); // Uhrschrift
    TextDrawSetOutline(Clock, 2);
    TextDrawShowForAll(Clock);
    SetTimer("clock",1000,0);
    return 1;
    }


    public LoginWait(playerid)
    {
    new pName [MAX_PLAYER_NAME];
    new string [48];
    GetPlayerName(playerid, pName, sizeof(pName) ) ;
    SendClientMessage(playerid, COLOR_GRAD1,"Dein Account wurde gefunden du kannst dich einlogen/registrieren");
    SendClientMessage(playerid, COLOR_GRAD1,"Viel Spaß weiterhin auf [MW]Mayo World");
    format(string, sizeof(string), "%s hat den Server betreten ", pName) ;
    SendClientMessageToAll (0xAAAAAAAA, string);
    new Spielerdatei[64];
    Ping1[playerid] = 0;
    SetTimerEx("Ping2", 1000*10, false, "%d", playerid);
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    if(dini_Exists(Spielerdatei))
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Gib dein Passwort ein um dich einzuloggen.","Login","Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein gewünschtes Passwort ein um dich zu Registrieren.","Registrieren","Abbrechen");
    }
    }


    public Servername1()
    {
    SendRconCommand("hostname [MW]Mayo World Reallife v0.1");
    KillTimer(T2);
    KillTimer(T3);
    KillTimer(T1);
    SetTimer("Servername2",5000,0);
    }
    public Servername2()
    {
    SendRconCommand("hostname Jetzt Startbonus sichern !!!");
    KillTimer(T1);
    KillTimer(T2);
    SetTimer("Servername3",5000,0);
    }
    public Servername3()
    {
    SendRconCommand("hostname Wird sind in der beta Phase !!!");
    KillTimer(T1);
    KillTimer(T3);
    SetTimer("Servername1",5000,0);
    }


    Ich glaube das war alles

    Hallo,
    ich erstelle ein Textdraw kann ihn aber nicht zerstören..


    if(strcmp(cmdtext, "/afk", true) == 0)
    {
    new pName[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
    format(string, sizeof(string), "%s ist AFK gegangen.", pName);
    SendClientMessageToAll(0xFFFF00AA, string);
    TogglePlayerControllable(playerid, 0);
    new Text:txtSprite1;
    txtSprite1 = TextDrawCreate(0.0, 0.0, "loadsc8:loadsc8"); // Text is txdfile:texture
    TextDrawFont(txtSprite1, 4); // Font ID 4 is the sprite draw font
    TextDrawColor(txtSprite1,0xFFFFFFFF);
    TextDrawTextSize(txtSprite1,700.0,512.0); // Text size is the Width:Height
    TextDrawShowForPlayer(playerid,txtSprite1);
    }
    if(strcmp(cmdtext, "/back", true) == 0)
    {
    new pName[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
    format(string, sizeof(string), "%s ist nun wieder zurück.", pName);
    SendClientMessageToAll(0xFFFF00AA, string);
    TogglePlayerControllable(playerid, 1);
    SetPlayerHealth(playerid, 100);
    TextDrawDestroy(txtSprite1[playerid]);//laut wiki.sa-mp.com ist das richtig aber es geht nicht
    return 1;
    }

    hallo,
    ich wollt fragen wie ich ein textdraw wieder zerstöre also beende?
    Hier erstele ich den:
    if(strcmp(cmdtext, "/afk", true) == 0)
    {
    new pName[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
    format(string, sizeof(string), "%s ist AFK gegangen.", pName);
    SendClientMessageToAll(0xFFFF00AA, string);
    TogglePlayerControllable(playerid, 0);
    new Text:txtSprite1;
    txtSprite1 = TextDrawCreate(0.0, 0.0, "loadsc8:loadsc8"); // Text is txdfile:texture
    TextDrawFont(txtSprite1, 4); // Font ID 4 is the sprite draw font
    TextDrawColor(txtSprite1,0xFFFFFFFF);
    TextDrawTextSize(txtSprite1,700.0,512.0); // Text size is the Width:Height
    TextDrawShowForPlayer(playerid,txtSprite1);
    }


    hier will ich den beenden:
    if(strcmp(cmdtext, "/back", true) == 0)
    {
    new pName[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
    format(string, sizeof(string), "%s ist nun wieder zurück.", pName);
    SendClientMessageToAll(0xFFFF00AA, string);
    TogglePlayerControllable(playerid, 1);
    SetPlayerHealth(playerid, 100);
    DestroyTextDraw(playerid,txtSprite1);//wie geht das? das ist ja falsch..
    return 1;
    }

    Hallo ich hab ein problem mit dem member system.
    Also ich erstelle das hier:


    //ist member
    stock IstSpielerMember(playerid, mfraktionsid)
    {
    if(sSpieler[playerid][Member] == mfraktionsid) return 1;
    return 0;
    }


    Wenn ich das so Mache geht alles perfekt:
    if(IstSpielerMember(playerid, 1))//das hier läuft perfekt
    {
    SetPlayerPos(playerid,210.5042,145.2128,1003.0234);
    SetPlayerInterior(playerid,3);
    SetPlayerSkin(playerid,280);
    }


    Aber wenn so nicht warum?:


    if(strcmp(cmdtext,"/lspdauf",true)==0)
    {
    if(!IstSpielerInFraktion(playerid, 1) || !IstSpielerMember(playerid, 1))//also das hier nicht warum?? Da geht nur wenn man Leader ist(IstSpielerInFraktion ist Leader sein)
    {
    SendClientMessage(playerid, ROT, "Du bist nicht beim LSPD!");
    return 1;
    }
    else
    MoveObject(lspdtor,1587.72656250,-1637.95605469,-18.49475479,5);
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast das Tor geöffnet.");
    return 1;
    }

    So ich bins wieder ;)
    Also ich lasse meinen Dialog hier ablaufen:


    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,0xFF0A00FF,"Du hast den Vorgang abgebrochen.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,0xFF0A00FF,"Das Passwort ist nicht lang genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein gewünschtes Passwort ein um dich zu Registrieren.","Registrieren","Abbrechen");
    SendClientMessage(playerid,0xFF0A00FF,"Server verarbeitet dein Daten...");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    {
    ShowPlayerDialog(playerid,DIALOG_GEBT,DIALOG_STYLE_LIST,"Wann bist du geboren?","1\r\n2\r\n3\r\n4\r\n5\r\n6\r\n7\r\n8\r\n\9\r\n10\r\n\11\r\n12\r\n13\r\n14\r\n15\r\n16\r\n17\r\n18\r\n19\r\n20\r\n21\r\n\22\r\n23\r\n24\r\n25\r\n26\r\n27\r\n28\29\r\n30\r\n31\r\n","Okay","Abrechen");


    }


    return 1;
    }
    }
    }


    Das funktioniert auch den ruft er danach auf.
    Nur wenn ich was auswähle aus der List geht garnichts.
    Nur beim abrechen funktionierts..


    if(dialogid==DIALOG_GEBT)
    {
    if(response==0)
    {
    SendClientMessage(playerid,0xFF0A00FF,"Du hast den Vorgang abgebrochen!");
    Kick(playerid);
    return 1;
    }
    if(listitem==0)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==1)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==2)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==3)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==4)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==5)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==6)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    if(listitem==7)
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    return 1;
    }
    }

    Hallo,
    ich bins es mal wieder.
    Ich habe da mal ne frage wie lasse ich diese Dialoge nacheinander ablaufen?
    Bei mir öffnet sich dann nur der lezte..


    {
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein gewünschtes Passwort ein um dich zu Registrieren.","Registrieren","Abbrechen");
    }
    {
    ShowPlayerDialog(playerid,DIALOG_GEBT,DIALOG_STYLE_LIST,"Wann bist du geboren?","1\r\n2\r\n3\r\n4\r\n5\r\n6\r\n7\r\n8\r\n\9\r\n10\r\n\11\r\n12\r\n13\r\n14\r\n15\r\n16\r\n17\r\n18\r\n19\r\n20\r\n21\r\n\22\r\n23\r\n24\r\n25\r\n26\r\n27\r\n28\29\r\n30\r\n31\r\n","Okay","Abrechen");
    }
    {
    ShowPlayerDialog(playerid,DIALOG_GEBM,DIALOG_STYLE_LIST,"Wann bist du geboren?","Januar\r\nFebruar\r\nMärz\r\nApril\r\nMai\r\nJuni\r\nJuli\r\nAugust\r\nSeptember\r\nOktober\r\nNovember\r\nDezember\r\n","Okay","Abrechen");
    }
    {
    ShowPlayerDialog(playerid,DIALOG_GEBJ,DIALOG_STYLE_LIST,"Wann bist du geboren?","'90\r\n'91\r\n'92\r\n'94\r\n'95\r\n'96\r\n'97\r\n'98\r\n'99\r\n","Okay","Abrechen");
    }


    PS: Nicht wunder über die Dialoge ;)