SpielerInfo Stock

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 Leute


    Ich hab nach einiger zeit gemerkt das ich kein SpielerInfo stock
    habe ich würde gern eins haben. Aber ich weiß nicht wie das gehen soll
    kann mir einer seinen Stock schicken?


    Ich meine das man sowas kann z.B


    SpielerInfo[playerid][Adminlevel]....


    Hab ka wie das weiter geht kann mir das einer dazu schreiben weil
    ich find das einfacher so zu machen aber muss das erst mal lernen
    weil ich mache das immer mit SetPVarInt und GetPVarInt.


    Danke fürs Lesen.


    Mfg. CaptainHeroLP

  • Also muss ich das einfügen?


    new enum PlayerDaten
    {
    pAdminlevel,
    pFraktion
    pTest
    }
    und muss ich immer neue sachen da reinschreiben wie z.B Test da oben


    Muss ich dann [PlayerDaten][Test] machen ?
    könnt ihr mir auch sagen wie das weiter geht hier [PlayerDaten][Test] [Was kommt hier ? und wie geht das weiter?]

  • Okey hab ich eingefügt so jetzt kommen wir zum nächsten teil weil ich glaub
    ihr wisst nicht was ich genau mit SpielerInfo meine.


    Ich meine wie geht das weiter kann man weitere Variablen machen?


    1.SpielerInfo
    2.SpielerInfo[playerid]
    3.SpielerInfo[playerid][pAdminlevel]
    4.SpielerInfo[playerid][pAdminlevel] Wie geht das hier weiter? kann man weitere Variablen machen?


    Kann man auf if abfragen damit machen ? wie geht das alles? kann man auch ein ! davor setzen?wenn er zu niedriges
    Adminlevel hat sollte z.b ein Text returnt werden wie geht das?


    Aber trotzdem danke das ihr mir helfen wollt.

  • Also so wäre zb. eine Abfrage:


    Code
    if(SpielerInfo[playerid][pAdminlevel] >= 1)
    {
        SendClientMessage(playerid, -1, "Du bist ein Admin");
        // Also deine Sachen was du hier haben willst. 
    }
    else
    {
        SendClientMessage(playerid, -1, "Du bist kein Admin");
    }


    Gibt natürlich verschiedene Methoden aber das wäre jetzt zum Beispiel eine.

  • ocmd:kick(playerid,params[])
    {
    if(SpielerInfo[playerid][pAdminlevel] >= 1)
    new pID, reason[128],string[128];
    if(IsPlayerAdmin(pID))return SendClientMessage(playerid,Rot,"Du kannst diese Person nicht kicken");
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,Rot,"/kick [ID] [Grund]");
    SetPVarInt(playerid,"Kicks",GetPVarInt(playerid,"Kicks") +1);
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(Rot,string);
    Kick(pID);
    return 1;
    }


    Meine Errors :


    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1444) : error 003: declaration of a local variable must appear in a compound block
    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1444) : error 017: undefined symbol "pID"
    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1444) : warning 215: expression has no effect
    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1444) : error 001: expected token: ";", but found "]"
    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1444) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    Mein Enum das ich eingefügt habe .


    enum PlayerDaten
    {
    pAdminlevel,
    pFraktion,
    pTest
    }
    new SpielerInfo[MAX_PLAYERS][PlayerDaten];


    Was mache ich falsch?


    Wenn ich das hier rein mache [ ; ]


    Dann hab ich den fehler


    C:\Users\Özgür\Desktop\Neuer Ordner\gamemodes\Test.pwn(1443) : error 036: empty statement
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

  • Probiers mal so:


    mfg

  • Was ist Zeile 1444?
    Also in welcher Zeile kommt der Error?


    /edit
    So das müsste jetzt Funktionieren! :D


    Einmal editiert, zuletzt von eLiTe. ()

  • Zeile 1444 ist :


    new pID,reason[128],string[128];


    Ich hab es herraus gefunden es muss unter
    if(SpielerInfo[playerid][pAdminlevel] >= 1)
    stehen ka wieso .


    Noch eine kleine frage :


    was heißt was von den dingern > <


    > höher?
    < niedriger


    Ist das das richtig wenn nicht das kannst du mir es bitte
    richtig aufschreiben?


    und muss ich beim enum immer neu Createn?


    Woher weiß der enum was ich meine?


    Muss ich das bei SpielerSpeichern und LoadAccounts aufschrieben?


    Wie z.B das hier :


    SpielerInfo[playerid][pTest]=dini_Int(Spielerdatei,"Test");


    damit der Script weiß was ich meine?


    Ich denke mal schon :D


    Wie macht ihr diese Quelcode dinger? ich kann das nicht früher ging das mit

  • Ja das mit PWN geht im moment nicht das musste mit

    Code
    [code] [ /code]

    machen.
    Zu Laden & Speichern:


    Laden: SpielerInfo[playerid][pTest]=dini_Int(Spielerdatei,"Test");
    Speichern: dini_IntSet(Spielerdatei,"Test",SpielerInfo[playerid][pTest]);


    Dann deine andere Frage:

    Größer = '>'
    Größer oder Gleich = '>='
    Kleiner = '<'
    Kleiner oder Gleich = '<='
    Gleich = '=='