Passer au contenu principal
Version: latest - a1.11.0 ⚖️

Weapon Scope

Cet exemple de code montre comment attacher un mesh de viseur custom sur une arme et le rendre fonctionnel.

Server/Index.lua
-- Création d'une AK47
local my_ak47 = NanosWorldWeapons.AK47(Vector(1035, 154, 300), Rotator())

-- Ajoute un StaticMesh de viseur point rouge a l'AK47 sur le bone "sight_socket". Notre AK47 disposant déjà d'un bone nommé "sight_socket" au bon emplacement sur l'arme, nous pouvons simplement y attacher le viseur. Si l'arme ne dispose pas d'un bone pré-configuré, il aurait été nécessaire d'attacher le viseur a un bone dont le nom est "" (empty) et modifier sa position en modifiant sont Attach Location pour correspondre à l'emplacement idéal
my_ak47:AddStaticMeshAttached("sight", "nanos-world::SM_T4_Sight", "sight_socket")

-- Modifie du coeficient de FOV a 0.35x lors de la visée
my_ak47.SightFOVMultiplier = 0.35

-- Définit le décalage de la visée afin de correspondre au centre du viseur,
-- ce decalage devra être adapté a chaque arme. Pour l'AK47, le viseur point rouge est idéalement placé a Z = -15.9
my_ak47:SetSightTransform(Vector(0, 0, -15.9), Rotator(0, 0, 0))

Quelques Static Mesh pouvant être utilisés comme viseur :

  • nanos-world::SM_T4_Sight
  • nanos-world::SM_Vertgrip
  • nanos-world::SM_Suppressor
  • nanos-world::SM_Scope_25x56_X