Advertisement
ibziDk

ExileServer_object_player_createBambi.sqf

Mar 15th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.54 KB | None | 0 0
  1. /**
  2. * ExileServer_object_player_createBambi
  3. *
  4. * Exile Mod
  5. * www.exilemod.com
  6. * © 2015 Exile Mod Team
  7. *
  8. * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
  9. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
  10. */
  11.  
  12. private["_sessionID","_requestingPlayer","_spawnLocationMarkerName","_thugToCheck","_HaloSpawnCheck","_bambiPlayer","_accountData","_direction","_position","_spawnAreaPosition","_spawnAreaRadius","_clanID","_clanData","_clanGroup","_player","_devFriendlyMode","_devs","_parachuteNetID","_spawnType","_parachuteObject"];
  13. _sessionID = _this select 0;
  14. _requestingPlayer = _this select 1;
  15. _spawnLocationMarkerName = _this select 2;
  16. _bambiPlayer = _this select 3;
  17. _accountData = _this select 4;
  18. _direction = random 360;
  19. if ((count ExileSpawnZoneMarkerPositions) isEqualTo 0) then
  20. {
  21. _position = call ExileClient_util_world_findCoastPosition;
  22. if ((toLower worldName) isEqualTo "namalsk") then
  23. {
  24. while {(_position distance2D [76.4239, 107.141, 0]) < 100} do
  25. {
  26. _position = call ExileClient_util_world_findCoastPosition;
  27. };
  28. };
  29. }
  30. else
  31. {
  32. _spawnAreaPosition = getMarkerPos _spawnLocationMarkerName;
  33. _spawnAreaRadius = getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "spawnZoneRadius");
  34. _position = [_spawnAreaPosition, _spawnAreaRadius] call ExileClient_util_math_getRandomPositionInCircle;
  35. while {surfaceIsWater _position} do
  36. {
  37. _position = [_spawnAreaPosition, _spawnAreaRadius] call ExileClient_util_math_getRandomPositionInCircle;
  38. };
  39. };
  40. _name = name _requestingPlayer;
  41. _clanID = (_accountData select 3);
  42. if !((typeName _clanID) isEqualTo "SCALAR") then
  43. {
  44. _clanID = -1;
  45. _clanData = [];
  46. }
  47. else
  48. {
  49. _clanData = missionNamespace getVariable [format ["ExileServer_clan_%1",_clanID],[]];
  50. if(isNull (_clanData select 5))then
  51. {
  52. _clanGroup = createGroup independent;
  53. _clanData set [5,_clanGroup];
  54. _clanGroup setGroupIdGlobal [_clanData select 0];
  55. missionNameSpace setVariable [format ["ExileServer_clan_%1",_clanID],_clanData];
  56. }
  57. else
  58. {
  59. _clanGroup = (_clanData select 5);
  60. };
  61. [_player] joinSilent _clanGroup;
  62. };
  63. _bambiPlayer setPosATL [_position select 0,_position select 1,0];
  64. _bambiPlayer disableAI "FSM";
  65. _bambiPlayer disableAI "MOVE";
  66. _bambiPlayer disableAI "AUTOTARGET";
  67. _bambiPlayer disableAI "TARGET";
  68. _bambiPlayer disableAI "CHECKVISIBLE";
  69. _bambiPlayer setDir _direction;
  70. _bambiPlayer setName _name;
  71. _bambiPlayer setVariable ["ExileMoney", 0, true];
  72. _bambiPlayer setVariable ["ExileScore", (_accountData select 0)];
  73. _bambiPlayer setVariable ["ExileKills", (_accountData select 1)];
  74. _bambiPlayer setVariable ["ExileDeaths", (_accountData select 2)];
  75. _bambiPlayer setVariable ["ExileClanID", _clanID];
  76. _bambiPlayer setVariable ["ExileClanData", _clanData];
  77. _bambiPlayer setVariable ["ExileHunger", 100];
  78. _bambiPlayer setVariable ["ExileThirst", 100];
  79. _bambiPlayer setVariable ["ExileTemperature", 37];
  80. _bambiPlayer setVariable ["ExileWetness", 0];
  81. _bambiPlayer setVariable ["ExileAlcohol", 0];
  82. _bambiPlayer setVariable ["ExileName", _name];
  83. _bambiPlayer setVariable ["ExileOwnerUID", getPlayerUID _requestingPlayer];
  84. _bambiPlayer setVariable ["ExileIsBambi", true];
  85. _bambiPlayer setVariable ["ExileXM8IsOnline", false, true];
  86. _bambiPlayer setVariable ["ExileLocker", (_accountData select 4), true];
  87. _devFriendlyMode = getNumber (configFile >> "CfgSettings" >> "ServerSettings" >> "devFriendyMode");
  88. if (_devFriendlyMode isEqualTo 1) then
  89. {
  90. _devs = getArray (configFile >> "CfgSettings" >> "ServerSettings" >> "devs");
  91. {
  92. if ((getPlayerUID _requestingPlayer) isEqualTo (_x select 0))exitWith
  93. {
  94. if((name _requestingPlayer) isEqualTo (_x select 1))then
  95. {
  96. _bambiPlayer setVariable ["ExileMoney", 500000, true];
  97. _bambiPlayer setVariable ["ExileScore", 100000];
  98. };
  99. };
  100. }
  101. forEach _devs;
  102. };
  103. _parachuteNetID = "";
  104.  
  105. _thugToCheck = _sessionID call ExileServer_system_session_getPlayerObject;
  106. _HaloSpawnCheck = _thugToCheck getVariable ["playerWantsHaloSpawn", 0];
  107.  
  108. if (_HaloSpawnCheck isEqualTo 1) then
  109. {
  110. _position set [2, getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "parachuteDropHeight")];
  111. if ((getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "haloJump")) isEqualTo 1) then
  112. {
  113. _bambiPlayer addBackpackGlobal "B_Parachute";
  114. _bambiPlayer setPosATL _position;
  115. _spawnType = 2;
  116. }
  117. else
  118. {
  119. _parachuteObject = createVehicle ["Steerable_Parachute_F", _position, [], 0, "CAN_COLLIDE"];
  120. _parachuteObject setDir _direction;
  121. _parachuteObject setPosATL _position;
  122. _parachuteObject enableSimulationGlobal true;
  123. _parachuteNetID = netId _parachuteObject;
  124. _spawnType = 1;
  125. };
  126. }
  127. else
  128. {
  129. _spawnType = 0;
  130. };
  131. if((canTriggerDynamicSimulation _bambiPlayer) isEqualTo false) then
  132. {
  133. _bambiPlayer triggerDynamicSimulation true;
  134. };
  135. // Custom Loadout Starts Here. Uncomment the lines you want your players to have..
  136.  
  137. // Remove Anything already on the BambiSettings
  138. removeAllAssignedItems _bambiPlayer;
  139. removeGoggles _bambiPlayer;
  140. removeHeadgear _bambiPlayer;
  141. removeUniform _bambiPlayer;
  142. //removeBackpackGlobal _bambiPlayer; // Only Uncomment This if Not Using Paracutes
  143.  
  144. // Clothing
  145. _bambiPlayer forceAddUniform "U_C_Poloshirt_blue"; //
  146. _bambiPlayer addVest "V_BandollierB_blk"; // Change Vest Class Here
  147. _bambiPlayer addHeadgear "H_Cap_blk"; // Change Headgear Class Here
  148. //_bambiPlayer addBackpack "B_FieldPack_blk"; // Change Backpack Class Here
  149.  
  150. // Navigation Items
  151. //_bambiPlayer linkItem "ItemGPS"; // This Puts The GPS Into The Correct Slot
  152. _bambiPlayer linkItem "Exile_Item_XM8"; // This Puts The XM8 Into The Correct Slot
  153. //_bambiPlayer linkItem "ItemCompass"; //This Puts The Compass Into The Correct Slot
  154. _bambiPlayer linkItem "ItemMap"; //This Puts The Map Into The Correct Slot
  155. _bambiPlayer linkItem "ItemRadio"; //This Puts The Radio Into The Correct Slot
  156.  
  157. // Food and Drink Items
  158. _bambiPlayer addItem "Exile_Item_PlasticBottleFreshWater"; // Change Drink Class Here
  159. _bambiPlayer addItem "Exile_Item_Raisins"; // Change Food Class Here
  160.  
  161. // Medical Items
  162. _bambiPlayer addItem "Exile_Item_Vishpirin"; // Change Meds Class Here
  163. //_bambiPlayer addItem "Exile_Item_Bandage"; // Change Meds Class Here
  164. //_bambiPlayer addItem "Exile_Item_InstaDoc"; // Change Meds Class Here
  165.  
  166. // Ammo - Add ammo before weapons
  167. _bambiPlayer addItemToVest "CUP_8Rnd_9x18_Makarov_M"; // Ammo For Weapon Listed Below
  168. //_bambiPlayer addItemToVest "CUP_8Rnd_9x18_Makarov_M"; // Ammo For Weapon Listed Below
  169. _bambiPlayer addItemToVest "CUP_64Rnd_9x19_Bizon_M"; // Ammo For Weapon Listed Below
  170.  
  171. // Weapons
  172. _bambiPlayer addWeapon "CUP_hgun_Makarov"; // Weapon
  173. _bambiPlayer addWeapon "CUP_smg_bizon"; // Weapon
  174.  
  175. // Weapons Attachments
  176. //_bambiPlayer addHandgunItem "optic_MRD"; // Adds Attachment to Handgun | Change Attachment Class Here
  177. //_bambiPlayer addHandgunItem "muzzle_snds_acp"; // Adds Attachment to Handgun | Change Attachment Class Here
  178. //_bambiPlayer addPrimaryWeaponItem "optic_AMS_khk"; // Adds Attachment to Primary Weapon | Change Attachment Class Here
  179. //_bambiPlayer addPrimaryWeaponItem "bipod_03_F_oli";// Adds Attachment to Primary Weapon | Change Attachment Class Here
  180. //_bambiPlayer addPrimaryWeaponItem "muzzle_snds_B_khk_F"; // Adds Attachment to Primary Weapon | Change Attachment Class Here
  181.  
  182. // Custom Loadout Ends Here. Uncomment the lines you want your players to have..
  183.  
  184. else
  185. {
  186. _spawnType = 1;
  187. };
  188.  
  189. _score = (_accountData select 1);
  190. if((getPlayerUID _requestingPlayer) in
  191. [
  192. // Load out 1
  193. "***********", //id here
  194. "***********" //id here
  195.  
  196. ]) then {
  197. clearWeaponCargo _bambiPlayer; // clears items
  198. clearMagazineCargo _bambiPlayer; // clears items
  199. _bambiPlayer forceAddUniform "rhs_uniform_FROG01_wd"; // adds uniforms
  200. _bambiPlayer addVest "rhsusf_spc_rifleman";
  201. _bambiPlayer addWeapon "Exile_Item_XM8";
  202. _bambiPlayer addWeapon "ItemCompass";
  203. _bambiPlayer addWeapon "ItemMap";
  204. _bambiPlayer addWeapon "ItemRadio";
  205. _bambiPlayer addWeapon "ItemGPS";
  206. _bambiPlayer addWeapon "Leupold_Mk4";
  207. _bambiPlayer addItem "NVGoggles_mas_h";
  208. _bambiPlayer assignItem "NVGoggles_mas_h";
  209. _bambiPlayer addHeadgear "rhsusf_lwh_helmet_marpatwd_blk_ess";
  210. _bambiPlayer addMagazines ["rhsusf_10Rnd_762x51_m62_Mag", 5];
  211. _bambiPlayer addMagazines ["rhsusf_mag_15Rnd_9x19_JHP", 3];
  212. _bambiPlayer addWeapon "rhs_weap_m40a5";
  213. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_harris_swivel";
  214. _bambiPlayer addWeapon "rhsusf_weap_m9";
  215. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_M8541_low";
  216. _bambiPlayer addItemToVest "Exile_Item_CanOpener";
  217. _bambiPlayer addItemToVest "rhsusf_acc_ACOG3_USMC";
  218. _bambiPlayer addItemToVest "Exile_Item_PlasticBottleCoffee";
  219. _bambiPlayer addItemToVest "Exile_Item_EMRE";
  220. _bambiPlayer addItemToVest "FirstAidKit";
  221. _bambiPlayer addItemToVest "FirstAidKit";
  222. _bambiPlayer addItemToVest "Chemlight_blue";
  223. _bambiPlayer addItemToVest "SmokeShellBlue";
  224. _bambiPlayer addItemToVest "SmokeShellBlue";
  225. _bambiPlayer addItemToVest "HandGrenade";
  226.  
  227. }
  228. else {
  229. if ((getPlayerUID _requestingPlayer) in
  230. [
  231. //LOADOUT2
  232. "", //id here
  233. "" //id here
  234.  
  235.  
  236. ]) then {
  237. clearWeaponCargo _bambiPlayer; // clears items
  238. clearMagazineCargo _bambiPlayer; // clears items
  239. _bambiPlayer forceAddUniform "Exile_Uniform_Woodland"; // adds uniforms
  240. _bambiPlayer addVest "V_PlateCarrier2_rgr";
  241. _bambiPlayer addWeapon "Exile_Item_XM8";
  242. _bambiPlayer addWeapon "ItemCompass";
  243. _bambiPlayer addWeapon "ItemMap";
  244. _bambiPlayer addWeapon "ItemRadio";
  245. _bambiPlayer addWeapon "ItemGPS";
  246. _bambiPlayer addWeapon "Rangefinder";
  247. _bambiPlayer addItem "NVGoggles_INDEP";
  248. _bambiPlayer assignItem "NVGoggles_INDEP";
  249. _bambiplayer addHeadgear "rhsusf_ach_helmet_M81";
  250. _bambiPlayer addBackpack "B_AssaultPack_Kerry";
  251. _bambiPlayer addMagazines ["rhs_mag_M441_HE", 3];
  252. _bambiPlayer addWeapon "rhs_weap_m4a1_carryhandle_pmag";
  253. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_harris_bipod";
  254. _bambiPlayer addMagazines ["rhs_mag_30Rnd_556x45_Mk262_Stanag", 5];
  255. _bambiPlayer addWeapon "rhs_weap_M320";
  256. //_bambiPlayer addHandgunItem "muzzle_snds_acp";
  257. _bambiPlayer addMagazines ["rhs_mag_30Rnd_556x45_Mk262_Stanag", 2];
  258. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_eotech_552";
  259. _bambiPlayer addItemToVest "Exile_Item_CanOpener";
  260. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_nt4_black";
  261. _bambiPlayer addItemToVest "Exile_Item_Vishpirin";
  262. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_ACOG3";
  263. _bambiPlayer addItemToBackpack "Exile_Item_PlasticBottleCoffee";
  264. _bambiPlayer addItemToBackpack "Exile_Item_EMRE";
  265.  
  266. }
  267.  
  268.  
  269. };
  270.  
  271.  
  272.  
  273. _bambiPlayer addMPEventHandler ["MPKilled", {_this call ExileServer_object_player_event_onMpKilled}];
  274. _bambiPlayer call ExileServer_object_player_database_insert;
  275. _bambiPlayer call ExileServer_object_player_database_update;
  276. [
  277. _sessionID,
  278. "createPlayerResponse",
  279. [
  280. _bambiPlayer,
  281. _parachuteNetID,
  282. str (_accountData select 0),
  283. (_accountData select 1),
  284. (_accountData select 2),
  285. 100,
  286. 100,
  287. 0,
  288. (getNumber (configFile >> "CfgSettings" >> "BambiSettings" >> "protectionDuration")) * 60,
  289. _clanData,
  290. _spawnType
  291. ]
  292. ]
  293. call ExileServer_system_network_send_to;
  294. [_sessionID, _bambiPlayer] call ExileServer_system_session_update;
  295. true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement