11.01.2012, 08:34
Чтобы снизить нагрузку, решил использовать плагин от Fro1sha MultyThread - https://sampforum.blast.hk/showthread.php?tid=264178
Но почему то он не работает. СА-МП 0.3с. Вот создал 4 потока (создаются в OnGameModeInit)
В чем может быть проблема? Плагин стоит.
Но почему то он не работает. СА-МП 0.3с. Вот создал 4 потока (создаются в OnGameModeInit)
PHP код:
forward ReKlaMa(threadid);
forward GUNS(threadid);
forward ZP(threadid);
forward TimeChanger(threadid);
CreateThreadEx("ZP");
CreateThreadEx("ReKlaMa");
CreateThreadEx("GUNS");
CreateThreadEx("TimeChanger");
public ReKlaMa(threadid)// переодически показывает рекламу
{
SendClientMessageToAll(0x00FBFFAA,"{33AA33}Полезные команды: /team /rank /info /tp /job /faq /report");
SleepThread(1000000);
return 1;
}
public GUNS(threadid)// переодически выдает рандомное оружие
{
for(new i; i < GetMaxPlayers(); i++)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(i, x, y, z);
if(x >= 1769.0328 && y >= -1328.0679 && x <= 1851.3405 && y <= -1266.2637) continue;
if(GetPVarInt(i,"Jailed") > 0) return SendClientMessage(i,COLOR_YELLOW, "Вы неполучили бонусное оружие");
SendClientMessage(i, COLOR_LIGHTBLUE, "{FF0000}Время бонусного оружия!!!");
switch(random(8))
{
case 0: SendClientMessage(i, COLOR_LIGHTBLUE, "{ADFF2F}Из бонусного оружия тебе выпало:{FF0000}М4А1(150)") && GivePlayerWeapon(i,31,150) && GameTextForPlayer(i,"~G~M4A1",5000,1);
case 1: SendClientMessage(i, COLOR_LIGHTBLUE, "{ADFF2F}Из бонусного оружия тебе выпал:{FF0000}Тек-9(300)") && GivePlayerWeapon(i,32,300) && GameTextForPlayer(i,"~G~TEK-9",5000,1);
}
}
SleepThread(700000);
return 1;
}
public ZP(threadid)//ЗАРПЛАТА
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
SendClientMessage(i, COLOR_LIGHTBLUE, "{FFFFFF}-----------{ADFF2F}Прибыль{FFFFFF}----------");
if(gTeam[i]==TEAM_CTPAX) SendClientMessage(i, COLOR_GREENYELLOW, " {FFFFFF}Клан:{ADFF2F}+2500${ADFF2F} ") && GivePlayerMoney(i,2500);
else SendClientMessage(i, COLOR_GREENYELLOW, " {FFFFFF}Клан:{ADFF2F} ---{ADFF2F} ");
if(GetPlayerScore(i) >= 8000) SendClientMessage(i, COLOR_GREENYELLOW, " {FFFFF F}Ранг:{ADFF2F}+30000${ADFF2F} |") && GivePlayerMoney(i,30000);
else if(GetPlayerScore(i) >= 3000&& GetPlayerScore(i) < 8000) SendClientMessage(i, COLOR_GREENYELLOW, " {FFFFFF}Ранг:{ADFF2F}+22000${ADFF2F} ") && GivePlayerMoney(i,22000);
else if(GetPlayerScore(i) >= 1000 && GetPlayerScore(i) < 3000) SendClientMessage(i, COLOR_GREENYELLOW, " {FFFFFF}Ранг:{ADFF2F}+17000${ADFF2F} ") && GivePlayerMoney(i,16000);
SendClientMessage(i, COLOR_GREENYELLOW, "|--------------------------------------------");
}
SleepThread(1800000);
return 1;
}
public TimeChanger( threadid )
{
switch (TimeHelper)
{
case 0:
{
SetWorldTime(14);
TimeHelper=1;
}
case 1:
{
SetWorldTime(16);
TimeHelper=2;
}
case 2:
{
SetWorldTime(18);
TimeHelper=3;
}
case 3:
{
SetWorldTime(20);
TimeHelper=4;
}
case 4:
{
SetWorldTime(22);
TimeHelper=5;
}
case 5:
{
SetWorldTime(0);
TimeHelper=6;
}
case 6:
{
SetWorldTime(2);
TimeHelper=7;
}
case 7:
{
SetWorldTime(4);
TimeHelper=8;
}
case 8:
{
SetWorldTime(6);
TimeHelper=9;
}
case 9:
{
SetWorldTime(8);
TimeHelper=10;
}
case 10:
{
SetWorldTime(10);
TimeHelper=11;
}
case 11:
{
SetWorldTime(12);
TimeHelper=0;
}
}
SaveForRestart();
SleepThread(300000);
}