Hey Leuts, ich habe ein Problem mit meinem Paydaysystem.. Ich habe den Timer erstmal aus Testzwecken auf 30 Sekunden eingestellt , aber es kommt kein Payday... Hier mal alles zum Payday
public OnPlayerLogin(playerid,password[])
{
Paydaytimer= SetTimer("Payday",30000,1);
public PayDay()
{
new string[128];
new account,interest;
new rent = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new playername2[MAX_PLAYER_NAME];
GetPlayerName(i, playername2, sizeof(playername2));
account = PlayerInfo[i][pAccount];
new key = PlayerInfo[i][pPhousekey];
if(key != 255)
{
rent = HouseInfo[key][hRent];
if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
{
rent = 0;
}
else if(rent > GetPlayerMoney(i))
{
PlayerInfo[i][pPhousekey] = 255;
SendClientMessage(i, COLOR_WHITE, "Du wurdest fristlos aus deinem Zuhause gekündigt.");
rent = 0;
}
HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
}
new tmpintrate;
if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
{
if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = intrate+4; }
else { tmpintrate = intrate+2; }//HouseInfo[key][hLevel]
}
else
{
if(PlayerInfo[i][pDonateRank] > 0) { tmpintrate = 3; }
else { tmpintrate = 1; }
}
if(PlayerInfo[i][pPayDay] >= 5)
{
Tax += TaxValue;//Should work for every player online
PlayerInfo[i][pAccount] -= TaxValue;
if(PlayerInfo[i][pDonateRank] > 0)
{
new bonus = PlayerInfo[i][pPayCheck] / 2;
PlayerInfo[i][pPayCheck] += bonus;
}
new checks = PlayerInfo[i][pPayCheck];
new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
ConsumingMoney[i] = 1;
GivePlayerMoney(i, checks);
if(PlayerInfo[i][pAccount] > 0)
{
PlayerInfo[i][pAccount] -= ebill;
SBizzInfo[4][sbTill] += ebill;
}
else
{
ebill = 0;
}
interest = (PlayerInfo[i][pAccount]/1000)*(tmpintrate);
PlayerInfo[i][pExp]++;
PlayerPlayMusic(i);
PlayerInfo[i][pAccount] = account+interest;
SendClientMessage(i, COLOR_WHITE, "|___ PAYDAY ___|");
format(string, sizeof(string), " Gehalt: $%d Steuern: -$%d", checks, TaxValue);
SendClientMessage(i, COLOR_GRAD1, string);
if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
{
format(string, sizeof(string), " Strom: -$%d", ebill);
SendClientMessage(i, COLOR_GRAD1, string);
}
format(string, sizeof(string), " Balance: $%d", account);
SendClientMessage(i, COLOR_GRAD1, string);
format(string, sizeof(string), " Zinsen: 0.%d percent",tmpintrate);
SendClientMessage(i, COLOR_GRAD2, string);
format(string, sizeof(string), " Interest Gained $%d", interest);
SendClientMessage(i, COLOR_GRAD3, string);
SendClientMessage(i, COLOR_GRAD4, "|--------------------------------------|");
format(string, sizeof(string), " Neue Kontostand: $%d", PlayerInfo[i][pAccount]);
SendClientMessage(i, COLOR_GRAD5, string);
format(string, sizeof(string), " Miete: -$%d", rent);
SendClientMessage(i, COLOR_GRAD5, string);
format(string, sizeof(string), "~y~PayDay~n~~w~Zahltag");
GameTextForPlayer(i, string, 5000, 1);
// Und so weiter
public OnPlayerDisconnect(playerid,reason)
{
KillTimer(Paydaytimer);
Wieso bringt der keinen Payday?? Und noch ne Frage. Wie mache ich das, dass der die Zeit abspeichert bis zum payday und beim nächsten Login speichert.. Und wie kann ich die restliche Zeit zum payday anzeigen lassen ?
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
-
-
Zitat
Paydaytimer= SetTimer("Payday",30000,1);
Zitatpublic PayDay()
Problem ist vllt das Obere Wort "Payday" es muss vllt mit nem Großem "D" geschrieben werden wie bei Zitat 2
-
Neo das müsste ich dann alles neu machen oder?
Oder erklär mal bitte genauer wie ich das machen soll...
Und wie frage ich die Zeit ab, also dass in den /stats steht, wielange es noch dauert? -
Nein ich habe keinen Godfather
Aber ich weiß wo alles hinmuss... Ich schau mir das nachher mal an. Wie frage ich denn ab, wielange man noch zum Payday brauch? also in Stats?? -
breadfish.de
Hat das Thema geschlossen.