Unreal
Компетентный
Автор вырезки: Unreal
Вырезано с мода Mystic RP.
Работа полностью на пикапах.
Ко всем new
В OnGameModeInit
В Public OnPlayerPickUpPickup
В OnPlayerConnect
В Public OnDialogResponse
В OnPlayerKeyStateChange
И в конец мода:
Вот и все.
Местоположение: Напротив ЖДСФ, там стройка.
Вырезано с мода Mystic RP.
Работа полностью на пикапах.
Ко всем new
PHP:
new razdel,kirplog;
new kirp1,kirp2,kirp3;
new Stroitel[MAX_PLAYERS];
new Kirp[MAX_PLAYERS];
new kirpzp[MAX_PLAYERS];
new penoblokzp[MAX_PLAYERS];
В OnGameModeInit
PHP:
kirplog = CreatePickup(3798,23,-2041.1079,308.4821,35.1926);
razdel = CreatePickup(1275,23,-2098.7800,257.9827,36.1286);
kirp1 = CreatePickup(19197,23,-2126.9829,276.1057,35.4507);
kirp2 = CreatePickup(19197,23,-2131.0110,229.9198,35.6773);
kirp3 = CreatePickup(19197,23,-2104.3020,121.2063,35.3045);
//---- 3д тексты----//
CreateDynamic3DTextLabel( "Кирпичи", 0xFFFFFFFF, -2126.9829,276.1057,35.4507,10,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1, -1, -1);
CreateDynamic3DTextLabel( "Кирпичи", 0xFFFFFFFF, -2131.0110,229.9198,35.6773,10,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1, -1, -1);
CreateDynamic3DTextLabel( "Пеноблоки", 0xFFFFFFFF, -2104.3020,121.2063,35.3045,10,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1, -1, -1);
Код:
if(pickupid == razdel)
{
if(Stroitel[playerid] == 0 && PlayerInfo[playerid][pMember] == 0)
{
ShowPlayerDialog(playerid,1118,DIALOG_STYLE_MSGBOX,"Раздевалка строителей","Хотите начать работу строителя?","Да","Нет");
return 1;
}
else
{
ShowPlayerDialog(playerid,1119,DIALOG_STYLE_MSGBOX,"Раздевалка строителей","Хотите завершить работу строителя?","Да","Нет");
return true;
}
}
if(pickupid == kirp1)
{
if(Stroitel[playerid] == 1)
{
if(Kirp[playerid] == 0)
{
Kirp[playerid] = 1;
ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);
SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);
SetPlayerAttachedObject(playerid, 4, 2936, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"У вас уже есть кирпич");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять кирпич, для начала работы переоденьтесь в одежду {00FFFF}строителя.");
}
}
if(pickupid == kirp2)
{
if(Stroitel[playerid] == 1)
{
if(Kirp[playerid] == 0)
{
Kirp[playerid] = 1;
ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);
SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);
SetPlayerAttachedObject(playerid, 4, 2936, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"У вас уже есть кирпич");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять кирпич, для начала работы переоденьтесь в одежду {00FFFF}строителя.");
}
}
if(pickupid == kirp3)
{
if(Stroitel[playerid] == 1)
{
if(Kirp[playerid] == 0)
{
Kirp[playerid] = 2;
ApplyAnimation(playerid, "CARRY", "liftup", 4.0, 0, 0, 0, 1, 1);
SetTimerEx("ClearAnimText2", 1000, false, "d", playerid);
SetPlayerAttachedObject(playerid, 4, 2936, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);
return 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"У вас уже есть пеноблок");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Вы не можете взять пеноблок, для начала работы переоденьтесь в одежду {00FFFF}строителя.");
}
}
if(pickupid == kirplog)
{
if(Kirp[playerid] == 0)
{
SendClientMessage(playerid,COLOR_GREY,"У вас нет кирпича!");
return 1;
}
else
{
if(Kirp[playerid] == 1)
{
Kirp[playerid] = 0;
RemovePlayerAttachedObject(playerid, 4);
ApplyAnimation(playerid,"CARRY","putdwn",4.1,0,1,1,1,1);
SendClientMessage(playerid,COLOR_WHITE,"Вы принесли обычный кирпич");
SetTimerEx("ClearAnimText", 1400, false, "d", playerid);
kirpzp[playerid]++;
}
if(Kirp[playerid] == 2)
{
Kirp[playerid] = 0;
RemovePlayerAttachedObject(playerid, 4);
ApplyAnimation(playerid,"CARRY","putdwn",4.1,0,1,1,1,1);
SendClientMessage(playerid,COLOR_WHITE,"Вы принесли пеноблок");
SetTimerEx("ClearAnimText", 1400, false, "d", playerid);
penoblokzp[playerid]++;
}
}
}
PHP:
kirpzp[playerid] = 0; penoblokzp[playerid] = 0;
Код:
case 1118:
{
if(response)
{
SetPlayerSkin(playerid,27);
Stroitel[playerid] = 1;
SendClientMessage(playerid,COLOR_WHITE,"Вы начали рабочий день строителя. {A41C1C}Отправляйтесь за кирпичами");
return 1;
}
else
{
}
}
case 1119:
{
if(response)
{
new strings[256];
new stri[256];
new string[256];
new money = kirpzp[playerid]*60+penoblokzp[playerid]*80;
Kirp[playerid] = 0;
Stroitel[playerid] = 0;
RemovePlayerAttachedObject(playerid, 4);
ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 1);
if(PlayerInfo[playerid][pMember] >= 1 || PlayerInfo[playerid][pLeader] >= 1)
{
SetPlayerSkin(playerid,PlayerInfo[playerid][pChar]);
}
if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0)
{
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
}
format(string, sizeof(string), "Вы закончили работу. Ваш заработок: {00FF00}$%d", money);
SendClientMessage(playerid, COLOR_WHITE, string);
format(stri, sizeof(stri), "Вы принесли {A41C1C}%d{FFFFFF}обычных кирпичей и {A41C1C}%d{FFFFFF}пеноблоков",kirpzp[playerid],penoblokzp[playerid]);
SendClientMessage(playerid, COLOR_WHITE, stri);
kirpzp[playerid] = 0;
penoblokzp[playerid] = 0;
GivePlayerMoney(playerid, money);
format(strings, sizeof(strings), "~g~+%d$", money);
GameTextForPlayer(playerid,strings,3000,1);
return 1;
}
else
{
}
}
Код:
if(KEY_SPRINT && Kirp[playerid] == 1 || KEY_JUMP && Kirp[playerid] == 1)
{
SendClientMessage(playerid,0xFFAA00FF, "Вы уронили кирпич!");
ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 1);
Kirp[playerid] = 0;
RemovePlayerAttachedObject(playerid, 4);
return 1;
}
И в конец мода:
Код:
forward ClearAnimText2(playerid);
public ClearAnimText2(playerid)
{
//ClearAnimations(playerid);
ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 1, 1);
return 1;
}
forward ClearAnimText(playerid);
public ClearAnimText(playerid)
{
//ClearAnimations(playerid);
ApplyAnimation(playerid,"CARRY","crry_prtial",4.0,0,0,0,0,0);
return 1;
}
Местоположение: Напротив ЖДСФ, там стройка.
Последнее редактирование модератором:
