Einige Fragen zum Scripten....

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • hallo,


    bin wieder aktiv im scripten. aufgrund schulstress hatte ich einige wochen pause.


    so, ich stelle dann hier gleich ein paar fragen:




    1.


    bitte erklärt mir jemand wie das funktioniert:





    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: /ban [playerid] [grund]");
    return 1;
    }
    if(PlayerInfo[giveplayerid][pAdmin] > PlayerInfo[playerid][pAdmin])
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst diesen Spieler nicht bannen, da er ein höheres Adminlevel hat als du!");
    return 1;
    }




    was ist offset & idx??


    wo wendet man diese an und wie geht das?


    und was ist EOS??






    2. wie kann ich am besten einen acc-ban rückgängig machen?



    if(strcmp(cmd, "/entbannen", true) == 0)
    {
    if (PlayerInfo[playerid][pAdmin] >= 4)
    {
    GetPlayerName(playerid, sendername, sizeof(sendername));
    giveplayer = strtok(cmdtext, idx);
    if(!strlen(giveplayer))
    {
    SendClientMessage(playerid,COLOR_GRAD2,"/entbannen [Account Name] (Korrekte Schreibweise erforderlich)");
    return 1;
    }
    new acc[64], acc2[64], readstr[128];
    format(acc,sizeof(acc),"/Accounts/%s.ini",giveplayer);
    format(acc2,sizeof(acc2),"/Accounts/%s.backup",giveplayer);
    if(!fexist(acc))
    {
    format(string,sizeof(string)," Der Account von %s existiert nicht!",giveplayer);
    SendClientMessage(playerid,COLOR_GRAD2,string);
    return 1;
    }
    new File:account = fopen(acc,io_read);
    new File:backup = fopen(acc2,io_write);
    while(fread(account,readstr))
    {
    fwrite(backup,readstr);
    }
    fclose(backup);
    fclose(account);
    new File:banaccount = fopen(acc,io_write);
    fwrite(banaccount,"Ban=0\n");
    fclose(banaccount);
    format(string, 256, "AdmCmd: %s hat %s´s Account entbannt!",sendername, giveplayer);
    ABroadCast(COLOR_TUTBLAU,string,1);
    }
    return 1;
    }



    das geht i-wie nicht.... (ist übernommen)






    3. noch zu einem system das die coords beim ausloggen speichert.


    wie könnte ich das etwa anstellen?


    mein script arbeitet nicht mit DINI...


    leider bin ich noch kein profi und das sind doch etwas schwierigere sachen...




    4. könnte jemand bitte mal für noobs einen anreiz dazu geben, wie man ein anticheat einbaut. hab es mit fertigen versucht aber es


    gab etliche errors....




    und 5. bitte auch für noobs erklären wie man ein wantedsys machen KÖNNTE. nicht mit den 6 sterne aus singleplayer sondern wo die wanteds zb bis 99 gehn können oder so....






    wär echt super wenn sich jemand für eine dieser fragen zeit nehmen könnte und will :) :)


    hab die sufu benutzt aber irgendwie werde ich aus den meisten threads nicht wirklich schlauer






    mfg jackpot :D

  • Zum ersten Code will ich mich mal nicht äußern. Was den Bann angeht, wieso machst du bei einem Bann nicht einfach Kick + Runter von der Whitelist (sofern du eine hast)? Mach ich nicht anderst, da der Ban() Befehl über SA:MP die IP usw. in die ban.log speichert. Wenn du dann einen Bann rückgängig machen möchtest, mußt du die ban.log mit einem Editor bearbeiten und deinen SA:MP Server komplett neustarten (Kein GMX!).

  • Ich kann dir nur beim entbannen helfen ^^


    1. -> Geh in dein SA-MP Ordner such da nach der Datei samp.ban!


    oder


    2. -> Geh in dein SA-MP Ordner danach Scriptfiles da die datei ban.log da kannst du entbannen


    Zu Nummer 1:
    samp.ban verwendet oft JunkBuster falls du JunkBuster hast und einer von da gebannt wird muss du Schritt Nummer 1 tun!


    Zu Nummer 2:
    Falls du oder ein anderer Admin in INGAME /ban [ID] [Reason] eingegeben hat dann musst du Schritt 2 befolgen!


    Falls du meinst wie man ein in INGAME entbannt weiß ich selber nicht mehr ^^


    Gruß


    ProScripter

  • joa ok.


    danke euch schonmal fürs herposten. :thumbup:


    ich arbeite daran, junkbuster ins gamemode einzubauen...



    naja werds schon irgendwie hinbekommen.



    also danke :D




    mfg

  • Zum ersten Code will ich mich mal nicht äußern. Was den Bann angeht, wieso machst du bei einem Bann nicht einfach Kick + Runter von der Whitelist (sofern du eine hast)? Mach ich nicht anderst, da der Ban() Befehl über SA:MP die IP usw. in die ban.log speichert. Wenn du dann einen Bann rückgängig machen möchtest, mußt du die ban.log mit einem Editor bearbeiten und deinen SA:MP Server komplett neustarten (Kein GMX!).

    Was erzählst du für eine Kaka ?
    Mann kann mit einem Rcon Befehl die ban log neuladen .... Und dann kann er drauf ... Und nicht den ganzen Server neustarten :|