Revision Difference
WEAPON:GetViewModelPosition#512223
<function name="GetViewModelPosition" parent="WEAPON" type="hook">⤶
<ishook>yes</ishook>⤶
<description>This hook allows you to adjust view model position and angles.</description>⤶
<realm>Client</realm>⤶
<predicted>No</predicted>⤶
<args>⤶
<arg name="EyePos" type="Vector">Current position</arg>⤶
<arg name="EyeAng" type="Angle">Current angle</arg>⤶
</args>⤶
<rets>⤶
<ret name="" type="Vector">New position</ret>⤶
<ret name="" type="Angle">New angle</ret>⤶
</rets>⤶
</function>⤶
⤶
<example>⤶
<description>This moves and rotates the original viewmodel based on fixed offsets, changing its idle position in front of the player.</description>⤶
<code>⤶
-- Adjust these variables to move the viewmodel's position⤶
SWEP.IronSightsPos = Vector(9.49, 10.5, -12.371)⤶
SWEP.IronSightsAng = Vector(12, 65, -22.19)⤶
⤶
function SWEP:GetViewModelPosition(EyePos, EyeAng)⤶
local Mul = 1.0⤶
⤶
local Offset = self.IronSightsPos⤶
⤶
if (self.IronSightsAng) then⤶
EyeAng = EyeAng * 1⤶
⤶
EyeAng:RotateAroundAxis(EyeAng:Right(), self.IronSightsAng.x * Mul)⤶
EyeAng:RotateAroundAxis(EyeAng:Up(), self.IronSightsAng.y * Mul)⤶
EyeAng:RotateAroundAxis(EyeAng:Forward(), self.IronSightsAng.z * Mul)⤶
end⤶
⤶
local Right = EyeAng:Right()⤶
local Up = EyeAng:Up()⤶
local Forward = EyeAng:Forward()⤶
⤶
EyePos = EyePos + Offset.x * Right * Mul⤶
EyePos = EyePos + Offset.y * Forward * Mul⤶
EyePos = EyePos + Offset.z * Up * Mul⤶
⤶
return EyePos, EyeAng⤶
end⤶
</code>⤶
⤶
</example>