Jacob Schmidt 90476345db feat: Enhance admin and bank systems with event handling and UI improvements
This commit introduces significant updates to the admin and bank systems, focusing on improved event handling and user interface enhancements. Key changes include:

- Refactored event handling for player data requests, paygrade updates, and message broadcasting in the admin panel.
- Implemented new event types for handling player funds and transaction history in the bank system.
- Updated JavaScript functions for better interaction with the web-based UI, including dynamic data requests and improved user feedback.
- Removed deprecated functions and streamlined code for better maintainability.

These enhancements aim to provide a more efficient and user-friendly experience for administrators and players alike.
2025-05-10 17:50:11 -05:00
..
2025-01-01 14:35:12 -06:00
2025-01-01 14:35:12 -06:00
2025-01-01 14:35:12 -06:00
2025-01-01 14:35:12 -06:00
2025-01-01 14:35:12 -06:00
2025-01-01 14:35:12 -06:00

Forge Bank Module

Overview

The Bank module provides a comprehensive banking system for the Forge client. It includes features for managing player finances, transfers, and timesheet functionality.

Dependencies

  • forge_client_main

Authors

  • J. Schmidt
  • Creedcoder
  • IDSolutions

Features

Banking System

  1. Bank Initialization (fnc_initBank.sqf)

    • Initializes the banking system
    • Sets up necessary configurations and account structures
  2. Bank Interface (fnc_openBank.sqf)

    • Opens the banking user interface
    • Provides access to all banking functions
  3. Transaction Management

    • Deposit (fnc_deposit.sqf)
      • Handles money deposits into bank accounts
    • Withdraw (fnc_withdraw.sqf)
      • Manages money withdrawals from bank accounts
    • Transfer (fnc_transfer.sqf)
      • Handles money transfers between players
    • Submit (fnc_submit.sqf)
      • Processes transaction submissions
    • Refresh (fnc_refresh.sqf)
      • Updates account information and balances

User Interface

The module includes several UI components:

  1. Base Controls (BaseControls.hpp)
    • Common UI elements and definitions
  2. Bank Dialog (RscBankDialog.hpp)
    • Banking interface specific elements

Interface Elements

The module defines several UI control IDs:

  • Account Information Display
  • Amount Input Fields
  • Player Selection
  • Transaction Buttons (Deposit, Withdraw, Transfer)
  • Wallet and Bank Balance Displays
  • Rating System
  • Timesheet Integration

Event Handlers

The module uses several event handlers for initialization and execution:

  • XEH_preInit.sqf: Pre-initialization setup
  • XEH_postInit.sqf: Post-initialization tasks
  • XEH_preStart.sqf: Pre-start configuration
  • XEH_postInit_client.sqf: Client-specific post-initialization
  • XEH_preInit_server.sqf: Server-specific pre-initialization

Usage

To use the bank module:

  1. Ensure the module is properly loaded in your mission
  2. Access the bank through the provided UI
  3. Perform transactions using the appropriate functions
  4. Monitor account status and transactions

Debugging

Debug mode can be enabled by uncommenting the following in script_component.hpp:

#define DEBUG_MODE_FULL

Version Information

Version information is managed through the main Forge client system configuration.