Здравствуйте уважаемые пользователи pawno-crmp.ru!
Сегодня я решил вырезать систему с мода Your RP.Естественно пришлось подгонять ее под свой мод.
Как пользоваться.Сначала берете спички и дрова(команда /fire, для администрации!),потом вводите /firework и радуетесь.
Можно доработать и сделать покупку в магазине для обычных игроков.
Приступим!
Ко всем new добавим:
new FireProgon[MAX_PLAYERS];
new Firework[MAX_PLAYERS][15];
new Float:FirePos[MAX_PLAYERS][3];//Для координат
new FireWTimer[MAX_PLAYERS];
Далее ко всем командам:
if(strcmp(cmd, "/fire", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 4) return false;
SetPVarInt(playerid, "FireWork", 1);
SCM(playerid, COLOR_YELLOW, "Салют, спички и дрова получены!");
return true;
}
//
if(strcmp(cmd, "/firework", true) == 0)
{
if(GetPVarInt(playerid, "FireWork") == 0) return SCM(playerid, COLOR_GRAD1, "У Вас нет фейерверка!");
new randmodel;
GetPlayerPos(playerid, FirePos[playerid][0], FirePos[playerid][1], FirePos[playerid][2]);
// new OneFirework[playerid] = CreateObject(19122, FirePos[playerid][0]+2, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
for(new i; i < 15; i++)
{
randmodel = 19122+random(5);
Firework[playerid] = CreateObject(randmodel, FirePos[playerid][0]+1, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
}
SendClientMessage(playerid,COLOR_GREY, "Вы установили и подожгли фейерверк!");
SetPVarInt(playerid, "TimerFirework", 10);
FireWTimer[playerid] = SetTimerEx("OpenFirework", 300, true, "d", playerid);
DeletePVar(playerid, "FireWork");
return true;
}
В конец мода:
forward OpenFirework(playerid);
public OpenFirework(playerid)
{
//Запуск
if(GetPVarInt(playerid, "TimerFirework") > 0)
{
new randZ, randX, randY;
SetPVarInt(playerid, "TimerFirework", GetPVarInt(playerid, "TimerFirework")-1);
if(GetPVarInt(playerid, "TimerFirework") <= 0)
{
FireProgon[playerid]++;
if(FireProgon[playerid] == 14)
{
FireProgon[playerid] = 0, DeletePVar(playerid, "TimerFirework"), DeletePVar(playerid, "TimerFirework2"), KillTimer(FireWTimer[playerid]);
for(new i; i < 15; i++) DestroyObject(Firework[playerid]);
return true;
}
for(new ids; ids < 15; ids++)
{
randZ = random(20)+30;
randX = random(20)+5;
randY = random(20)+5;
MoveObject(Firework[playerid][ids], FirePos[playerid][0]+randX, FirePos[playerid][1]+randY, FirePos[playerid][2]+randZ, 50.0);
}
SetPVarInt(playerid, "TimerFirework2", 4);
}
}
//Взрыв
if(GetPVarInt(playerid, "TimerFirework2") > 0)
{
SetPVarInt(playerid, "TimerFirework2", GetPVarInt(playerid, "TimerFirework2")-1);
if(GetPVarInt(playerid, "TimerFirework2") <= 0)
{
new Float:fPOS[3], randmodel;
for(new id; id < 15; id++)
{
GetObjectPos(Firework[playerid][id], fPOS[0], fPOS[1], fPOS[2]);
CreateExplosion(fPOS[0], fPOS[1], fPOS[2], 11, 0.5);
DestroyObject(Firework[playerid][id]);
}
for(new i; i < 15; i++)
{
randmodel = 19122+random(5);
Firework[playerid] = CreateObject(randmodel, FirePos[playerid][0]+1, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
}
SetPVarInt(playerid, "TimerFirework", 5);
}
}
return true;
}
Ну и конечно же скриншоты!
Автор: неизвестно
Автор переделки: я(Sten)
P.S.Если есть вопросы или появились ошибки при компилировании, пишите в данную тему, возможно я забыл вырезать некоторые переменные.
Сегодня я решил вырезать систему с мода Your RP.Естественно пришлось подгонять ее под свой мод.
Как пользоваться.Сначала берете спички и дрова(команда /fire, для администрации!),потом вводите /firework и радуетесь.
Можно доработать и сделать покупку в магазине для обычных игроков.
Приступим!
Ко всем new добавим:
new FireProgon[MAX_PLAYERS];
new Firework[MAX_PLAYERS][15];
new Float:FirePos[MAX_PLAYERS][3];//Для координат
new FireWTimer[MAX_PLAYERS];
Далее ко всем командам:
if(strcmp(cmd, "/fire", true) == 0)
{
if(PlayerInfo[playerid][pAdmin] < 4) return false;
SetPVarInt(playerid, "FireWork", 1);
SCM(playerid, COLOR_YELLOW, "Салют, спички и дрова получены!");
return true;
}
//
if(strcmp(cmd, "/firework", true) == 0)
{
if(GetPVarInt(playerid, "FireWork") == 0) return SCM(playerid, COLOR_GRAD1, "У Вас нет фейерверка!");
new randmodel;
GetPlayerPos(playerid, FirePos[playerid][0], FirePos[playerid][1], FirePos[playerid][2]);
// new OneFirework[playerid] = CreateObject(19122, FirePos[playerid][0]+2, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
for(new i; i < 15; i++)
{
randmodel = 19122+random(5);
Firework[playerid] = CreateObject(randmodel, FirePos[playerid][0]+1, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
}
SendClientMessage(playerid,COLOR_GREY, "Вы установили и подожгли фейерверк!");
SetPVarInt(playerid, "TimerFirework", 10);
FireWTimer[playerid] = SetTimerEx("OpenFirework", 300, true, "d", playerid);
DeletePVar(playerid, "FireWork");
return true;
}
В конец мода:
forward OpenFirework(playerid);
public OpenFirework(playerid)
{
//Запуск
if(GetPVarInt(playerid, "TimerFirework") > 0)
{
new randZ, randX, randY;
SetPVarInt(playerid, "TimerFirework", GetPVarInt(playerid, "TimerFirework")-1);
if(GetPVarInt(playerid, "TimerFirework") <= 0)
{
FireProgon[playerid]++;
if(FireProgon[playerid] == 14)
{
FireProgon[playerid] = 0, DeletePVar(playerid, "TimerFirework"), DeletePVar(playerid, "TimerFirework2"), KillTimer(FireWTimer[playerid]);
for(new i; i < 15; i++) DestroyObject(Firework[playerid]);
return true;
}
for(new ids; ids < 15; ids++)
{
randZ = random(20)+30;
randX = random(20)+5;
randY = random(20)+5;
MoveObject(Firework[playerid][ids], FirePos[playerid][0]+randX, FirePos[playerid][1]+randY, FirePos[playerid][2]+randZ, 50.0);
}
SetPVarInt(playerid, "TimerFirework2", 4);
}
}
//Взрыв
if(GetPVarInt(playerid, "TimerFirework2") > 0)
{
SetPVarInt(playerid, "TimerFirework2", GetPVarInt(playerid, "TimerFirework2")-1);
if(GetPVarInt(playerid, "TimerFirework2") <= 0)
{
new Float:fPOS[3], randmodel;
for(new id; id < 15; id++)
{
GetObjectPos(Firework[playerid][id], fPOS[0], fPOS[1], fPOS[2]);
CreateExplosion(fPOS[0], fPOS[1], fPOS[2], 11, 0.5);
DestroyObject(Firework[playerid][id]);
}
for(new i; i < 15; i++)
{
randmodel = 19122+random(5);
Firework[playerid] = CreateObject(randmodel, FirePos[playerid][0]+1, FirePos[playerid][1], FirePos[playerid][2]-0.5, 0.0, 0.0, 0.0);
}
SetPVarInt(playerid, "TimerFirework", 5);
}
}
return true;
}
Ну и конечно же скриншоты!




Автор: неизвестно
Автор переделки: я(Sten)
P.S.Если есть вопросы или появились ошибки при компилировании, пишите в данную тему, возможно я забыл вырезать некоторые переменные.
Последнее редактирование модератором: