Hallo Leute,
ich habe ein PayDay System erstellt.
In der Console wird die 1 wieder gegeben wegen dem Print aber sonst passiert nichts.
public minute(playerid)
{
print("1");
new string[258],string1[258],string2[285],string3[258],string4[258],string5[258];
Spieler[playerid][pPayDayTime] = Spieler[playerid][pPayDayTime]-1;
/* PayDay Text */
new wert1 = Spieler[playerid][pBank]/100*2;
new wert2 = Spieler[playerid][pBank]/100*5;
new ergebniss = wert1-wert2;
new ergebniss2 = ergebniss - Spieler[playerid][pBank];
format(string,sizeof(string),"Alter Saldo: %i $",Spieler[playerid][pBank]);
format(string1,sizeof(string1),"+ Gehalt: %i $ (%i*50)",Spieler[playerid][pLevel]*50,Spieler[playerid][pLevel]);
format(string2,sizeof(string2),"+ Zinsen: %i $ (2%)",Spieler[playerid][pBank]/100*2);
format(string3,sizeof(string3),"- Steuern: %i $ (5%)",Spieler[playerid][pBank]/100*5);
format(string4,sizeof(string4),"Du erhälst: %i $",ergebniss);
format(string5,sizeof(string5),"Neuer Saldo: %i $",ergebniss2);
if(Spieler[playerid][pPayDayTime] == 0)
{
Spieler[playerid][pPayDayTime] = 60;
Spieler[playerid][pRespektpunkte] = Spieler[playerid][pRespektpunkte]+1;
SendClientMessage(playerid,WEIß,"PayDay Zeit");
SendClientMessage(playerid,WEIß,string);
SendClientMessage(playerid,WEIß,"------------------------------");
SendClientMessage(playerid,WEIß,string1);
SendClientMessage(playerid,WEIß,string2);
SendClientMessage(playerid,WEIß,string3);
SendClientMessage(playerid,WEIß,"------------------------------");
SendClientMessage(playerid,WEIß,string4);
SendClientMessage(playerid,WEIß,string5);
SendClientMessage(playerid,WEIß,"1 Respektpunkt erhalten");
Spieler[playerid][pBank] = Spieler[playerid][pBank]-ergebniss;
if(Spieler[playerid][pRespektpunkte] == Spieler[playerid][pLevel]+1)
{
SendClientMessage(playerid,WEIß,"Du bist ein Level aufgestiegen");
Spieler[playerid][pRespektpunkte] = 0;
}
}
}
Frage bei PayDay
- Linsing
- Geschlossen
- Erledigt
-
-
mach es so
Spieler[playerid][pPayDayTime]-=1; -
Funktioniert nicht.
-
Versuch mal indem du die Strings etwas größer machst..
-
Es ist ja alles okey aber von der PayDayTime wird nicht einer abgezogen.
-
if(Spieler[playerid][pPayDayTime] == 0)
Daran kann es nur liegen. Vielleicht stoppst du zufrüh und es heißt dann
if(Spieler[playerid][pPayDayTime] == 1)
[size=10][size=10]Kenne deinen Minutentimer ja nicht.
-
Ich geb dir mal nen Tipp, der dein Problem ggf. lösen könnte.
Du solltest daraus nen Sekunden Timer schreiben. Denn das Problem an Minuten ist, dass jemand vielleicht in der Mitte der Minute off geht und dann 30 Sekunden verliert. -
Ja das mit dem Sekundentimer ist so ne Sache weil jede Sekunde das würde der server nicht aushalten bitte so.
Und das Problem ist einfach das bei.
Spieler[playerid][pPayDayTime] = Spieler[playerid][pPayDayTime]-1;
Das die Variable nicht um -1 genommen wird. -
Spieler[playerid][pPayDayTime]--;
-
mach es so
Spieler[playerid][pPayDayTime]-=1;Dies was du da laberst ist schwachsinn. wenn du =-1 machst wird die variavle auf -1 gesetzt!
SpielerInfo[...][...] = SpielerInfo[...][...]-1; is schon richtig
-
ehm naja lies erstmal was ich geschrieben habe, ich hab geschrieben -=1 NICHT =-1,
bei -=1 wird die variable um eins verringert.. -
Nein =-1 ist total falsch.. z.B SpielerInfo[playerid][Green] = SpielerInfo[playerid][Green] +1 oder -1; das richtig
-
breadfish.de
Hat das Thema geschlossen.