DocumentationAPI publique de la Base

API publique de la Base

Cette référence couvre les familles d'intégration prévues pour les ressources clientes. Un export découvert dans un fichier interne n'est pas automatiquement une API stable.

Utilisation

lua
local value = exports.core:getNumberVar('coma.timer')

Le nom de ressource doit rester core. Vérifiez toujours qu'elle est démarrée avant d'appeler un export.

Configuration et traduction

ExportCôtéUsage
getVersionserveurversion installée du core
getServerConfigserveurconfiguration publique synchronisée
getServerBannersserveurbannières d'une catégorie du panel
getNumberVarserveurvaleur Gameplay RP dynamique
translatepartagétraduit une clé avec ses paramètres
getLocalepartagélocale active
getTranslationspartagécatalogue d'une locale
setLocalepartagéchange la locale active côté client

Zones et interactions

Les zones publiques permettent de créer et retirer une zone au runtime. Le context menu expose des fonctions pour les joueurs, véhicules, PNJ, objets, zones box, sphere et poly.

lua
local zoneId = exports.core:CreateZone({
    name = 'example_zone',
    owner = 'my_resource',
    pos = vector3(0.0, 0.0, 72.0),
    dist = 2.0,
    marker = true,
    visual = { message = 'Interact' },
    onPressed = function() print('zone used') end,
})

exports.core:RemoveZone(zoneId)
exports.core:RemoveZone('example_zone')

pos est le seul champ obligatoire : sans lui la fonction retourne -1 et ne crée rien. dist vaut 1.5 par défaut et markerDist 20.0. RemoveZone accepte l'identifiant retourné ou le name de la zone.

ChampRôle
posposition de la zone (requis)
distdistance d'interaction
markerDistdistance d'affichage du marker
namenom unique, réutilisable pour la suppression
ownerressource ou module propriétaire
marker / blip / pedéléments visuels associés
jobsmétiers autorisés
visualmessage affiché à l'approche
onPressed / onSecondPressedaction à la validation
onEntered / onExitedentrée et sortie de zone
conditionfonction d'activation dynamique

Pour le context menu, conservez l'identifiant retourné afin de supprimer proprement l'entrée lors de l'arrêt de votre ressource.

Gameplay

Les intégrations publiques couvrent notamment :

  • état Police et Ambulance ;
  • réanimation d'un joueur côté serveur ;
  • prison et libération ;
  • création d'une facture société ;
  • lecture et opérations sur les devises ;
  • lecture des niveaux et avantages VIP ;
  • ouverture et gestion du crafting ;
  • statut coma, safezone et connexion terminée ;
  • garages, véhicules, clés et données de personnage selon le module.

Consultez les pages client et serveur historiques pour les signatures détaillées déjà garanties. Les exports de cache du panel, de compatibilité framework ou de plomberie NUI sont réservés aux ressources KLMSTUDIO sauf indication contraire.

Événements et jeton

Tous les événements réseau entrants du core sont signés par un jeton. Un TriggerServerEvent brut vers un événement du core est rejeté silencieusement : aucune erreur, aucun effet.

Pour envoyer un événement au core depuis un script client, passez par l'export dédié :

lua
-- client
exports.core:triggerServerEvent('mon:event:serveur', arg1, arg2)

Dans l'autre sens, vous pouvez écouter normalement les événements que le core envoie au client. Mais un événement interne n'est pas une API : préférez toujours un export documenté quand il en existe un.

Bonnes pratiques

  • Appelez les exports serveur depuis un fichier serveur et les exports client depuis un fichier client.
  • Validez les paramètres venant du joueur.
  • Ne déclenchez pas un événement interne à la place d'un export public.
  • Ne supposez pas qu'un export non documenté conservera sa signature.
  • Ajoutez dependency 'core' dans votre fxmanifest.lua si votre ressource ne peut pas fonctionner sans lui.
lua
dependency 'core'

Support d'une intégration

Lors d'une demande de support, fournissez le nom de l'export, le côté d'exécution, les paramètres utilisés, l'erreur complète et un exemple minimal. Ne transmettez jamais de clé de licence ou de webhook.

DMCA.com Protection Status