Beiträge von Kasakow

    Was eventuell hilfreich sein würde ist wenn du auch abfragen würdest ob pID keine INVALID_PLAYER_ID ist


    if(pID==INVALID_PLAYER_ID)return Aktion;


    Und dann noch wieso nimmst du 2 strings ?


    Du kannst das ganze auch so machen:


    format(string,sizeof(string),"Ein Admin hat dein Geld auf %i EUR gesetzt.",cash);
    SendClientMessage(pID,COLOR_DGREEN,string);
    format(string(string),"Du hast das Geld von %s auf %i EUR gesetzt.",SpielerName(pID),cash);
    SendClientMessage(playerid,COLOR_DGREEN,string);


    Weil ich sehe auch keinen direkten Fehler warum der Fail auftritt
    Was ich vielmehr denke ist das du es dachtest das es gefailt hatte da du die String reihenfolge falsch gesetzt hast ;) Habe sie dir oben Berichtigt:


    format(n1,sizeof(n1),"Ein Admin hat dein Geld auf %i EUR gesetzt.",cash);
    format(n2,sizeof(n2),"Du hast das Geld von %s auf %i EUR gesetzt.",SpielerName(pID),cash);
    SendClientMessage(playerid,COLOR_DGREEN,n1);
    SendClientMessage(pID,COLOR_DGREEN,n2);


    n1=Ein Admin hat dein Geld auf %i Eur gesetzt aber du lässt das an den admin senden ;)
    n2=Du hast das Geld von %s auf %i EUR gesetzt. Das lässt du an die pID senden :)

    Failed (plugins/mysql.so: symbol __cxa_pure_virtual, version libmysqlclient_16 not defined in file libmysqlclient_r.so.16 with link time reference)
    Hey leute wie man in der Überschrift schon sehen kann fehlt mir die libmysqlclientversion
    Hätte die jemand für mich?

    public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
    {
    if(weaponid != 38)
    {
    if((gettime() - shotTime[playerid]) < 1)
    {
    Shot[playerid]+=1;
    }
    else
    {
    Shot[playerid]=0;
    }
    if(Shot[playerid] > 10)
    {
    new string[128];
    format(string, sizeof(string), "Anti - Cheat: %s wurde vom Anti - Cheat System gebannt!, Grund: RapidFire", GetName(playerid));
    SendClientMessageToAll(HellRot, string);
    Ban_Ex(playerid);
    }
    shotTime[playerid] = gettime();
    }
    return 1;
    }


    Dieses System ist nicht Funktionstüchtig und ich weis nicht wieso ?

    Wie Beavis schon sagte ist gpci ein HDD Ban.
    Er speichert deinen Computer Benutznamen ist eine Table, File wie manns nimmt.
    Die werden dann Gespeichert.
    Jeder der dann mit dem gleichen PC BenutzerNamen reinkommt ist gebannt!
    Du könntest entweder einen IPBAN von SAMP nehmen oder einen eigenen machen.


    MySQL INFO:
    Du legst eine neue Table an die nennt sich.. IP oder so
    Du lässt beim ipBAN mit


    GetPlayerIp(playerid, variable, size);
    Die IP in eine Variable setzen.
    Nehmen wir mal an du hast das Plugin R5
    :


    new string[16],IP[16];
    GetPlayerIp(userid, IP, sizeof(IP));
    format(string, 16, "%s",IP);
    Mysql_SetInt(...);


    Bei Dini würde das ganze anders ablaufen:


    new string[128],IP[16];
    GetPlayerIp(userid, IP, sizeof(IP));
    format(string, sizeof(string), "/ORDNER/%s.ini",IP);
    dini_Create(string);


    Hoffe konnte helfen :thumbup:

    COMMAND:admins(playerid,params[])
    {
    if(IsPlayerConnected(playerid))
    {
    new string[128];
    SCM(playerid, gruen, "Admins Online:");
    switch(SpielerInfo[playerid][Adminlevel])
    {
    case 1: {format(string,sizeof(string),"Supporter: %s",SpielerName(playerid));}
    case 2: {format(string,sizeof(string),"Admin: %s",SpielerName(playerid));}
    case 3: {format(string,sizeof(string),"Head Admin: %s",SpielerName(playerid));}
    case 4: {format(string,sizeof(string),"Serverleiter: %s",SpielerName(playerid));}
    }
    SCM(playerid, grau, string);
    }
    return 1;
    }


    zu


    COMMAND:admins(playerid,params[])
    {
    for(new i = 0; i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    new string[128];
    SCM(playerid, gruen, "Admins Online:");
    switch(SpielerInfo[i][Adminlevel])
    {
    case 1: {format(string,sizeof(string),"Supporter: %s",SpielerName(i));}
    case 2: {format(string,sizeof(string),"Admin: %s",SpielerName(i));}
    case 3: {format(string,sizeof(string),"Head Admin: %s",SpielerName(i));}
    case 4: {format(string,sizeof(string),"Serverleiter: %s",SpielerName(i));}
    }
    SCM(playerid, grau, string);
    }
    }
    return 1;
    }

    Hallo lieber user, ich werde dir das mal erklären.


    Du kannst entweder bei OnPlayerUpdate jede Millisekunde updaten lassen oder per SetTimer/Ex machen.


    Du kannst den Textdraw einen neuen String mit der Funktion TextDrawSetString setzen lassen und es somit updaten.


    Und wenn du herausfragen möchtest wie man sie anklicken kann das kannst du hier machen:


    Link


    Ich erstelle dir mal einen Quellcode:


    SelectTextDraw(Textraw, Hovorcolor); // Textdraw wie es heißt in dem Fall Textdraw1) Hovorcolor welche Farbe drauf erscheine soll wenn man drüberstreicht.


    SelectTextDraw(Textdraw1, -1);


    Dann gehst unter die Oben genannte Funktion


    :


    public OnPlayerClickTextDraw(playerid, Text:clickedid)
    {
    if(clickedid == Textdraw1)
    {
    TextDrawSetString(Textdraw1, "");
    }
    return 1;
    }


    Hoffe konnte dir Helfen

    Naja du machst das schon mal Falsch.
    Du erstellt einen Dialog und dann machst du das ganze mit ner Menu abfrage


    Ich erstelle dir hier mal einen Quellcode:


    Unter das Callback
    OnPlayerDialogResponse
    if(dialogid == Land
    {
    if(response == 0)return 1;
    if(RegistrationStep[playerid] == 3)
    {
    if(listitem == 0)
    {
    PlayerInfo[playerid][pOrigin] = 1;
    SendClientMessage(playerid, COLOR_WHITE, "Ok, du kommst also aus Deutschland.");
    ShowPlayerDialog(playerid,DIALOG_Tutorial,DIALOG_STYLE_MSGBOX,"Tutorial"," Es folgt das Tutorial \n Du kannst das Tutorial überspringen. Es wird aber dringlichst empfohlen das Tutorial durchzulesen. \n Willst du das Tutorial durchlesen?","Ja","Nein");
    RegistrationStep[playerid] = 0;
    TutTime[playerid] = 1;
    }
    else if(listitem == 1)
    {
    PlayerInfo[playerid][pOrigin] = 2;
    SendClientMessage(playerid, COLOR_WHITE, "Ok, du kommst also aus NRW.");
    ShowPlayerDialog(playerid,DIALOG_Tutorial,DIALOG_STYLE_MSGBOX,"Tutorial"," Es folgt das Tutorial \n Du kannst das Tutorial überspringen. Es wird aber dringlichst empfohlen das Tutorial durchzulesen. \n Willst du das Tutorial durchlesen?","Ja","Nein");
    RegistrationStep[playerid] = 0;
    TutTime[playerid] = 1;
    }
    else if(listitem == 2)
    {
    PlayerInfo[playerid][pOrigin] = 3;
    SendClientMessage(playerid, COLOR_WHITE, "Ok, du kommst also aus den Ausland.");
    ShowPlayerDialog(playerid,DIALOG_Tutorial,DIALOG_STYLE_MSGBOX,"Tutorial"," Es folgt das Tutorial \n Du kannst das Tutorial überspringen. Es wird aber dringlichst empfohlen das Tutorial durchzulesen. \n Willst du das Tutorial durchlesen?","Ja","Nein");
    RegistrationStep[playerid] = 0;
    TutTime[playerid] = 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_WHITE, "Woher kommst du? (Wähle das richtige aus mithilfe der Leertaste aus!)");
    }
    }
    }