Advertisement
Guest User

server_functions.sqf

a guest
Aug 1st, 2014
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.19 KB | None | 0 0
  1. [] spawn {[] execVM "\z\addons\dayz_server\init\AH.sqf";};
  2. #include "\z\addons\dayz_server\compile\server_toggle_debug.hpp"
  3. waituntil {!isnil "bis_fnc_init"};
  4.  
  5. BIS_MPF_remoteExecutionServer = {
  6. if ((_this select 1) select 2 == "JIPrequest") then {
  7. [nil,(_this select 1) select 0,"loc",rJIPEXEC,[any,any,"per","execVM","ca\Modules\Functions\init.sqf"]] call RE;
  8. };
  9. };
  10.  
  11. BIS_Effects_Burn = {};
  12. server_playerLogin = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerLogin.sqf";
  13. server_playerSetup = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerSetup.sqf";
  14. server_onPlayerDisconnect = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_onPlayerDisconnect.sqf";
  15. server_updateObject = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateObject.sqf";
  16. server_playerDied = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerDied.sqf";
  17. server_publishObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishObject.sqf"; //Creates the object in DB
  18. server_publishBld = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_publishBuilding.sqf"; //Creates the building in DB
  19. server_deleteObj = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_deleteObj.sqf"; //Removes the object from the DB
  20. server_playerSync = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_playerSync.sqf";
  21. zombie_findOwner = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\zombie_findOwner.sqf";
  22. server_updateNearbyObjects = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_updateNearbyObjects.sqf";
  23. //fnc_plyrHit = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\fnc_plyrHit.sqf";
  24. server_spawnCrashSite = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_spawnCrashSite.sqf";
  25. server_sendToClient = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_sendToClient.sqf";
  26. server_Wildgenerate = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\zombie_Wildgenerate.sqf";
  27. server_plantSpawner = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\server_plantSpawner.sqf";
  28.  
  29. //Get instance name (e.g. dayz_1.chernarus)
  30. fnc_instanceName = {
  31. "dayz_" + str(dayz_instance) + "." + worldName
  32. };
  33. //spawnComposition = compile preprocessFileLineNumbers "ca\modules\dyno\data\scripts\objectMapper.sqf"; //"\z\addons\dayz_code\compile\object_mapper.sqf";
  34. //fn_bases = compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\fn_bases.sqf";
  35.  
  36. vehicle_handleServerKilled = {
  37. private["_unit","_killer"];
  38. _unit = _this select 0;
  39. _killer = _this select 1;
  40.  
  41. [_unit, "killed"] call server_updateObject;
  42.  
  43. _unit removeAllMPEventHandlers "MPKilled";
  44. _unit removeAllMPEventHandlers "mphit";
  45. _unit removeAllMPEventHandlers "mprespawn";
  46. _unit removeAllEventHandlers "FiredNear";
  47. _unit removeAllEventHandlers "Killed";
  48. _unit removeAllEventHandlers "HandleDamage";
  49. _unit removeAllEventHandlers "GetIn";
  50. _unit removeAllEventHandlers "GetOut";
  51. _unit removeAllEventHandlers "Fired";
  52. _unit removeAllEventHandlers "Local";
  53. };
  54.  
  55. check_publishobject = {
  56. private ["_allowed","_allowedObjects","_object","_playername"];
  57.  
  58. _object = _this select 0;
  59. _playername = _this select 1;
  60. _allowedObjects = ["TentStorage", "Hedgehog_DZ", "Sandbag1_DZ", "BearTrap_DZ", "Wire_cat1", "StashSmall", "StashMedium", "DomeTentStorage", "CamoNet_DZ", "Trap_Cans", "TrapTripwireFlare", "TrapBearTrapSmoke", "TrapTripwireGrenade", "TrapTripwireSmoke", "TrapBearTrapFlare"];
  61. _allowed = false;
  62.  
  63. #ifdef OBJECT_DEBUG
  64. diag_log format ["DEBUG: Checking if Object: %1 is allowed published by %2", _object, _playername];
  65. #endif
  66.  
  67. if ((typeOf _object) in _allowedObjects) then {
  68. #ifdef OBJECT_DEBUG
  69. diag_log format ["DEBUG: Object: %1 published by %2 is Safe",_object, _playername];
  70. #endif
  71. _allowed = true;
  72. };
  73.  
  74. _allowed;
  75. };
  76.  
  77. //event Handlers
  78. eh_localCleanup = {
  79.  
  80. private ["_object","_type","_unit"];
  81. _object = _this select 0;
  82. _object addEventHandler ["local", {
  83. if(_this select 1) then {
  84. _unit = _this select 0;
  85. _type = typeOf _unit;
  86. _myGroupUnit = group _unit;
  87. _unit removeAllMPEventHandlers "mpkilled";
  88. _unit removeAllMPEventHandlers "mphit";
  89. _unit removeAllMPEventHandlers "mprespawn";
  90. _unit removeAllEventHandlers "FiredNear";
  91. _unit removeAllEventHandlers "HandleDamage";
  92. _unit removeAllEventHandlers "Killed";
  93. _unit removeAllEventHandlers "Fired";
  94. _unit removeAllEventHandlers "GetOut";
  95. _unit removeAllEventHandlers "GetIn";
  96. _unit removeAllEventHandlers "Local";
  97. clearVehicleInit _unit;
  98. deleteVehicle _unit;
  99. deleteGroup _myGroupUnit;
  100. _unit = nil;
  101. diag_log ("CLEANUP: DELETED A " + str(_type) );
  102. };
  103. }];
  104. };
  105.  
  106. server_hiveWrite = {
  107. private["_data"];
  108. //diag_log ("ATTEMPT WRITE: " + _this);
  109. _data = "HiveExt" callExtension _this;
  110. //diag_log ("WRITE: " +str(_data));
  111. };
  112.  
  113. server_hiveReadWrite = {
  114. private["_key","_resultArray","_data"];
  115. _key = _this;
  116. //diag_log ("ATTEMPT READ/WRITE: " + _key);
  117. _data = "HiveExt" callExtension _key;
  118. //diag_log ("READ/WRITE: " +str(_data));
  119. _resultArray = call compile format ["%1",_data];
  120. _resultArray;
  121. };
  122.  
  123. onPlayerDisconnected "[_uid,_name] call server_onPlayerDisconnect;";
  124.  
  125. server_getDiff = {
  126. private["_variable","_object","_vNew","_vOld","_result"];
  127. _variable = _this select 0;
  128. _object = _this select 1;
  129. _vNew = _object getVariable[_variable,0];
  130. _vOld = _object getVariable[(_variable + "_CHK"),_vNew];
  131. _result = 0;
  132. if (_vNew < _vOld) then {
  133. //JIP issues
  134. _vNew = _vNew + _vOld;
  135. _object getVariable[(_variable + "_CHK"),_vNew];
  136. } else {
  137. _result = _vNew - _vOld;
  138. _object setVariable[(_variable + "_CHK"),_vNew];
  139. };
  140. _result;
  141. };
  142.  
  143. server_getDiff2 = {
  144. private["_variable","_object","_vNew","_vOld","_result"];
  145. _variable = _this select 0;
  146. _object = _this select 1;
  147. _vNew = _object getVariable[_variable,0];
  148. _vOld = _object getVariable[(_variable + "_CHK"),_vNew];
  149. _result = _vNew - _vOld;
  150. _object setVariable[(_variable + "_CHK"),_vNew];
  151. _result;
  152. };
  153.  
  154. dayz_objectUID2 = {
  155. private["_position","_dir","_key"];
  156. _dir = _this select 0;
  157. _key = "";
  158. _position = _this select 1;
  159. {
  160. _x = _x * 10;
  161. if ( _x < 0 ) then { _x = _x * -10 };
  162. _key = _key + str(round(_x));
  163. } forEach _position;
  164. _key = _key + str(round(_dir));
  165. _key;
  166. };
  167.  
  168. dayz_recordLogin = {
  169. private["_key"];
  170. _key = format["CHILD:103:%1:%2:%3:",_this select 0,_this select 1,_this select 2];
  171. _key call server_hiveWrite;
  172. };
  173.  
  174. donorListBase = [
  175. "10332294", //ebay
  176. "0",
  177. "0"
  178. ];
  179.  
  180. donorListBases = [
  181. [2324.2893,15365.067,0], //ebay
  182. [],
  183. []
  184. ];
  185.  
  186.  
  187. publicVariable "donorListBase";
  188. publicVariable "donorListBases";
  189.  
  190. call compile preprocessFileLineNumbers "\z\addons\dayz_server\compile\fa_hiveMaintenance.sqf";
  191. #include "owcleanup.sqf";
  192. //Buildings
  193. call compile preProcessFileLineNumbers "\z\addons\dayz_server\buildings\main.sqf";
  194.  
  195. //---------MapAdditions--------
  196. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\BerezinoStadium.sqf";
  197. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\BlackForest.sqf";
  198. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\CustomMap1.sqf";
  199. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\dichina_base.sqf";
  200. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\KamenkaEscape.sqf";
  201. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\KlenCastle.sqf";
  202. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\KlenTankTraps.sqf";
  203. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\LopatinoOutpost.sqf";
  204. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\NovyLugbase.sqf";
  205. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\NWAcustom.sqf";
  206. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\oilfieldsbase.sqf";
  207. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\Petrovka.sqf";
  208. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\PVPZone.sqf";
  209. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\SkalistyCastle.sqf";
  210. execVM "\vilayercodecustom\dayz_overwatch\mapadditions\ZelenoCastle1.sqf";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement