Сейчас я вам покажу как зделать жфекты от нарко
Это ко всем forward"ам forward DrugEffectGone(playerid);
forward UsingDrugsUnset(playerid);
Это добавте ко всем new
new DefaultWeather = 10;//погода при действии нарко
new UsingDrugs[MAX_PLAYERS];
Потом создаём такой паблик
[pwn]
public DrugEffectGone(playerid)
{
if(IsPlayerConnected(playerid))
{
if(UsingDrugs[playerid] == 1)
{
SetPlayerWeather(playerid, DefaultWeather);
GameTextForPlayer(playerid, "~w~Drug effect ~p~gone", 3000, 1);
ClearAnimations(playerid);
SetTimerEx("UsingDrugs Unset", 25000, false, "i", playerid);
}
}
return 1;
}
[/pwn]
И еще один
[pwn]
public UsingDrugsUnset(playerid)
{
if(IsPlayerConnected(playerid))
{
UsingDrugs[playerid] = 0;
}
return 1;
}
[/pwn]
Терь сама каманда
[pwn]
if(strcmp(cmd, "/usedrugs", true) == 0) // Drug system
{
if(IsPlayerConnected(playerid))
{
if(PlayerBoxing[playerid] > 0)
{
SendClientMessage(playerid, COLOR_GREY, " Нельзя использовать наркотики во время боя !");
return 1;
}
if(UsingDrugs[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, " Тебя уже плющит !");
return 1;
}
new x_nr[256];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_YELLOW, " Используйте: /usedrugs [название]");
SendClientMessage(playerid, COLOR_GREEN, " Названия: Канапля, Героин");
return 1;
}
if(strcmp(x_nr,"Канапля",true) == 0)
{
if(PlayerInfo[playerid][pDrugs] > 1)
{
PlayerStoned[playerid] += 1;
if(PlayerStoned[playerid] >= 3) { GameTextForPlayer(playerid, "~w~You are~n~~p~Stoned", 4000, 1); }
new Float:health;
GetPlayerHealth(playerid, health);
if(PlayerInfo[playerid][pDrugPerk] > 0)
{
new hp = 2 * PlayerInfo[playerid][pDrugPerk];
hp += 60;
SetPlayerHealth(playerid, health + hp);
}
else
{
SetPlayerHealth(playerid, health + 20.0);
}
PlayerInfo[playerid][pDrugs] -= 2;
SetPlayerWeather(playerid, -68);
UsingDrugs[playerid] = 1;
SetTimerEx("DrugEffectGone", 50000, false, "i", playerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Незнакомец достаёт из кармана касяк, прикуривает, курит травку.");
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
// ApplyAnimation(playerid,"SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0);
// ApplyAnimation(playerid,"GANGS","DRUGS_BUY",4.1,0,1,1,1,1);
SetPlayerSpecialAction(playerid,21);
if(STDPlayer[playerid]==1)
{
STDPlayer[playerid] = 0;
SendClientMessage(playerid, COLOR_WHITE, "* Ты больше не болеешь венерическим заболеванием благодаря наркотикам !");
}
else if(STDPlayer[playerid]==2)
{
STDPlayer[playerid] = 1;
SendClientMessage(playerid, COLOR_WHITE, "*Ты меньше болеешь венерическим заболеванием благодаря наркотикам!");
}
else if(STDPlayer[playerid]==3)
{
STDPlayer[playerid] = 2;
SendClientMessage(playerid, COLOR_WHITE, "* Ты меньше болеешь венерическим заболеванием благодаря наркотикам!");
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " У тебя не осталось наркотиков !");
}
}
else if(strcmp(x_nr,"Героин",true) == 0)
{
if(PlayerInfo[playerid][pDrugs] > 2)
{
PlayerStoned[playerid] += 1;
if(PlayerStoned[playerid] >= 3) { GameTextForPlayer(playerid, "~w~You are~n~~p~Stoned", 4000, 1); }
new Float:health;
GetPlayerHealth(playerid, health);
if(PlayerInfo[playerid][pDrugPerk] > 0)
{
new hp = 2 * PlayerInfo[playerid][pDrugPerk];
hp += 70;
SetPlayerHealth(playerid, health + hp);
}
else
{
SetPlayerHealth(playerid, health + 20.0);
}
PlayerInfo[playerid][pDrugs] -= 3;
SetPlayerWeather(playerid, -30);
UsingDrugs[playerid] = 1;
SetTimerEx("DrugEffectGone", 50000, false, "i", playerid);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s достал белый пакетик, насыпал белого порошка, завернул 100$ купюрю в трубочку и начал нюхать.", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, 0);
ApplyAnimation(playerid,"GANGS","DRUGS_BUY",4.1,0,1,1,1,1);
if(STDPlayer[playerid]==1)
{
STDPlayer[playerid] = 0;
SendClientMessage(playerid, COLOR_WHITE, "* Ты больше не болеешь венерическим заболеванием благодаря наркотикам !");
}
else if(STDPlayer[playerid]==2)
{
STDPlayer[playerid] = 1;
SendClientMessage(playerid, COLOR_WHITE, "* Ты меньше болеешь венерическим заболеванием благодаря наркотикам !");
}
else if(STDPlayer[playerid]==3)
{
STDPlayer[playerid] = 2;
SendClientMessage(playerid, COLOR_WHITE, "* Ты меньше болеешь венерическим заболеванием благодаря наркотикам !");
}
}
else
{
SendClientMessage(playerid, COLOR_RED, " У тебя не осталось наркотиков !");
}
}
else
{
SendClientMessage(playerid, COLOR_YELLOW, " Подсказка: /usedrugs [название]");
SendClientMessage(playerid, COLOR_GREEN, " Названия: Канапля, Героин");
}
}
return 1;
}
[/pwn]
И добавляем еще 1 каманду у кого её нет
[pwn]
if(strcmp(cmd, "/weather", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] < 5)
{
SendClientMessage(playerid, COLOR_GRAD1, " Вы не можете использовать эту команду!");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "Используй: /weather [weat herid]");
return 1;
}
new weather;
weather = strval(tmp);
if(weather < 0||weather > 45) { SendClientMessage(playerid, COLOR_GREY, " .ID погоды от 0 до 45 !"); return 1; }
SetPlayerWeather(playerid, weather);
SendClientMessage(playerid, COLOR_GREY, " Погода установлена !");
}
return 1;
}
[/pwn]
Всё идите в игру жрать наркату и кайфовать от новых эфектов