Beiträge von PsyDom

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_LOGIN) //Wenn der Dialog-Login aufgerufen wird
    {
    if(response==0) //Falls er auf Abbrechen drückt, dann
    {
    SendClientMessage(playerid,ROT,"Du hast den Login Vorgang abgebrochen und wirst deshalb vom Server gekickt!"); //Nachricht an ihn
    Kick(playerid); //Er wird gekickt
    return 1;
    }
    if(response==1) //Falls er aber auf Login drückt, dann...
    {
    if(!strlen(inputtext)) //Hier prüft man ob er überhaupt was eingegeben hat, sonst müsste er ja nichts eingeben und würde sich einloggen koennen...
    {
    SendClientMessage(playerid,ROT,"Dein angegebenes Passwort war nicht lange genug!"); //Nachricht
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login Vorgang","Dein Account wurde in unserer Datenbank gefunden!\nBitte gib nun dein Passwort ein! ","Login", "Abbrechen"); //Dialog erneut zeigen
    return 1;
    }
    else
    {
    Login(playerid,MD5_Hash(inputtext)); //Falls es aber was eingegeben wurde wird der Stock Login aufgerufen und ausgeführt.. MD5_Hash bedeutet dass das Passwort nicht wortwörtlich in die Spielerdatei gesetzt wird sondern als String und dann wieder ins richtige umformatiert wird. So schützt man eueren Server vor Hackern, weil Sie dann das PW von diesen nicht wissen...
    return 1;
    }
    }
    }
    if(dialogid==DIALOG_REGISTER) //Falls der DIALOG_REGISTER aufgerufen wird
    {
    if(response==0) //Falls er auf abrrechen drückt..
    {
    SendClientMessage(playerid,ROT,"Du hast den Registrierungs Vorgang abgebrochen und wirst deshalb vom Server gekickt!"); //Nachricht
    Kick(playerid); //WIrd gekickt
    return 1;
    }
    if(response==1)
    {
    if(!strlen(inputtext)) //Überprüft ob was eingegeben wird...
    {
    SendClientMessage(playerid,GRÜN,"Dein eingegebenes Passwort war nicht lang genug!"); //Wenn er wieder nichts eingibt
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrierung","Willkommen auf meinem Server\n bitte gib nun dein gewünschtes Passwort ein","Register","Abbrechen"); //Dann Dialog erneut anzeigen....
    return 1;
    }
    else //Falls aber was eingegeben wurde , dann....
    {
    Register(playerid,MD5_Hash(inputtext)); //Wir die Funktion Register von Vorhin aufgerufen und ausgeführt und das PW wird erneut gehasht...
    return 1;
    }
    }
    }
    //Polizei Shop
    if(dialogid == ShopDialog )
    {
    if(response == 0)
    {
    return 1;
    }
    if(response == 1)
    {
    if(listitem == 0)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Schutzweste gekauft!");
    SetPlayerArmour(playerid,100);
    GivePlayerMoney(playerid,-500);
    return 1;


    }
    if(listitem == 1)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir Rauchgranaten gekauft!");
    GivePlayerWeapon(playerid,17,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem == 2)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine AK47 gekauft!");
    GivePlayerWeapon(playerid,30,2000);
    GivePlayerMoney(playerid,-1500);
    return 1;
    }
    if(listitem == 3)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine SMG gekauft!");
    GivePlayerWeapon(playerid,29,2000);
    GivePlayerMoney(playerid,-1200);
    return 1;
    }
    if(listitem == 4)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Deagle gekauft!");
    GivePlayerWeapon(playerid,24,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem == 5)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Schrotflinte gekauft!");
    GivePlayerWeapon(playerid,25,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem ==6 )
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Sniper gekauft!");
    GivePlayerWeapon(playerid,34,2000);
    GivePlayerMoney(playerid,-1500);
    return 1;
    }
    }
    }
    //Mafia Shop
    if(dialogid == KaufenDialog )
    {
    if(response == 0)
    {
    return 1;
    }
    if(response == 1)
    {
    if(listitem == 0)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Schutzweste gekauft!");
    SetPlayerArmour(playerid,100);
    GivePlayerMoney(playerid,-500);
    return 1;


    }
    if(listitem == 1)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir Rauchgranaten gekauft!");
    GivePlayerWeapon(playerid,17,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem == 2)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine M4 gekauft!");
    GivePlayerWeapon(playerid,31,2000);
    GivePlayerMoney(playerid,-1500);
    return 1;
    }
    if(listitem == 3)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine SMG gekauft!");
    GivePlayerWeapon(playerid,29,2000);
    GivePlayerMoney(playerid,-1200);
    return 1;
    }
    if(listitem == 4)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Deagle gekauft!");
    GivePlayerWeapon(playerid,24,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem == 5)
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Schrotflinte gekauft!");
    GivePlayerWeapon(playerid,25,2000);
    GivePlayerMoney(playerid,-1000);
    return 1;
    }
    if(listitem ==6 )
    {
    SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir eine Sniper gekauft!");
    GivePlayerWeapon(playerid,34,2000);
    GivePlayerMoney(playerid,-1500);
    return 1;
    }
    }
    }
    return 1;
    }

    if (strcmp("/help", cmdtext, true, 10) == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_HILFE,DIALOG_STYLE_MSGBOX,"Hilfe","Ich bin die Hilfe!","Fertig","");
    return 1;
    }


    Das in das


    if (strcmp("/help", cmdtext, true, 10) == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_HILFE,DIALOG_STYLE_LIST,"Hilfe","Hilfe1\nHilfe2\nHilfe3\nHilfe4\nusw","helfen","Abbrechen");
    return 1;
    }



    Unter,


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])


    if(dialogid == DIALOG_HILFE)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Vorgang abgebrochen");
    return 1;
    }
    if(listitem == 0)//Hilfe1
    {
    SendClientMessage(playerid,FARBE,"Hilfe1 dein Text");
    }
    if(listitem == 1)//Hilfe2
    {
    SendClientMessage(playerid,FARBWE,"Hilfe2 Text etc...");
    }
    //und Immer so weiter
    return 1;
    }

    die abfrage "IsPlayerInFrakt" ein stock machen mom hier,


    stock IsPlayerInFrakt(playerid,fraktname)
    {
    if(GetPVarInt(playerid,"Fraktion")==fraktname)return 1;
    return 0;
    }


    (fraktname =! ID von der Fraktion)


    & dann kannste das IsPlayerInFrakt überall verwenden für /befehle, oder /tore, oder sonstiges ;)

    if(IsPlayerInFrakt(playerid,0))//Zivi
    {
    SetPlayerPos(playerid,-204.2945,1212.3733,19.7422);
    return 1;
    }
    if(IsPlayerInFrakt(playerid,1))//LVPD
    {
    SetPlayerPos(playerid,219.4363,168.7916,1003.0234);
    SetPlayerInterior(playerid,3);
    SetPlayerHealth(playerid,100.0);
    SetPlayerSkin(playerid,283);
    return 1;
    }
    if(IsPlayerInFrakt(playerid,2))//LCN
    {
    SetPlayerPos(playerid,234.5432,34.565,345.432);
    SetPlayerHealth(playerid,100.0);
    GivePlayerWeapon(playerid,21,300);
    return 1;
    }


    Also ich habs so gemacht ich finde das so Übersichtlicher, und man kann schneller Ändern & verbessern und so :)

    Ganz oben bei den #defines:
    #define pkoords new Float:x,Float:y,Float:z;\
    GetPlayerPos(playerid,x,y,z);





    Unter OnPlayerText



    pkoords
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerInRangeOfPoint(i,20.0,x,y,z))
    {
    new string[128],pname[500];
    GetPlayerName(playerid,pname,sizeof pname);
    format(string,sizeof string,"%s sagt: %s",pname,text);
    SendClientMessage(i,GRAU,string);
    }
    }