Вопросы

Доброе время суток,уважаемые пользователи форума,сегодня хочу задать вам такой вопрос,как сделать сирену ,допустим база Армия, задействовать сирену через команду .Прошу помочь.

Поделиться сообщением


Ссылка на сообщение

16 ответов на этот вопрос

  • 0

Ко всем new: 
 

new bool: siren_;

Ко всем командам: 

CMD:siren(playerid)
{
	//проверка на фракцию армия
	siren_ = true; 
	SendClientMessage(playerid, -1, "Вы включили сирену армии!");
	return true; 
}

В OnGameModeInit создайте динамическую зону такого типа, которого вам необходимо. 

Ну и в паблик OnPlayerEnterDynamicArea уже написать код такого типа: 

public OnPlayerEnterDynamicArea(playerid, areaid)
{
	if(areaid == ид_динамической_зоны && siren_ == true)
		PlayAudioStreamForPlayer(playerid, "прямая ссылка на звук с сиреной");
	return true; 
}
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
	if(areaid == ид_динамической_зоны)
		StopAudioStreamForPlayer(playerid); 
	return true; 
}

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST куда это всё писать скажи я новичёк :)

Поделиться сообщением


Ссылка на сообщение
  • 0

@Richard_Rocland так там тебе и так написано чё куда вставить (если тебе не понятно, выучи хотябы основы Pawn)

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST @Richard_Rocland @DEST где взять id динамических зон

Поделиться сообщением


Ссылка на сообщение
  • 0

@Richard_Rocland ид зоны автоматический выдаётся при её создание (записывается в переменную, если ты вней создаёшь)

Поделиться сообщением


Ссылка на сообщение
  • 0

@MuhammadPawn Всм?

Поделиться сообщением


Ссылка на сообщение
  • 0

@Richard_Rocland опять ж повтарюсь выучи основы pawn, и будет уже понятно что да как, там легко выучить основы если не ленится 9_9

Поделиться сообщением


Ссылка на сообщение
  • 0

@MuhammadPawn чел ты просто заблаченый и объяснить не можешь

Поделиться сообщением


Ссылка на сообщение
  • 0
4 часа назад, Richard_Rocland сказал:

@MuhammadPawn чел ты просто заблаченый и объяснить не можешь

Примерно так :

ко всем new

new zona;

В OnGameModeInit:

zona = CreateDynamicCircle(Координата X, Координата Y,Координата Z, 50, 0, 0, -1); // проверка игрока в радиусе 50
public OnPlayerEnterDynamicArea(playerid, areaid)
{
	if(areaid == zona && siren_ == true)
		PlayAudioStreamForPlayer(playerid, "прямая ссылка на звук с сиреной");
	return true; 
}
public OnPlayerLeaveDynamicArea(playerid, areaid)
{
	if(areaid == zona)
		StopAudioStreamForPlayer(playerid); 
	return true; 
}

 

Отредактировано пользователем Pikachu

Поделиться сообщением


Ссылка на сообщение
  • 0

@Pikachu спасиб :)

Заметка от Редиска , создано

Достаточно,просто нажать кнопку "+".

Поделиться сообщением


Ссылка на сообщение
  • 0

@Richard_Rocland Более подробное объяснение каждого типа зон - https://pawno-rus.ru/topic/1552-ispolzovanie-dinamicheskih-zon-streamer-dynamicarea/

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST
public OnGameModeInit()
{
    zona = CreateDynamicCircle(1734.0771,1316.9613, 50, 0, 0, -1); // проверка игрока в радиусе 50

@Richard_Rocland public OnGameModeInit()
{
    zona = CreateDynamicCircle(1734.0771,1316.9613, 50, 0, 0, -1); // проверка игрока в радиусе 50

Отредактировано пользователем Richard_Rocland

Поделиться сообщением


Ссылка на сообщение
  • 0
3 минуты назад, Richard_Rocland сказал:

@DEST ошибки

Координаты z добавь пример:

zona = CreateDynamicCircle(Координата X, Координата Y,Координата Z, 50, 0, 0, -1); // проверка игрока в радиусе 50

Поделиться сообщением


Ссылка на сообщение
  • 0

программа для создания зон https://pawno-rus.ru/files/file/252-samp-zone-editor/

Поделиться сообщением


Ссылка на сообщение
  • 0

@Pikachu У меня,вопрос а как ты её включишь без команды,и при чём тут siren_?Или,это добавка к уроку DEST'а?

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Mister Odin
      От Mister Odin
       
      new
       g_teleport_list[39][E_TELEPORT_LIST] = {  {"Спавн пгт.Батырево", 1802.3612, 2508.4824, 15.8887},  {"Спавн г.Арзамас", -113.5887, 977.7222, 12.0346},     {"Спавн г.Южный", 2744.2770, -2446.7246, 21.8988},     {"Центральный банк", 1852.020385,2040.791381,15.892713},  {"Рублёвка", -837.7783, 888.6161, 12.7232},  {"Казино", 1332.4252, 2358.7014, 17.6641},  {"Битва за контейнеры", 614.5167, 1722.3566, 12.0709},  {"Автосалон низкого класса", 2493.9616, -722.9544, 12.3315},  {"Автосалон среднего класса", 1407.7449, 455.4801, 13.1630},  {"Автосалон высокого класса", -14.0637, 2614.5664, 10.9892},   {"Мотосалон Harley Davidson", 785.720153, 750.465087, 12.000024},  {"Автошкола", 1909.174438,2227.679687,15.708162},  {"Военкомат", 1916.778564,2302.411376,15.574637},  {"Правительство области", -139.140975,593.789611,12.145712},  {"Отдел полиции №1 (ГИБДД)", 1906.805786,-2234.382812,11.257631},  {"Отдел полиции №2 (УМВД)", 2581.309326,-2416.139892,21.960090},  {"Отдел ФСБ", 1823.904663,2095.636718,15.848405},  {"Городская больница г.Арзамас", -285.797210,581.851562,12.120290},   {"СМИ", -317.708038,821.221679,13.051450},  {"Воинская часть", 1703.197265,1678.025878,15.279437},  {"Арзамасская ОПГ", 438.705322,1046.505126,12.002637},  {"Батыревская ОПГ", 1941.203857,2161.006591,15.705187},  {"Лыткаринская ОПГ", -2346.002441,75.257041,21.002962},  {"Шахта", 2381.5727, 1726.4451, -2.1506},  {"Завод", -1062.6697, 2204.1894, 38.0964},  {"Инкосация", 1864.1374, 2011.7136, 15.8546},  {"Транспортная Компания", 2362.1115, 1972.5627, 15.5530},  {"База механиков", 1840.918090,-118.025146,15.695312},  {"Курьерская служба доставки", 2764.509765,-2396.882568,21.890625},  {"Аренда автобуса(Южный)", 2771.041992,-2454.780761,21.845964},  {"Аренда автобуса(Арзамас)", -127.487670,943.652648,12.142824},   {"Аренда автобуса(Батырево)", 1798.986328,2529.591552,15.664262},  {"Гоночная трасса", -1568.7784, 1611.8305, 36.3971},  {"Дом на горе", -789.5397, -456.7479, 741.1422},  {"СТО и тюнинг-ателье", 1856.1375, -122.3266, 15.6888},  {"Аренда транспорта пгт.Батырево", 1763.641723,2255.673339,15.865348},  {"Аренда транспорта г.Арзамас", -36.923530,1360.673583,12.002090},  {"Аренда транспорта г.Южный", 1966.599975,-2603.943603,10.820312},  {"Тайный интерьер в Лыткарино", -2424.5818, 2846.3291, 40.7908} };
    • Garnik
      От Garnik
      ERRORS:
      : error 017: undefined symbol "HouseInfo"
      : error 017: undefined symbol "OWNABLEHOUSES"
      : error 029: invalid expression, assumed zero
      : fatal error 107: too many error messages on one line
      ===============================================================================================================
       
       
      ================================================================================================================
      CMD:addhouse(playerid,params[])
      {
              if(PI[playerid][pAdmin] < 10)return false;
              new string[650];
              new house_class, house_price;
              new Float:X, Float:Y, Float:Z, Float:A;
              if(sscanf(params, "ii", house_class,house_price))
              {
                      SendClientMessage(playerid, -1, "???????????: /addhouse [????? ??????] [???? ???????]");
                      SendClientMessage(playerid, -1, "??????: [1 - ??????-?????] [2 - ???????-?????] [3 - ???????-?????] [4 - ???????-?????]");
                      return 1;
              }
              if(house_class > 4 || house_class < 1)
              {
                      SendClientMessage(playerid, -1, "ID ????????? ?? 1 ?? 4");
                      return 1;
              }
              //
              GetPlayerPos(playerid,X,Y,Z);
              GetPlayerFacingAngle(playerid,A);
              HouseInfo[OWNABLEHOUSES][hEnter_X]=X;
              HouseInfo[OWNABLEHOUSES][hEnter_Y]=Y;
              HouseInfo[OWNABLEHOUSES][hEnter_Z]=Z;
              HouseInfo[OWNABLEHOUSES][hEnter_A]=A;
              HouseInfo[OWNABLEHOUSES][hKlass]=house_class;
              HouseInfo[OWNABLEHOUSES][hCost]=house_price;
              string="";
              strmid(HouseInfo[OWNABLEHOUSES][hOwner],"The State",0,strlen("The State"),28);
              format(string, 144, "?? ??????? ??????? ??? ????? {e7e7e7}%d {ffffff}????????? ???????: {e7e7e7}%d",OWNABLEHOUSES+1,HouseInfo[OWNABLEHOUSES][hCost]);
              SendClientMessage(playerid,-1,string);
              //
              string="";
              format(string,1500,"INSERT INTO `houses`(`ID`,`Enter_X`, `Enter_Y`, `Enter_Z`, `Enter_A`,`Exit_X`, `Exit_Y`, `Exit_Z`, `Owner`, `Cost` , `Klass`, `Interior`, `Level`) VALUES ('%d','%.2f','%.2f','%.2f','%.2f','267.1','305','999.148','The State','%d','%d','2','1')",
              OWNABLEHOUSES+1,HouseInfo[OWNABLEHOUSES][hEnter_X],HouseInfo[
              OWNABLEHOUSES][hEnter_Y],HouseInfo[OWNABLEHOUSES][hEnter_Z]
              ,HouseInfo[OWNABLEHOUSES][hEnter_A],HouseInfo[OWNABLEHOUSES]
              [hCost],HouseInfo[OWNABLEHOUSES][hKlass]);
              mysql_tquery(mysql, string);
              OWNABLEHOUSES++;
              return 1;
      }