Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Работа строителя тунеля [Copy Union RP]

Статус
В этой теме нельзя размещать новые ответы.

KoTT

Новичок
Доброго дня, сегодня я решил сделать копию работы "Строитель тунеля", с проекта Union Role Play. Возможно где-то что-то не так сделал, пишите в тему, будет исправлено. Итак, начнём.

Ко всем new:

PHP:
#define dStroika 555
new stroikapick[4];
В public OnGameModeInit:
PHP:
stroikapick[0] = CreateDynamicPickup(1275,23,-891.10,-1115.63,99.24);
stroikapick[1] = CreateDynamicPickup(1559,23,-898.24,-1113.39,98.79);
stroikapick[2] = CreateDynamicPickup(2060,23,-933.88,-1076.88,98.31);
stroikapick[3] = CreateDynamicPickup(1559,23,-886.21,-1104.28,98.90);
В public OnPlayerPickUpDynamicPickup(playerid, pickupid):
PHP:
    if(pickupid == stroikapick[0])
	{
	    if(!GetPVarInt(playerid,"StroikaJob")) ShowPlayerDialog(playerid,dStroika,DIALOG_STYLE_MSGBOX,"{4682B4}Раздевалка строителей тунеля","Хотите начать работу строителя?","Да","Нет");
		else if(GetPVarInt(playerid,"StroikaJob") == 1) ShowPlayerDialog(playerid,dStroika,DIALOG_STYLE_MSGBOX,"{4682B4}Раздевалка строителей тунеля","Хотите завершить работу строителя?","Да","Нет");
	}
	if(pickupid == stroikapick[1] && GetPVarInt(playerid,"StroikaProgress") == 1)
	{
	    if(IsPlayerAttachedObjectSlotUsed(playerid, 3))
	    {
		    RemovePlayerAttachedObject(playerid, 3);
	        SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
	    }
	    DisablePlayerCheckpoint(playerid);
	    SetPlayerCheckpoint(playerid,-933.73,-1076.98,98.31,5.0);
	    SendClientMessage(playerid,0xFFFFFFFF,"Место на карте помечено красной меткой");
	    SetPVarInt(playerid,"StroikaProgress",2);
	    SetPlayerSpecialAction(playerid, SPECIAL_ACTION_CARRY);
        SetPlayerAttachedObject(playerid, 3, 2936, 5, 0.105, 0.086, 0.22, -80.3, 3.3, 28.7, 0.35, 0.35, 0.35);
	}
	if(pickupid == stroikapick[2] && GetPVarInt(playerid,"StroikaProgress") == 2)
	{
	    if(IsPlayerAttachedObjectSlotUsed(playerid, 3))
		{
			RemovePlayerAttachedObject(playerid, 3);
			SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
		}
		SendClientMessage(playerid,-1,"{3B9480}Металл успешно доставлен на склад");
		SendClientMessage(playerid,0xFFFFFFFF,"Теперь Отнесите за собой мусор");
		SendClientMessage(playerid,0xFFFFFFFF,"Место на карте помечено красной меткой");
		SetPVarInt(playerid,"StroikaProgress",3);
		DisablePlayerCheckpoint(playerid);
	    SetPlayerCheckpoint(playerid,-886.00,-1104.06,98.52,5.0);
	    SetPlayerAttachedObject(playerid, 3, 1265, 5, 0.105, 0.086, 0.22, -80.3, 3.3, 28.7, 0.35, 0.35, 0.35);
	    ClearAnimations(playerid);
	}
	if(pickupid == stroikapick[3] && GetPVarInt(playerid,"StroikaProgress") == 3)
	{
	    ClearAnimations(playerid);
	    SetPVarInt(playerid,"StroikaCount",GetPVarInt(playerid,"StroikaCount")+1);
		SendClientMessage(playerid,0xFFFFFFFF,"Вы получили +1 опыт работы");
		SetPVarInt(playerid,"StroikaProgress",1);
		DisablePlayerCheckpoint(playerid);
	    if(IsPlayerAttachedObjectSlotUsed(playerid, 3))
		{
			RemovePlayerAttachedObject(playerid, 3);
			SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);
		}
	}
В public OnDialogResponse:
PHP:
        case dStroika:
	    {
	        if(!response) return 1;
	        if(!GetPVarInt(playerid,"StroikaJob"))
	        {
	            if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
	            SendClientMessage(playerid,0xFFFFFFFF,"Вы начали рабочий день строителя. {A41C1C}Отправляйтесь за материалом");
	            SendClientMessage(playerid,0xFFFFFFFF,"Место на карте помечено красной меткой");
	            SetPVarInt(playerid,"StroikaJob",1);
	            SetPVarInt(playerid,"StroikaProgress",1);
	            SetPVarInt(playerid,"StroikaSkin",GetPlayerSkin(playerid));
	            SetPlayerSkin(playerid,27);
	            SetPlayerCheckpoint(playerid,-898.24,-1113.39,98.79,5.0);
	        }
	        else if(GetPVarInt(playerid,"StroikaJob") == 1)
	        {
	            if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
	            static const format_str[] = "Вы закончили работу. Ваш заработок: {00FF00}$%d {FFFFFF}| Вы принесли  {A41C1C}%d{FFFFFF} обычных кирпичей";
	            new string[sizeof(format_str)-4+13];
	            format(string,sizeof(string),format_str,GetPVarInt(playerid,"StroikaCount")*20,GetPVarInt(playerid,"StroikaCount"));
	            SendClientMessage(playerid,0xFFFFFFFF,string);
	            GivePlayerMoney(playerid,GetPVarInt(playerid,"StroikaCount")*20);
	            SetPlayerSkin(playerid,GetPVarInt(playerid,"StroikaSkin"));
	            DeletePVar(playerid,"StroikaJob");
	            DeletePVar(playerid,"StroikaCount");
	            DeletePVar(playerid,"StroikaProgress");
	            DeletePVar(playerid,"StroikaSkin");
	            DisablePlayerCheckpoint(playerid);
	        }
	    }
