Andrey_Bened
Ученик
Здравствуйте, у меня проблема с зп. Когда у игрока есть респекты для перехода на следующий уровень то ему об этом не оповещает что бы ввести /buylevel У меня в моде стояла автоматическая система но я убрал вот она:
А вот сам паблик Payday
---------- Post added at 13:56 ---------- Previous post was at 13:53 ----------
Вот сама команда /buylevel
PHP:
/*new exp = PlayerInfo[i][pExp];
new nxtlevel = PlayerInfo[i][pLevel]+1;
new expamount = nxtlevel*levelexp;
if(exp >= expamount)
{
PlayerInfo[i][pLevel] = PlayerInfo[i][pLevel]+1;
PlayerInfo[i][pExp] = PlayerInfo[i][pExp] - expamount;
PlayerInfo[i][pAge] += 1;
SendClientMessage(i, COLOR_GREEN2, "Поздравляем! Вы автоматически перешли на следующий уровень!");
format(infostring,sizeof(infostring),"Теперь ваш уровень - %d!", PlayerInfo[i][pLevel]);
SendClientMessage(i, COLOR_GREEN2, infostring);
PlayerInfo[i][gPupgrade] = PlayerInfo[i][gPupgrade]+2;
format(infostring, 256, "Вы получили %d очков обновления.",PlayerInfo[i][gPupgrade]);
SendClientMessage(i, COLOR_RED2, infostring);
SetPlayerScore(i, PlayerInfo[i][pLevel]);
}*/
PHP:
public PayDay()
{
new string[128];//,infostring[256];
new account,interest;
new workpay;
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_GREY, "Вы были не в состоянии оплатить свой долг, отправляйтесь в тюрьму.");
GameTextForPlayer(i, "~r~Busted!", 2000, 1);
SetPlayerInterior(i, 6);
SetPlayerPos(i, 264.6288,77.5742,1001.0391);
PlayerInfo[i][pJailed] = 1;
ResetPlayerWeapons(i);
PlayerInfo[i][pWanted] = 0;
PlayerInfo[i][pJailTime] = 240;
format(string, sizeof(string), "Ты был(а) посажен(а) в тюрьму на %d секунд. Выплата: Невозможна.", PlayerInfo[i][pJailTime]);
SendClientMessage(i, COLOR_LIGHTBLUE, string);
}
//------------------------------------------------------------------------------
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, "Вы не можете оплатить арендную плату, потому Вы выселены.");
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)
{
/*new exp = PlayerInfo[i][pExp];
new nxtlevel = PlayerInfo[i][pLevel]+1;
new expamount = nxtlevel*levelexp;
if(exp >= expamount)
{
PlayerInfo[i][pLevel] = PlayerInfo[i][pLevel]+1;
PlayerInfo[i][pExp] = PlayerInfo[i][pExp] - expamount;
PlayerInfo[i][pAge] += 1;
SendClientMessage(i, COLOR_GREEN2, "Поздравляем! Вы автоматически перешли на следующий уровень!");
format(infostring,sizeof(infostring),"Теперь ваш уровень - %d!", PlayerInfo[i][pLevel]);
SendClientMessage(i, COLOR_GREEN2, infostring);
PlayerInfo[i][gPupgrade] = PlayerInfo[i][gPupgrade]+2;
format(infostring, 256, "Вы получили %d очков обновления.",PlayerInfo[i][gPupgrade]);
SendClientMessage(i, COLOR_RED2, infostring);
SetPlayerScore(i, PlayerInfo[i][pLevel]);
}*/
if(PlayerInfo[i][pDonateRank] > 0)
{
new bonus = PlayerInfo[i][pPayCheck] / 10;
PlayerInfo[i][pPayCheck] += bonus;
}
new checks = PlayerInfo[i][pPayCheck];
new ebill = (PlayerInfo[i][pAccount]/1000000)*(PlayerInfo[i][pLevel]);
ConsumingMoney[i] = 1;
PlayerInfo[i][pMoney] += checks;
if(PlayerInfo[i][pAccount] > 0)
{
PlayerInfo[i][pAccount] -= ebill;
SBizzInfo[4][sbTill] += 10000;// Бизнес - Электростанция SF
}
else
{
ebill = 0;
}
PlayerInfo[i][pAccount] += workpay;
PlayerInfo[i][pAccount] -= Tax;
interest = (PlayerInfo[i][pAccount]/800)*(tmpintrate);// 10000000
PlayerInfo[i][pExp]++;
PlayerInfo[i][pConnectTime] += 1;
PlayerPlayMusic(i);
PlayerInfo[i][pAccount] = account+interest; //checks
SendClientMessage(i, COLOR_GREEN, "|_______________ Зарплата _______________|");
format(string, sizeof(string), /*"{FFFFFF}Полученная сумма:{FFFFFF}{6EF83C}$%d{FFFFFF}*/ "{FFFFFF}Налоги:{FFFFFF} {6EF83C}-$%d{FFFFFF}", Tax);
SendClientMessage(i, COLOR_YELLOW2, string);
//------------------------------------------------------------------------------
if(PlayerInfo[i][pPhousekey] != 255 || PlayerInfo[i][pPbiskey] != 255) {
format(string, sizeof(string), "{FFFFFF}Плата за электричество:{FFFFFF} {6EF83C}-$1500{FFFFFF}", ebill);
SendClientMessage(i, COLOR_YELLOW2, string); }
//------------------------------------------------------------------------------
format(string, sizeof(string), "{FFFFFF}Баланс в банке:{FFFFFF} {6EF83C}$%d{FFFFFF} | {FFFFFF}Банковский процент:{FFFFFF} {6EF83C}0.%d{FFFFFF}", account, tmpintrate);
SendClientMessage(i, COLOR_YELLOW2, string);
//------------------------------------------------------------------------------
format(string, sizeof(string), "{FFFFFF}Полученные деньги:{FFFFFF} {6EF83C}$%d{FFFFFF}", interest);
SendClientMessage(i, COLOR_WHITE, string);
//------------------------------------------------------------------------------
format(string, sizeof(string), "{FFFFFF}Теперь Баланс в банке:{FFFFFF} {6EF83C}$%d{FFFFFF}", PlayerInfo[i][pAccount]);
SendClientMessage(i, COLOR_WHITE, string);
//------------------------------------------------------------------------------
format(string, sizeof(string), "{FFFFFF}Плата за аренду:{FFFFFF} {6EF83C}$%d{FFFFFF}", rent);
SendClientMessage(i, COLOR_WHITE, string);
SendClientMessage(i, COLOR_GREEN, "|________________________________________|");
//------------------------------------------------------------------------------
format(string, sizeof(string), "~y~PayDay~n~~w~Paycheck");
GameTextForPlayer(i, string, 7000, 1);
/*rent = 0;
PlayerInfo[i][pPayDay] = 0;
format(string, sizeof(string), "Новости лотереи: Мы начали лотерейную партию.");
OOCOff(COLOR_WHITE, string);
new rand = random(80);
if(rand < 77) { rand += 3; }
Lotto(rand);*/
PlayerInfo[i][pPayCheck] = 0;
if(PlayerInfo[i][pDonateRank] > 0)
{
PlayerInfo[i][pPayDayHad] += 1;
if(PlayerInfo[i][pPayDayHad] >= 5)
{
PlayerInfo[i][pExp]++;
PlayerInfo[i][pPayDayHad] = 0;
}
}
}
else
{
SendClientMessage(i, COLOR_WHITE, "[ExclusiveGame]: Ты не получил(а) зарплату т.к. мало играл.");
}
}
}
}
SaveAccounts();//Сохранение акков при зарплате
Checkprop();
SaveObshak();
return 1;
}
---------- Post added at 13:56 ---------- Previous post was at 13:53 ----------
Вот сама команда /buylevel
PHP:
if (strcmp(cmd, "/buylevel", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if (gPlayerLogged[playerid] != 0)
{
if(PlayerInfo[playerid][pLevel] >= 0)
{
new nxtlevel = PlayerInfo[playerid][pLevel]+1;
new costlevel = nxtlevel*levelcost;//10k for testing purposes
new expamount = nxtlevel*levelexp;
new infostring[256];
if(GetPlayerMoney(playerid) < costlevel)
{
format(infostring, 256, "Ó âàñ íåò ($%d) !",costlevel);
SendClientMessage(playerid, COLOR_RED, infostring);
return 1;
}
else if (PlayerInfo[playerid][pExp] < expamount)
{
format(infostring, 256, "Âàì íóæíî %d î÷êîâ óâàæåíèÿ, ó âàñ òîëüêî [%d] !",expamount,PlayerInfo[playerid][pExp]);
SendClientMessage(playerid, COLOR_RED, infostring);
return 1;
}
else
{
format(string, sizeof(string), "~g~LEVEL UP~n~~w~You Are Now Level %d", nxtlevel);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
PlayerPlayMusic(playerid);
//GivePlayerMoney(playerid, (-costlevel));
PlayerInfo[playerid][pMoney] -= costlevel;
PlayerInfo[playerid][pLevel]++;
if(PlayerInfo[playerid][pDonateRank] > 0)
{
PlayerInfo[playerid][pExp] -= expamount;
new total = PlayerInfo[playerid][pExp];
if(total > 0)
{
PlayerInfo[playerid][pExp] = total;
}
else
{
PlayerInfo[playerid][pExp] = 0;
}
}
else
{
PlayerInfo[playerid][pExp] = 0;
}
PlayerInfo[playerid][gPupgrade] = PlayerInfo[playerid][gPupgrade]+2;
GameTextForPlayer(playerid, string, 5000, 1);
format(infostring, 256, "Âû êóïèëè %d óðîâåíü äëÿ ($%d) ââåäèòå /upgrade.", nxtlevel, costlevel);
SendClientMessage(playerid, COLOR_LIGHTBLUE, infostring);
format(infostring, 256, "Âû èìååòå %d î÷êîâ óëó÷øåíèÿ.",PlayerInfo[playerid][gPupgrade]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, infostring);
}
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "*{ff3300}[Îøèáêà]{FFFFFF} Âû íå âîøëè!");
}
}
return 1;
}
