Accueil › Documentation › Installation · origen_graffiti
Exécute sql/install.sql ou laisse la ressource créer la table automatiquement au premier démarrage :
CREATE TABLE IF NOT EXISTS `graffiti_tags` (
`id` INT NOT NULL AUTO_INCREMENT,
`quad_data` LONGTEXT NOT NULL,
`strokes_data` LONGTEXT NOT NULL,
`created_by` VARCHAR(64) NULL DEFAULT NULL,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`center_x` DOUBLE NULL DEFAULT NULL,
`center_y` DOUBLE NULL DEFAULT NULL,
`center_z` DOUBLE NULL DEFAULT NULL,
`image_url` VARCHAR(768) NULL DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_graffiti_center` (`center_x`, `center_y`, `center_z`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;Ajoute ceci à ton server.cfg :
set graffiti_fivemanage_key "YOUR_API_KEY_HERE"La clé API ne doit pas figurer dans le code source. Définis-la uniquement via server.cfg. Obtiens ta clé sur docs.fivemanage.com.
Ajoute les deux objets nécessaires à ton inventaire. Seuls graffiti_spray et graffiti_eraser sont requis.
data/items.lua['graffiti_spray'] = {
label = 'Spray Paint',
weight = 300,
stack = false,
close = true,
description = 'A can of spray paint. Color and durability stored in metadata.',
client = { image = 'graffiti_spray.png' },
},
['graffiti_eraser'] = {
label = 'Graffiti Eraser',
weight = 200,
stack = false,
close = true,
description = 'Removes graffiti strokes from a canvas. Has limited uses.',
client = { image = 'graffiti_eraser.png' },
},qb-core/shared/items.lua['graffiti_spray'] = {
name = 'graffiti_spray',
label = 'Spray Paint',
weight = 300,
type = 'item',
image = 'graffiti_spray.png',
unique = true,
useable = true,
shouldClose = true,
combinable = nil,
description = 'A can of spray paint. Color and durability stored in metadata.',
},
['graffiti_eraser'] = {
name = 'graffiti_eraser',
label = 'Graffiti Eraser',
weight = 200,
type = 'item',
image = 'graffiti_eraser.png',
unique = true,
useable = true,
shouldClose = true,
combinable = nil,
description = 'Removes graffiti strokes from a canvas. Has limited uses.',
},INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`) VALUES
('graffiti_spray', 'Spray Paint', 300, 0, 1),
('graffiti_eraser', 'Graffiti Eraser', 200, 0, 1);Les deux objets portent des métadonnées définies automatiquement par la boutique au moment de l’achat :
| Objet | Champ | Description |
|---|---|---|
graffiti_spray |
metadata.color |
Chaîne de couleur hexadécimale, p. ex. #CC2222. nil = bombe de couleur libre |
graffiti_spray |
metadata.durability |
Entier de 0 à 100, diminue au fur et à mesure que tu peins |
graffiti_eraser |
metadata.durability |
Entier de 0 à 100, diminue à chaque utilisation pour effacer |
ensure origen_graffiti