Garsio
Умник
И так, сейчас я оптимизирую свой мод и увидел вот такое:
Это ужасный код, поэтому я вам предлагаю более оптимизированный.
Для тру скриптеров, мой код тоже не идеален, не нужно критики, спасибо за понимание
И так, просто ищете код, который сверху и заменяете на:
Подведём итог: Старый код занимает 3487 сиволов и 87 строк, а мой 1520 символов и 29 строк. Получается мы уменьшили код в 3 раза 
Буду благодарен за спасибку ^^
PHP:
else if(strcmp(x_job, "free",true) == 0)
{
if(FreeOffer[playerid] < 999)
{
if(IsPlayerConnected( FreeOffer[playerid]))
{
if(SposobOffer[playerid] == 0)
{
if(PlayerInfo[playerid][pCash] > FreePrice[playerid])
{
GetPlayerName(FreeOffer[playerid], giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Вы заплотили адвокату %s %d вирт.",giveplayer, FreePrice[playerid]);
SCM(playerid, 0x6495EDFF, string);
format(string, sizeof(string), "Вы выпустили %s из тюрьмы за %d вирт.",sendername,FreePrice[playerid]);
SCM(FreeOffer[playerid], 0x6495EDFF, string);
PlayerInfo[playerid][pCash] -= FreePrice[playerid];
PlayerInfo[FreeOffer[playerid]][pCash]+= FreePrice[playerid];
FreeOffer[playerid] = 999;
FreePrice[playerid] = 0;
SposobOffer[playerid] = 0;
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid,1553.4962,-1675.2714,16.1953);
SetPlayerFacingAngle(playerid, 95.0636);
PlayerInfo[playerid][pJailTime] = 0;
PlayerInfo[playerid][pJailed] = 0;
PlayerInfo[playerid][pWantedLevel] = 0;
SCM(playerid, COLOR_YELLOW, "Вы свободны");
SCM(playerid, COLOR_GREEN, "Вы заплатили свой долг обществу");
WantedLevel[playerid] = 0;
WantedTime[playerid] = 0;
WantedPoints[playerid] = 0;
SetPlayerWantedLevel(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
return true;
}
else
{
SCM(playerid, COLOR_GREY, "У вас недостаточно денег!");
return true;
}
}
if(SposobOffer[playerid] == 1)
{
if(PlayerInfo[playerid][pBank] > FreePrice[playerid])
{
GetPlayerName(FreeOffer[playerid], giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Вы заплотили адвокату %s %d вирт.",giveplayer, FreePrice[playerid]);
SCM(playerid, 0x6495EDFF, string);
format(string, sizeof(string), "Вы выпустили %s из тюрьмы за %d вирт.",sendername,FreePrice[playerid]);
SCM(FreeOffer[playerid], 0x6495EDFF, string);
PlayerInfo[playerid][pBank] -= FreePrice[playerid];
PlayerInfo[FreeOffer[playerid]][pCash]+= FreePrice[playerid];
FreeOffer[playerid] = 999;
FreePrice[playerid] = 0;
SposobOffer[playerid] = 0;
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid,1553.4962,-1675.2714,16.1953);
SetPlayerFacingAngle(playerid, 95.0636);
PlayerInfo[playerid][pJailTime] = 0;
PlayerInfo[playerid][pJailed] = 0;
PlayerInfo[playerid][pWantedLevel] = 0;
SCM(playerid, COLOR_YELLOW, "Вы свободны");
SCM(playerid, COLOR_GREEN, "Вы заплатили свой долг обществу");
WantedLevel[playerid] = 0;
WantedTime[playerid] = 0;
WantedPoints[playerid] = 0;
SetPlayerWantedLevel(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
return true;
}
else
{
SCM(playerid, COLOR_GREY, "У вас недостаточно денег!");
return true;
}
}
}
return true;
}
else
{
SCM(playerid, COLOR_GREY, "Вам ни кто не предлагал услуги адвоката!");
return true;
}
}
Для тру скриптеров, мой код тоже не идеален, не нужно критики, спасибо за понимание
И так, просто ищете код, который сверху и заменяете на:
PHP:
else if(strcmp(x_job, "free",true) == 0)
{
if(FreeOffer[playerid] == 999 || !IsPlayerConnected( FreeOffer[playerid])) return true;
if(PlayerInfo[playerid][pCash] < FreePrice[playerid]) return SCM(playerid, COLOR_RED, "У вас недостаточно денег");
format(string, 128, "Вы заплатили адвокату %s %d вирт.",PlayerInfo[FreeOffer[playerid]][pName], FreePrice[playerid]);
SCM(playerid, 0x6495EDFF, string);
format(string, 128, "Вы выпустили %s из тюрьмы за %d вирт.",Name(playerid),FreePrice[playerid]);
SCM(FreeOffer[playerid], 0x6495EDFF, string);
if(SposobOffer[playerid] == 0) PlayerInfo[playerid][pCash] -= FreePrice[playerid];
if(SposobOffer[playerid] == 1) PlayerInfo[playerid][pBank] -= FreePrice[playerid];
PlayerInfo[FreeOffer[playerid]][pCash]+= FreePrice[playerid];
FreeOffer[playerid] = 999;
FreePrice[playerid] = 0;
SposobOffer[playerid] = 0;
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid,1553.4962,-1675.2714,16.1953);
SetPlayerFacingAngle(playerid, 95.0636);
PlayerInfo[playerid][pJailTime] = 0;
PlayerInfo[playerid][pJailed] = 0;
PlayerInfo[playerid][pWantedLevel] = 0;
SCM(playerid, COLOR_YELLOW, "Вы свободны");
SCM(playerid, COLOR_GREEN, "Вы заплатили свой долг обществу");
WantedLevel[playerid] = 0;
WantedTime[playerid] = 0;
WantedPoints[playerid] = 0;
SetPlayerWantedLevel(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
return true;
}
Буду благодарен за спасибку ^^
