Доступ к архиву

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

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

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

Гараж Los Santos v1.0

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

LenD

Специалист
Делать было нечего и я решил сделать, что то в MTA пришла такая маленькая идея чтобы сделать гараж для машин...
Вот я решил сделать, но гаражу свойственно ворота и я решил добавить команду на открытие ворот после чего выложить на форум


Скриншоты ниже:






Теперь сам код
Ворота будут открываться на кнопку действия(огонь) или же можно командой /opengate
Вставляем ко всем forward`am
PHP:
forward VorotaGate1Close();//
forward VorotaGate2Close();//
forward VorotaGate3Close();//
forward VorotaGate4Close();//
forward VorotaGate5Close();//
forward VorotaGate6Close();//
forward VorotaGate7Close();//
new Vorota1Gate;//
new Vorota2Gate;//
new Vorota3Gate;//
new Vorota4Gate;//
new Vorota5Gate;//
new Vorota6Gate;//
new Vorota7Gate;//
new VorotaGateTimer;//
Теперь на очереди сама команда, по действию которой будет происходить открытие ворот
Вставляем в public OnPlayerCommandText
PHP:
if (strcmp(cmdtext, "/opengate", true) == 0)
{
        new stringtosee[128];
		new ftext[32];
		if(PlayerToPoint(5.0,playerid,2025.3000488281, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota1Gate,2025.3000488281, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate1Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2029.9000244141, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota2Gate,2029.9000244141, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate2Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2020.8000488281, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota3Gate,2020.8000488281, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate3Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2016.0999755859, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota4Gate,2016.0999755859, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate4Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2011.3000488281, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota5Gate,2011.3000488281, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate5Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2006.5999755859, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota6Gate,2006.5999755859, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate6Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		if(PlayerToPoint(5.0,playerid,2002.0999755859, -1821.9000244141, 13.89999961853))
		{
		MoveObject(Vorota7Gate,2002.0999755859, -1821.9000244141, 11,2.00);
		SetTimer("GateClose", 10000, 0);
		VorotaGateTimer = SetTimer("VorotaGate7Close", 10000, 0);
		PlayerPlaySound(playerid, 1190, 0.0, 0.0, 0.0);
		GetPlayerName(playerid, sendername, sizeof(sendername));
		format(stringtosee, sizeof(stringtosee), "%s достаёт пульт управления и открывает ворота.", sendername , ftext);
		ProxDetector(15.0, playerid, stringtosee, 0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA,0xC2A2DAAA);
		}
		return 1;
}
Теперь надо сделать так чтоб ворота открывались по кнопке
Добавляем в public OnPlayerKeyStateChange следующее

PHP:
if (newkeys == 4){OnPlayerCommandText(playerid,"/opengate");}
После чего создаём таймер, для того чтоб ворота закрывались сами через некоторое время, этот код прописываем в public OnGameModeInit
PHP:
VorotaGateTimer = SetTimer("VorotaGateTimer", 7000, 1);
После того как мы сделали таймер надо объявить действие закрытии ворот
Вставляем в конец мода

PHP:
public VorotaGate1Close(){
MoveObject(Vorota1Gate,2025.3000488281, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate2Close(){
MoveObject(Vorota2Gate,2029.9000244141, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate3Close(){
MoveObject(Vorota3Gate,2020.8000488281, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate4Close(){
MoveObject(Vorota4Gate,2016.0999755859, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate5Close(){
MoveObject(Vorota5Gate,2011.3000488281, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate6Close(){
MoveObject(Vorota6Gate,2006.5999755859, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
public VorotaGate7Close(){
MoveObject(Vorota7Gate,2002.0999755859, -1821.9000244141, 13.89999961853,2.00);
KillTimer(VorotaGateTimer);
return 1;}
Теперь самый главный вопрос: "Где объекты?"
Вставляем в public OnGameModeInit
CreateDynamicObject(8947, 2030, -1829.5, 10, 0, 0, 90);
CreateDynamicObject(8947, 2012.4000244141, -1829.5, 10, 0, 0, 90);
CreateDynamicObject(8947, 2012.6999511719, -1815.1999511719, 9, 0, 8, 90);
CreateDynamicObject(8947, 2019.8000488281, -1815.1999511719, 9, 0, 7.998046875, 90);
CreateDynamicObject(3095, 2037.5, -1826.6999511719, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2028.5999755859, -1826.6999511719, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2020.0999755859, -1826.6999511719, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2011.5, -1826.6999511719, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2000.0999755859, -1826.6999511719, 11.5, 0, 90, 180);
CreateDynamicObject(3095, 2004.0999755859, -1826.6999511719, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2000.0999755859, -1832.4000244141, 11.5, 0, 90, 180);
CreateDynamicObject(3095, 2004.0999755859, -1832.4000244141, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2012.0999755859, -1832.4000244141, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2021, -1832.4000244141, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2029.3000488281, -1832.4000244141, 15.5, 0, 0, 0);
CreateDynamicObject(3095, 2037.5999755859, -1832.4000244141, 15.5, 0, 0, 0);
CreateDynamicObject(1649, 2039.4000244141, -1822.3000488281, 14.300000190735, 0, 0, 0);
CreateDynamicObject(1649, 2039.4000244141, -1822, 14.300000190735, 0, 0, 180);
CreateDynamicObject(3095, 2032.0999755859, -1826.6999511719, 11.39999961853, 0, 90, 0);
CreateDynamicObject(3095, 2038.5999755859, -1831.1999511719, 11.39999961853, 0, 90, 90);
CreateDynamicObject(1502, 2032.5999755859, -1831.0999755859, 13, 0, 0, 0);
CreateDynamicObject(3095, 2041.9000244141, -1826.6999511719, 11.39999961853, 270, 180, 270);
CreateDynamicObject(3095, 2041.4000244141, -1832.3000488281, 11.39999961853, 270, 0, 270);
CreateDynamicObject(3095, 2035.4000244141, -1836.3399658203, 11.5, 90, 198.43496704102, 161.56506347656);
CreateDynamicObject(8614, 2036.3000488281, -1837.8000488281, 14.800000190735, 0, 0, 0);
CreateDynamicObject(8947, 2044.3000488281, -1831.4000244141, 10, 0, 0, 90);
CreateDynamicObject(1502, 2041.4000244141, -1836.8000488281, 13, 0, 0, 180);
CreateDynamicObject(3095, 2026.4000244141, -1836.3399658203, 11.5, 90, 166.73931884766, 193.25514221191);
CreateDynamicObject(3095, 2017.4000244141, -1836.3399658203, 11.5, 90, 190.89520263672, 169.09387207031);
CreateDynamicObject(3095, 2008.6999511719, -1836.3399658203, 11.5, 90, 188.87614440918, 171.10736083984);
CreateDynamicObject(3095, 2004.0999755859, -1836.3399658203, 11.5, 90, 188.87994384766, 171.10656738281);
CreateDynamicObject(3850, 2040.5999755859, -1838.6999511719, 13.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2037.1999511719, -1838.6999511719, 13.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2033.8000488281, -1838.6999511719, 13.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2032.0999755859, -1838.0999755859, 12.39999961853, 90, 180, 180);
CreateDynamicObject(3850, 2032.0999755859, -1837.3000488281, 12.39999961853, 90, 0, 179.99450683594);
CreateDynamicObject(3850, 2036.5, -1836.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2039.9000244141, -1836.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2030.5, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2027.0999755859, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2023.6999511719, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2020.3000488281, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2016.9000244141, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2013.5, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2010.0999755859, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2006.6999511719, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2003.3000488281, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2001.5999755859, -1836.9000244141, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2041.5999755859, -1835.0999755859, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 2041.5999755859, -1831.6999511719, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 2041.5999755859, -1828.3000488281, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 2041.5999755859, -1824.9000244141, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 2041.5999755859, -1821.5, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 1999.9000244141, -1835.1999511719, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 1999.9000244141, -1831.8000488281, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 1999.9000244141, -1828.3000488281, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 1999.9000244141, -1824.9000244141, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 1999.9000244141, -1821.5, 16.60000038147, 0, 0, 0);
CreateDynamicObject(3850, 2039.9000244141, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2036.5, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2033.0999755859, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2029.6999511719, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2026.3000488281, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2022.9000244141, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2019.5, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2016.0999755859, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2012.6999511719, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2009.3000488281, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2005.9000244141, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2001.5999755859, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(3850, 2003.8000488281, -1819.8000488281, 16.60000038147, 0, 0, 90);
CreateDynamicObject(2290, 2038.8000488281, -1829.6999511719, 13.10000038147, 0, 0, 180);
CreateDynamicObject(1737, 2037.1999511719, -1828, 13.10000038147, 0, 0, 0);
CreateDynamicObject(1710, 2033, -1822.8000488281, 13.10000038147, 0, 0, 0);
CreateDynamicObject(1429, 2041.3000488281, -1828.3000488281, 14.699999809265, 0, 0, 270);
CreateDynamicObject(1754, 2040.0999755859, -1828, 13.10000038147, 0, 0, 270);
CreateDynamicObject(1754, 2035.6999511719, -1828, 13.10000038147, 0, 0, 90);
CreateDynamicObject(2007, 2033, -1825.3000488281, 13.10000038147, 0, 0, 90);
CreateDynamicObject(2007, 2033, -1826.1999511719, 13.10000038147, 0, 0, 90);
CreateDynamicObject(2063, 2041.0999755859, -1825.1999511719, 13.89999961853, 0, 0, 270);

Vorota1Gate = CreateObject(5856, 2025.3000488281, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota2Gate = CreateObject(5856, 2029.9000244141, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota3Gate = CreateObject(5856, 2020.8000488281, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota4Gate = CreateObject(5856, 2016.0999755859, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota5Gate = CreateObject(5856, 2011.3000488281, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota6Gate = CreateObject(5856, 2006.5999755859, -1821.9000244141, 13.89999961853, 0, 0, 90);
Vorota7Gate = CreateObject(5856, 2002.0999755859, -1821.9000244141, 13.89999961853, 0, 0, 90);

На данном этапе это первая версия гаража со временем что то будет добавляться

Строго не судите в MTA первый раз зашёл за пол года и с горем всё вспоминал

Автор этой работы я(LenD)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу