Dragin97
Дебютант
Не выдаёт зарплату
Код:
public PayDay()
{
new string[128];
new account,interest;
new rent = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLevel] > 0)
{
if(MoneyMessage[i]==1)
{
SendClientMessage(i, COLOR_LIGHTRED, "Вы были не в состоянии оплатить свой долг, отправляйтесь в тюрьму.");
GameTextForPlayer(i, "~r~Busted!", 2000, 1);
SetPlayerInterior(i, 10);
SetPlayerPos(i, 219.5341,111.3305,999.0156);
PlayerInfo[i][pJailed] = 1;
ResetPlayerWeapons(i);
WantedPoints[i] = 0;
PlayerInfo[i][pJailTime] = 240;
format(string, sizeof(string), "Вы посажены в тюрьму на %d секунд за неуплату налогов. Залог: Невозможен.", PlayerInfo[i][pJailTime]);
SendClientMessage(i, COLOR_LIGHTBLUE, string);
}
DengiTime[i] = 15;
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;
PlayerInfo[i][pRent] = 0;
SendClientMessage(i, COLOR_WHITE, "Вы не можете оплатить арендную плату, потому Вы выселены.");
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] > 1)
{
Tax += TaxValue;
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]);
ServerGivePlayerMoney(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_INDIGO, "|___ СОТОЯНИЕ БАНКОВСКОГО СЧЕТА ___|");
format(string, sizeof(string), " {ffffff}Зарплата наличными: {00ff00}$%d {ffffff}Налог: {ff0000}-$%d", checks, TaxValue);
SendClientMessage(i, COLOR_GRAD1, string);
if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255)
{
format(string, sizeof(string), " Плата за электричество: -$%d", ebill);
SendClientMessage(i, COLOR_GRAD1, string);
}
format(string, sizeof(string), " Текущий баланс в банке: {ff4f00}$%d", account);
SendClientMessage(i, COLOR_GRAD1, string);
format(string, sizeof(string), " Уровень интереса: 0.%d процентов",tmpintrate);
SendClientMessage(i, COLOR_GRAD2, string);
format(string, sizeof(string), " Полученный интерес $%d", interest);
SendClientMessage(i, COLOR_GRAD3, string);
SendClientMessage(i, COLOR_INDIGO, "|--------------------------------------|");
format(string, sizeof(string), " Новый баланс в банке: $%d", PlayerInfo[i][pAccount]);
SendClientMessage(i, COLOR_GRAD5, string);
format(string, sizeof(string), " Арендная плата: -$%d", rent);
SendClientMessage(i, COLOR_GRAD5, string);
format(string, sizeof(string), "~y~PayDay~n~~w~Paycheck");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo[i][pPayDay] = 0;
PlayerInfo[i][pPayCheck] = 0;
PlayerInfo[i][pConnectTime] += 1;
OnPlayerCommandText(i,"/newlevel");
PlayerInfo[i][pZakon] += 1;
Production();
MRP_UpdateTextDrawMoney(i);
//========================================================================================================================================
if(PlayerInfo[i][pDonateRank] > 0)
{
PlayerInfo[i][pPayDayHad] += 1;
if(PlayerInfo[i][pPayDayHad] > 5)
{
PlayerInfo[i][pExp]++;
PlayerInfo[i][pPayDayHad] = 0;
}
}
if(PlayerInfo[i][pJob] > 0)
{
PlayerInfo[i][pContractTime] ++;
}
if(PlayerInfo[i][pDrugsBuy] == 1)
{
PlayerInfo[i][pDrugsBuy] = 0;
}
if (PlayerInfo[i][pWarns] > 0)
{
new vio = PlayerInfo[i][pConnectTime];
vio %= 25;
if(vio == 0) {PlayerInfo[i][pWarns]--; SendClientMessage(i, COLOR_LIGHTRED, " * Уровень Ваших предупреждений уменьшен.");}
}
}
else
{
SendClientMessage(i, COLOR_LIGHTRED, "* Вы играли слишком мало, чтобы получить зарплату.");
}
}
}
}
Checkprop();
Checkcar();
return 1;
}
