Create initial configuration file for the warning system with:
- Predefined warning reasons (RDM, VDM, RP violations, etc.)
- Chat announcement settings (enabled by default, scoped to target)
- Staff group definitions for permission levels
Implement server-side storage module for managing player warnings.
Provides functionality to:
- Load and save warnings from/to JSON file
- Retrieve warnings for a specific player
- Add new warnings with issuer information
- Remove individual warnings by index
- Clear all warnings for a player
Warnings are stored with issuer, issuerid, timestamp, reason, and comment.
Implement privilege registration and access checking for SAM, ULX, and FAdmin admin mods.
Provides:
- Registration of bladw_warn privilege with supported admin mods
- BladW.Warn.HasAccess() function to check player permissions
- Fallback to IsAdmin() if no admin mod is detected
Initialize network strings for bladw_warn system to enable communication between client and server for opening menu, syncing player warnings, adding/removing warnings, clearing records, and announcing warnings in chat.
Implement core server-side functionality for the warning system including:
- SyncTo: synchronizes connected players and their warnings to a client
- OpenFor: opens the warning menu for authorized players
- Chat commands: /warns, !warns, /warn to open the menu
- Net receivers for adding, removing, and clearing warnings
- Chat announcement system for new warnings with configurable scope (all, target, staff)
- Access control checks on all admin operations
Implement comprehensive client-side menu for the warning system including:
- Responsive player list with search functionality
- Warning history display with details
- Modal dialog for applying warnings with reason selection
- Custom styling with color palette and rounded corners
- Font Awesome icon integration
- Dynamic font scaling based on screen resolution
- Network communication for warning actions