Saibot
Мастер
Ваша задача ездить по местам в которых образовался пожар и тушить его.
Работа находиться в San Fierro возле вокзала!
Работа находиться в San Fierro возле вокзала!
Ко всем define
PHP:
#define HOLDING(%0) ((newkeys & (%0)) == (%0))
PHP:
new completion_fire [ MAX_PLAYERS char ], object_fire [ MAX_PLAYERS char ],
clothes_fire, fire_tc [ 4 ];
static const Float: checkpoint_fire [ 11 ] [ 3 ] =
{
{-541.3409,-560.3647,25.5234},
{36.5221,-290.3575,2.0918},
{1257.9561,250.2063,19.5547},
{2320.3154,-75.9036,26.4844},
{1099.0593,-356.3210,73.9922},
{1362.6869,366.9150,20.5547},
{309.9079,-54.5438,1.5781},
{121.2022,-149.7604,1.5781},
{-219.0738,1165.0209,19.7422},
{-799.5907,1623.1760,27.1172},
{-2507.6418,2368.7292,4.9834}
};
PHP:
clothes_fire = CreatePickup(1275,2,-2025.5082,67.1673,28.4671,0);
fire_tc[0] = AddStaticVehicleEx(407, -2021.7339, 93.2404, 28.2583, -90.0000, -1, -1, 200);
fire_tc[1] = AddStaticVehicleEx(407, -2021.7303, 86.7794, 28.2583, -90.0000, -1, -1, 200);
fire_tc[2] = AddStaticVehicleEx(407, -2021.8757, 73.2370, 28.2583, -90.0000, -1, -1, 200);
fire_tc[3] = AddStaticVehicleEx(407, -2021.8336, 79.9215, 28.2583, -90.0000, -1, -1, 200);
PHP:
if(GetPVarInt(i, "press_fire"))
{
if(completion_fire{i} == 30)
{
new money = 2000 + random(1000);
SendClientMessage(i, 0x33CCFFFF, !"[FDSA]: Ты успешно потушил пожар, езжай далее.");
format(string,sizeof(string), "~g~money ~w~+%d$",money);
GameTextForPlayer(i, string, 5000, 6);
PlayerInfo[i][pMoney] += money;
PlayerPlaySound(i, 1056, 0.0, 0.0, 0.0);
DestroyObject(object_fire{i});
DeletePVar(i,"on_zone");
DeletePVar(i,"press_fire");
fire_stock(i);
}
else
{
format(string, sizeof(string), "%d", 30 - completion_fire{i});
GameTextForPlayer(i, string, 1500, 6);
completion_fire{i} += 1;
}
}
PHP:
new vehicle = GetPlayerVehicleID(playerid);
if(vehicle >= fire_tc[0] && vehicle <= fire_tc[3])
{
SendClientMessage(playerid, 0x33CCFFFF, !"[FDSA]: Езжай к месту пожара!");
fire_stock(playerid);
}
PHP:
if(GetPVarInt(playerid, "chekpoint_fire"))
{
PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
SetPVarInt(playerid,"on_zone",1);
DeletePVar(playerid,"chekpoint_fire");
DisablePlayerRaceCheckpoint(playerid);
}
PHP:
if(pickupid == clothes_fire)
{
if(GetPlayerSkin(playerid) == 279)return SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);//pModel меняем на свою
SetPlayerSkin(playerid, 279);
SendClientMessage(playerid, 0x33CCFFFF, !"[FDSA]: Садись в пожарную машину!");
}
PHP:
if(HOLDING(KEY_FIRE) && GetPVarInt(playerid, "on_zone") && !GetPVarInt(playerid, "press_fire"))
{
new Float: object_x,
Float: object_y,
Float: object_z;
GetObjectPos(object_fire{playerid}, object_x, object_y, object_z);
if(IsPlayerInRangeOfPoint(playerid, 10.0, object_x, object_y, object_z))// 10.0 << Радиус можете поменять!
{
SetPVarInt(playerid,"press_fire",1);
}
}
else if(GetPVarInt(playerid, "on_zone") && GetPVarInt(playerid, "press_fire"))
{
DeletePVar(playerid,"press_fire");
}
PHP:
stock fire_stock(playerid)
{
new rand = random(sizeof(checkpoint_fire));
SetPlayerRaceCheckpoint(playerid,2,checkpoint_fire[rand][0],checkpoint_fire[rand][1],checkpoint_fire[rand][2],0.0,0.0,0.0,10.0);
object_fire{playerid} = CreateObject(18691,checkpoint_fire[rand][0],checkpoint_fire[rand][1],checkpoint_fire[rand][2],0.0,0.0,0.0);
completion_fire{playerid} = 0;
SetPVarInt(playerid,"chekpoint_fire",1);
}
Скриншоты:
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Автор: Saibot
Последнее редактирование:
