
This commit introduces significant changes to the admin panel, store, and arsenal systems, focusing on improved functionality, UI enhancements, and code optimization. **Admin Panel:** - Migrated to a web-based UI for improved user experience and maintainability. - Implemented dynamic player listing with filtering and search capabilities. - Added functionality for managing player paygrades, sending messages, and transferring funds. - Integrated server-side events for handling admin actions. **Store:** - Added `handleDelivery` event handler. - Streamlined product selection and purchase processes. - Improved handling of organization funds and player balances. - Refactored code for better readability and maintainability. **Arsenal:** - Enhanced initialization process with improved data validation. - Optimized item unlocking logic. These changes aim to provide a more robust, user-friendly, and efficient experience for both administrators and players.
53 lines
1.6 KiB
Plaintext
53 lines
1.6 KiB
Plaintext
#include "..\script_component.hpp"
|
|
|
|
/*
|
|
* Function: forge_client_init_fnc_playerDBSave
|
|
* Author: IDSolutions
|
|
*
|
|
* [Description]
|
|
* Save player to DB.
|
|
*
|
|
* Arguments:
|
|
* N/A
|
|
*
|
|
* Return Value:
|
|
* N/A
|
|
*
|
|
* Examples:
|
|
* [] call forge_client_init_fnc_playerDBSave (Server or Singleplayer Only)
|
|
* [] remoteExecCall ["forge_client_init_fnc_playerDBSave", 2, false] (Multiplayer Only)
|
|
*
|
|
* Public: Yes
|
|
*/
|
|
|
|
private _default_armory_unlocks = [[],[],[],[]];
|
|
private _default_garage_unlocks = [[],[],[],[],[],[]];
|
|
|
|
private _data = [
|
|
getPlayerUID player,
|
|
"armory_unlocks", [GETVAR(player,Armory_Unlocks,_default_armory_unlocks)],
|
|
"garage_unlocks", [GETVAR(player,Garage_Unlocks,_default_garage_unlocks)],
|
|
"locker", [GETVAR(player,FORGE_Locker,[])],
|
|
"garage", [GETVAR(player,FORGE_Garage,[])],
|
|
"cash", [GETVAR(player,FORGE_Cash,0)],
|
|
"bank", [GETVAR(player,FORGE_Bank,0)],
|
|
"number", [GETVAR(player,FORGE_Phone_Number,QUOTE(unknown))],
|
|
"email", [GETVAR(player,FORGE_Email,QUOTE(unknown@spearnet.mil))],
|
|
"paygrade", [GETVAR(player,FORGE_PayGrade,QUOTE(E1))],
|
|
"organization", [GETVAR(player,FORGE_Organization,QUOTE(None))],
|
|
"reputation", [rating player],
|
|
"loadout", [getUnitLoadout player],
|
|
"holster", [GETVAR(player,FORGE_Holster_Weapon,true)],
|
|
"position", [getPosASLVisual player],
|
|
"direction", [getDirVisual player]
|
|
];
|
|
|
|
if (isNull objectParent player) then {
|
|
_data pushBack "currentWeapon";
|
|
_data pushBack [currentMuzzle player];
|
|
_data pushBack "stance";
|
|
_data pushBack [stance player];
|
|
};
|
|
|
|
// ["hsetBulk", "", "", -1, _data, "", false] spawn dragonfly_db_fnc_addTask;
|
|
["hsetidbulk", "", "", -1, _data, "", false, netId player] remoteExec ["dragonfly_db_fnc_addTask", 2, false]; |