Roblox propose les armes préfabriquées suivantes pour aider à créer des jeux de combat compétitifs. Le système de base comprend des armes à projectiles avec une caméra par-dessus l'épaule, et en réglant la vitesse des projectiles suffisamment haut, on peut simuler des armes de type raycasting comme des pistolets laser.

Pour utiliser une arme préfabriquée dans votre jeu :
Sur la page de l'élément de l'arme, cliquez sur le bouton Obtenir le modèle et confirmez la transaction.
Dans Studio, ouvrez la Boîte à outils et sélectionnez votre section Inventaire.

Localisez l'arme et cliquez dessus pour l'ajouter dans le lieu. Lorsque vous êtes invité à mettre l'outil dans le pack de départ, cliquez sur Oui si vous souhaitez que les joueurs commencent avec l'arme dans leur sac à dos, ou cliquez sur Non pour simplement placer l'arme dans le monde 3D comme un objet à ramasser.
Si c'est la première fois que vous intégrez une arme préfabriquée, déplacez son dossier WeaponsSystem dans ServerScriptService pour servir de dossier système unifié pour toutes les armes préfabriquées dans le jeu.

Structure du dossier système
Le dossier WeaponsSystem est un dossier unifié qui contient des actifs, des configurations et des scripts qui alimentent toutes les armes préfabriquées dans le jeu. S'il est situé dans ServerScriptService, il remplace tous les dossiers WeaponsSystem équivalents qui peuvent résider dans des armes individuelles.

Dans le dossier WeaponsSystem, différents aspects sont contrôlés par les ModuleScripts suivants :
| Aspect | Géré principalement dans... |
|---|---|
| Fonctionnalité des armes |
|
| Caméra par-dessus l'épaule |
|
| GUI des armes |
|
Structure de l'arme
Les armes préfabriquées sont des outils et sont nommées comme elles apparaîtront dans le sac à dos du joueur. Chaque arme est structurée avec une hiérarchie similaire.
Type d'arme
Le WeaponType StringValue correspond au ModuleScript pour l'arme dans le dossier WeaponsSystem/WeaponTypes. Les deux valeurs de base sont BulletWeapon et BowWeapon.
Modèle d'arme
Chaque arme contient un Model composé d'une ou plusieurs BaseParts pour former l'arme physique. L'une d'elles doit être définie comme la PrimaryPart du modèle.

Le modèle comprend également les descendants importants suivants qui peuvent être parentés à l'un des BaseParts du modèle :
- TipAttachment — Attachment dont la position sur le BasePart parent détermine où les balles/projectiles sortent.
- HandleAttachment — Attachment dont la position sur le BasePart parent détermine où la poignée de l'outil est soudée.
- Descendants supplémentaires pour toute option spécialisée.
Configuration
Le dossier Configuration contient des types de "valeur" spécifiques pour le comportement de l'arme. Au-delà des valeurs par défaut, vous pouvez ajouter des éléments de configuration supplémentaires pour des options spécialisées lorsque cela est applicable.

Voici les configurations de base et leurs valeurs par défaut :
| Élément | Description | Par défaut |
|---|---|---|
| AimTrack | Nom de la piste d'animation de visée dans Assets/Animations du dossier système. | RifleAim |
| AimZoomTrack | Nom de la piste d'animation de zoom de visée dans Assets/Animations du dossier système. | RifleAimDownSights |
| AmmoCapacity | Nombre de tirs dans chaque "chargeur" avant que le joueur doive recharger. Notez que les munitions sont illimitées et cela ne spécifie pas combien de munitions un joueur porte. | 30 |
| BulletSpeed | Vitesse à laquelle les balles/projectiles se déplacent lorsqu'ils sont tirés. Réglez cela à une valeur très élevée comme 20000 pour simuler des armes de type raycasting comme des pistolets laser. | 1000 |
| BurstShotCooldown | Temps entre chaque tir dans une rafale ; cela n'a d'importance que si vous définissez FireMode sur Burst. | Valeur de ShotCooldown |
| FiredPlaybackSpeedRange | Montant que le ton peut varier pour le son Fired de l'arme. Réglez cela à 0 pour toujours le jouer à la même tonalité. | 0.1 |
| FireMode | Choisissez entre Semiautomatic (un tir par clic/tap), Automatic (tir continu), ou Burst (rafale de tirs égale à NumBurstShots à chaque clic/tap). | Semiautomatic |
| FullDamageDistance | Distance maximale à laquelle les tirs infligeront des dégâts complets. Tout ce qui est touché au-delà de cette distance recevra de moins en moins de dégâts à mesure que la distance se rapproche de ZeroDamageDistance. | 1000 |
| GravityFactor | Montant que la gravité doit influencer chaque balle/projectile. Par exemple, cette valeur pour la Crossbow est 1 car les flèches arc-en-ciel pendant le vol, mais cette valeur pour le Rocket Launcher est 0 car les roquettes propulsées se déplacent en ligne droite. | 0 |
| HasScope | Réglez sur true si vous souhaitez utiliser la lunette spécifiée dans Weapons GUI. | false |
| HitDamage | Montant de dégâts infligés par chaque coup direct. | 10 |
| MaxDistance | Distance maximale que les balles/projectiles parcourent avant de disparaître. | 2000 |
| MaxSpread | Montant maximal de dispersion pour l'arme. | Valeur de MinSpread |
| MinSpread | Montant minimal de dispersion pour l'arme. | 0 |
| NumBurstShots | Nombre de tirs par clic/rafale ; cela n'a d'importance que si vous définissez FireMode sur Burst. | 3 |
| NumProjectiles | Nombre de balles/projectiles qui seront tirés en même temps lorsque vous cliquez/tapez une fois. Cela est utile pour des armes comme le Shotgun qui tire plusieurs balles en même temps. Notez qu'un tir utilisera toujours exactement une munition, quelle que soit cette valeur. | 1 |
| RecoilDecay | Multiplicateur de déclin pour le recul ; essentiellement le taux auquel le recul diminue après le tir. | 0.825 |
| RecoilDelayTime | Temps d'attente après le tir/clic avant que le recul soit ajouté à la caméra. | 0.07 |
| RecoilMax | Recul maximal ajouté pour chaque tir. | 0.5 |
| RecoilMin | Recul minimal ajouté pour chaque tir. | 0.05 |
| ReloadAnimation | Nom de la piste d'animation de rechargement dans Assets/Animations du dossier système. | RifleReload |
| ShotCooldown | Temps d'attente minimum entre les clics. Pour les armes avec un FireMode de Automatic, c'est aussi le temps entre les tirs tout en maintenant le bouton de tir ou en maintenant le clic. | 0.1 |
| StartupTime | Durée après avoir équipé l'arme avant que le joueur puisse tirer. Cela empêche les joueurs de tirer un seul coup de plusieurs armes différentes en succession rapide. | 0.2 |
| TotalRecoilMax | Recul total maximum accumulé. Le recul actuel de l'arme ne dépassera jamais cette valeur. | 2 |
| ZeroDamageDistance | Tout ce qui est touché à cette distance ou au-delà ne recevra aucun dommage. | 10000 |
Options spécialisées
Vous pouvez ajouter/modifier les options suivantes pour n'importe quelle arme. Ces personnalisations nécessitent de modifier soit le Model de l'arme, soit le Configuration de l'arme, ou les deux. Certaines configurations dépendent d'autres, comme les particules de bouche qui nécessitent les enfants nécessaires pour les effets et sons de projectile/coup.
Animations et sons de la culasse
La culasse d'une arme est la partie qui se déplace d'avant en arrière chaque fois qu'elle est tirée.
Descendants du modèle d'arme :
- Bolt — BasePart qui se déplace lorsque l'arme est tirée.
- BoltMotor — Motor6D utilisé pour animer la culasse. Assurez-vous de définir le Part0 du moteur sur le PrimaryPart du modèle de l'arme et Part1 sur la partie Bolt.
- BoltMotorStart — Attachment dont la position sur le BasePart parent détermine où se trouve la culasse lorsqu'elle est au repos.
- BoltMotorTarget — Attachment dont la position sur le BasePart parent détermine où la culasse s'anime lors du tir.
Descendants du dossier configuration de l'arme :
- ActionOpenTimeoptionnel— Temps nécessaire pour que la culasse s'anime en position ouverte. La valeur par défaut est 0.025.
- ActionCloseTimeoptionnel— Temps nécessaire pour que la culasse s'anime en position fermée. La valeur par défaut est 0.075.
Étuis de balles éjectés
Les armes peuvent inclure des étuis de balles physiques qui s'éjectent lors du tir et tombent au sol.
Descendants du modèle d'arme :
- CasingEjectPoint — Attachment dont la position sur le BasePart parent détermine où vous souhaitez que les étuis de balles sortent. Notez que son orientation détermine la direction dans laquelle les étuis sortent.
Descendants du dossier configuration de l'arme :
- CasingEjectSpeedMinoptionnel— Vitesse d'éjection minimale des étuis. La valeur par défaut est 15.
- CasingEjectSpeedMaxoptionnel— Vitesse d'éjection maximale des étuis. La valeur par défaut est 18.
Enfant de la BasePart de l'étui dans Assets/Effects/Casings du dossier système :
Effets et sons de projectile/coup
Vous pouvez configurer des projectiles physiques pour n'importe quelle arme, ainsi que des Sounds, Beams, et ParticleEmitters pour les effets de coup et d'autres effets spéciaux.
Descendants du dossier configuration de l'arme :
- ShouldMovePartoptionnel— Réglez sur true si l'effet de tir de l'arme doit se déplacer avec le projectile ou false sinon. Vous ne devez définir cela sur true que s'il y a un objet visible qui se déplace avec chaque tir, comme une flèche ou une roquette. La valeur par défaut est false.
- BeamFadeTimeoptionnel— Temps nécessaire pour que Beam0 ou Beam1 (voir ci-dessous) s'estompe après que la balle/le projectile touche quelque chose. Par défaut, aucun estompage manuel ne sera appliqué par le code. La valeur par défaut est 0.
- BeamWidth0optionnel— Épaisseur de Beam0 ou Beam1 à Attachment0 (voir ci-dessous). La valeur par défaut est 1.5.
- BeamWidth1optionnel— Épaisseur de Beam0 ou Beam1 à Attachment1 (voir ci-dessous). La valeur par défaut est 1.8.
- NumHitParticlesoptionnel— Nombre de particules que l'émetteur HitParticles (voir ci-dessous) émettra. La valeur par défaut est 3.
- HitParticlesUsePartColoroptionnel— Réglez sur true si vous souhaitez que les particules de coup soient de la couleur de la surface touchée ; false si vous souhaitez que les particules de coup ne changent pas de couleur. La valeur par défaut est true.
Descendants de l'effet de tir spécifié noté dans la section ci-dessus :
- Beam0optionnel— Premier emplacement pour un Beam traînant derrière la balle/le projectile. N'oubliez pas de définir Attachment0 et Attachment1.
- Beam1optionnel— Deuxième emplacement pour un Beam traînant derrière la balle/le projectile. N'oubliez pas de définir Attachment0 et Attachment1.
- Attachment0optionnel— Attachment dont la position sur le BasePart parent détermine l'arrière des faisceaux traînants ; assurez-vous de définir Beam.Attachment0 sur Beam0 et Beam1 à cela.
- Attachment1optionnel— Attachment dont la position sur le BasePart parent détermine l'avant des faisceaux traînants ; assurez-vous de définir Beam.Attachment1 sur Beam0 et Beam1 à cela.
- TrailParticlesoptionnel— ParticleEmitter parenté comme enfant direct de Attachment0 ; cela émettra pendant que la balle/le projectile se déplace.
- LeadingParticlesoptionnel— ParticleEmitter parenté comme enfant direct de Attachment1 ; cela émettra pendant que la balle/le projectile se déplace.
- HitEffectoptionnel— Attachment dont la position sera définie sur Beam.Attachment1 de Beam0 lorsque la balle/le projectile touche. Vous devez spécifier Beam0 et ses attachements pour que cela fonctionne correctement.
- HitSoundoptionnel— Sound parenté comme enfant direct de HitEffect ; joue lorsque la balle/le projectile touche.
- HitParticlesoptionnel— Sound parenté comme enfant direct de HitEffect ; émet lorsque la balle/le projectile touche.
- Meshoptionnel— SpecialMesh que vous souhaitez faire apparaître comme un projectile physique. Assurez-vous de définir ShouldMovePart dans la configuration de l'arme sur true si vous avez un objet visible ici.
Particules de bouche
Cette option émet des particules de l'émetteur de particules spécifié à l'Attachment TipAttachment de l'arme lorsqu'elle est tirée. Les descendants du dossier configuration de l'arme incluent :
- ShotEffect — Nom d'un effet de tir stocké dans WeaponsSystem/Assets/Effects/Shots. En tant qu'enfant de cet effet de tir, incluez un actif ParticleEmitter nommé MuzzleParticles.
- NumMuzzleParticlesoptionnel— Nombre de particules de bouche qui seront émises. La valeur par défaut est 50.
Éclats de bouche
Cette option crée un effet d'éclat Beam lorsque l'arme est tirée.
Descendants du modèle d'arme :
- MuzzleFlash0 — Attachment utilisé pour spécifier un côté de l'éclat de bouche. La position n'a pas d'importance.
- MuzzleFlash1 — Attachment utilisé pour spécifier le côté opposé de l'éclat de bouche. La position n'a pas d'importance.
- MuzzleFlash — Beam pour l'effet d'éclat de bouche. Assurez-vous de définir Attachment0 sur MuzzleFlash0 et Attachment1 sur MuzzleFlash1.
Descendants du dossier configuration de l'arme :
- MuzzleFlashTimeoptionnel— Durée pendant laquelle l'éclat de bouche sera visible. La valeur par défaut est 0.03.
- MuzzleFlashRotation0optionnel— Rotation minimale de l'éclat de bouche. La valeur par défaut est -math.pi.
- MuzzleFlashRotation1optionnel— Rotation maximale de l'éclat de bouche. La valeur par défaut est math.pi.
- MuzzleFlashSize0optionnel— Taille minimale de l'éclat de bouche. La valeur par défaut est 1.
- MuzzleFlashSize1optionnel— Taille maximale de l'éclat de bouche. La valeur par défaut est 1.
Traînées de particules
Cette option crée une traînée de longueur variable de l'arme au point d'impact du projectile. Les descendants du dossier configuration de l'arme incluent :
- TrailLengthoptionnel— Longueur de la traînée derrière la balle/le projectile ; la valeur par défaut est nil, ce qui signifie que la longueur de la traînée sera plutôt calculée en utilisant TrailLengthFactor.
- TrailLengthFactoroptionnel— Si spécifié, la longueur de la traînée sera définie sur cette valeur multipliée par la distance que la balle/le projectile a parcourue dans la dernière image ; la valeur par défaut est 1. Notez que cela sera remplacé si vous incluez TrailLength.
- ShowEntireTrailUntilHitoptionnel— Réglez sur true pour rendre la traînée de la pointe de l'arme jusqu'à l'endroit où se trouve le projectile ; cela remplacera à la fois TrailLength et TrailLengthFactor et la traînée ne disparaîtra qu'une fois que le projectile touche quelque chose. Réglez sur false pour utiliser l'une des deux options ci-dessus pour calculer la longueur de la traînée. La valeur par défaut est false.
Marques de coup
Cette addition visuelle apparaît sur la surface où les projectiles touchent et est utile pour les flèches, les trous de balle, les marques de brûlure, etc. Les descendants du dossier configuration de l'arme incluent :
- HitMarkEffectoptionnel— Nom d'un effet de marque de coup Part/MeshPart/SpecialMesh stocké dans WeaponsSystem/Assets/Effects/HitMarks. La valeur par défaut est BulletHole.
- AlignHitMarkToNormaloptionnel— Réglez sur true si la marque de coup doit toujours s'aligner à plat contre la surface comme un trou de balle, ou false si la marque de coup doit apparaître coincée dans la surface dans la direction d'où le projectile est venu (comme une flèche). La valeur par défaut est true.
Comme noté par HitMarkEffect ci-dessus, vous pouvez ajouter une partie/mesh dans WeaponsSystem/Assets/Effects/HitMarks pour apparaître comme un projectile physique. Par exemple, inclure une MeshPart de flèche et définir AlignHitMarkToNormal sur false fera en sorte que la flèche dépasse de la surface dans la direction où vous l'avez tirée. Cette Part/MeshPart/SpecialMesh peut contenir les descendants suivants :
- Glowoptionnel— Decal qui apparaît sur la surface touchée complètement opaque, puis devient rapidement plus transparent, comme un effet lumineux sur la surface qui s'estompe rapidement. Utile pour montrer une marque rouge lumineuse là où des explosifs ont frappé.
- BulletHoleoptionnel— Decal qui apparaît sur la surface touchée complètement opaque et, après 4 secondes, s'estompe en transparent sur 1 seconde.
- ImpactBillboardoptionnel— BillboardGui qui s'affiche à la surface touchée, toujours face à la caméra.
- Impactoptionnel— ImageLabel comme enfant direct de ImpactBillboard ; cela commence complètement opaque, grandit jusqu'à la taille complète de ImpactBillboard en 0.1 secondes, puis rétrécit à la moitié de sa taille et s'estompe en pleine transparence en 0.1 secondes.
Projectiles explosifs
Les projectiles peuvent inclure un objet Explosion pour endommager les personnages joueurs dans une zone autour du point d'impact. Les descendants du dossier configuration de l'arme incluent :
- ExplodeOnImpactoptionnel— Réglez sur true si vous souhaitez que les balles/projectiles de l'arme explosent à l'impact, false sinon. La valeur par défaut est false.
- BlastDamageoptionnel— Dégâts infligés aux choses au centre de l'explosion. Notez que l'explosion inflige moins de dégâts plus les objets touchés sont éloignés du centre de l'explosion. La valeur par défaut est 100.
Arme à chargement
Une arme à chargement comme le Railgun doit être chargée entre les tirs avant de pouvoir tirer à nouveau.
Descendants du modèle d'arme :
- Dischargingoptionnel— Sound qui joue pendant que l'arme se décharge, par exemple si vous chargez l'arme juste partiellement et relâchez le bouton de tir.
- ChargeGlowoptionnel— BasePart qui deviendra moins transparent à mesure que l'arme se charge, de sorte qu'elle sera complètement opaque à 100 % de charge.
- ChargeCompleteParticlesoptionnel— ParticleEmitter qui émet lorsque l'arme a terminé de se charger. Cet émetteur peut être un enfant de n'importe quel modèle BasePart ou un enfant d'un Attachment dans le BasePart.
- DischargeCompleteParticlesoptionnel— ParticleEmitter qui émet lorsque l'arme s'est complètement déchargée. Cet émetteur peut être un enfant de n'importe quel modèle BasePart ou un enfant d'un Attachment dans le BasePart.
- ChargingParticlesoptionnel— ParticleEmitter qui émet pendant que l'arme se charge. Vous pouvez inclure plusieurs émetteurs de ce nom et chacun émettra pendant le chargement. Cet émetteur peut être un enfant de n'importe quel modèle BasePart ou un enfant d'un Attachment dans le BasePart.
Descendants du dossier configuration de l'arme :
- ChargeRate — Taux auquel l'arme se chargera. Cette valeur doit être spécifiée pour indiquer que l'arme utilise le chargement.
- DischargeRateoptionnel— Taux auquel l'arme se déchargera. La valeur par défaut est 0, ce qui signifie que l'arme ne se déchargera pas du tout.
- ChargePassivelyoptionnel— Réglez sur true si vous souhaitez que l'arme se charge passivement afin qu'elle tire instantanément lorsque vous cliquez, ou false si vous souhaitez cliquer/toucher pour charger l'arme et la faire tirer une fois la charge complète atteinte. La valeur par défaut est false.
- ChargingParticlesRatePerChargeoptionnel— Nombre de particules qui s'émettront de tous les émetteurs ChargingParticles multiplié par la charge actuelle de l'arme. La valeur par défaut est 20, ce qui signifie que si la charge de l'arme est à 10 %, chaque émetteur ChargingParticles émettra 2 particules (20*0.1), et si la charge de l'arme est à 90 %, chaque émetteur émettra 18 particules (20*0.9).
- FireDischargeoptionnel— Montant de charge que l'arme perdra après avoir tiré un coup complètement chargé. La valeur par défaut est 1.
- NumChargeCompleteParticlesoptionnel— Nombre de particules que l'émetteur ChargeCompleteParticles émettra une fois que l'arme est complètement chargée. La valeur par défaut est 25.
- NumDischargeCompleteParticlesoptionnel— Nombre de particules que l'émetteur DischargeCompleteParticles émettra lorsque l'arme est complètement déchargée. La valeur par défaut est 25.
Arme à arc
Une arme à arc comme la Crossbow peut inclure une construction réaliste de corde et de bras, ainsi qu'une flèche visuelle nockée à la corde.
En plus d'ajouter des descendants de modèle, vous devez appliquer ce qui suit :
- Transformez l'arme en une arme à chargement. Par exemple, ajoutez le ChargeRate requis dans la Configuration de l'arme qui spécifie à quelle vitesse la corde est tirée. De plus, envisagez d'ajouter des descendants optionnels au Model de l'arme, comme un son Charging pour la corde/bras tirés en arrière.
Les descendants du modèle d'arme incluent :
- Arrowoptionnel— BasePart pour la flèche qui apparaît lorsque l'arc est complètement tiré. Notez que cela est uniquement pour l'apparence visuelle sur l'arc (la flèche réellement tirée sera un ShotEffect comme décrit dans effets et sons de projectile/coup).
- String1 — Attachment pour le point central de la corde.
- Armsoptionnel— Part qui sert simplement d'indicateur interne que les bras de l'arc seront animés. Cela peut contenir les enfants directs suivants :
- LeftString0 — Attachment point où le côté gauche de la corde est attaché à l'arc.
- RightString0 — Attachment point où le côté droit de la corde est attaché à l'arc.
- Mesh — SpecialMesh partie de l'arc qui se pliera réellement lorsque l'arc est tiré. Notez que vous devez spécifier les quatre objets Vector3Value suivants pour que cela s'anime.
GUI des armes
Le système d'armes de base interagit avec ce système pour mettre à jour l'interface utilisateur en fonction de choses comme la dispersion de l'arme, les indicateurs lorsque vous êtes touché ou que vous touchez d'autres, etc.
Le WeaponsSystemGui est un objet ScreenGui dans WeaponsSystem/Assets qui est parenté à PlayerGui lorsque le jeu commence. WeaponSystemGui a quatre descendants comme suit :
ScalingElements est un Folder avec les descendants suivants :
- Crosshair — Un Frame contenant un UIAspectRatioConstraint et des étiquettes d'image pour les éléments inférieur, gauche, droit et supérieur du réticule.
- HitMarker — Un Frame contenant un UIAspectRatioConstraint et une étiquette d'image HitMarkerImage qui apparaît et s'estompe lorsque le joueur touche avec succès un autre personnage joueur.
LargeTouchscreen est un Frame contenant des boutons AimButton et FireButton qui s'affichent sur les grands écrans tactiles.
Scope est un Frame qui contient l'étiquette d'image ScopeImage qui apparaît lors du zoom sur une arme avec HasScope activé (voir structure de l'arme).
SmallTouchscreen est un Frame contenant des boutons AimButton et FireButton qui s'affichent sur les petits écrans tactiles.
Indicateurs directionnels
Les indicateurs directionnels sont utilisés pour montrer la direction de quelque chose autour du réticule du joueur. Par exemple, si quelqu'un vous tire dessus, un demi-cercle rouge peut apparaître autour de votre réticule dans la direction d'où est venu le tir. D'autres exemples incluent des indicateurs pour montrer la direction des pas, des tirs indirects, ou même des objets environnementaux tels que des coffres.
Pour créer un nouvel indicateur, ajoutez un nouveau Frame dans WeaponsSystemGui/ScalingElements/DirectionalIndicators avec la structure suivante :
- Indicateur (Frame)
- ImageLabel pour l'indicateur directionnel. Il peut être nécessaire d'ajuster la rotation de l'image dans Studio à moins que vous ne téléchargiez l'image de manière à ce qu'elle soit orientée vers le bas et qu'il y ait peu ou pas d'espace vide autour. Cette étiquette d'image doit également contenir son propre UIAspectRatioConstraint.
- Configuration contenant des propriétés optionnelles à ajuster :
- DistanceLevelFromCenteroptionnel— Nombre de niveaux de distance depuis le centre de l'écran (chaque niveau de distance est d'environ 0.03 échelle d'écran). La valeur par défaut est 6.
- FadeTimeoptionnel— Temps d'estompage de l'indicateur après son activation et le temps TimeBeforeFade. La valeur par défaut est 1.
- Nameoptionnel— Nom de l'indicateur directionnel tel que vous souhaitez le référencer dans le code. La valeur par défaut est le nom du Frame de niveau supérieur de l'indicateur.
- TimeBeforeFadeoptionnel— Nombre de secondes pendant lesquelles l'indicateur apparaîtra avant de s'estomper. La valeur par défaut est 1.
- TransparencyBeforeFadeoptionnel— Transparence de l'indicateur avant qu'il ne commence à s'estomper. La valeur par défaut est 0.
- WidthLeveloptionnel— Nombre de niveaux de largeur depuis le centre (chaque niveau de largeur est d'environ 0.03 échelle d'écran). La valeur par défaut est la valeur de DistanceLevelFromCenter.
Une fois créé, vous pouvez activer un indicateur via la commande suivante à l'intérieur de WeaponsSystem/Libraries/WeaponsGui où indicatorName est le nom de chaîne de l'indicateur à activer et worldPos est la position mondiale où l'indicateur directionnel doit pointer :
self.DirectionalIndicatorGuiManager:ActivateDirectionalIndicator(indicatorName, worldPos)Panneau d'affichage des dégâts
Le panneau d'affichage des dégâts est utilisé pour montrer des chiffres au-dessus de la tête d'un personnage lorsqu'il est blessé. Ceux-ci n'apparaîtront que pour le joueur qui a blessé le personnage d'un autre joueur, pas pour les joueurs en mode spectateur.
Les panneaux d'affichage des dégâts sont gérés dans WeaponsSystem/Libraries/DamageBillboardHandler et peuvent être activés depuis n'importe quel code côté client comme suit, où damage est le montant de dégâts infligés et adornmentPart est la partie sur laquelle orner le panneau d'affichage, comme la tête de la victime :
DamageBillboardHandler:ShowDamageBillboard(damage, adornmentPart)Caméra par-dessus l'épaule
La caméra par-dessus l'épaule est une caméra à la troisième personne qui regarde par-dessus l'épaule droite du personnage joueur. Pour personnaliser la caméra par-dessus l'épaule, modifiez les variables sous le commentaire -- Paramètres de configuration (constantes) dans la fonction ShoulderCamera.new() de WeaponsSystem/Libraries/ShoulderCamera. Vous pouvez modifier des choses telles que le champ de vision, le décalage par rapport au personnage, la vitesse de marche pendant le sprint ou le zoom, etc.
Sprint et zoom
Par défaut, le système d'armes ajoute une capacité de "sprint" afin que les joueurs puissent sprinter en maintenant la touche Shift, en poussant complètement vers le haut sur le joystick dynamique (mobile), ou en poussant complètement vers le haut sur le joystick gauche (manette). Si vous souhaitez désactiver le sprint, définissez la valeur de SprintEnabled dans WeaponsSystem/Configuration sur false.
Le système réduit également la vitesse du joueur pendant qu'il vise/zoome, mais vous pouvez désactiver ce comportement en définissant la valeur de SlowZoomWalkEnabled dans WeaponsSystem/Configuration sur false.








