Aller au contenu

Personnalisation

Presque tout se trouve dans un seul fichier, config.lua. Les deux fichiers de bridge et les locales sont également ouverts.


FichierCe qu’il gùreOuvert ?
config.luaLangue, devise, interaction, limite de placement, et chaque borne fixe avec son prixOui
locales/*.luaLes invites, notifications et libellés de targetOui
bridge/client_bridge.luaDĂ©tection du framework, lecture de l’argent, notifications, texte d’aide et zones ox-target / qb-target / drawtextOui
bridge/server_bridge.luaPrĂ©lĂšvement et versement d’argent ou de jetons, noms et identifiants de personnages, notifications et items de borne utilisablesOui
items/DĂ©finitions d’items pour ox, qb et ESX, et icĂŽnes dans items/images/Oui
ui/Le menu de borne et les sept jeux, un dossier par jeu dans ui/games/Non escrowed
client/data.luaPosition de la camĂ©ra et de l’écran pour chaque modĂšle de borneEscrowed
mic_arcade_props/Les modĂšles de bornes et le moteur de rendu d’écranAssets seuls

OptionCe qu’elle faitPar dĂ©faut
Config.LocaleQuel fichier de locales/ est utilisé'en'
Config.PaymentTypeCe que coûte une partie : cash, bank, both ou item'item'
Config.PaymentItemL’item utilisĂ© comme monnaie quand PaymentType est item'arcade_coin'
Config.Interactionox-target (avec un tiret), qb-target ou drawtext'ox-target'
Config.MaxArcadesPerPlayerCombien de bornes posĂ©es un personnage peut avoir en mĂȘme temps3
ValeurCe qui se passe
cashPayé en liquide (sur ESX, le compte money)
bankPayé depuis le compte bancaire
bothCash d’abord ; s’il n’y en a pas assez, le reste vient de la banque
itemPayé en Config.PaymentItem, un item par unité de prix

La mĂȘme devise est utilisĂ©e pour les mises et les gains de DuoFight.


Une entrĂ©e par modĂšle de borne. Chaque entrĂ©e a un Price et, facultativement, plusieurs positions fixes (vec4 avec x, y, z et cap/heading) — une borne apparaĂźt Ă  chacune d’elles.

BorneModÚleJeuPrixFixe par défaut
DuoFightmic_arcade_duofightCombat Ă  deux joueurs, ou contre l’ordinateur0Non (commentĂ©)
Alienmic_arcade_alienAlien100Non (commenté)
Breakoutmic_arcade_brickBreakout100Non (commenté)
Pixelmic_arcade_pixelPixel100Oui
Racemic_arcade_raceRace100Oui
Towermic_arcade_towerTower100Oui
Roadmic_arcade_roadRoad100Oui
  • Pour ajouter une borne fixe, ajoutez une position Ă  la liste sous ce modĂšle. Placez-vous Ă  l’endroit dĂ©sirĂ©, relevez vos coordonnĂ©es et votre cap, et inscrivez-les.
  • Pour en retirer une, supprimez ou commentez sa position. Le Price s’applique toujours aux bornes posĂ©es de ce modĂšle.
  • Un prix de 0 rend la borne gratuite.
  • L’origine de la borne Breakout est plus basse que les autres — la position Breakout fournie est environ 0.7 plus basse sur l’axe z que ses voisines. Faites de mĂȘme lorsque vous en ajoutez une.

Le Price correspond également au tarif prélevé par une borne posée de ce modÚle.


Un item de borne (arcade_alien, arcade_race
) lance le placement :

ToucheCe qu’elle fait
Regarder autourDéplace la prévisualisation selon la vue
Molette de la sourisFait pivoter la borne
EPlace la borne et consomme l’item
ESC / RetourAnnule ; vous conservez l’item

Le propriĂ©taire — et uniquement le propriĂ©taire — a accĂšs Ă  l’option Pick Up Arcade dessus (avec drawtext, la deuxiĂšme touche indiquĂ©e dans l’invite). Ramasser la borne redonne l’item. Une machine en cours d’utilisation ne peut pas ĂȘtre ramassĂ©e.

Config.MaxArcadesPerPlayer compte les bornes qu’un personnage a actuellement dĂ©ployĂ©es.


SĂ©lectionner deux joueurs sur DuoFight demande une mise : 1, 5, 25, 50 ou 100, dans votre devise. L’hĂŽte la paie et attend devant la machine ; le joueur suivant qui utilise la machine se voit proposer le match et paie la mĂȘme mise pour le rejoindre.

RésultatCe qui se passe
VictoireLe vainqueur reçoit les deux mises
ÉgalitĂ©Chaque joueur rĂ©cupĂšre sa mise
Un joueur part en plein matchIl dĂ©clare forfait : l’autre joueur gagne les deux mises
L’hĂŽte s’en va avant qu’un joueur rejoigneLe match est annulĂ© ; la mise de l’hĂŽte n’est pas remboursĂ©e
Un joueur se déconnecteLe match est annulé, sans versement

Chaque jeu sauf DuoFight enregistre le meilleur score de chaque personnage dans mic_arcade_leaderboard et affiche le top dix sur la borne. Les noms correspondent au nom de personnage de votre framework. Pour rĂ©initialiser un classement, videz cette table (ou les lignes correspondant Ă  un jeu) pendant que le serveur est arrĂȘtĂ©.


Dix langues sont fournies dans locales/ : en, es, fr, de, it, pt, nl, ja, ru, zh. Réglez Config.Locale sur le code désiré.

Pour en ajouter une, copiez locales/en.lua vers un nouveau fichier nommĂ© selon votre code, remplacez Locales['en'] par votre code, traduisez la partie droite de chaque ligne et dĂ©finissez Config.Locale. Une clĂ© manquante s’affichera sous la forme Translation [xx][key] does not exist — il n’y a pas de bascule automatique vers l’anglais.

Les fichiers de locale couvrent ce qui s’affiche dans l’univers du jeu : libellĂ©s de target, invites d’aide et notifications. Les textes Ă  l’intĂ©rieur des jeux font partie de ui/games/.


FichierCe qu’il couvre
bridge/client_bridge.luaDĂ©tection du framework, affichage de l’argent ou des jetons au joueur, Bridge.Notify, texte d’aide, et zone d’interaction sur chaque borne pour ox-target, qb-target ou drawtext
bridge/server_bridge.luaDĂ©tection du framework, prĂ©lĂšvement et versement d’argent ou d’items (Bridge.RemoveMoney, Bridge.AddMoney), items de borne, nom et id du personnage, notifications serveur et liste des items utilisables

Une ressource de notifications diffĂ©rente : modifiez Bridge.Notify dans le fichier client et Bridge.ServerNotify dans le fichier serveur. Les messages d’argent insuffisant sont envoyĂ©s depuis Bridge.RemoveMoney.

Une ressource de target diffĂ©rente : Bridge.RegisterArcadeInteraction et Bridge.RemoveArcadeInteraction dans le fichier client sont les seuls endroits oĂč le target est manipulĂ©.

Un autre inventaire : les jetons et les items de bornes sont vĂ©rifiĂ©s et retirĂ©s via les fonctions joueur natives du framework dans server_bridge.lua. Pointez Bridge.RemoveMoney, Bridge.AddMoney, Bridge.RemoveSpecificItem, Bridge.AddSpecificItem et Bridge.GetMoney vers votre inventaire s’il ne rĂ©pond pas Ă  celles-ci.

Un nouvel item utilisable pour une borne : la table UsableArcades en bas de server_bridge.lua associe chaque item Ă  son modĂšle de borne.