Объекты:
PHP:
    new stroikaint[68];
    stroikaint[0] = CreateDynamicObject(4816, -1182.785034, -830.760986, 69.716003, 0.000000, 0.000000, 222.479004);
	SetDynamicObjectMaterial(stroikaint[0], 0, 16640, "a51", "bonyrd_skin2");
	stroikaint[1] = CreateDynamicObject(16305, -1183.181030, -821.174988, 68.512001, 0.000000, 0.000000, -65.338997);
	SetDynamicObjectMaterial(stroikaint[1], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[2] = CreateDynamicObject(16305, -1210.779053, -785.809021, 77.855003, 0.000000, 0.000000, 133.259003);
	SetDynamicObjectMaterial(stroikaint[2], 0, 16640, "a51", "sw_olddrum1");
	stroikaint[3] = CreateDynamicObject(16305, -1216.401001, -791.429016, 77.855003, 0.000000, 0.000000, 133.259003);
	SetDynamicObjectMaterial(stroikaint[3], 0, 16640, "a51", "sw_olddrum1");
	stroikaint[4] = CreateDynamicObject(16305, -1220.145996, -771.593994, 58.597000, 0.000000, 90.000000, 139.738998);
	SetDynamicObjectMaterial(stroikaint[4], 0, 16640, "a51", "sw_olddrum1");
	stroikaint[5] = CreateDynamicObject(16305, -1226.213013, -777.297974, 58.597000, 0.000000, 90.000000, 133.259003);
	SetDynamicObjectMaterial(stroikaint[5], 0, 16640, "a51", "sw_olddrum1");
	stroikaint[6] = CreateDynamicObject(16305, -1006.849976, -992.872009, 93.305000, 0.000000, 0.000000, -65.338997);
	SetDynamicObjectMaterial(stroikaint[6], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[7] = CreateDynamicObject(16305, -1006.276978, -1001.489014, 95.057999, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[7], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[8] = CreateDynamicObject(16305, -1001.523987, -1003.559998, 95.057999, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[8], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[9] = CreateDynamicObject(4816, -1014.965027, -1015.275024, 99.191002, 0.000000, 0.000000, 168.539993);
	SetDynamicObjectMaterial(stroikaint[9], 0, 16640, "a51", "bonyrd_skin2");
	stroikaint[10] = CreateDynamicObject(4816, -995.844971, -1009.981995, 99.191002, 0.000000, 0.000000, 201.839005);
	SetDynamicObjectMaterial(stroikaint[10], 0, 16640, "a51", "bonyrd_skin2");
	stroikaint[11] = CreateDynamicObject(16305, -975.655029, -1031.796997, 97.574997, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[11], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[12] = CreateDynamicObject(4816, -977.848999, -1034.456055, 99.191002, 0.000000, 0.000000, 91.499001);
	SetDynamicObjectMaterial(stroikaint[12], 0, 16640, "a51", "bonyrd_skin2");
	stroikaint[13] = CreateDynamicObject(17062, -970.754028, -1037.602051, 96.491997, 0.000000, 0.000000, 40.042999);
	SetDynamicObjectMaterial(stroikaint[13], 256, 16640, "a51", "sw_olddrum1");
	stroikaint[14] = CreateDynamicObject(16305, -968.794006, -1044.180054, 97.169998, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[14], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[15] = CreateDynamicObject(16305, -958.369995, -1036.469971, 98.655998, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[15], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[16] = CreateDynamicObject(16305, -962.231995, -1043.869019, 102.165001, -180.000000, 0.000000, 88.260002);
	SetDynamicObjectMaterial(stroikaint[16], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[17] = CreateDynamicObject(16305, -962.369995, -1045.633057, 97.321999, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[17], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[18] = CreateDynamicObject(16305, -956.820007, -1045.478027, 97.435997, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[18], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[19] = CreateDynamicObject(16305, -962.091980, -1052.297974, 98.560997, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[19], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[20] = CreateDynamicObject(16305, -955.135986, -1045.079956, 102.165001, -180.000000, 0.000000, 187.020004);
	SetDynamicObjectMaterial(stroikaint[20], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[21] = CreateDynamicObject(16305, -952.015991, -1052.093994, 98.547997, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[21], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[22] = CreateDynamicObject(5291, -938.455017, -1064.239990, 95.439003, -1.580000, 270.000000, 45.000000);
	SetDynamicObjectMaterial(stroikaint[22], 1536, 16640, "a51", "banding9_64HV");
	stroikaint[23] = CreateDynamicObject(3099, -941.822998, -1073.277954, 96.677002, 0.000000, 0.000000, 306.779999);
	SetDynamicObjectMaterial(stroikaint[23], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[24] = CreateDynamicObject(11442, -936.030029, -1077.923950, 96.234001, 0.000000, 0.000000, 38.099998);
	SetDynamicObjectMaterial(stroikaint[24], 0, 16640, "a51", "sw_olddrum1");
	stroikaint[25] = CreateDynamicObject(16305, -927.054016, -1077.239990, 99.387001, 0.000000, 90.000000, 223.919998);
	SetDynamicObjectMaterial(stroikaint[25], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[26] = CreateDynamicObject(16305, -929.526001, -1081.534058, 103.911003, -180.000000, 0.000000, 88.260002);
	SetDynamicObjectMaterial(stroikaint[26], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[27] = CreateDynamicObject(5291, -924.830017, -1081.682983, 96.292999, -1.580000, 270.000000, 52.139000);
	SetDynamicObjectMaterial(stroikaint[27], 1536, 16640, "a51", "banding9_64HV");
	stroikaint[28] = CreateDynamicObject(16305, -922.754028, -1086.900024, 99.387001, 0.000000, 90.000000, 44.220001);
	SetDynamicObjectMaterial(stroikaint[28], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[29] = CreateDynamicObject(16305, -919.830994, -1089.208008, 99.387001, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[29], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[30] = CreateDynamicObject(16305, -918.794983, -1087.650024, 104.663002, -180.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[30], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[31] = CreateDynamicObject(16305, -918.210999, -1094.479980, 107.186996, 0.000000, 90.000000, 56.159000);
	SetDynamicObjectMaterial(stroikaint[31], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[32] = CreateDynamicObject(3099, -911.250977, -1101.982056, 97.487999, 0.000000, 0.000000, 124.379997);
	SetDynamicObjectMaterial(stroikaint[32], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[33] = CreateDynamicObject(16305, -911.726990, -1105.844971, 104.663002, -180.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[33], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[34] = CreateDynamicObject(16305, -903.020996, -1101.035034, 99.310997, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[34], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[35] = CreateDynamicObject(3099, -907.927002, -1106.369995, 97.487999, 0.000000, 0.000000, 122.459999);
	SetDynamicObjectMaterial(stroikaint[35], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[36] = CreateDynamicObject(3099, -899.929016, -1100.524048, 97.487999, 0.000000, 0.000000, 306.779999);
	SetDynamicObjectMaterial(stroikaint[36], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[37] = CreateDynamicObject(16305, -903.999023, -1109.098999, 99.387001, 0.000000, 90.000000, 56.159000);
	SetDynamicObjectMaterial(stroikaint[37], 0, 16646, "a51_alpha", "ws_stationgirder1");
	stroikaint[38] = CreateDynamicObject(3099, -895.432007, -1103.234985, 97.487999, 0.000000, 0.000000, 500.338989);
	SetDynamicObjectMaterial(stroikaint[38], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[39] = CreateDynamicObject(3099, -902.866028, -1112.453979, 97.487999, 0.000000, 0.000000, 306.779999);
	SetDynamicObjectMaterial(stroikaint[39], 1024, 16640, "a51", "sw_olddrum1");
	stroikaint[40] = CreateDynamicObject(16305, -896.612000, -1106.802002, 99.359001, 0.000000, 0.000000, 0.000000);
	SetDynamicObjectMaterial(stroikaint[40], 0, 16646, "a51_alpha", "ws_stationgirder1");
 	//------------------------------------------------------------------------------------------------------------
	stroikaint[41] = CreateDynamicObject(12957, -900.869995, -1112.875977, 98.417999, 0.000000, 0.000000, 22.079000);
	stroikaint[42] = CreateDynamicObject(2845, -891.170654, -1113.948853, 98.258560, 0.000000, 0.000000, -139.200043);
	stroikaint[43] = CreateDynamicObject(2845, -892.968628, -1118.334839, 98.258560, 0.000000, 0.000000, -63.360069);
	stroikaint[44] = CreateDynamicObject(2200, -893.393066, -1118.790039, 98.213173, 0.000000, 0.000000, 80.279984);
	stroikaint[45] = CreateDynamicObject(3626, -891.239868, -1117.817017, 99.453247, 0.000000, 0.000000, 81.239983);
	stroikaint[46] = CreateDynamicObject(3006, -896.857971, -1103.385010, 97.545998, 0.000000, 0.000000, 3.660000);
	stroikaint[47] = CreateDynamicObject(3722, -900.611023, -1100.395996, 94.250000, 0.000000, 0.000000, 50.938999);
	stroikaint[48] = CreateDynamicObject(3097, -900.364014, -1095.322021, 100.541000, 0.000000, 0.000000, -85.499001);
	stroikaint[49] = CreateDynamicObject(3073, -906.614014, -1103.781006, 99.109001, 0.000000, 0.000000, 59.699001);
	stroikaint[50] = CreateDynamicObject(3098, -908.200012, -1105.932983, 99.777000, 0.000000, 0.000000, 177.419006);
	stroikaint[51] = CreateDynamicObject(2926, -903.293030, -1096.000000, 97.441002, 0.000000, 0.000000, 0.000000);
	stroikaint[52] = CreateDynamicObject(2925, -902.659973, -1096.291992, 97.376999, 0.000000, 0.000000, 0.000000);
	stroikaint[53] = CreateDynamicObject(1631, -917.374023, -1096.401978, 97.980003, 0.000000, 0.000000, 193.559998);
	stroikaint[54] = CreateDynamicObject(3073, -915.776001, -1100.087036, 99.109001, 0.000000, 0.000000, -33.060001);
	stroikaint[55] = CreateDynamicObject(3006, -913.690002, -1098.782959, 97.151001, 0.000000, 0.000000, 3.660000);
	stroikaint[56] = CreateDynamicObject(13591, -908.263000, -1093.718994, 98.398003, 0.000000, 0.000000, -28.559000);
	stroikaint[57] = CreateDynamicObject(3006, -908.700989, -1094.333984, 97.151001, 0.000000, 0.000000, 3.660000);
	stroikaint[58] = CreateDynamicObject(3006, -911.547974, -1099.676025, 97.151001, 0.000000, 0.000000, -1.080000);
	stroikaint[59] = CreateDynamicObject(3097, -923.210022, -1098.373047, 101.341003, 0.000000, 0.000000, -207.960007);
	stroikaint[60] = CreateDynamicObject(3722, -934.440002, -1073.449951, 92.982002, 0.000000, 0.000000, 102.779999);
	stroikaint[61] = CreateDynamicObject(11458, -936.570007, -1062.942993, 95.839996, 0.000000, 0.000000, -43.979000);
	stroikaint[62] = CreateDynamicObject(11458, -954.346008, -1057.162964, 96.362000, 0.000000, 0.000000, -59.700001);
	stroikaint[63] = CreateDynamicObject(852, -949.645996, -1063.229004, 95.664001, 0.000000, 0.000000, 0.000000);
	stroikaint[64] = CreateDynamicObject(3722, -916.486023, -1081.322021, 94.889999, 0.000000, 0.000000, 48.900002);
	stroikaint[65] = CreateDynamicObject(11458, -950.499023, -1046.336060, 97.163002, 0.000000, 0.000000, -43.979000);
	stroikaint[66] = CreateDynamicObject(3073, -959.556030, -1040.723999, 97.955002, 0.000000, 0.000000, -33.060001);
	stroikaint[67] = CreateDynamicObject(367, -1188.944458, -615.645935, 27.964106, 96.000000, 110.000000, 59.064106);
Скриншоты:


 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу