Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
color32

PlotManager как разрешить разбирать объекты только владельцу и друзьям плота?

Plot Manager как разрешить разбирать объекты только владельцу и друзьям плота?

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


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0

он вроде по умолчанию это умеет.

или я что то не понил?

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


Ссылка на сообщение
Поделиться на других сайтах
MagicByte MagicByte MagicByte
  • 0

Plot Manager как разрешить разбирать объекты только владельцу и друзьям плота?

А в чем соль то?

Если разбирать могут только владельцы, то следующим твоим вопросом станет - как запретить ломать поле-плот.

Ну а если еще и ломать его запретить, почему бы просто не поставить приватку на базу?

 

Запретить захват базы других игроков, с учетом того, что на базе стоят обычно только сейфы да пара тачек - суть - аналогично приватке.

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0

А в чем соль то?

Если разбирать могут только владельцы, то следующим твоим вопросом станет - как запретить ломать поле-плот.

Ну а если еще и ломать его запретить, почему бы просто не поставить приватку на базу?

 

Запретить захват базы других игроков, с учетом того, что на базе стоят обычно только сейфы да пара тачек - суть - аналогично приватке.

Мне надо только, чтобы хозяева плотов или их друзья могли разбирать стены, которые на плоте.

 

он вроде по умолчанию это умеет.

или я что то не понил?

Возможно я не тот качал, но файлика remove.sqf не прилагалось.

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Plot Manager как разрешить разбирать объекты только владельцу и друзьям плота?

В файле fn_selfActions.sqf заменить имеющийся код на этот:

 

//Allow owners to delete modulars
		if(_isModular || _isModularDoor || _typeOfCursorTarget in dayz_deleteBuildings) then {
			if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
				_friendsallowedremove = false; // allow friendlies added to the pole to remove
				_adminList = ["1111111"]; // Add admins here
				_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 1];
				_IsNearPlot = count (_findNearestPoles);
				_fuid  = [];
				_allowed = [];
				if(_IsNearPlot > 0)then{
					_thePlot = _findNearestPoles select 0;
					_friends = _thePlot getVariable ["plotfriends", []];
					if(_friendsallowedremove)then{
						{
						  _friendUID = _x select 0;
						  _fuid  =  _fuid  + [_friendUID];
						} count _friends;
					}else{
						_fuid = [(_friends select 0)select 0];
					};
					if(dayz_characterID == _ownerID || (getPlayerUID player) in (_adminList + _fuid))then{  // // If u want that the object also belongs to someone on the plotpole.
						_player_deleteBuild = true;
					};
				}else{
					if(dayz_characterID == _ownerID || (getPlayerUID player) in _adminList)then{
						_player_deleteBuild = true;
					};
				};                                        
			};
		};
//Allow owners to delete modular doors without locks
if(_isModularDoor) then {
        if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {         
            _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];
            _IsNearPlot = count (_findNearestPoles);
            _fuid  = [];
            _allowed = [];
            if(_IsNearPlot > 0)then{
                _thePlot = _findNearestPoles select 0;
                _owner =  _thePlot getVariable ["ownerPUID","010"];
                _friends = _thePlot getVariable ["plotfriends", []];
                {
                  _friendUID = _x select 0;
                  _fuid  =  _fuid  + [_friendUID];
                } forEach _friends;
                _allowed = [_owner];    
                _allowed = [_owner] +  _fuid;   
                if ( _playerUID in _allowed && _ownerID in _allowed) then { //  // If u want that the object also belongs to someone on the plotpole.
                    _player_deleteBuild = true;
                };                  
            }else{
                if(_ownerID == _playerUID)then{
                    _player_deleteBuild = true;
                };
            };                              
        };      
};

И далее в variables.sqf под строкой например 

dayz_allowedObjects =

Вставляем это

dayz_deleteBuildings = ["TentStorage","TentStorageDomed","TentStorageDomed2","Hedgehog_DZ","Sandbag1_DZ","BagFenceRound_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_DZ","Land_HBarrier5_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ","LightPole_DZ","FuelPump_DZ","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ","DeerStand_DZ","MetalPanel_DZ","WorkBench_DZ","WoodFloor_DZ","WoodLargeWall_DZ","WoodLargeWallDoor_DZ","WoodLargeWallWin_DZ","WoodSmallWall_DZ","WoodSmallWallWin_DZ","WoodSmallWallDoor_DZ","WoodFloorHalf_DZ","WoodFloorQuarter_DZ","WoodStairs_DZ","WoodStairsSans_DZ","WoodStairsRails_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallHalf_DZ","CinderWall_DZ","CinderWallDoorway_DZ","CinderWallDoor_DZ","CinderWallDoorLocked_DZ","CinderWallSmallDoorway_DZ","CinderWallDoorSmall_DZ","CinderWallDoorSmallLocked_DZ","MetalFloor_DZ","WoodRamp_DZ","GunRack_DZ","FireBarrel_DZ","WoodCrate_DZ","Scaffolding_DZ"];

Всё вышеперечисленное сможет удалять владелец плота и те кто есть в списке. Редактировать по своему вкусу.

 

P.S. Но есть у этого всего одно но. Тот кто найдет этот плот(враг например) и туда себя добавит, то он сможет тоже удалять)

Изменено пользователем rss_adm (история изменений)

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0

В файле fn_selfActions.sqf заменить имеющийся код на этот:

 

//Allow owners to delete modulars
		if(_isModular || _isModularDoor || _typeOfCursorTarget in dayz_deleteBuildings) then {
			if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {
				_friendsallowedremove = false; // allow friendlies added to the pole to remove
				_adminList = ["1111111"]; // Add admins here
				_findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 1];
				_IsNearPlot = count (_findNearestPoles);
				_fuid  = [];
				_allowed = [];
				if(_IsNearPlot > 0)then{
					_thePlot = _findNearestPoles select 0;
					_friends = _thePlot getVariable ["plotfriends", []];
					if(_friendsallowedremove)then{
						{
						  _friendUID = _x select 0;
						  _fuid  =  _fuid  + [_friendUID];
						} count _friends;
					}else{
						_fuid = [(_friends select 0)select 0];
					};
					if(dayz_characterID == _ownerID || (getPlayerUID player) in (_adminList + _fuid))then{  // // If u want that the object also belongs to someone on the plotpole.
						_player_deleteBuild = true;
					};
				}else{
					if(dayz_characterID == _ownerID || (getPlayerUID player) in _adminList)then{
						_player_deleteBuild = true;
					};
				};                                        
			};
		};
//Allow owners to delete modular doors without locks
if(_isModularDoor) then {
        if(_hasToolbox && "ItemCrowbar" in _itemsPlayer) then {         
            _findNearestPoles = nearestObjects[player, ["Plastic_Pole_EP1_DZ"], DZE_PlotPole select 0];
            _IsNearPlot = count (_findNearestPoles);
            _fuid  = [];
            _allowed = [];
            if(_IsNearPlot > 0)then{
                _thePlot = _findNearestPoles select 0;
                _owner =  _thePlot getVariable ["ownerPUID","010"];
                _friends = _thePlot getVariable ["plotfriends", []];
                {
                  _friendUID = _x select 0;
                  _fuid  =  _fuid  + [_friendUID];
                } forEach _friends;
                _allowed = [_owner];    
                _allowed = [_owner] +  _fuid;   
                if ( _playerUID in _allowed && _ownerID in _allowed) then { //  // If u want that the object also belongs to someone on the plotpole.
                    _player_deleteBuild = true;
                };                  
            }else{
                if(_ownerID == _playerUID)then{
                    _player_deleteBuild = true;
                };
            };                              
        };      
};

И далее в variables.sqf под строкой например 

dayz_allowedObjects =

Вставляем это

dayz_deleteBuildings = ["TentStorage","TentStorageDomed","TentStorageDomed2","Hedgehog_DZ","Sandbag1_DZ","BagFenceRound_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_DZ","Land_HBarrier5_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ","LightPole_DZ","FuelPump_DZ","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ","DeerStand_DZ","MetalPanel_DZ","WorkBench_DZ","WoodFloor_DZ","WoodLargeWall_DZ","WoodLargeWallDoor_DZ","WoodLargeWallWin_DZ","WoodSmallWall_DZ","WoodSmallWallWin_DZ","WoodSmallWallDoor_DZ","WoodFloorHalf_DZ","WoodFloorQuarter_DZ","WoodStairs_DZ","WoodStairsSans_DZ","WoodStairsRails_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallHalf_DZ","CinderWall_DZ","CinderWallDoorway_DZ","CinderWallDoor_DZ","CinderWallDoorLocked_DZ","CinderWallSmallDoorway_DZ","CinderWallDoorSmall_DZ","CinderWallDoorSmallLocked_DZ","MetalFloor_DZ","WoodRamp_DZ","GunRack_DZ","FireBarrel_DZ","WoodCrate_DZ","Scaffolding_DZ"];

Всё вышеперечисленное сможет удалять владелец плота и те кто есть в списке. Редактировать по своему вкусу.

 

P.S. Но есть у этого всего одно но. Тот кто найдет этот плот(враг например) и туда себя добавит, то он сможет тоже удалять)

а разве не только владелец может добавлять людей в плот? те кто в него не добавлен - не имеют соответственно доступа к его редактированию.

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


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: MeinCain
      Всем привет!

      Подскажите, пожалуйста, как сделать спавн определенного предмета в определенном здании?

      Вот есть у меня бункер. Спавн лута в нем прописан. Все замечательно спавнится. И вот я хочу добавить в него один предмет, который можно будет найти только в этом бункере.

      Я прописал так в mapgroupproto.xml:
      <group name="Land_Bunker_lab1_base" lootmax="154">     <usage name="Military" />     <usage name="Medic" />         <container name="lootroom" lootmax="53">             <category name="tools" />             <category name="containers" />             <category name="clothes" />             <category name="weapons" />             <category name="bunker"/>             <tag name="floor" />             <tag name="shelves" />                 <point pos="-1.515664 -14.123547 -36.665848" range="1" height="1" />                  <point pos="-3.439516 -14.123548 -36.824074" range="1" height="1" />                  <point pos="-5.116861 -14.123548 -36.828102" range="1" height="1" />                  <point pos="-6.926982 -13.129279 -37.125351" range="1" height="1" />                  <point pos="-6.963851 -13.566002 -33.104889" range="1" height="1" />  То есть: <category name="bunker"/>

      В cfglimitsdefinition.xml тоже прописал:
      <categories> <category name="tools"/> <category name="containers"/> <category name="clothes"/> <category name="vehiclesparts"/> <category name="food"/> <category name="weapons"/> <category name="books"/> <category name="explosives"/> <category name="bunker"/> </categories>
      Пробовал прописать как <usage name="bunker"/> и соответственно в mapgroupproto.xml также ставил этот <usage name="bunker"/>.
      Потом в тайпсах присваивал это нужному предмету:
      <type name="RedemptionKeyCard_03"> <nominal>1</nominal> <lifetime>28800</lifetime> <restock>7200</restock> <min>0</min> <quantmin>-1</quantmin> <quantmax>-1</quantmax> <cost>100</cost> <flags count_in_cargo="0" count_in_hoarder="0" count_in_map="1" count_in_player="0" crafted="0" deloot="0"/> <usage name="bunker" /> </type>
      В общем, разные махинации пытался проводить. Но итог таков, что эти предметы плевать хотели на все и спавнятся там, где им заблагорассудится (точнее на военках). Подскажите, пожалуйста, что я делаю не так?
    • Автор: Serdce
      Данный скрипт, меняет процесс ремонта вашей техники, делая её более логичней, как было в А2.
      Для замены колеса, на нужно собственно само колесо, и тд. и тп. 
      Подробный список чего и для чего вы найдёте в файлах.
       
      Итак, преступим!
      Я не автор, я всего лишь перевожу.
      Первоисточник - https://github.com/aussie-battler/Exilemod-Super-Advanced-Repair-System-SARS
      По ссылке выше скачиваем архив, распаковываем в удобное место.
      Распаковываем ваше миссию "Exile.ваша карта"
      Из архива копируем папку "Custom" в папку вашей миссии "Exile.ваша карта"
      Открываем ваш description.ext  в нем мы ищем showHUD[] = 
      и полностью меняем на это - 
      Далее открываем ваш - initPLayerLocal.sqf
      В этом файле, сразу после строки - if (!hasInterface || isServer) exitWith {};
      Мы добавляем 
      //Bones Super Advanced Repair System (SARS)
      Bones_fnc_salvageAndRepairMenu = compileFinal preprocessFileLineNumbers "Custom\advancedRepair\Bones_fnc_salvageAndRepairMenu.sqf"; 
      Далее открываем ваш - config.cpp
      В нем мы ищем - class Car
      Внутри этого класса мы ищем
       
      И меняем на 
      Так же далее чуть ниже - class Air
      В нем мы также меняем это
      На это 
       
      Далее для если у вас есть Infistar!
      Распаковываем ваш инфистар и открываем его конфиг.
      В нём ищем     KCM = "true"; /* Just close ALL CommandingMenus */
      И меняем значение на false
      Чуть ниже в строке allowedCommandingMenus
      Мы добавляем  "#USER:ASL_Show_Repair_Options_Menu_Array"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • Автор: fedotovyasha
      Хочу немного изменить сообщения перед отправкой клиенту
    • Автор: fedotovyasha
      Пишу свой лаунчер на c#. Скачал клиент в котором был loader.exe. С ним работает норм, но я хочу без него запускать игру. Как это сделать? (Пиратка)
    • Автор: Miduznya
      Собственно как, как отключить battleye на сервере античит

      параметр BattlEye=0; не работает я так понял 
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.

Поддержка