Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * ExileServer_object_player_createBambi
- *
- * 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["_sessionID","_requestingPlayer","_spawnLocationMarkerName","_bambiPlayer","_accountData","_direction","_position","_spawnAreaPosition","_spawnAreaRadius","_clanID","_clanData","_clanGroup","_player","_devFriendlyMode","_devs","_parachuteNetID","_spawnType","_parachuteObject"];
- _sessionID = _this select 0;
- _requestingPlayer = _this select 1;
- _spawnLocationMarkerName = _this select 2;
- _bambiPlayer = _this select 3;
- _accountData = _this select 4;
- _direction = random 360;
- if ((count ExileSpawnZoneMarkerPositions) isEqualTo 0) then
- {
- _position = call ExileClient_util_world_findCoastPosition;
- if ((toLower worldName) isEqualTo "namalsk") then
- {
- while {(_position distance2D [76.4239, 107.141, 0]) < 100} do
- {
- _position = call ExileClient_util_world_findCoastPosition;
- };
- };
- }
- else
- {
- _spawnAreaPosition = getMarkerPos _spawnLocationMarkerName;
- _spawnAreaRadius = getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "spawnZoneRadius");
- _position = [_spawnAreaPosition, _spawnAreaRadius] call ExileClient_util_math_getRandomPositionInCircle;
- while {surfaceIsWater _position} do
- {
- _position = [_spawnAreaPosition, _spawnAreaRadius] call ExileClient_util_math_getRandomPositionInCircle;
- };
- };
- _name = name _requestingPlayer;
- _clanID = (_accountData select 3);
- if !((typeName _clanID) isEqualTo "SCALAR") then
- {
- _clanID = -1;
- _clanData = [];
- }
- else
- {
- _clanData = missionNamespace getVariable [format ["ExileServer_clan_%1",_clanID],[]];
- if(isNull (_clanData select 5))then
- {
- _clanGroup = createGroup independent;
- _clanData set [5,_clanGroup];
- _clanGroup setGroupIdGlobal [_clanData select 0];
- missionNameSpace setVariable [format ["ExileServer_clan_%1",_clanID],_clanData];
- }
- else
- {
- _clanGroup = (_clanData select 5);
- };
- [_player] joinSilent _clanGroup;
- };
- _bambiPlayer setPosATL [_position select 0,_position select 1,0];
- _bambiPlayer disableAI "FSM";
- _bambiPlayer disableAI "MOVE";
- _bambiPlayer disableAI "AUTOTARGET";
- _bambiPlayer disableAI "TARGET";
- _bambiPlayer disableAI "CHECKVISIBLE";
- _bambiPlayer setDir _direction;
- _bambiPlayer setName _name;
- _bambiPlayer setVariable ["ExileMoney", 0, true];
- _bambiPlayer setVariable ["ExileScore", (_accountData select 0)];
- _bambiPlayer setVariable ["ExileKills", (_accountData select 1)];
- _bambiPlayer setVariable ["ExileDeaths", (_accountData select 2)];
- _bambiPlayer setVariable ["ExileClanID", _clanID];
- _bambiPlayer setVariable ["ExileClanData", _clanData];
- _bambiPlayer setVariable ["ExileHunger", 100];
- _bambiPlayer setVariable ["ExileThirst", 100];
- _bambiPlayer setVariable ["ExileTemperature", 37];
- _bambiPlayer setVariable ["ExileWetness", 0];
- _bambiPlayer setVariable ["ExileAlcohol", 0];
- _bambiPlayer setVariable ["ExileName", _name];
- _bambiPlayer setVariable ["ExileOwnerUID", getPlayerUID _requestingPlayer];
- _bambiPlayer setVariable ["ExileIsBambi", true];
- _bambiPlayer setVariable ["ExileXM8IsOnline", false, true];
- _bambiPlayer setVariable ["ExileLocker", (_accountData select 4), true];
- _devFriendlyMode = getNumber (configFile >> "CfgSettings" >> "ServerSettings" >> "devFriendyMode");
- if (_devFriendlyMode isEqualTo 1) then
- {
- _devs = getArray (configFile >> "CfgSettings" >> "ServerSettings" >> "devs");
- {
- if ((getPlayerUID _requestingPlayer) isEqualTo (_x select 0))exitWith
- {
- if((name _requestingPlayer) isEqualTo (_x select 1))then
- {
- _bambiPlayer setVariable ["ExileMoney", 500000, true];
- _bambiPlayer setVariable ["ExileScore", 100000];
- };
- };
- }
- forEach _devs;
- };
- _parachuteNetID = "";
- if ((getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "parachuteSpawning")) isEqualTo 1) then
- {
- _position set [2, getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "parachuteDropHeight")];
- if ((getNumber(configFile >> "CfgSettings" >> "BambiSettings" >> "haloJump")) isEqualTo 1) then
- {
- _bambiPlayer addBackpackGlobal "B_Parachute";
- _bambiPlayer setPosATL _position;
- _spawnType = 2;
- }
- else
- {
- _parachuteObject = createVehicle ["Steerable_Parachute_F", _position, [], 0, "CAN_COLLIDE"];
- _parachuteObject setDir _direction;
- _parachuteObject setPosATL _position;
- _parachuteObject enableSimulationGlobal true;
- _parachuteNetID = netId _parachuteObject;
- _spawnType = 1;
- };
- }
- else
- {
- _spawnType = 0;
- };
- /* GIVE CUSTOM LOADOUT BY RESPECT STATE */
- _score = (_accountData select 0);
- switch (true) do {
- case (_score < 5000) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "5 - 8k respect loadout attached";
- _bambiPlayer forceAddUniform "U_O_CombatUniform_oucamo";
- _bambiPlayer addVest "V_Rangemaster_belt";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- };
- case (_score > 4999 && _score < 10000) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "8 - 10k respect loadout attached";
- _bambiPlayer forceAddUniform "U_BG_leader";
- _bambiPlayer addVest "V_Rangemaster_belt";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag_SMG_02", 2];
- _bambiPlayer addWeapon "SMG_02_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- };
- case (_score > 9999 && _score < 15000) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "10 - 15k respect loadout attached";
- _bambiPlayer forceAddUniform "U_B_CombatUniform_mcam_vest";
- _bambiPlayer addVest "V_BandollierB_oli";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addMagazines ["30Rnd_556x45_Stanag", 2];
- _bambiPlayer addWeapon "arifle_TRG20_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- };
- case (_score > 14999 && _score < 20000) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "15 - 20k respect loadout attached";
- _bambiPlayer forceAddUniform "U_B_CombatUniform_mcam";
- _bambiPlayer addVest "V_PlateCarrier1_rgr";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addMagazines ["30Rnd_556x45_Stanag", 2];
- _bambiPlayer addWeapon "arifle_Mk20C_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- };
- case (_score > 19999 && _score < 30000) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "20 - 30k respect loadout attached";
- _bambiPlayer forceAddUniform "U_B_CombatUniform_mcam";
- _bambiPlayer addVest "V_PlateCarrierSpec_mtp";
- _bambiPlayer addWeapon "ItemGPS";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addMagazines ["30Rnd_65x39_caseless_Mag", 2];
- _bambiPlayer addWeapon "arifle_Mx_Black_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_Vishpirin";
- };
- case (_score > 29999) :
- {
- clearWeaponCargo _bambiPlayer;
- clearMagazineCargo _bambiPlayer;
- hint "30k+ respect loadout attached";
- _bambiPlayer forceAddUniform "U_B_CombatUniform_mcam";
- _bambiPlayer addVest "V_PlateCarrierGL_mtp";
- _bambiPlayer addWeapon "ItemGPS";
- _bambiPlayer addWeapon 'Exile_Item_XM8';
- _bambiPlayer addWeapon "ItemCompass";
- _bambiPlayer addMagazines ["30Rnd_9x21_Mag", 2];
- _bambiPlayer addWeapon "hgun_Rook40_F";
- _bambiPlayer addMagazines ["200Rnd_65x39_cased_Box", 2];
- _bambiPlayer addWeapon "LMG_Mk200_F";
- _bambiPlayer addItemToVest "Exile_Item_EMRE";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_PlasticBottleFreshWater";
- _bambiPlayer addItemToVest "Exile_Item_InstaDoc";
- };
- default {
- };
- };
- /* END */
- _bambiPlayer addMPEventHandler ["MPKilled", {_this call ExileServer_object_player_event_onMpKilled}];
- _bambiPlayer call ExileServer_object_player_database_insert;
- _bambiPlayer call ExileServer_object_player_database_update;
- [
- _sessionID,
- "createPlayerResponse",
- [
- _bambiPlayer,
- _parachuteNetID,
- str (_accountData select 0),
- (_accountData select 1),
- (_accountData select 2),
- 100,
- 100,
- 0,
- (getNumber (configFile >> "CfgSettings" >> "BambiSettings" >> "protectionDuration")) * 60,
- _clanData,
- _spawnType
- ]
- ]
- call ExileServer_system_network_send_to;
- [_sessionID, _bambiPlayer] call ExileServer_system_session_update;
- true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement