Busfahrer Skill

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
  • Hey,


    ich arbeite gerade an einem Skill System für meinen Busfahrer Job..
    Nun habe ich es so, dass der Spieler immer wenn er 25 Buspunkte hat, einen Level höher kommt.
    Doch::
    1. Als erstes bekommt er statt Level 1, Level 0
    2. Wie mache ich, dass er erst 25 dann 50 dann 75 usw. Punkte braucht für Skill Up?


    Freue mich auf Hilfe.
    Hier ist der Code für LevelUp momentan


    public OnPlayerUpdate(playerid)
    {
    if(PlayerInfo[playerid][pBusPt] >= 25)
    {
    new str[128];
    PlayerInfo[playerid][pBusSkill]++;
    PlayerInfo[playerid][pBusPt] = 0;
    format(str,sizeof(str),"Du bist ein Buslevel gestiegen. Nun hast du den Busfahrer Skill %i",PlayerInfo[playerid][pBusSkill]);
    SendClientMessage(playerid,bRot,str);
    return 1;
    }
    return 1;
    }

  • Abfragen ob er Buslevel 0 hat, falls ja dann musste abfragen ob er 25 Punkte hat, falls ja bekommt er n Levelup, dann abfragen ob er Buslevel 1 ist, dann abfragen ob der 50 Punkte hat, ist glaub ich umständlich, aber besser als nichts ^^

  • Meinst du so?


    public OnPlayerUpdate(playerid)
    {
    if(PlayerInfo[playerid][pBusPt] >= MaxBusPunkte(playerid))
    {
    new str[128];
    PlayerInfo[playerid][pBusSkill]++;
    PlayerInfo[playerid][pBusPt] = 0;
    format(str,sizeof(str),"Du bist ein Buslevel gestiegen. Nun hast du den Busfahrer Skill %i",PlayerInfo[playerid][pBusSkill]);
    SendClientMessage(playerid,bRot,str);
    return 1;
    }
    return 1;
    }


    stock MaxBusPunkte(playerid)
    {
    new Punkte;
    switch(PlayerInfo[playerid][pBusSkill])
    {
    case 0:{Punkte=25;}
    case 1:{Punkte=50;}
    case 2:{Punkte=75;}
    case 3:{Punkte=100;}
    case 4:{Punkte=125;}
    case 5:{Punkte=150;}
    case 6:{Punkte=175;}
    case 7:{Punkte=200;}
    case 8:{Punkte=225;}
    }
    return Punkte;
    }


  • Also ich hätts mir jetzt so ausgemalt:

    public OnPlayerUpdate(playerid){
    if(BusLevelabfrage)==0){
    if(Buspunkte)<25){
    Hier einen Buspunkt gutschreiben
    }
    else if(Buspunkte)>25){
    Buslevel steigen
    }
    }
    else if(BusLevelabfrage)==1){
    gleiches wie oben nur mit 50 buspunkten
    }
    return 1;
    }


    Aber probiers erstmal so wie du meinst.

  • Danke Leute,


    jetzt geht es :*


    Jetzt noch eine Frage..


    Ich möchte, dass wenn man zB die 1 Linie durchfährt zufällig 1-3 Punkte bekommt.
    Dann wenn er Skill 1 ist nurnoch 1-2 und ab skill 3 nurnoch 1


    //EDIT:


    Ich habe es so versucht aber da bekomme ich Errors:


    new str[128];
    if(PlayerInfo[playerid][pBusSkill] == 0) {new rand = random(3);}
    if(PlayerInfo[playerid][pBusSkill] == 1) {new rand = random(3);}
    if(PlayerInfo[playerid][pBusSkill] == 2) {new rand = random(2);}
    if(PlayerInfo[playerid][pBusSkill] == 3) {new rand = random(1);}
    format(str,sizeof(str),"Endstation. Du erhältst: 2800$ am nächsten Payday und %i Punkte.",rand);
    PlayerInfo[playerid][pBusPt] += rand;
    SendClientMessage(playerid,0x00FFFFFF,str);



    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4504) : warning 204: symbol is assigned a value that is never used: "rand"
    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4505) : warning 204: symbol is assigned a value that is never used: "rand"
    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4506) : warning 204: symbol is assigned a value that is never used: "rand"
    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4507) : warning 204: symbol is assigned a value that is never used: "rand"
    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4508) : error 017: undefined symbol "rand"
    C:\Users\Narushi\Desktop\samp\New-Evolution-Reallife\gamemodes\SelfmadeBT.pwn(4509) : error 017: undefined symbol "rand"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

  • Meinst du vllt so?


    new str[128], rand;
    if(PlayerInfo[playerid][pBusSkill] == 3) {rand = random(5);}
    if(PlayerInfo[playerid][pBusSkill] == 4) {rand = random(4);}
    if(PlayerInfo[playerid][pBusSkill] == 5) {rand = random(3);}
    if(PlayerInfo[playerid][pBusSkill] == 6) {rand = random(3);}
    if(PlayerInfo[playerid][pBusSkill] == 7) {rand = random(2);}
    format(str,sizeof(str),"Endstation. Du erhältst: 3200$ am nächsten Payday und %i Punkte.",rand);
    PlayerInfo[playerid][pBusPt] += rand;
    SendClientMessage(playerid,0x00FFFFFF,str);