From b9f820ba87b3a355514cf8bcf4f68181c2584494 Mon Sep 17 00:00:00 2001 From: Bjanski Date: Thu, 9 Jun 2016 22:01:12 +0200 Subject: [PATCH] v0.7.6 build 17 --- .../Functions/fn_grindProgress.sqf | 4 +++ .../Functions/fn_restoreLock.sqf | 2 ++ .../exad_hacking/Functions/fn_startHack.sqf | 20 ++++++++++---- CHANGELOG.md | 7 +++-- docs/Grinding/changelog.md | 9 +++++++ docs/Grinding/update.md | 6 +++++ docs/Hacking/changelog.md | 9 +++++++ docs/Hacking/update.md | 6 +++++ docs/HaloParachute/changelog.md | 8 ++++++ docs/HaloParachute/update.md | 5 ++++ docs/VirtualGarage/changelog.md | 1 + docs/VirtualGarage/update.md | 2 +- docs/core/changelog.md | 4 +++ docs/core/update.md | 2 +- .../ExAdClient/Core/CfgFunctions.cpp | 1 + .../Utils/fn_territoryPlayerPresent.sqf | 1 + .../Exile.Altis/ExAdClient/Core/postInit.sqf | 3 ++- .../Grinding/Functions/fn_grindLock.sqf | 26 ++++++++++--------- .../ExAdClient/Grinding/postInit.sqf | 3 ++- .../Hacking/Functions/fn_canHackSafe.sqf | 5 +++- .../Hacking/Functions/fn_canHackVG.sqf | 5 +++- .../ExAdClient/Hacking/customize.sqf | 4 ++- .../ExAdClient/Hacking/postInit.sqf | 4 ++- .../ExAdClient/HaloParachute/postInit.sqf | 4 +-- .../ExAdClient/VirtualGarage/postInit.sqf | 3 ++- 25 files changed, 114 insertions(+), 30 deletions(-) create mode 100644 mpmissions/Exile.Altis/ExAdClient/Core/Functions/Utils/fn_territoryPlayerPresent.sqf diff --git a/@ExileServer/addons/exad_grinding/Functions/fn_grindProgress.sqf b/@ExileServer/addons/exad_grinding/Functions/fn_grindProgress.sqf index 101cf6c..cee759f 100644 --- a/@ExileServer/addons/exad_grinding/Functions/fn_grindProgress.sqf +++ b/@ExileServer/addons/exad_grinding/Functions/fn_grindProgress.sqf @@ -28,8 +28,12 @@ if((_object getVariable ["ExAd_Grinding_progress", 0]) >= ExAd_GRINDING_OBJECT_M _databaseID = _object getVariable ["ExileDatabaseID",0]; format ["addDoorLock:%1:%2","000000",_databaseID] call ExileServer_system_database_query_fireAndForget; + + ["Grinding", format["Grind successful: Territory ID - %2|Object ID - %3", _object setVariable ["ExileTerritoryID", -1], _object getVariable ["ExileDatabaseID",0]]] call ExAdServer_fnc_log; }; + + _object setVariable ["ExAd_Grinding_progress", (_object getVariable ["ExAd_Grinding_progress", 0]) + ExAd_GRINDING_PROGRESS, true]; true \ No newline at end of file diff --git a/@ExileServer/addons/exad_grinding/Functions/fn_restoreLock.sqf b/@ExileServer/addons/exad_grinding/Functions/fn_restoreLock.sqf index d1a72c3..5a20ab0 100644 --- a/@ExileServer/addons/exad_grinding/Functions/fn_restoreLock.sqf +++ b/@ExileServer/addons/exad_grinding/Functions/fn_restoreLock.sqf @@ -24,4 +24,6 @@ if(isNull _object)exitWith{false}; _object setVariable ["ExAd_Grinding_progress", 0, true]; +["Grinding", format["Lock restored: Territory ID - %2|Object ID - %3", _object setVariable ["ExileTerritoryID", -1], _object getVariable ["ExileDatabaseID",0]]] call ExAdServer_fnc_log; + true \ No newline at end of file diff --git a/@ExileServer/addons/exad_hacking/Functions/fn_startHack.sqf b/@ExileServer/addons/exad_hacking/Functions/fn_startHack.sqf index 05dc04a..053f0c7 100644 --- a/@ExileServer/addons/exad_hacking/Functions/fn_startHack.sqf +++ b/@ExileServer/addons/exad_hacking/Functions/fn_startHack.sqf @@ -22,7 +22,8 @@ _player = objectFromNetId ([_this, 1, "",[""]] call BIS_fnc_param); if(isNull _object || isNull _player)exitWith{false}; -if(((((getPos _object) nearObjects ["Exile_Construction_Flag_Static", 150]) select 0) getVariable ["ExAd_HACKS_SUCCEEDED",0]) >= ExAd_HACKING_TERRITORY_MAX)exitWith{ +_flag = ((getPos _object) nearObjects ["Exile_Construction_Flag_Static", 150]) select 0; +if(_flag getVariable ["ExAd_HACKS_SUCCEEDED",0] >= ExAd_HACKING_TERRITORY_MAX)exitWith{ [STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED ,0,0.6,2,0] remoteExec ["BIS_fnc_dynamicText",owner _player]; }; @@ -36,6 +37,8 @@ if(isNil "ExAd_HACKS_IN_PROGRESS")then{ ExAd_HACKS_IN_PROGRESS = 0; }; +["Hacking", format["Hack started: Player - %1(%2)|Territory - %3|Hacks in motion - %4",name _player, getPlayerUID _player, _flag getVariable ["ExileTerritoryName", "Unknown"], ExAd_HACKS_IN_PROGRESS]] call ExAdServer_fnc_log; + _pos = _player modelToWorld [0, +0.5, 0]; _pos set [2,((getPosATL _player) select 2)]; @@ -47,8 +50,8 @@ _laptop animate ["LaptopLidRotation", 1]; _player removeItem "Exile_Item_Laptop"; -[_object, _player, _laptop] spawn { - params ["_object","_player","_laptop","_markers","_marker","_success","_ticks","_newSize","_destroy","_msg"]; +[_object, _player, _laptop, _flag] spawn { + params ["_object","_player","_laptop","_flag","_markers","_marker","_success","_ticks","_newSize","_destroy","_msg"]; UISleep 2; (parseText (format["%4
%8", ExAd_Hint_Title_Color, ExAd_Hint_Title_Size, ExAd_Hint_Title_Font,STR_ExAd_HACKING_HINT_TITLE, ExAd_Hint_Msg_Color, ExAd_Hint_Msg_Size, ExAd_Hint_Msg_Font, STR_ExAd_HACKING_HINT_HACK_START])) remoteExec ["hint", -2]; @@ -86,7 +89,6 @@ _player removeItem "Exile_Item_Laptop"; _destroy = false; _msg = if(_success && ((random 1) > ExAd_HACKING_FAILED_HACK))then{ - _flag = ((getPos _object) nearObjects ["Exile_Construction_Flag_Static", 150]) select 0; _flag setVariable ["ExAd_HACKS_SUCCEEDED", (_flag getVariable ["ExAd_HACKS_SUCCEEDED",0]) + 1]; if(_object isKindOf "Exile_Construction_Flag_Static")then{ if(!isClass(configFile >> "CfgPatches" >> "ExAd_VG"))then{ @@ -113,20 +115,28 @@ _player removeItem "Exile_Item_Laptop"; _vehObj setPosATL _pos; _vehObj lock 0; - format[STR_ExAd_HACKING_NOTI_VG_SUCCESS, (getText(ConfigFile >> "CfgVehicles" >> typeOf _vehObj >> "displayName"))] + _displayName = getText(ConfigFile >> "CfgVehicles" >> typeOf _vehObj >> "displayName"); + ["Hacking", format["Hack Successful: Territory - %1| Virtual Garage - %2(%3)",_flag getVariable ["ExileTerritoryName", "Unknown"], _displayName, _objId]] call ExAdServer_fnc_log; + + format[STR_ExAd_HACKING_NOTI_VG_SUCCESS, _displayName] }else{ + ["Hacking", format["Hack Successful: Territory - %1| Virtual Garage - No Vehicle",_flag getVariable ["ExileTerritoryName", "Unknown"]]] call ExAdServer_fnc_log; STR_ExAd_HACKING_NOTI_VG_NO_VEH } } }else{ + ["Hacking", format["Hack Successful: Territory - %1| Safe(%2) opened",_flag getVariable ["ExileTerritoryName", "Unknown"], _object getVariable ["ExileDatabaseID", -1]]] call ExAdServer_fnc_log; + _object setVariable ["ExileIsLocked",0,true]; STR_ExAd_HACKING_NOTI_SAFE_SUCCESS } }else{ if(_laptop getVariable ["ExAd_HACK_INTERUPTED",false])then{ + ["Hacking", format["Hack Interupted: Territory - %1",_flag getVariable ["ExileTerritoryName", "Unknown"]]] call ExAdServer_fnc_log; STR_ExAd_HACKING_NOTI_INTERUPTED }else{ _destroy = true; + ["Hacking", format["Hack Failed: Territory - %1",_flag getVariable ["ExileTerritoryName", "Unknown"]]] call ExAdServer_fnc_log; STR_ExAd_HACKING_NOTI_FAILED } }; diff --git a/CHANGELOG.md b/CHANGELOG.md index 2faa73f..51a3d54 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,15 +1,18 @@ #ExAd # Changelog: -## 16 . v0.7.6 +## 160610 . v0.7.6 ###Fixed * Quick-fix - VG App scroll for stored list(Virtual Garage) +* The configuration file could be reed after the postInit script (All) - IMPORTANT TO UPDATE ALL PLUGINS. ###Added * Extra loggin functionality (All) -* Progress bar height customizable (Grinder) +* Progress bar height customizable (Grinding) * Added a lot of new custom UI Display texts - Check stringtabl.xml for new ones. (All) * Added vehicle details to VirtualGarage DetailsView (Virtual Garage) +* Added function ExAd_fnc_territoryPlayerPresent, to see if a player with permissions for a specific flag is online (Core) +* Added a feature so the server owner can decide if hacking should require a player with premissions to be online.(Hacking) ## 160510 21:00 . v0.7.5 ###Fixed diff --git a/docs/Grinding/changelog.md b/docs/Grinding/changelog.md index 2c221d1..f1a5aa5 100644 --- a/docs/Grinding/changelog.md +++ b/docs/Grinding/changelog.md @@ -1,6 +1,15 @@ #Grinding ## Changelog: +### v0.7.6 +####Fixed +* The configuration file could be reed after the postInit script - IMPORTANT TO UPDATE ALL PLUGINS. + +###Added +* Extra loggin functionality +* Added a lot of new custom UI Display texts - Check stringtabl.xml for new ones. +* Progress bar height customizable + ### v0.7.3 #### Fixed * Declaration of un custamized variables diff --git a/docs/Grinding/update.md b/docs/Grinding/update.md index f970f94..8f32cb4 100644 --- a/docs/Grinding/update.md +++ b/docs/Grinding/update.md @@ -1,5 +1,11 @@ #Grinding ## Instructions: + +### v0.7.6 +* Replace or merge "mpmissions\Exile.\ExAdClient\Grinding\customize.sqf" +* Replace or merge "mpmissions\Exile.\stringtable.xml" +* Replace "mpmissions\Exile.\ExAdClient\Grinding" - Big update +* Replace and pack "@ExileServer\addons\exad_grinding" ### v0.7.3 * Replace "mpmissions\Exile.\ExAdClient\Grinding\postInit.sqf" diff --git a/docs/Hacking/changelog.md b/docs/Hacking/changelog.md index 1e46ac1..25de682 100644 --- a/docs/Hacking/changelog.md +++ b/docs/Hacking/changelog.md @@ -1,6 +1,15 @@ #Hacking ## Changelog: +### v0.7.6 +####Fixed +* The configuration file could be reed after the postInit script - IMPORTANT TO UPDATE ALL PLUGINS. + +###Added +* Extra loggin functionality +* Added a lot of new custom UI Display texts - Check stringtabl.xml for new ones. +* Added a feature so the server owner can decide if hacking should require a player with premissions to be online. + ### v0.7.3 #### Fixed * Cleaned the server code diff --git a/docs/Hacking/update.md b/docs/Hacking/update.md index 3486b29..2a5030d 100644 --- a/docs/Hacking/update.md +++ b/docs/Hacking/update.md @@ -1,5 +1,11 @@ #Hacking ## Instructions: + +### v0.7.6 +* Replace or merge "mpmissions\Exile.\ExAdClient\Hacking\customize.sqf" +* Replace or merge "mpmissions\Exile.\stringtable.xml" +* Replace "mpmissions\Exile.\ExAdClient\Hacking" - Big update +* Replace and pack "@ExileServer\addons\exad_hacking" ### v0.7.3 * Replace and pack "@ExileServer\addons\exad_hacking" diff --git a/docs/HaloParachute/changelog.md b/docs/HaloParachute/changelog.md index f5a9bcf..62afb03 100644 --- a/docs/HaloParachute/changelog.md +++ b/docs/HaloParachute/changelog.md @@ -1,6 +1,14 @@ #HaloParachute ## Changelog: +### v0.7.6 +####Fixed +* The configuration file could be reed after the postInit script - IMPORTANT TO UPDATE ALL PLUGINS. + +###Added +* Extra loggin functionality +* Added a lot of new custom UI Display texts - Check stringtabl.xml for new ones. + ## v0.7.5 ###Fixed * Syntax error in postInit.sqf diff --git a/docs/HaloParachute/update.md b/docs/HaloParachute/update.md index 8154594..42c1434 100644 --- a/docs/HaloParachute/update.md +++ b/docs/HaloParachute/update.md @@ -1,6 +1,11 @@ #HaloParachute ## Instructions: +### v0.7.6 +* Replace or merge "mpmissions\Exile.\ExAdClient\HaloParachute\customize.sqf" +* Replace or merge "mpmissions\Exile.\stringtable.xml" +* Replace "mpmissions\Exile.\ExAdClient\HaloParachute" - Big update + ## v0.7.5 * replace "mpmissions\Exile.\ExAdClient\HaloParachute\postInit.sqf" * replace "mpmissions\Exile.\ExAdClient\HaloParachute\Functions" diff --git a/docs/VirtualGarage/changelog.md b/docs/VirtualGarage/changelog.md index 3c2a265..357cd3b 100644 --- a/docs/VirtualGarage/changelog.md +++ b/docs/VirtualGarage/changelog.md @@ -5,6 +5,7 @@ ## v0.7.6 ###Fixed * Quick-fix - VG App scroll for stored list +* The configuration file could be reed after the postInit script - IMPORTANT TO UPDATE ALL PLUGINS. ###Added * Extra loggin functionality diff --git a/docs/VirtualGarage/update.md b/docs/VirtualGarage/update.md index 9a16a6f..46d07fd 100644 --- a/docs/VirtualGarage/update.md +++ b/docs/VirtualGarage/update.md @@ -1,7 +1,7 @@ #VirtualGarage ## Instructions: - ### v0.7.6 +### v0.7.6 * Replace or merge "mpmissions\Exile.\ExAdClient\VG\customize.sqf" * Replace or merge "mpmissions\Exile.\stringtable.xml" * Replace "mpmissions\Exile.\ExAdClient\VG" - Big update diff --git a/docs/core/changelog.md b/docs/core/changelog.md index b7504b6..ca3d4da 100644 --- a/docs/core/changelog.md +++ b/docs/core/changelog.md @@ -2,9 +2,13 @@ ## Changelog: ### v0.7.6 +####Fixed +* The configuration file could be reed after the postInit script - IMPORTANT TO UPDATE ALL PLUGINS. + ####Added * Extra loggin functionality * Changeable variables for logging functionality +* Added function ExAd_fnc_territoryPlayerPresent, to see if a player with permissions for a specific flag is online ### v0.7.3 #### Fixed diff --git a/docs/core/update.md b/docs/core/update.md index 71e668e..6655433 100644 --- a/docs/core/update.md +++ b/docs/core/update.md @@ -2,9 +2,9 @@ ## Instructions: ### v0.7.6 -* Replace "mpmissions\Exile.\ExAdClient\Core\postInit.sqf" * Replace or merge "mpmissions\Exile.\ExAdClient\Core\customize.sqf" * Replace or merge "mpmissions\Exile.\stringtable.xml" +* Replace "mpmissions\Exile.\ExAdClient\Core" - Big update * Replace and pack "@ExileServer\addons\exad_core" ### v0.7.3 diff --git a/mpmissions/Exile.Altis/ExAdClient/Core/CfgFunctions.cpp b/mpmissions/Exile.Altis/ExAdClient/Core/CfgFunctions.cpp index 3c8a9de..abfb64a 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Core/CfgFunctions.cpp +++ b/mpmissions/Exile.Altis/ExAdClient/Core/CfgFunctions.cpp @@ -31,4 +31,5 @@ class Utilities class call {}; class getNearByLocalVeh {}; class localize {}; + class territoryPlayerPresent {}; }; \ No newline at end of file diff --git a/mpmissions/Exile.Altis/ExAdClient/Core/Functions/Utils/fn_territoryPlayerPresent.sqf b/mpmissions/Exile.Altis/ExAdClient/Core/Functions/Utils/fn_territoryPlayerPresent.sqf new file mode 100644 index 0000000..872a751 --- /dev/null +++ b/mpmissions/Exile.Altis/ExAdClient/Core/Functions/Utils/fn_territoryPlayerPresent.sqf @@ -0,0 +1 @@ +/* fn_territoryPlayerPresent.sqf Copyright 2016 Jan Babor Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ params ["_flag","_res"]; _res = false; { if([ExileClientInteractionObject, getPlayerUID _x] call ExileClient_util_territory_getAccessLevel > 0)exitWith{_res = true}; }forEach playableUnits _res \ No newline at end of file diff --git a/mpmissions/Exile.Altis/ExAdClient/Core/postInit.sqf b/mpmissions/Exile.Altis/ExAdClient/Core/postInit.sqf index f8f7805..9fb29ca 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Core/postInit.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Core/postInit.sqf @@ -16,7 +16,8 @@ limitations under the License. */ -execVM "ExAdClient\Core\customize.sqf"; +_path = "ExAdClient\Core\customize.sqf"; +call compile preprocessFileLineNumbers _path; if(isNil "ExAd_Debug")then{ExAd_Debug = true;}; if(isNil "ExAd_Logging")then{ExAd_Logging = true;}; diff --git a/mpmissions/Exile.Altis/ExAdClient/Grinding/Functions/fn_grindLock.sqf b/mpmissions/Exile.Altis/ExAdClient/Grinding/Functions/fn_grindLock.sqf index fdf0cff..26496e2 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Grinding/Functions/fn_grindLock.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Grinding/Functions/fn_grindLock.sqf @@ -31,25 +31,27 @@ player playActionNow "medicStart"; ExAd_DRAW3D_HANDLER = addMissionEventHandler ["Draw3D", { private ["_object","_progress"]; + _height = ExAd_GRINDING_PROGRESSBAR_POS; + _object = if(isNil "ExAd_GRINDING_OBJECT")then{cursorTarget}else{ExAd_GRINDING_OBJECT}; _progress = 1 min ((_object getVariable ["ExAd_Grinding_progress", 1]) / ExAd_GRINDING_OBJECT_MAX); - drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, 1], cursorTarget modelToWorld [0.5, -0.15, 1], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, 0.95], cursorTarget modelToWorld [0.5, -0.15, 0.95], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, 1], cursorTarget modelToWorld [0.5, 0.15, 1], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, 0.95], cursorTarget modelToWorld [0.5, 0.15, 0.95], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, _height], cursorTarget modelToWorld [0.5, -0.15, _height], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, _height - 0.05], cursorTarget modelToWorld [0.5, -0.15, _height - 0.05], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, _height], cursorTarget modelToWorld [0.5, 0.15, _height], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, _height - 0.05], cursorTarget modelToWorld [0.5, 0.15, _height - 0.05], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, 1], cursorTarget modelToWorld [-0.5, -0.15, 0.95], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [0.5, -0.15, 1], cursorTarget modelToWorld [0.5, -0.15, 0.95], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, 1], cursorTarget modelToWorld [-0.5, 0.15, 0.95], [0,0,0,1]]; - drawLine3D [cursorTarget modelToWorld [0.5, -0.15, 1], cursorTarget modelToWorld [0.5, -0.15, 0.95], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, _height], cursorTarget modelToWorld [-0.5, -0.15, _height - 0.05], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [0.5, -0.15, _height], cursorTarget modelToWorld [0.5, -0.15, _height - 0.05], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, _height], cursorTarget modelToWorld [-0.5, 0.15, _height - 0.05], [0,0,0,1]]; + drawLine3D [cursorTarget modelToWorld [0.5, -0.15, _height], cursorTarget modelToWorld [0.5, -0.15, _height - 0.05], [0,0,0,1]]; for "_i" from 1 to 49 do { - drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, 1 - (0.001 * _i)], cursorTarget modelToWorld [((-0.5) + _progress), -0.15, 1 - (0.001 * _i)], [1,0.482,0,1]]; - drawLine3D [cursorTarget modelToWorld [0.5, 0.15, 1 - (0.001 * _i)], cursorTarget modelToWorld [((0.5) - _progress), 0.15, 1 - (0.001 * _i)], [1,0.482,0,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, -0.15, _height - (0.001 * _i)], cursorTarget modelToWorld [((-0.5) + _progress), -0.15, _height - (0.001 * _i)], [1,0.482,0,1]]; + drawLine3D [cursorTarget modelToWorld [0.5, 0.15, _height - (0.001 * _i)], cursorTarget modelToWorld [((0.5) - _progress), 0.15, _height - (0.001 * _i)], [1,0.482,0,1]]; - drawLine3D [cursorTarget modelToWorld [0.5, -0.15, 1 - (0.001 * _i)], cursorTarget modelToWorld [((-0.5) + _progress), -0.15, 1 - (0.001 * _i)], [0.55,0.55,0.55,1]]; - drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, 1 - (0.001 * _i)], cursorTarget modelToWorld [((0.5) - _progress), 0.15, 1 - (0.001 * _i)], [0.55,0.55,0.55,1]]; + drawLine3D [cursorTarget modelToWorld [0.5, -0.15, _height - (0.001 * _i)], cursorTarget modelToWorld [((-0.5) + _progress), -0.15, _height - (0.001 * _i)], [0.55,0.55,0.55,1]]; + drawLine3D [cursorTarget modelToWorld [-0.5, 0.15, _height - (0.001 * _i)], cursorTarget modelToWorld [((0.5) - _progress), 0.15, _height - (0.001 * _i)], [0.55,0.55,0.55,1]]; } }]; diff --git a/mpmissions/Exile.Altis/ExAdClient/Grinding/postInit.sqf b/mpmissions/Exile.Altis/ExAdClient/Grinding/postInit.sqf index 7bb6f02..abc5222 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Grinding/postInit.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Grinding/postInit.sqf @@ -16,7 +16,8 @@ limitations under the License. */ -execVM "ExAdClient\Grinding\customize.sqf"; +_path = "ExAdClient\Grinding\customize.sqf"; +call compile preprocessFileLineNumbers _path; if(isNil "ExAd_GRINDING_PROGRESS_INTERVALL")then{ExAd_GRINDING_PROGRESS_INTERVALL = 60;}; if(isNil "ExAd_GRINDING_PROGRESS")then{ExAd_GRINDING_PROGRESS = 30;}; diff --git a/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackSafe.sqf b/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackSafe.sqf index 208b501..266acc1 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackSafe.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackSafe.sqf @@ -15,5 +15,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +private["_res"]; -(('Exile_Item_Laptop' in (magazines player)) && ((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1) && (({alive _x}count playableUnits) >= ExAd_HACKING_MIN_PLAYERS_ONLINE)) \ No newline at end of file +_res = (('Exile_Item_Laptop' in (magazines player)) && ((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1) && (({alive _x}count playableUnits) >= ExAd_HACKING_MIN_PLAYERS_ONLINE)); + +if(_res && ExAd_HACKING_PLAYER_ONLINE)then{ExileClientInteractionObject call ExAd_fnc_territoryPlayerPresent}else{_res} \ No newline at end of file diff --git a/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackVG.sqf b/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackVG.sqf index f96b9a1..91a4591 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackVG.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Hacking/Functions/fn_canHackVG.sqf @@ -15,5 +15,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +private["_res"]; -(('Exile_Item_Laptop' in (magazines player)) && ((([ExileClientInteractionObject, getPlayerUID player] call ExileClient_util_territory_getAccessLevel) select 0) < ExAd_VG_ACCESS_LEVEL) && (({alive _x}count playableUnits) >= ExAd_HACKING_MIN_PLAYERS_ONLINE)) \ No newline at end of file +_res = (('Exile_Item_Laptop' in (magazines player)) && ((([ExileClientInteractionObject, getPlayerUID player] call ExileClient_util_territory_getAccessLevel) select 0) < ExAd_VG_ACCESS_LEVEL) && (({alive _x}count playableUnits) >= ExAd_HACKING_MIN_PLAYERS_ONLINE)); + +if(_res && ExAd_HACKING_PLAYER_ONLINE)then{ExileClientInteractionObject call ExAd_fnc_territoryPlayerPresent}else{_res} \ No newline at end of file diff --git a/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf b/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf index 085f568..4eb4a6c 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf @@ -30,4 +30,6 @@ ExAd_HACKING_MARKER_COLOR = "ColorOrange"; //STRING - What color should the map ExAd_HACKING_MARKER_TITLE = "Hacker activity"; //STRING - What title should the map marker have. -ExAd_HACKING_FAILED_HACK = 0.15; //SCALAR - 0-1 The possability for the hack to fail once finished. \ No newline at end of file +ExAd_HACKING_FAILED_HACK = 0.15; //SCALAR - 0-1 The possability for the hack to fail once finished. + +ExAd_HACKING_PLAYER_ONLINE = false; //BOLLEAN - True if a player with build permissions for a base needs to be online for a hack to be possible. \ No newline at end of file diff --git a/mpmissions/Exile.Altis/ExAdClient/Hacking/postInit.sqf b/mpmissions/Exile.Altis/ExAdClient/Hacking/postInit.sqf index f0918c0..57bb99d 100644 --- a/mpmissions/Exile.Altis/ExAdClient/Hacking/postInit.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/Hacking/postInit.sqf @@ -17,7 +17,8 @@ */ -execVM "ExAdClient\Hacking\customize.sqf"; +_path = "ExAdClient\Hacking\customize.sqf"; +call compile preprocessFileLineNumbers _path; if(isNil "ExAd_HACKING_MIN_PLAYERS_ONLINE")then{ExAd_HACKING_MIN_PLAYERS_ONLINE = 30;}; if(isNil "ExAd_HACKING_ALLOWED_HACKS")then{ExAd_HACKING_ALLOWED_HACKS = 1;}; @@ -30,6 +31,7 @@ if(isNil "ExAd_HACKING_FAILED_HACK")then{ExAd_HACKING_FAILED_HACK = 0.15;}; if(isNil "ExAd_HACKING_FAILED_HACK")then{ExAd_VG_ACCESS_LEVEL = 1;}; /*Needs to be here if peolpe don't use the VirtualGarage*/ + STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED = if(isLocalized "STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED")then{localize "STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED"}else{"Connection failed! Territory Wi-Fi is down!"}; STR_ExAd_HACKING_NOTI_TERRITORY_ONE_HACK = if(isLocalized "STR_ExAd_HACKING_NOTI_TERRITORY_ONE_HACK")then{localize "STR_ExAd_HACKING_NOTI_TERRITORY_ONE_HACK"}else{"Wi-Fi occupied!!"}; diff --git a/mpmissions/Exile.Altis/ExAdClient/HaloParachute/postInit.sqf b/mpmissions/Exile.Altis/ExAdClient/HaloParachute/postInit.sqf index 1d7a545..358efb2 100644 --- a/mpmissions/Exile.Altis/ExAdClient/HaloParachute/postInit.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/HaloParachute/postInit.sqf @@ -17,9 +17,9 @@ */ -ExAd_HALOPARACHUTE_VERSION = "v0.7.4"; +_path = "ExAdClient\HaloParachute\customize.sqf"; +call compile preprocessFileLineNumbers _path; -execVM "ExAdClient\HaloParachute\customize.sqf"; if(isNil "ExAd_HALOPARACHUTE_SAFE_MODE")then{ExAd_HALOPARACHUTE_SAFE_MODE = false;}; if(isNil "ExAd_HALOPARACHUTE_USE_ACTIONS")then{ExAd_HALOPARACHUTE_USE_ACTIONS = true;}; diff --git a/mpmissions/Exile.Altis/ExAdClient/VirtualGarage/postInit.sqf b/mpmissions/Exile.Altis/ExAdClient/VirtualGarage/postInit.sqf index 4f361b2..cba1e22 100644 --- a/mpmissions/Exile.Altis/ExAdClient/VirtualGarage/postInit.sqf +++ b/mpmissions/Exile.Altis/ExAdClient/VirtualGarage/postInit.sqf @@ -17,7 +17,8 @@ */ -execVM "ExAdClient\VirtualGarage\customize.sqf"; +_path = "ExAdClient\VirtualGarage\customize.sqf"; +call compile preprocessFileLineNumbers _path; if(isNil "ExAd_VG_MIN_ALLOWED_VEH")then{ExAd_VG_MIN_ALLOWED_VEH = 5;}; if(isNil "ExAd_VG_ALLOWED_VEH_MULTIPLE_FACTOR")then{ExAd_VG_ALLOWED_VEH_MULTIPLE_FACTOR = 3;};