Aller au contenu

Personnalisation

Tout ce que vous pouvez modifier se trouve à deux endroits : config.lua pour le comportement, et le dossier bridge/ pour la façon dont la corde communique avec votre framework, votre target et votre interface texte. Les deux sont ouverts (listés dans escrow_ignore) ; client/client.lua et server.lua sont sous escrow.


FichierCe qu’il dĂ©cide
config.luaFramework, nom de l’item, systĂšme d’interaction, libellĂ©s, touches, distances, longueur et physique de la corde, marqueur, cooldown, limite de temps
bridge/server_bridge.luaRĂ©cupĂ©ration du framework, enregistrement de l’item rope comme utilisable, vĂ©rification de la prĂ©sence de l’item chez le joueur
bridge/client_bridge.luaLe texte 3D et le marqueur affichĂ©s en mode drawtext, ainsi que l’évĂ©nement client qui sort ou range la corde
bridge/target.luaLes options ox_target et qb-target, ainsi que le basculement automatique vers drawtext
bridge/README.mdNotes succinctes sur le bridge (en espagnol)
inventory/DĂ©finitions d’items prĂȘtes Ă  l’emploi pour ox_inventory, QBCore et ESX
stream/Le modĂšle de prop et la texture de la corde

Il n’y a pas de dossier locales/. Le seul texte visible par les joueurs rĂ©side dans les libellĂ©s de Config.Labels.


OptionCe qu’elle faitDĂ©faut
Config.Frameworkesx ou qbcore. Sur QBox, utilisez qbcore — QBox gĂšre les ressources QBCore via sa compatibilitĂ©. Toute autre valeur arrĂȘte la ressource au dĂ©marrageesx
Config.ItemL’item d’inventaire reprĂ©sentant la corderope
OptionCe qu’elle faitDĂ©faut
Config.InteractionSystemox_target, qb-target ou drawtext. Un target non dĂ©marrĂ© bascule sur drawtext jusqu’à ce qu’il se lanceox_target
Config.LabelsLe texte de chaque action : grab (Traßner avec la corde), release (Libérer le joueur), attach (Attacher au véhicule), detach (Détacher du véhicule)Anglais
Config.KeyLabelsLe nom des touches affiché en mode drawtext : Attach et VehicleE, Y
Config.ShowInteractionMarkersAfficher un marqueur au-dessus du joueur ou du véhicule ciblable. Mode drawtext uniquementtrue

Ce que fait chaque action :

ActionQui peut la faireCe qui se passe
TraĂźner avec la cordeVous, la corde en main, prĂšs d’un joueur Ă  piedCe joueur est attachĂ© Ă  votre main
Libérer le joueurLa personne qui traßneLa corde est retirée et le joueur se relÚve
Attacher au vĂ©hiculeLa personne qui traĂźne, prĂšs d’un vĂ©hiculeLa corde passe de votre main Ă  l’arriĂšre du vĂ©hicule
DĂ©tacher du vĂ©hiculeLa personne qui l’a attachĂ©eLa corde revient dans votre main, joueur toujours attachĂ©
LibĂ©rer le joueur (sur le vĂ©hicule)La personne qui l’a attachĂ©eLe joueur est libĂ©rĂ© directement depuis le vĂ©hicule

Les touches sont des numĂ©ros de contrĂŽle FiveM. Les flĂšches fonctionnent dans tous les modes ; E et Y n’interviennent qu’en mode drawtext (avec un target, vous choisissez l’action dans le menu).

OptionCe qu’elle faitDĂ©faut
Config.AttachKeyAttraper ou libérer un joueur38 (E)
Config.AttachToVehicleKeyAttacher ou dĂ©tacher d’un vĂ©hicule246 (Y)
Config.AdjustLengthUpKeyMaintenir pour allonger la corde172 (FlĂšche Haut)
Config.AdjustLengthDownKeyMaintenir pour raccourcir la corde173 (FlĂšche Bas)

Si vous modifiez AttachKey ou AttachToVehicleKey, modifiez Ă©galement Config.KeyLabels, sinon l’invite affichera l’ancienne touche.

OptionCe qu’elle faitDĂ©faut
Config.MaxDetectionDistanceDistance max (m) pour pouvoir attraper un joueur. Également la distance de target pour les joueurs2.0
Config.MaxVehicleAttachDistanceDistance max (m) pour pouvoir attacher la corde Ă  un vĂ©hicule. Également la distance de target pour les vĂ©hicules5.0
Config.MarkerVisibilityDistancePrĂ©sent dans config.lua, mais non lu par la version actuelle — l’invite s’affiche pour quiconque se trouve dans les deux distances ci-dessus20.0
OptionCe qu’elle faitDĂ©faut
Config.InitialRopeLengthLongueur (m) au début de la traction3.0
Config.MinRopeLengthLongueur minimale accessible avec les flĂšches1.0
Config.MaxRopeLengthLongueur maximale accessible avec les flĂšches100.0
Config.RopeTypeType de corde du jeu1
Config.RopeSlackPrĂ©sent dans config.lua, mais non lu par la version actuelle — le mou de la corde dĂ©pend de sa longueur0.5
Config.RopePropModelLe prop dans la main du joueur. Le modÚle par défaut est streamé depuis stream/prop_stag_do_rope
OptionCe qu’elle faitDĂ©faut
Config.MarkerTypeType de marqueur du jeu2
Config.MarkerHeightOffsetHauteur (m) au-dessus du joueur oĂč se placent l’invite et le marqueur1.0
Config.MarkerScaleTaille du marqueur0.3
Config.MarkerColorCouleur du marqueur : rouge, vert, bleu et alpharouge, alpha 150
OptionCe qu’elle faitDĂ©faut
Config.DragCooldownMillisecondes d’attente entre deux actions de corde1000
Config.DisableControlsBloque toutes les commandes du joueur traßné. Désactivé, il peut agir tout en restant en ragdolltrue
Config.EnableMaxDragTimeRompt la corde automatiquement aprĂšs MaxDragTimefalse
Config.MaxDragTimeSecondes avant la rupture de la corde, quand l’option ci-dessus est activĂ©e100
Config.NeedItemToReleaseÀ pied, libĂ©rer nĂ©cessite la corde en main. Le propriĂ©taire peut toujours libĂ©rer quelqu’un attachĂ© Ă  un vĂ©hiculetrue

Le joueur traĂźnĂ© est en ragdoll, ne peut pas tirer et reste invincible jusqu’au retrait de la corde.


Il n’y a pas de fichier de langue dĂ©diĂ©. Traduisez simplement les quatre chaĂźnes dans Config.Labels, ainsi que Config.KeyLabels si vos joueurs utilisent une autre nomenclature de touches.


Le dossier bridge/ est ouvert afin que vous puissiez adapter la corde Ă  une configuration non reconnue par dĂ©faut. La physique de la corde et les Ă©vĂ©nements rĂ©seau demeurent dans les fichiers sous escrow et n’ont pas besoin d’ĂȘtre modifiĂ©s.

  • server_bridge.lua — framework et inventaire. RĂ©cupĂšre ESX ou QBCore, enregistre Config.Item comme item utilisable et rĂ©pond Ă  la question « ce joueur possĂšde-t-il une corde ? » au dĂ©marrage d’une traction. Pour un framework ou un inventaire personnalisĂ© ayant sa propre API, réécrivez Bridge.GetPlayer, Bridge.HasRope et Bridge.RegisterRopeItem. N’enregistrez l’item qu’à un seul endroit — deux intĂ©grations enregistrant le mĂȘme item s’exĂ©cuteraient deux fois.
  • client_bridge.lua — texte et marqueur. Bridge.DrawText et Bridge.DrawMarker affichent l’invite drawtext Ă  chaque frame visible. Remplacez-les pour utiliser votre propre texte 3D ou ressource de TextUI. Ce fichier Ă©coute Ă©galement l’évĂ©nement client mic_drag:useRope, qui sort ou range la corde — dĂ©clenchez-le depuis le callback d’utilisation d’un inventaire personnalisĂ© si vous n’utilisez pas le systĂšme d’items utilisables du framework.
  • target.lua — menus target. Ajoute et retire les options globales sur les joueurs et vĂ©hicules pour ox_target et qb-target, et bascule sur drawtext si le target s’arrĂȘte. Un autre systĂšme de target s’ajouterait ici.

Export (client)Valeur retournée
GetInteractionStateUne table : mode (l’interaction en cours), hasRope (corde en main), targetServerId (joueur traĂźnĂ©), vehicle (vĂ©hicule auquel la corde est attachĂ©e), beingDragged, busy

Cet export est en lecture seule : trĂšs utile pour un HUD, ou pour permettre Ă  un autre script d’éviter d’interagir avec un joueur actuellement attachĂ© Ă  une corde.