Skip to content

Installation

Installation

Vier Schritte: SQL importieren, dir selbst Zugriff auf den Editor geben, deine Items registrieren, die Resource starten.

1. Dependencies

Resource Erforderlich Warum
ox_lib Ja Callbacks, Benachrichtigungen, Locales
oxmysql Ja Speicherung von Substanzen und Spieler-Abhängigkeitsstatus
Eine Targeting-Resource Optional Untersuchung eines Spielers ohne Befehl

2. server.cfg — Startreihenfolge

Starte bupa-addictioncreator nach den Resources, von denen es abhängt.

server.cfg
ensure ox_lib
ensure oxmysql
ensure ox_target
ensure bupa-addictioncreator

3. Datenbank

Importiere sql/bupa_addictioncreator.sql. Dies erstellt zwei Tabellen:

Tabelle Inhalt
bupa_substances Die Substanzen-Definitionen, die du im Editor erstellst
bupa_addictions Abhängigkeitsstufe, Toleranz, Dosisanzahl und Verlauf pro Charakter

Beide Namen können unter Config.Tables geändert werden, falls sie mit etwas kollidieren, das du bereits verwendest.

4. Zugriff auf den Editor

Der Editor ändert, was Drogen auf deinem Server bewirken, daher ist er abgesichert.

server.cfg
add_ace group.admin bupa.substances allow

Auf einem Dev-Server, auf dem noch niemand ACEs eingerichtet hat, trage stattdessen deine Lizenz-ID in die Config ein:

config.lua
Config.Creator = {
    Command = 'substances',
    UseAce  = true,
    Ace     = 'bupa.substances',
    Developers = { 'license:0000000000000000000000000000000000000000' },
    LivePreview = true,
}

5. Registriere deine Items

Jede Substanz, die du im Editor erstellst, verweist auf ein Inventar-Item, und dieses Item muss existieren. Kopiere den Block für dein Inventar aus der passenden Datei unter install/inv/:

Datei Abdeckung
inv/ox_inventory.txt ox_inventory
inv/qb-inventory.txt qb-inventory, lj-inventory, ps-inventory
inv/qs-inventory.txt qs-inventory
inv/codem-inventory.txt codem-inventory
inv/tgiann-inventory.txt tgiann-inventory
inv/esx.txt Klassische ESX-Inventare

Für ox_inventory sind zwei Zeilen in diesem Eintrag wichtig:

ox_inventory/data/items.lua
['meth_syringe'] = {
    label = 'Meth',
    weight = 20,
    stack = true,
    close = true,
    consume = 0,
    description = 'Eine aufgezogene Spritze',
    client = { image = 'meth_syringe.png' },
    server = { export = 'bupa-addictioncreator.useSubstance' },
},
  • server.export — ox_inventory hat kein CreateUseableItem, daher erfährt die Resource über diesen Export, dass das Item verwendet wurde.
  • consume = 0 — ohne dies entfernt ox_inventory das Item, bevor die Resource entschieden hat, ob die Dosis erlaubt ist. Die Resource entfernt das Item selbst, sobald sie es entschieden hat.

Unter QBox, QB-Core und ESX registriert die Resource das verwendbare Item selbst über das Core, sodass useable = true beim Item alles ist, was benötigt wird.

Der Item-Name im Editor und der Item-Name in deinem Inventar müssen exakt übereinstimmen und kleingeschrieben sein. Der Editor schreibt deine Eingaben klein; deine Item-Datei muss dem entsprechen.