inv_expan #13

Merged
hizumi merged 12 commits from inv_expan into main 2024-02-01 14:12:59 -06:00
6 changed files with 42 additions and 53 deletions
Showing only changes of commit bb388ecfb1 - Show all commits

View File

@@ -72,7 +72,7 @@ class milsim
class util class util
{ {
class getPlayerLogString {}; class logMissionInfo { postInit = 1; };
class addPlayerInfoToArray {}; class addPlayerInfoToArray {};
class log {}; class log {};
}; };

View File

@@ -5,10 +5,11 @@ player addEventHandler["Respawn",
params ["_unit", "_corpse"]; params ["_unit", "_corpse"];
private _killer = _corpse getVariable ["ace_medical_causeOfDeath", "#scripted"]; private _killer = _corpse getVariable ["ace_medical_causeOfDeath", "#scripted"];
if (_killer == "respawn_button") then { if (_killer == "respawn_button") then {
format[ [
"[MILSIM] (client) RESPAWNED WHILE UNCONSCIOUS %1", "client",
[_unit] call milsim_fnc_getPlayerLogString "RESPAWNED WHILE UNCONSCIOUS",
] remoteExec["diag_log", 0]; [_unit] call milsim_fnc_addPlayerInfoToArray
] remoteExec ["milsim_fnc_log", 2];
// format["%1 was unconscious then clicked the respawn button", name _unit] remoteExec["systemChat", 0]; // format["%1 was unconscious then clicked the respawn button", name _unit] remoteExec["systemChat", 0];
}; };
} }

View File

@@ -3,11 +3,15 @@
{ {
_clientID = _thisArgs select 0; _clientID = _thisArgs select 0;
player setDamage 1; player setDamage 1;
format[
"[MILSIM] (init) CHAT COMMAND RESPAWN playerNetID=%1 %2", // log to server RPT
player call BIS_fnc_netId, [
[player] call milsim_fnc_getPlayerLogString "init",
] remoteExec["diag_log", 2]; "CHAT COMMAND RESPAWN",
[player] call milsim_fnc_addPlayerInfoToArray
] remoteExec ["milsim_fnc_log", 2];
// systemChat to all remote machines
format["%1 claims they were glitched and respawned (%2)", name player, netID player] remoteExec["systemChat", -_clientID]; format["%1 claims they were glitched and respawned (%2)", name player, netID player] remoteExec["systemChat", -_clientID];
}, },
"all", "all",

View File

@@ -1,11 +1,14 @@
params [["_playerObj", objNull], ["_arrayToModify", [], [[]]]]; params [["_playerObj", objNull], ["_arrayToModify", [], [[]]]];
if (isNull _playerObj) exitWith {_arrayToModify};
{ {
_arrayToModify = [_arrayToModify, _x#0, _x#1] call BIS_fnc_setToPairs; _arrayToModify = [_arrayToModify, _x#0, _x#1] call BIS_fnc_setToPairs;
} forEach [ } forEach [
["playerName", name _playerObj], ["playerName", name _playerObj],
["playerUID", getPlayerUID _playerObj], ["playerUID", getPlayerUID _playerObj],
["playerGroup", groupId (group _playerObj)] ["playerGroup", groupId (group _playerObj)],
["playerNetID", [_playerObj] call BIS_fnc_netId]
]; ];
_arrayToModify; _arrayToModify;

View File

@@ -1,42 +0,0 @@
/*
Function: milsim_fnc_getPlayerLogString
Author: IndigoFox
Description:
Returns a string containing the player's name, UID and group name in 'key="value"' format.
Parameters:
0: _playerObj <OBJECT> - The player object to get the string for.
1: _returnArray <BOOL> - If true, returns a key/value array of the player's name, UID and group name.
*/
params [["_playerObj", objNull], ["_returnArray", false, [false, true]]];
switch (_returnArray) do {
case false: {
if (isNull _playerObj) exitWith {
"playerName=""ERROR"" playerUID=""ERROR"" playerGroup=""ERROR"""
};
if (true) exitWith {
format["playerName=""%1"" playerUID=""%2"" playerGroup=""%3""", name _playerObj, getPlayerUID _playerObj, groupId (group _playerObj)];
};
};
case true: {
if (isNull _playerObj) exitWith {
[
["playerName", "ERROR"],
["playerUID", "ERROR"],
["playerGroup", "ERROR"]
]
};
if (true) exitWith {
[
["playerName", name _playerObj],
["playerUID", getPlayerUID _playerObj],
["playerGroup", groupId (group _playerObj)]
]
};
};
};

View File

@@ -0,0 +1,23 @@
[
"init",
"MISSION INFO",
[
["serverName", serverName],
["worldName", worldName],
["missionSeries", getMissionConfigValue ["missionSeries", ""]],
["missionName", missionName],
["briefingName", briefingName],
["overviewText", getMissionConfigValue ["overviewText", ""]],
["onLoadName", getMissionConfigValue ["onLoadName", ""]],
["onLoadMission", getMissionConfigValue ["onLoadMission", ""]],
["missionAuthor", getMissionConfigValue ["author", ""]],
["unitSlots", createHashMapFromArray [
["EAST", playableSlotsNumber EAST], // 0 is EAST side
["WEST", playableSlotsNumber WEST], // 1 is WEST side
["RESISTANCE", playableSlotsNumber RESISTANCE], // 2 is RESISTANCE side
["CIVILIAN", playableSlotsNumber CIVILIAN], // 3 is CIVILIAN side
["SIDEUNKNOWN", 0], // 4 is SIDEUNKNOWN side
["LOGIC", playableSlotsNumber sideLogic] // 5 is LOGIC side
]]
]
] call milsim_fnc_log;