Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * ExileClient_construction_beginExistingObject
- *
- * Edited for Exile by _sinworks
- *
- * Exile Mod
- * www.exilemod.com
- * © 2015 Exile Mod Team
- *
- * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
- * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
- */
- private["_kitClassName","_previewObjectClassName"];
- _kitClassName = _this select 0;
- _count = 0;
- if (_kitClassName == "Exile_Item_Flag") then {
- _playerUID = getPlayerUID player;
- {
- _flag = _x;
- _buildRights = _flag getVariable ["ExileTerritoryBuildRights", []];
- if(_playerUID in _buildRights)then
- {
- _count = _count + 1;
- };
- } forEach (allMissionObjects "Exile_Construction_Flag_Static");
- };
- if (_count > 2) then {
- ["ErrorTitleAndText", ["Error", "You are already in the maximum amount of territories, Please leave one to create a new one"]] call ExileClient_gui_toaster_addTemplateToast;
- }
- else
- {
- ExileClientConstructionConfig = ("getText(_x >> 'kitMagazine') == _kitClassName" configClasses(configFile >> "CfgConstruction")) select 0;
- _previewObjectClassName = getText(ExileClientConstructionConfig >> "previewObject");
- ExileClientConstructionSnapToObjectClassNames = (ExileClientConstructionConfig >> "SnapObjects") call Bis_fnc_getCfgSubClasses;
- ExileClientConstructionProcess = 1;
- ExileClientConstructionOffset = [0, 5, 0];
- ExileClientConstructionPosition = [0, 0, 0];
- ExileClientConstructionRotation = 0;
- ExileClientConstructionPitch = 0;
- ExileClientConstructionBank = 0;
- ExileClientConstructionVectorMode = false;
- ExileClientConstructionKitClassName = _kitClassName;
- ExileClientConstructionObjectDisplayName = getText(configFile >> "CfgVehicles" >> _previewObjectClassName >> "displayName");
- if (ExileClientPlayerIsInCombat) then
- {
- ["ErrorTitleAndText", ["Construction aborted!", "You cannot build during a combat."]] call ExileClient_gui_toaster_addTemplateToast;
- }
- else
- {
- ExileClientConstructionMode = 1;
- ExileClientConstructionIsInSelectSnapObjectMode = true;
- ExileClientConstructionSupportSnapMode = count(ExileClientConstructionSnapToObjectClassNames) > 0;
- ExileClientConstructionCurrentSnapToObject = objNull;
- ExileClientConstructionPosition = [getPosATL player, ExileClientConstructionOffset select 1, getDir player] call ExileClient_util_math_getPositionInDirection;
- ExileClientConstructionPosition set[2, ExileClientConstructionOffset select 2];
- {
- player reveal _x;
- }
- forEach (player nearObjects ["Exile_Construction_Abstract_Static", 20]);
- if((count _this) < 2 )then
- {
- ["buildConstructionRequest", [_previewObjectClassName,ExileClientConstructionPosition]] call ExileClient_system_network_send;
- }
- else
- {
- ["buildTerritoryRequest", [_previewObjectClassName, (ASLtoAGL (ATLtoASL ExileClientConstructionPosition)),_this select 1,_this select 2]] call ExileClient_system_network_send;
- };
- };
- };
- true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement