Gang System
- Resource
fh_gangs- Version
- 1.0.0
- Framework
- ESX
Gang System giver bander deres egen app på tablettens skjulte side. Lederen styrer medlemmer, rang, bandekasse og alliancer, mens medlemmerne skriver sammen i en krypteret chat.
Installation
1. Start scriptet
Installer Tablet System først, og start scriptet efter tabletten:
cfg
ensure fh_tablet
ensure fh_gangsTabellerne oprettes automatisk.
2. Opret en bande
Bander oprettes direkte i databasen. Skift navn, tag og farve, og indsæt lederens identifier fra tabellen users:
sql
INSERT INTO fh_gangs (name, tag, color) VALUES ('Demo', 'DMO', '#bf4a4a');
SET @gang = LAST_INSERT_ID();
INSERT INTO fh_gang_grades (gang_id, grade, label, is_leader, bank_view, bank_deposit, bank_withdraw)
VALUES (@gang, 0, 'Medlem', 0, 0, 1, 0), (@gang, 1, 'Leder', 1, 1, 1, 1);
INSERT INTO fh_gang_members (identifier, gang_id, grade) VALUES ('char1:din_license', @gang, 1);Genstart scriptet bagefter med restart fh_gangs.
Rang 0 er den laveste. Resten af banden styrer lederen fra appen.
Sådan bruges det
Appen Bande ligger på tablettens skjulte side, så spillere skal have et usb_crypto-stik og være medlem af en bande.
- Medlemmer og rang: Lederen inviterer spillere ansigt til ansigt og sætter deres rang. Op til 15 rang.
- Bandekasse: Fælles kontanter med rettigheder pr. rang til at se, indsætte og hæve.
- Krypteret chat: Beskeder slettes efter 24 timer.
- Alliancer: To ledere indgår en alliance ansigt til ansigt. Allierede kan se hinandens bydele i Turf System.
- Aktivitet: Alle ændringer i banden bliver logget.
Indstillinger
Indstillingerne ligger i config.lua.
| Indstilling | Standard | Beskrivelse |
|---|---|---|
Config.Tablet.chatHours | 24 | Timer, før chatbeskeder slettes |
Config.Tablet.chatLength | 300 | Højeste antal tegn pr. besked |
Config.Tablet.inviteDistance | 5.0 | Afstand i meter ved invitation |
Config.Tablet.inviteTimeout | 30 | Sekunder til at svare på en invitation |
Config.Tablet.maxGrades | 15 | Højeste antal rang pr. bande |
Config.Alliances.max | 3 | Højeste antal alliancer pr. bande |
Config.Bank.account | 'cash' | Konto til bandekassen: cash eller bank |
Config.Bank.maxAmount | 10000000 | Højeste beløb pr. ind- eller udbetaling |
Config.Bank.logLimit | 50 | Linjer i kasseloggen i appen |
For udviklere
Alle exports er på serveren.
lua
-- Betal til bandekassen efter et kup
local gang = exports.fh_gangs:GetPlayerGang(source)
if gang then
exports.fh_gangs:AddMoney(gang.id, 25000, 'Kup')
end| Export | Beskrivelse |
|---|---|
GetPlayerGang(source) | Giver spillerens bande med id, name, grade, isLeader og bank |
GetGangByIdentifier(identifier) | Samme som GetPlayerGang, men ud fra en identifier |
GetGang(id) | Giver navn, tag, farve, rang og andre oplysninger |
GetGangMembers(id) | Giver medlemmer med identifier og rang |
GetAllies(id) | Giver bandens allierede |
AreAllied(a, b) | Er de to bander allierede? |
GetBalance(id) | Giver saldoen i bandekassen |
AddMoney(id, amount, note) | Lægger penge i bandekassen |
RemoveMoney(id, amount, note) | Tager penge fra bandekassen |
AddActivity(id, action, details) | Skriver en linje i bandens aktivitet |
IsLoaded() | Er banderne indlæst? |
Reload() | Indlæser banderne igen fra databasen |
Ændringer
1.0.0 (1. november 2026)
- Første udgivelse.