mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
add currentweapon to data new format
This commit is contained in:
parent
28d27ee38a
commit
f7c3f748f7
@ -25,9 +25,7 @@ if (_playerObj isEqualType objNull) then {
|
||||
|
||||
_dead = false;
|
||||
_isMale = true;
|
||||
|
||||
_instanceID = call EPOCH_fn_InstanceID;
|
||||
_class = "Epoch_Female_F";
|
||||
|
||||
_arr = [];
|
||||
if ((_response select 0) == 1 && (_response select 1) isEqualType []) then {
|
||||
@ -41,13 +39,9 @@ if (_playerObj isEqualType objNull) then {
|
||||
if !(_arr isEqualTypeParams _defaultData) then {
|
||||
_dead = true;
|
||||
} else {
|
||||
_medical = _arr select 1;
|
||||
_apperance = _arr select 2;
|
||||
_class = _apperance select 5;
|
||||
if (_class == "Epoch_Female_F") then {
|
||||
_isMale = false;
|
||||
};
|
||||
_vars = _arr select 4;
|
||||
_arr params ["","_medical","_apperance","","_vars"];
|
||||
_class = _apperance param [5, "Epoch_Female_F"];
|
||||
_isMale = (_class == "Epoch_Male_F");
|
||||
_medical params ["","","","_damage",["_hitpoints",[0,0,0,0,0,0,0,0,0,0,0]] ];
|
||||
_deadPlayer = ["PlayerStats", _playerUID, 0] call EPOCH_fnc_server_hiveGETBIT;
|
||||
// check if player is already dead or was critically hit HitHead = 2 or HitBody = 7 and if blood pressure too high.
|
||||
|
@ -13,7 +13,7 @@
|
||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_player/EPOCH_server_loadPlayer.sqf
|
||||
*/
|
||||
//[[[cog import generate_private_arrays ]]]
|
||||
private ["_CheckLocation","_allGroupMembers","_alreadyDead","_assignedItems","_attachments","_backpack","_backpackItems","_canBeRevived","_class","_communityStats","_communityStatsArray","_currWeap","_deadPlayer","_defaultData","_dir","_equipped","_found","_goggles","_group","_handgunWeapon","_headgear","_instanceID","_jammer","_jammers","_linkedItems","_loadout","_location","_newLocation","_newPlyr","_playerData","_playerGroup","_playerGroupArray","_playerNetID","_playerUID","_primaryWeapon","_reject","_secondaryWeapon","_serverSettingsConfig","_type","_uniform","_uniformItems","_vars","_vest","_vestItems","_wMags","_wMagsArray","_weapon"];
|
||||
private ["_CheckLocation","_allGroupMembers","_alreadyDead","_assignedItems","_attachments","_backpack","_backpackItems","_canBeRevived","_class","_communityStats","_communityStatsArray","_currentWeapon","_deadPlayer","_defaultData","_dir","_equipped","_found","_goggles","_group","_handgunWeapon","_headgear","_instanceID","_jammer","_jammers","_linkedItems","_loadout","_location","_newLocation","_newPlyr","_playerData","_playerGroup","_playerGroupArray","_playerNetID","_playerUID","_primaryWeapon","_reject","_secondaryWeapon","_serverSettingsConfig","_type","_uniform","_uniformItems","_vars","_vest","_vestItems","_wMags","_wMagsArray","_weapon"];
|
||||
//[[[end]]]
|
||||
_reject = true;
|
||||
|
||||
@ -62,6 +62,7 @@ if (!isNull _player) then {
|
||||
_backpackItems = [_serverSettingsConfig, "defaultbackpackItems", []] call EPOCH_fnc_returnConfigEntry; // [["Medikit",1],["FirstAidKit",10],[["hgun_P07_F","","","",["16Rnd_9x21_Mag",16],[],""],1]];
|
||||
_assignedItems = [_serverSettingsConfig, "defaultassignedItems", ["","","","",[],[],""]] call EPOCH_fnc_returnConfigEntry; // ["Rangefinder","","","",[],[],""]
|
||||
_linkedItems = [_serverSettingsConfig, "defaultlinkedItems", ["ItemMap","","EpochRadio0","","",""]] call EPOCH_fnc_returnConfigEntry; // ["ItemMap","ItemGPS","ItemRadio","ItemCompass","ItemWatch","NVGoggles"]
|
||||
_currentWeapon = [_serverSettingsConfig, "defaultSelectedWeapon", ""] call EPOCH_fnc_returnConfigEntry; // class of selected weapon
|
||||
|
||||
_loadout = [
|
||||
_primaryWeapon,
|
||||
@ -77,7 +78,7 @@ if (!isNull _player) then {
|
||||
];
|
||||
|
||||
// default data, if "Player" data format is changed update this array!
|
||||
_defaultData = [[0, [], _instanceID, 1.0], [0, 0, 1, 0, [0,0,0,0,0,0,0,0,0,0,0]], ["", "", "", "", "", _class], [], call EPOCH_defaultVars_SEPXVar, _loadout, [], [], [], [], "", true];
|
||||
_defaultData = [[0, [], _instanceID, 1.0], [0, 0, 1, 0, [0,0,0,0,0,0,0,0,0,0,0]], ["", "", "", "", _currentWeapon, _class], [], call EPOCH_defaultVars_SEPXVar, _loadout, [], [], [], [], "", true];
|
||||
|
||||
// If data does not validate against default or is too short, override with default data.
|
||||
if !(_playerData isEqualTypeParams _defaultData) then {
|
||||
@ -199,9 +200,14 @@ if (!isNull _player) then {
|
||||
_newPlyr setDir _dir;
|
||||
_newPlyr setPosATL _location;
|
||||
|
||||
//
|
||||
|
||||
|
||||
// set player loadout
|
||||
if (_schemaVersion >= 1.0) then {
|
||||
_playerData params ["","","","","","_loadout"];
|
||||
_playerData params ["","","_apperance","","","_loadout"];
|
||||
// get current weapon to send to param for selectWeapon
|
||||
_currentWeapon = _apperance param [4,""];
|
||||
_newPlyr setUnitLoadout [_loadout, false];
|
||||
diag_log format["DEBUG: loaded player %1 with new schema Version %2", _newPlyr, _schemaVersion];
|
||||
|
||||
@ -230,11 +236,11 @@ if (!isNull _player) then {
|
||||
_newPlyr addVest _vest;
|
||||
};
|
||||
// Load Apperance END
|
||||
_currWeap = "";
|
||||
|
||||
// Load inventory + defaults START
|
||||
if (count _weaponsAndItems >= 3) then {
|
||||
_weaponsAndItems params ["_currWeapTmp","_weaponsAndItemsArray","_equipped"];
|
||||
_currWeap = _currWeapTmp;
|
||||
_weaponsAndItems params ["_currentWeaponTmp","_weaponsAndItemsArray","_equipped"];
|
||||
_currentWeapon = _currentWeaponTmp;
|
||||
{
|
||||
_weapon = _x deleteAt 0;
|
||||
_type = getNumber(configfile >> "cfgweapons" >> _weapon >> "type");
|
||||
@ -352,7 +358,7 @@ if (!isNull _player) then {
|
||||
_newPlyr setVariable["SETUP", true, true];
|
||||
|
||||
// Send message to player so they can take over the new body.
|
||||
[_playerNetID, _playerUID, [_newPlyr, _vars, _currWeap, loadAbs _newPlyr, _playerGroup, _canBeRevived, _newPlyr call EPOCH_server_setPToken,_playerGroupArray, _communityStats, _hitpoints]] call EPOCH_server_pushPlayer;
|
||||
[_playerNetID, _playerUID, [_newPlyr, _vars, _currentWeapon, loadAbs _newPlyr, _playerGroup, _canBeRevived, _newPlyr call EPOCH_server_setPToken,_playerGroupArray, _communityStats, _hitpoints]] call EPOCH_server_pushPlayer;
|
||||
|
||||
// revive test
|
||||
_newPlyr setVariable ['#rev_enabled', true, true];
|
||||
|
@ -13,7 +13,7 @@
|
||||
https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_server/compile/epoch_player/EPOCH_server_savePlayer.sqf
|
||||
*/
|
||||
//[[[cog import generate_private_arrays ]]]
|
||||
private ["_Svars","_allowSave","_appearance","_cIndex","_dmg","_group","_hitpoints","_itemsplayer","_loadout","_medical","_playerUID","_pos","_return","_return2","_revive","_schemaVersion","_server_vars","_stats","_vehiclePlyr","_weapons","_weaponsplayer"];
|
||||
private ["_Svars","_allowSave","_appearance","_cIndex","_dmg","_extraLoadoutInfo","_group","_hitpoints","_loadout","_medical","_playerUID","_pos","_return","_return2","_revive","_schemaVersion","_server_vars","_stats","_vehiclePlyr"];
|
||||
//[[[end]]]
|
||||
params [["_player",objNull], ["_vars",[]] ];
|
||||
|
||||
@ -80,11 +80,14 @@ if (_allowSave) then{
|
||||
};
|
||||
};
|
||||
|
||||
_dmg = damage _player;
|
||||
// get players hitpoint damage
|
||||
_hitpoints = (getAllHitPointsDamage _player) param [2,[]];
|
||||
_medical = [getBleedingRemaining _player, 0, getOxygenRemaining _player, _dmg, _hitpoints];
|
||||
|
||||
// build medical array
|
||||
_medical = [getBleedingRemaining _player, 0, getOxygenRemaining _player, damage _player, _hitpoints];
|
||||
|
||||
// appearance now handled with getUnitLoadout, typeof is still need to determine players class.
|
||||
_appearance = ["", "", "", "", "", typeOf _player];
|
||||
_appearance = ["", "", "", "", currentWeapon _player, typeOf _player];
|
||||
|
||||
// new save format
|
||||
_loadout = getUnitLoadout _player;
|
||||
|
Loading…
Reference in New Issue
Block a user