dragonfly/docs/hash/hashSetBulk.md
Jacob Schmidt c8d81ba3bb
All checks were successful
Build / Build (push) Successful in 39s
docs: Update README.md with detailed documentation
This commit significantly enhances the `README.md` file, providing comprehensive documentation for the ArmaDragonflyClient.

Key changes:

*   **Detailed Function Categories:** Categorized functions for better organization (Core, Basic Data Operations, Hash Operations, List Operations).
*   **Usage Examples:** Added clear and concise usage examples for basic operations, hash operations (context and ID-specific), and list operations.
*   **Function Documentation Structure:** Outlined the structure for individual function documentation.
*   **License Information:** Updated the license information.
2025-03-30 17:15:35 -05:00

2.9 KiB

title, icon, excerpt
title icon excerpt
ArmaDragonflyClient - Hash Set Bulk mdi:file-text-outline Set multiple fields in the current client's hash table in DragonflyClient.

dragonfly_db_fnc_hashSetBulk

Description

Sets multiple field-value pairs in the hash table associated with the current client/player in a single operation. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than hashSetIdBulk which requires manually specifying an ID. It allows efficiently storing multiple related fields at once, reducing the number of separate database calls required.

Syntax

[_data] call dragonfly_db_fnc_hashSetBulk

Parameters

Parameter Type Description Default
_data Array Array of alternating field names and values to store []

Return Value

None. The operation runs synchronously to store all the data.

Examples

Store player loadout and position:

[["loadout", [getUnitLoadout player], "position", [getPosASLVisual player]]] call dragonfly_db_fnc_hashSetBulk;

Store multiple player settings:

[["difficulty", ["regular"], "respawn", [true], "tickets", [500]]] call dragonfly_db_fnc_hashSetBulk;

Store player data from a client:

[["name", [name player], "uid", [getPlayerUID player], "score", [score player]]] remoteExecCall ["dragonfly_db_fnc_hashSetBulk", 2, false];

Notes

  • The data array must be structured as alternating field names and values: [field1, value1, field2, value2, ...]
  • Each field name must be a string
  • Values can be arrays, strings, numbers, or booleans
  • All field-value pairs are stored in a single database operation
  • If any of the fields already exist, their values will be overwritten
  • This function automatically determines which hash table to use based on the caller's identity
  • Use hashSetIdBulk when you need to specify a particular hash table by ID
  • More efficient than multiple individual hashSet calls when setting several fields
  • The operation is executed immediately and synchronously
  • All operations are logged for debugging purposes
  • dragonfly_db_fnc_hashSet: Sets a single field value in the current client's hash table
  • dragonfly_db_fnc_hashSetIdBulk: Sets multiple field-value pairs in a specific hash table (when you need to specify the ID)
  • dragonfly_db_fnc_hashGetAll: Retrieves all fields from the current client's hash table
  • dragonfly_db_fnc_hashGet: Retrieves a specific field value from the current client's hash table

Hash Get | Hash Get All | Hash Get All ID | Hash Get ID | Hash Set | Hash Set Bulk | Hash Set ID | Hash Set ID Bulk