Marcus_Deadwave
Дебютант
PHP:
new pizzarasvozhik[MAX_PLAYERS];
new rabotapizza[MAX_PLAYERS];
new pizzarab[4];
new Pizzaboy[2];
new Text3D:PizzasText[10];
new LastPizzaboyid[MAX_PLAYERS];
new TimerRespawn[MAX_PLAYERS];
enum cInfo
{
Float:Xd,
Float:Yd,
Float:Zd
}
new CheckpointInfo[10][cInfo];
enum PizzaInfo
{
bool:Rent,
Renterid,
Pizzas
}
new PizzaboyInfo[MAX_VEHICLES][PizzaInfo];[/CODE]
[CODE] rabotapizza[playerid] = 0;
pizzarasvozhik[playerid] = 0;
SetPVarInt(playerid,"rentpizza",-1);
SetPVarInt(playerid,"checkpointidpiz",-2);[/CODE]
[CODE]new vehicleid = GetPlayerVehicleID(playerid);
if(newstate == PLAYER_STATE_DRIVER)
{
if(vehicleid >= Pizzaboy[0] && vehicleid <= Pizzaboy[1])
{
if(!pizzarasvozhik[playerid])
{
SendClientMessage(playerid,-1,"{FFFFFF}Вы не работаете в фирме по доставке пиццы!");
RemovePlayerFromVehicle(playerid);
return 1;
}
if(GetPVarInt(playerid,"rentpizza") != vehicleid && GetPVarInt(playerid,"rentpizza") != -1)
{
SendClientMessage(playerid,-1,"{FFFFFF}Вы уже арендовали транспорт!");
RemovePlayerFromVehicle(playerid);
return 1;
}
if(PizzaboyInfo[vehicleid][Renterid] != playerid && PizzaboyInfo[vehicleid][Renterid] != -1)
{
SendClientMessage(playerid,-1,"{FFFFFF}Этот транспорт уже кто-то арендовал!");
RemovePlayerFromVehicle(playerid);
return 1;
}
LastPizzaboyid[playerid] = vehicleid;
KillTimer(TimerRespawn[playerid]);
if(PizzaboyInfo[vehicleid][Renterid] == -1) ShowPlayerDialog(playerid,272,DIALOG_STYLE_MSGBOX,"Аренда","Вы действительно хотите арендовать этот мопед для доставки пиццы?\nЦена: {33CC33}200$","Хочу!","Не хочу!");
}
}
if(newstate == PLAYER_STATE_ONFOOT && oldstate == PLAYER_STATE_DRIVER)
{
if(LastPizzaboyid[playerid] != -1)
{
if(GetPlayerVehicleID(playerid) == GetPVarInt(playerid,"rentpizza"))
{
SendClientMessage(playerid,-1,"{FFFFFF}Если Вы через 30 секунд не вернётесь в транспорт, то транспорт возродится!");
TimerRespawn[playerid]=SetTimerEx("RespawnPizzaboy",30000,0,"dd", playerid, GetPVarInt(playerid,"rentpizza"));
}
}
}[/CODE]
[CODE]if(pickupid == pizzarab[0])
{
SetPlayerPos(playerid,4044.1450195,-1209.0400391,31.008);
SetPlayerFacingAngle(playerid,9.8930);
SetCameraBehindPlayer(playerid);
SetPlayerVirtualWorld(playerid,4);
return 0;
}
if(pickupid == pizzarab[1])
{
SetPlayerPos(playerid,2100.3057,-1807.1256,13.5546);
SetPlayerFacingAngle(playerid,92.3444);
SetCameraBehindPlayer(playerid);
SetPlayerVirtualWorld(playerid,0);
return 0;
}
if(pickupid == pizzarab[2])
{
if(pizzarasvozhik[playerid] == 0)
{
ShowPlayerDialog(playerid,269,DIALOG_STYLE_MSGBOX,"Раздевалка развозчик пиццы","Хотите начать работу развозчик пиццы?","Да","Нет");
return 1;
}
else
{
ShowPlayerDialog(playerid,270,DIALOG_STYLE_MSGBOX,"Раздевалка развозчик пиццы","Хотите завершить работу развозчик пиццы?","Да","Нет");
return 1;
}
}[/CODE]
[CODE]//работа развосчик пиццы
pizzarab[0] = CreatePickup(1318,23,2103.1841,-1807.4302,13.5546,0);
pizzarab[1] = CreatePickup(1318,23,4044.1418,-1210.7780,31.0809,4);
pizzarab[2] = CreatePickup(1210,23,4046.6030,-1201.7780,31.0809,4);
PizzaboyInfo[0][Rent]=false;
PizzaboyInfo[0][Renterid]=-1;
PizzaboyInfo[0][Pizzas]=0;
PizzaboyInfo[1][Rent]=false;
PizzaboyInfo[1][Renterid]=-1;
PizzaboyInfo[1][Pizzas]=0;
PizzaboyInfo[2][Rent]=false;
PizzaboyInfo[2][Renterid]=-1;
PizzaboyInfo[2][Pizzas]=0;
PizzaboyInfo[3][Rent]=false;
PizzaboyInfo[3][Renterid]=-1;
PizzaboyInfo[3][Pizzas]=0;
PizzaboyInfo[4][Rent]=false;
PizzaboyInfo[4][Renterid]=-1;
PizzaboyInfo[4][Pizzas]=0;
PizzaboyInfo[5][Rent]=false;
PizzaboyInfo[5][Renterid]=-1;
PizzaboyInfo[5][Pizzas]=0;
PizzaboyInfo[6][Rent]=false;
PizzaboyInfo[6][Renterid]=-1;
PizzaboyInfo[6][Pizzas]=0;
PizzaboyInfo[7][Rent]=false;
PizzaboyInfo[7][Renterid]=-1;
PizzaboyInfo[7][Pizzas]=0;
PizzaboyInfo[8][Rent]=false;
PizzaboyInfo[8][Renterid]=-1;
PizzaboyInfo[8][Pizzas]=0;
PizzaboyInfo[9][Rent]=false;
PizzaboyInfo[9][Renterid]=-1;
PizzaboyInfo[9][Pizzas]=0;
CheckpointInfo[0][Xd]=-2277.8911;
CheckpointInfo[0][Yd]=1088.4723;
CheckpointInfo[0][Zd]=80.0078;
CheckpointInfo[1][Xd]=-2357.8169;
CheckpointInfo[1][Yd]=660.0190;
CheckpointInfo[1][Zd]=35.1719;
CheckpointInfo[2][Xd]=-2029.5878;
CheckpointInfo[2][Yd]=741.2776;
CheckpointInfo[2][Zd]=49.7407;
CheckpointInfo[3][Xd]=-1775.3689;
CheckpointInfo[3][Yd]=1112.7872;
CheckpointInfo[3][Zd]=45.4453;
CheckpointInfo[4][Xd]=-1732.3239;
CheckpointInfo[4][Yd]=1112.9728;
CheckpointInfo[4][Zd]=45.4453;
CheckpointInfo[5][Xd]=-1831.4490;
CheckpointInfo[5][Yd]=1171.5110;
CheckpointInfo[5][Zd]=33.3164;
CheckpointInfo[6][Xd]=-1852.5270;
CheckpointInfo[6][Yd]=1168.7330;
CheckpointInfo[6][Zd]=40.6652;
CheckpointInfo[7][Xd]=-1914.7461;
CheckpointInfo[7][Yd]=1186.6597;
CheckpointInfo[7][Zd]=45.4453;
CheckpointInfo[8][Xd]=-1997.6345;
CheckpointInfo[8][Yd]=1186.0975;
CheckpointInfo[8][Zd]=45.4453;
CheckpointInfo[9][Xd]=-2084.2666;
CheckpointInfo[9][Yd]=1166.2086;
CheckpointInfo[9][Zd]=50.1443;[/CODE]
[CODE]case 269:
{
if(response)
{
SendClientMessage(playerid,-1,"{FFFFFF}Выйдите на улицу, поверните налево и двигайтесь в сторону парковки.");
SendClientMessage(playerid,-1,"{FFFFFF}Там Вы увидите мопеды нашей компании. Займите один и ждите следующих инструкций.");
SetPlayerSkin(playerid,155);
pizzarasvozhik[playerid] = 1;
}
}
case 270:
{
if(response)
{
SetPVarInt(playerid,"rentpizzaboy",-1);
SetPVarInt(playerid,"checkpointid",-2);
new NumberPizzaboy;
new strings[100];
new string[156];
new money = rabotapizza[playerid]*100;
Kirp[playerid] = 0;
pizzarasvozhik[playerid] = 0;
KillTimer(TimerRespawn[playerid]);
if(LastPizzaboyid[playerid]==Pizzaboy[0]) NumberPizzaboy=0;
if(LastPizzaboyid[playerid]==Pizzaboy[1]) NumberPizzaboy=1;
if(LastPizzaboyid[playerid]==Pizzaboy[2]) NumberPizzaboy=2;
if(LastPizzaboyid[playerid]==Pizzaboy[3]) NumberPizzaboy=3;
if(LastPizzaboyid[playerid]==Pizzaboy[4]) NumberPizzaboy=4;
if(LastPizzaboyid[playerid]==Pizzaboy[5]) NumberPizzaboy=5;
if(LastPizzaboyid[playerid]==Pizzaboy[6]) NumberPizzaboy=6;
if(LastPizzaboyid[playerid]==Pizzaboy[7]) NumberPizzaboy=7;
if(LastPizzaboyid[playerid]==Pizzaboy[8]) NumberPizzaboy=8;
if(LastPizzaboyid[playerid]==Pizzaboy[9]) NumberPizzaboy=9;
Delete3DTextLabel(PizzasText[vehicleid]);
SetPVarInt(playerid,"rentpizzaboy",-1);
PizzaboyInfo[vehicleid][Rent]=false;
PizzaboyInfo[vehicleid][Renterid]=-1;
PizzaboyInfo[vehicleid][Pizzas]=0;
SetVehicleToRespawn(Pizzaboy[vehicleid]);
if(PlayerInfo[playerid][pSkinOrg] == 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
if(PlayerInfo[playerid][pSkinOrg] > 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pSkinOrg]);
if(PlayerInfo[playerid][pMember] >= 1 || PlayerInfo[playerid][pAdmin] == 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pSkinOrg]);
if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pAdmin] > 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
format(string, sizeof(string), "Вы закончили работу. Ваш заработок: {00FF00}$%d", money);
SendClientMessage(playerid, COLOR_WHITE, string);
rabotapizza[playerid] = 0;
PlayerInfo[playerid][pMoney] += money;
format(strings, sizeof(strings), "~g~+%d$", money);
GameTextForPlayer(playerid,strings,3000,1);
}
}
case 271:
{
if(response)
{
if(PlayerInfo[playerid][pMoney] < 200)
{
SendClientMessage(playerid,-1,"{FFFFFF}У Вас не хватает денег!");
RemovePlayerFromVehicle(playerid);
return 1;
}
PlayerInfo[playerid][pMoney] -= 200;
new vehicleid=GetPlayerVehicleID(playerid);
new NumberPizzaboy;
if(vehicleid==Pizzaboy[0]) NumberPizzaboy=0;
if(vehicleid==Pizzaboy[1]) NumberPizzaboy=1;
if(vehicleid==Pizzaboy[2]) NumberPizzaboy=2;
if(vehicleid==Pizzaboy[3]) NumberPizzaboy=3;
if(vehicleid==Pizzaboy[4]) NumberPizzaboy=4;
if(vehicleid==Pizzaboy[5]) NumberPizzaboy=5;
if(vehicleid==Pizzaboy[6]) NumberPizzaboy=6;
if(vehicleid==Pizzaboy[7]) NumberPizzaboy=7;
if(vehicleid==Pizzaboy[8]) NumberPizzaboy=8;
if(vehicleid==Pizzaboy[9]) NumberPizzaboy=9;
SetPVarInt(playerid,"rentpizzaboy",Pizzaboy[NumberPizzaboy]);
PizzaboyInfo[vehicleid][Rent]=true;
PizzaboyInfo[vehicleid][Renterid]=playerid;
SendClientMessage(playerid,-1,"Вы успешно арендовали мопед для доставки пиццы!");
SendClientMessage(playerid,-1,"Теперь двигайтесь на красный чекпоинт, который изображён у Вас на карте, чтобы взять пиццы!");
SetPlayerCheckpoint(playerid,-1718.6490,1365.3203,7.1875,2);
SetPVarInt(playerid,"checkpointid",-1);
new string[40];
format(string,sizeof(string),"{33CC33}Загружено: {FFCC00}%d/5 пицц", PizzaboyInfo[vehicleid][Pizzas]);
PizzasText[vehicleid] = Create3DTextLabel(string, -1, 0, 0, 0, 10, 0, 1);
Attach3DTextLabelToVehicle(PizzasText[vehicleid], Pizzaboy[vehicleid], 0, 0, 0);
return 1;
}
RemovePlayerFromVehicle(playerid);
return 1;
}[/CODE]
[CODE]new rand;
new rand1;
if(GetPVarInt(playerid,"checkpointid")==-1)
{
new vehicleid=GetPlayerVehicleID(playerid);
new NumberPizzaboy;
if(vehicleid==Pizzaboy[0]) NumberPizzaboy=0;
if(vehicleid==Pizzaboy[1]) NumberPizzaboy=1;
if(vehicleid==Pizzaboy[2]) NumberPizzaboy=2;
if(vehicleid==Pizzaboy[3]) NumberPizzaboy=3;
if(vehicleid==Pizzaboy[4]) NumberPizzaboy=4;
if(vehicleid==Pizzaboy[5]) NumberPizzaboy=5;
if(vehicleid==Pizzaboy[6]) NumberPizzaboy=6;
if(vehicleid==Pizzaboy[7]) NumberPizzaboy=7;
if(vehicleid==Pizzaboy[8]) NumberPizzaboy=8;
if(vehicleid==Pizzaboy[9]) NumberPizzaboy=9;
PizzaboyInfo[vehicleid][Pizzas]=5;
new string[40];
format(string,sizeof(string),"{33CC33}Загружено: {FFCC00}%d/5 пицц", PizzaboyInfo[vehicleid][Pizzas]);
Update3DTextLabelText(PizzasText[vehicleid],-1,string);
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid,-1,"{FFFFFF}Теперь едьте на красный чекпоинт, чтобы завезти горячую пиццу!");
rand=random(10);
SetPlayerCheckpoint(playerid,CheckpointInfo[rand][Xd],CheckpointInfo[rand][Yd],CheckpointInfo[rand][Zd],2);
SetPVarInt(playerid,"checkpointid",rand);
rand1=rand;
return 1;
}
if(GetPVarInt(playerid,"checkpointid")>-1)
{
new vehicleid=GetPlayerVehicleID(playerid);
new NumberPizzaboy;
if(vehicleid==Pizzaboy[0]) NumberPizzaboy=0;
if(vehicleid==Pizzaboy[1]) NumberPizzaboy=1;
if(vehicleid==Pizzaboy[2]) NumberPizzaboy=2;
if(vehicleid==Pizzaboy[3]) NumberPizzaboy=3;
if(vehicleid==Pizzaboy[4]) NumberPizzaboy=4;
if(vehicleid==Pizzaboy[5]) NumberPizzaboy=5;
if(vehicleid==Pizzaboy[6]) NumberPizzaboy=6;
if(vehicleid==Pizzaboy[7]) NumberPizzaboy=7;
if(vehicleid==Pizzaboy[8]) NumberPizzaboy=8;
if(vehicleid==Pizzaboy[9]) NumberPizzaboy=9;
PizzaboyInfo[vehicleid][Pizzas]--;
new string[144];
format(string,sizeof(string),"{33CC33}Загружено: {FFCC00}%d/5 пицц", PizzaboyInfo[vehicleid][Pizzas]);
Update3DTextLabelText(PizzasText[vehicleid],-1,string);
DisablePlayerCheckpoint(playerid);
rabotapizza[playerid]++;
format(string,sizeof(string),"{FFFFFF}Вы заработали {FF0000}100${FFFFFF}. Всего заработано: {FF0000}%d$", rabotapizza[playerid]);
SendClientMessage(playerid,-1,string);
if(PizzaboyInfo[vehicleid][Pizzas]==0)
{
SendClientMessage(playerid,-1,"Теперь двигайтесь на красный чекпоинт, который изображён у Вас на карте, чтобы взять пиццы!");
SetPlayerCheckpoint(playerid,-1718.6490,1365.3203,7.1875,2);
SetPVarInt(playerid,"checkpointid",-1);
return 1;
}
SendClientMessage(playerid,-1,"{FFFFFF}Едьте на следующий чекпоинт");
rand=random(10);
while(rand1==rand)
{
rand=random(10);
}
SetPlayerCheckpoint(playerid,CheckpointInfo[rand][Xd],CheckpointInfo[rand][Yd],CheckpointInfo[rand][Zd],2);
SetPVarInt(playerid,"checkpointid",rand);
return 1;
}[/CODE]
[CODE]stock RespawnPizzaboy(playerid,vehicleid)
{
SendClientMessage(playerid,-1,"{FFFFFF}Ваше т.c было возрождено!");
Delete3DTextLabel(PizzasText[vehicleid]);
SetPVarInt(playerid,"rentpizzaboy",-1);
PizzaboyInfo[vehicleid][Rent]=false;
PizzaboyInfo[vehicleid][Renterid]=-1;
PizzaboyInfo[vehicleid][Pizzas]=0;
SetVehicleToRespawn(Pizzaboy[vehicleid]);
return 1;
}
Последнее редактирование модератором:
