AlEx7127
Умник
Дело в том, что когда например времени 00:00 Должна быть ЗП(PayDay). Но у некоторых игроков дает ЗП и exp. А у некоторых не чего не пишет. Как исправить? Кодд снизу. И еще когда у игрока например 20\20 exp то ему не дается лвл. Все дальше идет 21\20.... Помогите с меня +++
Вот сам код:
Вот сам код:
PHP:
stock PayDay(playerid)
{
new string[128],account,workpay,rent = 0;
if(PlayerInfo[playerid][pLevel] >= 0)
{
if(MoneyMessage[playerid]==1)
{
SendClientMessage(playerid, COLOR_GREY, "Вы были не в состоянии оплатить свой долг, отправляйтесь в тюрьму.");
GameTextForPlayer(playerid, "~r~Busted!", 2000, 1);
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid, 264.6288,77.5742,1001.0391);
PlayerInfo[playerid][pJaileda] = 1;
ServerResetPlayerWeaponsAC(playerid);
PlayerInfo[playerid][pWanted] = 0;
PlayerInfo[playerid][pJailTimea] = 1800;
format(string, sizeof(string), "Ты был(а) посажен(а) в тюрьму на %d секунд. Залог: Невозможен.", PlayerInfo[playerid][pJailTimea]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
}
account = PlayerInfo[playerid][pAccount];
new key = PlayerInfo[playerid][pPhousekey];
if(key != 500)
{
rent = HouseInfo[key][hRent];
if(strcmp(PlayerInfo[playerid][pNames], HouseInfo[key][hOwner], true) == 0)
{
rent = 0;
}
else if(rent > GetPlayerMoney(playerid))
{
PlayerInfo[playerid][pPhousekey] = 500;
SendClientMessage(playerid, COLOR_GREY, "Вы не можете оплатить арендную плату, поэтому Вы выселены.");
rent = 0;
}
HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
}
new tmpintrate;
if (key != 500 && strcmp(PlayerInfo[playerid][pNames], HouseInfo[key][hOwner], true) == 0)
{
if(PlayerInfo[playerid][pDonateRank] > 0) { tmpintrate = intrate+4; }
else { tmpintrate = intrate+2; }
}
else
{
if(PlayerInfo[playerid][pLevel] > 15) { tmpintrate = 3; }
else { tmpintrate = 1; }
}
if(PlayerInfo[playerid][pPayDay] >= 1)
{
PlayerInfo[playerid][pExp] += 1;
new exp = PlayerInfo[playerid][pExp];
new nxtlevel = PlayerInfo[playerid][pLevel]+1;
new expamount = nxtlevel*levelexp;
if(exp == expamount)
{
PlayerInfo[playerid][pLevel]++;
PlayerInfo[playerid][pExp] -= expamount;
}
if(PlayerInfo[playerid][pDonateRank] > 0)
{
new bonus = PlayerInfo[playerid][pPayCheck] / 10;
PlayerInfo[playerid][pPayCheck] += bonus;
}
new checks = PlayerInfo[playerid][pPayCheck];
new ebill = (PlayerInfo[playerid][pAccount]/500000)*(PlayerInfo[playerid][pLevel]) + 483;
new nalog = 50 * PlayerInfo[playerid][pLevel];
ConsumingMoney[playerid] = 1;
GiveMoney(playerid, checks);
if(PlayerInfo[playerid][pPhousekey] < 500)
{
PlayerInfo[playerid][pAccount] -= ebill;
SBizzInfo[4][sbTill] += 90;// Бизнес - Электростанция SF
}
else
{
ebill = 0;
}
if(PlayerInfo[playerid][pPhousekey] < 500)
{
PlayerInfo[playerid][pAccount] -= nalog;
Tax += nalog;
}
else
{
nalog = 0;
}
PlayerInfo[playerid][pAccount] += workpay;
PlayerInfo[playerid][pConnectTime] += 1;
PlayerPlayMusic(playerid);
PlayerInfo[playerid][pAccount] = account+checks;
format(string, sizeof(string), "> Зар.Плата{ffffff} |--------- Банковский счёт на имя {008000}%s{ffffff} ------------|",PlayerInfo[playerid][pNames]);
SendClientMessage(playerid, COLOR_ZP, string);
format(string, sizeof(string), "Зар.Плата: $%d | Налог: -$%d | Банковский счёт: $%d", checks, nalog, account, tmpintrate);
SendClientMessage(playerid, COLOR_GOLDEN, string);
format(string, sizeof(string), "Плата за электроэнергию: -$%d | Новый банковский баланс: $%d", ebill, PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GOLDEN, string);
PlayerInfo[playerid][pExpUp] = 0;
rent = 0;
PlayerInfo[playerid][pPayDay] = 0;
PlayerInfo[playerid][pPayCheck] = 0;
PlayerInfo[playerid][pPayDayHad] += 1;
if(PlayerInfo[playerid][pPayDayHad] >= 5)
{
PlayerInfo[playerid][pExp]++;
PlayerInfo[playerid][pPayDayHad] = 0;
}
}
}
return 1;
}
stock ExpUp(playerid)
{
PlayerInfo[playerid][pExpUp]++;
return true;
}
