Alberto_Johnson
Компетентный
Когда то давно делал копию работы на заводе RAKNET.
Может и кому то пригодится.
Если что то забыл пишите :dn:
P.S. выдачу чего либо сами сделаете!
Автор: Bady (Alberto Johnson)
Ко всем new:
Ко всем define:
В OnGameModeInit:
В OnPlayerPickUpPickup:
В OnPlayerConnect:
В OnPlayerEnterCheckpoint:
В OnPlayerKeyStateChange:
В OnPlayerUpdate:
Ко всем диалогом:
В конец мода:
У кого не грузят скрины:
Может и кому то пригодится.
Если что то забыл пишите :dn:
P.S. выдачу чего либо сами сделаете!
Автор: Bady (Alberto Johnson)
Ко всем new:
PHP:
new cexjobpic;
new CexJobKey[MAX_PLAYERS];
new FireCount[MAX_PLAYERS];
new CexJobTime[MAX_PLAYERS];
new cexjob[2];
new Float: cexjobpos[][3] = {
{2558.4937,-1291.0055,1044.1250},
{2556.0537,-1291.0057,1044.1250},
{2553.7737,-1291.0057,1044.1250},
{2544.3096,-1291.0057,1044.1250},
{2542.0234,-1291.0045,1044.1250},
{2542.0928,-1295.8501,1044.1250},
{2544.4287,-1295.8547,1044.1250},
{2553.9265,-1295.8502,1044.1250},
{2556.3018,-1295.8497,1044.1250},
{2558.6357,-1295.8502,1044.1250}
};
PHP:
#define PRESSED(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define RELEASED(%0) (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
PHP:
cexjob[0] = CreatePickup(1318,23,-86.2629,-299.3627,2.7646);
cexjob[1] = CreatePickup(1318,23,2577.4275,-1289.8262,1044.1250,1);
cexjobpic = CreatePickup(1275,23,2568.5022,-1281.2916,1044.1250,1);
PHP:
if(pickupid == cexjobpic)
{
if(GetPVarInt(playerid, "CexJobRab") == 0) ShowPlayerDialog(playerid, 12, 0, "Работник производственного цеха", "Вы действительно желаете начать рабочий день?", "Да", "Нет");
else ShowPlayerDialog(playerid, 13, 0, "Работник производственного цеха", "Вы действительно желаете закончить рабочий день?", "Да", "Нет");
}
if(pickupid == cexjob[0])
{
SetPlayerPos(playerid,2575.9282,-1291.0421,1044.1250);
SetPlayerFacingAngle(playerid, 143.7253);
SetPlayerVirtualWorld(playerid, 1);
SetPlayerInterior(playerid,2);
}
if(pickupid == cexjob[1])
{
SetPlayerPos(playerid,-87.9320,-300.9501,2.7646);
SetPlayerFacingAngle(playerid, 102.4608);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid,0);
DeletePVar(playerid, "GUN"),DeletePVar(playerid, "CexJobRab"),DeletePVar(playerid, "Gjob"),DeletePVar(playerid, "GSkin");
}
PHP:
CexJobKey[playerid] = 0; FireCount[playerid] = 0; CexJobTime[playerid] = 0;
PHP:
if(GetPVarInt(playerid, "Gjob") == 1)
{
ClearAnimations(playerid);
TogglePlayerControllable(playerid, 0);
ApplyAnimation(playerid, "BUDDY", "buddy_reload", 4.1, 1, 1, 1, 1, 0);
SetPlayerAttachedObject(playerid,3,355,14,0.401943,0.011442,0.010348,106.050292,330.509094,3.293162,1.000000,1.000000,1.000000);
CexJobTime[playerid] = 2;
SetPVarInt(playerid,"Gjob",2);
return 0;
}
PHP:
if(GetPVarInt(playerid, "CexJobRab") == 1)
{
if(GetPVarInt(playerid, "Gjob") == 2)
{
if(!CexJobTime[playerid])
{
if(CexJobKey[playerid] != 0 && PRESSED(CexJobKey[playerid]))
{
FireCount[playerid]++;
ClearAnimations(playerid);
if(FireCount[playerid] >= 5) CexJobTime[playerid] = 3;
else CexJobTime[playerid] = 2;
}
else
{
if(!RELEASED(CexJobKey[playerid]))
{
GameTextForPlayer(playerid, "~r~BAD", 5000, 4),SetPVarInt(playerid, "Gjob", 1);
CexJobTime[playerid] = 2,CexJobKey[playerid] = 0,FireCount[playerid] = 0;
TogglePlayerControllable(playerid, 1),RemovePlayerAttachedObject(playerid, 3);
new gcheck = random(sizeof(cexjobpos));
SetPlayerCheckpoint(playerid,cexjobpos[gcheck][0],cexjobpos[gcheck][1],cexjobpos[gcheck][2],1.5);
}
}
}
}
}
PHP:
if(GetPVarInt(playerid, "CexJobRab") == 1)
{
if(GetPVarInt(playerid,"Gjob") == 2)
{
if(CexJobTime[playerid] > 0)
{
CexJobTime[playerid] --;
if(!CexJobTime[playerid])
{
if(FireCount[playerid] >= 6)
{
TogglePlayerControllable(playerid, true),DisablePlayerCheckpoint(playerid);
GameTextForPlayer(playerid, "~y~SUCCESSFULLY", 5000, 4),SetPVarInt(playerid, "Gjob", 1);
CexJobTime[playerid] = 2,CexJobKey[playerid] = 0,FireCount[playerid] = 0;
new gcheck = random(sizeof(cexjobpos));
SetPlayerCheckpoint(playerid,cexjobpos[gcheck][0],cexjobpos[gcheck][1],cexjobpos[gcheck][2],1.5);
}
else SetPlayerRandomKey(playerid, CexJobKey[playerid]);
}
}
}
}
PHP:
case 12:
{
if(!response) return true;
SetPVarInt(playerid, "GSkin",GetPlayerSkin(playerid)),SetPlayerSkin(playerid, 258);
SendClientMessage(playerid,COLOR_BLUE,"Вы начали работу в Производственном Цеху"),SendClientMessage(playerid,COLOR_BLUE,"Идите к столу что бы начать работу"),SendClientMessage(playerid,COLOR_GREEN,"Вы взяли детали, подойдите к столу в центре цеха, чтобы начать упаковку");
SetPVarInt(playerid,"CexJobRab",1);
SetPVarInt(playerid,"Gjob",1);
FireCount[playerid] = 0;
new gcheck = random(sizeof(cexjobpos));
SetPlayerCheckpoint(playerid,cexjobpos[gcheck][0],cexjobpos[gcheck][1],cexjobpos[gcheck][2],1.5);
}
case 13:
{
if(!response) return true;
SetPlayerSkin(playerid, GetPVarInt(playerid, "GSkin"));
SendClientMessage(playerid,COLOR_BLUE,"Продукты можно продать возле завода, на склад"),SendClientMessage(playerid,COLOR_BLUE,"Места продаж так же есть в /gps - по работе - [$]");
SendClientMessage(playerid,COLOR_BLUE,"Чтобы продать что то из инвентаря, выделите объекты и нажмите кнопку SELL"),SendClientMessage(playerid,COLOR_BLUE,"Вы должны находиться возле места продажи");
RemovePlayerAttachedObject(playerid, 3);
DeletePVar(playerid, "GUN"),DeletePVar(playerid, "CexJobRab"),DeletePVar(playerid, "Gjob"),DeletePVar(playerid, "GSkin");
DisablePlayerCheckpoint(playerid);
}
PHP:
stock SetPlayerRandomKey(playerid, &key)
return GameTextForPlayer(playerid, (key = (KEY_YES * (random(2) + 1))) ? ("PRESS ~y~Y") : ("PRESS ~r~N"), 5000, 4), 1;
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Последнее редактирование:
