Advertisement
Guest User

Untitled

a guest
Apr 5th, 2017
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.72 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","_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. if ((getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "parachuteSpawning")) isEqualTo 1) then
  105. {
  106. _position set [2, getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "parachuteDropHeight")];
  107. if ((getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "haloJump")) isEqualTo 1) then
  108. {
  109. _bambiPlayer addBackpackGlobal "B_Parachute";
  110. _bambiPlayer setPosATL _position;
  111. _spawnType = 2;
  112. }
  113. else
  114. {
  115. _parachuteObject = createVehicle ["Steerable_Parachute_F", _position, [], 0, "CAN_COLLIDE"];
  116. _parachuteObject setDir _direction;
  117. _parachuteObject setPosATL _position;
  118. _parachuteObject enableSimulationGlobal true;
  119. _parachuteNetID = netId _parachuteObject;
  120. _spawnType = 1;
  121. };
  122. }
  123. else
  124. {
  125. _spawnType = 1;
  126. };
  127.  
  128. _score = (_accountData select 1);
  129. if((getPlayerUID _requestingPlayer) in
  130. [
  131. // Load out 1
  132. "*****************", //id here
  133. "*****************" //id here
  134.  
  135. ]) then {
  136. clearWeaponCargo _bambiPlayer; // clears items
  137. clearMagazineCargo _bambiPlayer; // clears items
  138. _bambiPlayer forceAddUniform "rhs_uniform_FROG01_wd"; // adds uniforms
  139. _bambiPlayer addVest "rhsusf_spc_rifleman";
  140. _bambiPlayer addWeapon "Exile_Item_XM8";
  141. _bambiPlayer addWeapon "ItemCompass";
  142. _bambiPlayer addWeapon "ItemMap";
  143. _bambiPlayer addWeapon "ItemRadio";
  144. _bambiPlayer addWeapon "ItemGPS";
  145. _bambiPlayer addWeapon "Leupold_Mk4";
  146. _bambiPlayer addItem "NVGoggles_mas_h";
  147. _bambiPlayer assignItem "NVGoggles_mas_h";
  148. _bambiPlayer addHeadgear "rhsusf_lwh_helmet_marpatwd_blk_ess";
  149. _bambiPlayer addMagazines ["rhsusf_10Rnd_762x51_m62_Mag", 5];
  150. _bambiPlayer addMagazines ["rhsusf_mag_15Rnd_9x19_JHP", 3];
  151. _bambiPlayer addWeapon "rhs_weap_m40a5";
  152. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_harris_swivel";
  153. _bambiPlayer addWeapon "rhsusf_weap_m9";
  154. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_M8541_low";
  155. _bambiPlayer addItemToVest "Exile_Item_CanOpener";
  156. _bambiPlayer addItemToVest "rhsusf_acc_ACOG3_USMC";
  157. _bambiPlayer addItemToVest "Exile_Item_PlasticBottleCoffee";
  158. _bambiPlayer addItemToVest "Exile_Item_EMRE";
  159. _bambiPlayer addItemToVest "FirstAidKit";
  160. _bambiPlayer addItemToVest "FirstAidKit";
  161. _bambiPlayer addItemToVest "Chemlight_blue";
  162. _bambiPlayer addItemToVest "SmokeShellBlue";
  163. _bambiPlayer addItemToVest "SmokeShellBlue";
  164. _bambiPlayer addItemToVest "HandGrenade";
  165.  
  166. }
  167. else {
  168. if ((getPlayerUID _requestingPlayer) in
  169. [
  170. //LOADOUT2
  171. "*****************", //id here
  172. "*****************" //id here
  173.  
  174.  
  175. ]) then {
  176. clearWeaponCargo _bambiPlayer; // clears items
  177. clearMagazineCargo _bambiPlayer; // clears items
  178. _bambiPlayer forceAddUniform "Exile_Uniform_Woodland"; // adds uniforms
  179. _bambiPlayer addVest "V_PlateCarrier2_rgr";
  180. _bambiPlayer addWeapon "Exile_Item_XM8";
  181. _bambiPlayer addWeapon "ItemCompass";
  182. _bambiPlayer addWeapon "ItemMap";
  183. _bambiPlayer addWeapon "ItemRadio";
  184. _bambiPlayer addWeapon "ItemGPS";
  185. _bambiPlayer addWeapon "Rangefinder";
  186. _bambiPlayer addItem "NVGoggles_INDEP";
  187. _bambiPlayer assignItem "NVGoggles_INDEP";
  188. _bambiplayer addHeadgear "rhsusf_ach_helmet_M81";
  189. _bambiPlayer addBackpack "B_AssaultPack_Kerry";
  190. _bambiPlayer addMagazines ["rhs_mag_M441_HE", 3];
  191. _bambiPlayer addWeapon "rhs_weap_m4a1_carryhandle_pmag";
  192. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_harris_bipod";
  193. _bambiPlayer addMagazines ["rhs_mag_30Rnd_556x45_Mk262_Stanag", 5];
  194. _bambiPlayer addWeapon "rhs_weap_M320";
  195. //_bambiPlayer addHandgunItem "muzzle_snds_acp";
  196. _bambiPlayer addMagazines ["rhs_mag_30Rnd_556x45_Mk262_Stanag", 2];
  197. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_eotech_552";
  198. _bambiPlayer addItemToVest "Exile_Item_CanOpener";
  199. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_nt4_black";
  200. _bambiPlayer addItemToVest "Exile_Item_Vishpirin";
  201. _bambiPlayer addPrimaryWeaponItem "rhsusf_acc_ACOG3";
  202. _bambiPlayer addItemToBackpack "Exile_Item_PlasticBottleCoffee";
  203. _bambiPlayer addItemToBackpack "Exile_Item_EMRE";
  204.  
  205. }
  206.  
  207.  
  208. };
  209.  
  210.  
  211.  
  212. _bambiPlayer addMPEventHandler ["MPKilled", {_this call ExileServer_object_player_event_onMpKilled}];
  213. _bambiPlayer call ExileServer_object_player_database_insert;
  214. _bambiPlayer call ExileServer_object_player_database_update;
  215. [
  216. _sessionID,
  217. "createPlayerResponse",
  218. [
  219. _bambiPlayer,
  220. _parachuteNetID,
  221. str (_accountData select 0),
  222. (_accountData select 1),
  223. (_accountData select 2),
  224. 100,
  225. 100,
  226. 0,
  227. (getNumber (configFile >> "CfgSettings" >> "BambiSettings" >> "protectionDuration")) * 60,
  228. _clanData,
  229. _spawnType
  230. ]
  231. ]
  232. call ExileServer_system_network_send_to;
  233. [_sessionID, _bambiPlayer] call ExileServer_system_session_update;
  234. true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement