Beiträge von [MM]Marco

    heyho,


    Ist es möglich ein enum mit einer Abfrage zu erstellen, und wenn ja was ist an meinem falsch :S


    new Kleidung[][KleidungsInfo]=
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(GetPVarInt(i,"Geschlecht")==0)
    {"~b~Nutze die ~y~Linke ~b~Pfeiltaste",0},
    {"",27},
    {"",50},
    {"",80},
    {"",264},
    {"",13}
    if(GetPVarInt(i,"Geschlecht")==1)
    {
    {"~b~Nutze die ~y~Linke ~b~Pfeiltaste",0},
    {"",27},
    {"",50},
    {"",80},
    {"",264},
    {"",13}


    };

    Sehr schöne Map :)


    9,5/10 weil Du den Torbogen noch ein wenig besser an die Umgebung anpassen könntest, sprich dasDach an Dach und den ganzen ein wenig mehr in die Mitte, sofern das natürlich nur möglich wäre ;)

    NAbend,


    Ich weiß, man kann im wiki gucken, was ich auch schon gemacht habe,


    aber ich finde nicht heraus, wie pfeiltaste link und pfeiltaste rechts heißt,


    wäre jemand der es weiß so gütig mir das zu verraten :)


    LG

    Einen schönen (bei mir) sonnigen Nachmittag,



    ich habe ein Problem,


    Wie kann ich einen eigene Skinauswahl erstellen, die zB Im Binco ist, sprich wenn man /kleidung eingibt in eine neue skinauswahl kommt und mit den pfeiltasten rechts und links zwischen den skins wechseln und mit enter den skin bestätigen kann.
    ich kenn mich gar nicht mit Onplayerkeystate aus... könnte mir jemand dabei helfen?


    LG

    Okay,
    ich habe das geändert.
    Geschlecht steht in der Spielerdatei, ich habe aber das ganze vorsichtshalber unter stock register nochmals so abgespeichert:


    dini_IntSet(Spielerdatei, "SkinID",240);


    Wird aber immer noch der CJ Skin gesetzt ;(


    //EDIT:


    Ich habe das ganze jetzt noch einmal anders versucht:


    Ich eine neue .txt datei erstellet wo der skin für jeden spieler einzeln ausgelesen werden soll.


    So sieht das ganze aus:
    Bei der Registrierung wird dem Spieler der Skin gesetzt:
    stock CreateSkin(playerid)
    {


    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    new skindatei[64];
    format(skindatei,sizeof(skindatei),"/Skins/%s.txt",name);
    if(!fexist(skindatei)) // wenn diese Datei noch nicht existiert
    {
    dini_Create(skindatei); // dann erstellen wir sie
    dini_IntSet(skindatei,"Skin",249); // und füllen sie mit unseren Werten.
    }
    return 1;
    }


    und ausgelesen wird er so:
    Im stock register wird erstmal der stock create ausgelesen:
    CreateSkin(playerid);


    und bei onplayerspawn:
    Da das mit Setplayerskin(playerid, dini_aus der datei lesen); nicht funktioniert hat, habe ich es etwas aufwändiger probiert.


    if(dini_Int(skindatei,"skin")== 1) {SetPlayerSkin(playerid, 1);}
    if(dini_Int(skindatei,"skin")== 2) {SetPlayerSkin(playerid, 2);}
    if(dini_Int(skindatei,"skin")== 3) {SetPlayerSkin(playerid, 3);}
    if(dini_Int(skindatei,"skin")== 4) {SetPlayerSkin(playerid, 4);}
    if(dini_Int(skindatei,"skin")== 5) {SetPlayerSkin(playerid, 5);}
    if(dini_Int(skindatei,"skin")== 6) {SetPlayerSkin(playerid, 6);}
    if(dini_Int(skindatei,"skin")== 7) {SetPlayerSkin(playerid, 7);}
    if(dini_Int(skindatei,"skin")== 8) {SetPlayerSkin(playerid, 8);}
    if(dini_Int(skindatei,"skin")== 9) {SetPlayerSkin(playerid, 9);}
    if(dini_Int(skindatei,"skin")== 10) {SetPlayerSkin(playerid, 10);}
    if(dini_Int(skindatei,"skin")== 11) {SetPlayerSkin(playerid, 11);}
    if(dini_Int(skindatei,"skin")== 12) {SetPlayerSkin(playerid, 12);}
    if(dini_Int(skindatei,"skin")== 13) {SetPlayerSkin(playerid, 13);}
    if(dini_Int(skindatei,"skin")== 14) {SetPlayerSkin(playerid, 14);}
    if(dini_Int(skindatei,"skin")== 15) {SetPlayerSkin(playerid, 15);}
    if(dini_Int(skindatei,"skin")== 16) {SetPlayerSkin(playerid, 16);}
    if(dini_Int(skindatei,"skin")== 17) {SetPlayerSkin(playerid, 17);}
    if(dini_Int(skindatei,"skin")== 18) {SetPlayerSkin(playerid, 18);}
    if(dini_Int(skindatei,"skin")== 19) {SetPlayerSkin(playerid, 19);}
    if(dini_Int(skindatei,"skin")== 20) {SetPlayerSkin(playerid, 20);}
    if(dini_Int(skindatei,"skin")== 21) {SetPlayerSkin(playerid, 21);}
    if(dini_Int(skindatei,"skin")== 22) {SetPlayerSkin(playerid, 22);}
    if(dini_Int(skindatei,"skin")== 23) {SetPlayerSkin(playerid, 23);}


    Trotzdem kein erfolg...

    Okay,


    hier ist der Stock register:
    stock Register(playerid,key[])
    {
    new Spielerdatei[200];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,COLOR_GRÜN1,"Du hast dich erfolgreich registriert.");
    SetPlayerScore(playerid,1);
    GivePlayerMoney(playerid,550);
    SetPVarInt(playerid,"loggedin",1);
    SetPVarInt(playerid, "ZeitSeitPD", dini_Int(Spielerdatei, "ZeitSeitPD"));
    SetPVarInt(playerid, "Respektpunkte",0),dini_IntSet(Spielerdatei, "Respektpunkte",0);
    SetPVarInt(playerid, "Respekt",8),dini_IntSet(Spielerdatei, "Respekt",8);
    SetPVarInt(playerid, "LevelMoney",1400),dini_IntSet(Spielerdatei, "LevelMoney",1400);
    SetPVarInt(playerid, "Bank", 0),dini_IntSet(Spielerdatei, "Bank", 0);
    SetPVarInt(playerid, "ZeitSeitPD", 0),dini_IntSet(Spielerdatei, "ZeitSeitPD", 0);
    SetPVarInt(playerid, "Geschlecht", 0),dini_IntSet(Spielerdatei,"Geschlecht",0);
    SetPVarInt(playerid, "Adminlevel", 0),dini_IntSet(Spielerdatei, "Adminlevel",0);
    dini_IntSet(Spielerdatei,"Fuehrerschein",0);
    dini_IntSet(Spielerdatei,"Motorradschein",0);
    dini_IntSet(Spielerdatei,"Flugschein",0);
    dini_IntSet(Spielerdatei,"Bootschein",0);
    dini_IntSet(Spielerdatei,"Waffenschein",0);
    dini_IntSet(Spielerdatei, "Job",0);
    dini_IntSet(Spielerdatei, "Fraktion",0);
    dini_IntSet(Spielerdatei, "Leader",0);
    dini_IntSet(Spielerdatei, "Rang",1);
    dini_IntSet(Spielerdatei, "Wanteds",0);
    dini_IntSet(Spielerdatei, "Jailtime",0);
    dini_IntSet(Spielerdatei, "Prisontime",0);
    dini_IntSet(Spielerdatei, "Gehalt",0);
    dini_IntSet(Spielerdatei, "Morde",0);
    dini_IntSet(Spielerdatei, "Tode",0);
    dini_IntSet(Spielerdatei, "Arbeitslosengeld",0);
    dini_IntSet(Spielerdatei, "Personalausweis",0);
    dini_IntSet(Spielerdatei, "HandyNummer",playerid + 1000 + random(5000));
    if(dini_Int(Spielerdatei,"Geschlecht")==0)
    {
    dini_IntSet(Spielerdatei, "SkinID",239);
    }
    if(dini_Int(Spielerdatei,"Geschlecht")==1)
    {
    dini_IntSet(Spielerdatei, "SkinID",77);
    }
    }
    TogglePlayerSpectating(playerid, 0);
    SetPlayerInterior(playerid, 0);
    ForceClassSelection(playerid);
    SetPlayerHealth(playerid, 50.0);

    return 1;
    }


    stock Loadaccount:


    stock LoadAccount(playerid)
    {
    new Spielerdatei[200];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid, "Bank", dini_Int(Spielerdatei, "Bank"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Leader",dini_Int(Spielerdatei,"Leader"));
    SetPVarInt(playerid,"Rang",dini_Int(Spielerdatei,"Rang"));
    SetPVarInt(playerid,"Job",dini_Int(Spielerdatei,"Job"));
    SetPVarInt(playerid, "ZeitSeitPD", dini_Int(Spielerdatei, "ZeitSeitPD"));
    SetPVarInt(playerid, "Respektpunkte", dini_Int(Spielerdatei, "Respektpunkte"));
    SetPVarInt(playerid, "Respekt", dini_Int(Spielerdatei, "Respekt"));
    SetPVarInt(playerid, "LevelMoney", dini_Int(Spielerdatei, "LevelMoney"));
    SetPVarInt(playerid,"Geschlecht",dini_Int(Spielerdatei,"Geschlecht"));
    SetPVarInt(playerid,"Fuehrerschein",dini_Int(Spielerdatei,"Fuehrerschein"));
    SetPVarInt(playerid,"Motorradschein",dini_Int(Spielerdatei,"Motorradschein"));
    SetPVarInt(playerid,"Flugschein",dini_Int(Spielerdatei,"Flugschein"));
    SetPVarInt(playerid,"Bootschein",dini_Int(Spielerdatei,"Bootschein"));
    SetPVarInt(playerid,"Waffenschein",dini_Int(Spielerdatei,"Waffenschein"));
    SetPVarInt(playerid,"Wanteds",dini_Int(Spielerdatei,"Wanteds"));
    SetPVarInt(playerid,"Jailtime",dini_Int(Spielerdatei,"Jailtime"));
    SetPVarInt(playerid,"Prisontime",dini_Int(Spielerdatei,"Prisontime"));
    SetPVarInt(playerid,"Gehalt",dini_Int(Spielerdatei,"Gehalt"));
    SetPlayerSkin(playerid, dini_Int(Spielerdatei, "SkinID"));//hier soll die skin id ausgelesen werden
    SetPVarInt(playerid,"Morde",dini_Int(Spielerdatei,"Morde"));
    SetPVarInt(playerid,"Tode",dini_Int(Spielerdatei,"Tode"));
    SetPVarInt(playerid,"Arbeitslosengeld",dini_Int(Spielerdatei,"Arbeitslosengeld"));
    SetPVarInt(playerid,"Personalausweis",dini_Int(Spielerdatei,"Personalausweis"));

    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    if(GetPVarInt(playerid,"timeban") > 0)
    {
    SendClientMessage(playerid,COLOR_ROT,"Du bist immer noch vom Server gebannt! Komm später wieder.");
    Kick(playerid);
    }
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,COLOR_ROT,"Du bist vom Server gebannt.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }


    Stock SpielerSpeichern:


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[200];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei, "Bank", GetPVarInt(playerid,"Bank"));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Leader",GetPVarInt(playerid,"Leader"));
    dini_IntSet(Spielerdatei,"Rang",GetPVarInt(playerid,"Rang"));
    dini_IntSet(Spielerdatei,"Job",GetPVarInt(playerid,"Job"));
    dini_IntSet(Spielerdatei, "ZeitSeitPD", GetPVarInt(playerid,"ZeitSeitPD"));
    dini_IntSet(Spielerdatei, "Respektpunkte", GetPVarInt(playerid,"Respektpunkte"));
    dini_IntSet(Spielerdatei, "Respekt", GetPVarInt(playerid,"Respekt"));
    dini_IntSet(Spielerdatei, "LevelMoney", GetPVarInt(playerid,"LevelMoney"));
    dini_IntSet(Spielerdatei,"Geschlecht",GetPVarInt(playerid,"Geschlecht"));
    dini_IntSet(Spielerdatei,"Fuehrerschein", GetPVarInt(playerid,"Fuehrerschein"));
    dini_IntSet(Spielerdatei,"Motorradschein", GetPVarInt(playerid,"Motorradschein"));
    dini_IntSet(Spielerdatei,"Flugschein", GetPVarInt(playerid,"Flugschein"));
    dini_IntSet(Spielerdatei,"Bootschein", GetPVarInt(playerid,"Bootschein"));
    dini_IntSet(Spielerdatei,"Waffenschein", GetPVarInt(playerid,"Waffenschein"));
    dini_IntSet(Spielerdatei,"Wanteds", GetPVarInt(playerid,"Wanteds"));
    dini_IntSet(Spielerdatei,"Prisontime", GetPVarInt(playerid,"Prisontime"));
    dini_IntSet(Spielerdatei,"Jailtime", GetPVarInt(playerid,"Jailtime"));
    dini_IntSet(Spielerdatei,"Gehalt", GetPVarInt(playerid,"Gehalt"));
    dini_IntSet(Spielerdatei, "SkinID", GetPlayerSkin(playerid));//hier soll die skin id gespeichert werden
    dini_IntSet(Spielerdatei,"Morde", GetPVarInt(playerid,"Morde"));
    dini_IntSet(Spielerdatei,"Tode", GetPVarInt(playerid,"Tode"));
    dini_IntSet(Spielerdatei,"Arbeitslosengeld", GetPVarInt(playerid,"Arbeitslosengeld"));
    dini_IntSet(Spielerdatei,"Personalausweis", GetPVarInt(playerid,"Personalausweis"));


    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
    }
    return 1;
    }


    Und unter onplayerspawn habe ich:


    SetPlayerSkin(playerid,dini_Int(Spielerdatei, "SkinID"));

    Gute Abend,


    Ich benutze das Accountsystem nach der Anleitung von MrMonat, sprich dini Abspeicherung.


    Ich habe jetzt versucht bei meinem Skinsystem die Skini abzuspeichern, also so:


    dini_IntSet(Spielerdatei, "SkinID", GetPlayerSkin(playerid));


    Wenn der Spieler jetzt spawnt, soll er die augelesen Skin ID zugewiesen bekommen.
    Unter Onplayerspawn:


    SetPlayerSkin(playerid,dini_Int(Spielerdatei, "SkinID"));


    Aber wie ich schon in der Überschift geschrieben habe, wird die Skin ID nicht überschrieben und ausgelesen.
    Bespielswese habe ich in der .txt datei des Spielers die SkinID auf 170 geändert, aber Ingame spawnt der Spieler immer mit dem CJ Skin...


    Woran kann das liegen? Gibt es vllt. noch andere Möglichkeiten dem Spieler den gesicherten Skin zu setzen?


    Wäre super wenn mir jemand helfen könnte,


    MFG
    Marco

    Okay vielen Dank, ich bin meinem Ziel schon erheblich näher gekommen :D


    Der server closed schonmal nicht mehr :)


    Wenn ich jetzt aber setspawninfo benutze wird dem spieler auch alles gesetzt aber man muss trotzdem noch am anfang noch bei der skinauswahl auf spawnen druecken.


    Wenn ich spawnplayer(playerid);
    Und dadrunter dann setspawninfo schreibe,


    Dann spawnt man zwar automatisch bekommt aber nicht mehr den skin und die position gesetzt.

    Hallo,


    Ich benutze 3d r2 und sobald ich mit spawnplayer arbeite closed der server die connection...


    Ich habe iwo gelesen, dass das ein bug von r2 ist, kann ich den umgehen wenn ich zb auf 3e umsteige?


    LG
    Marco

    Okay,


    hab mir deinen Rat gleich zu Herzen genommen...


    Also ich habe es jetzt mal so ausprobiert:


    public OnPlayerText(playerid, text[])
    {
    new textv2[128], name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof (name));
    format(textv2, sizeof (textv2), "%s: %s", name, text);
    SendLocalChat(playerid, COLOR_WEISS,textv2,20.0);
    return 1;
    }


    trotzdem wird das ganze noch so angezeigt...

    Hey,


    Bei mir i Chat steht immer, wenn jmd etwas schreibt, der name: (id) text


    also zB Hans: (1) Hallo


    wie kann ich die in klammern gesetzte id ausblenden, sodass dann nur noch da steht: Hans: Hallo



    LG


    Marco