I don’t know why, but it always says it has a nil value, this is what I did:
LocalPlayer():GetPos():ToScreen()
I don’t know where is the error D:
I don’t know why, but it always says it has a nil value, this is what I did:
LocalPlayer():GetPos():ToScreen()
I don’t know where is the error D:
Show the actual error you get along with more code than a single line.
function SWEP:PrimaryAttack()
if ( !self:CanPrimaryAttack() ) then return end
self:EmitSound("Weapon_FiveSeven.Single")
self:ShootBullet( 1, 1, 0.015 )
self:TakePrimaryAmmo( 1 )
self.Owner:ViewPunch( Angle( -1, 0, 0 ) )
local data = {}
data.start = self.Owner:GetShootPos()
data.endpos = data.start + self.Owner:GetAimVector()*10000
data.filter = self.Owner
local trace = util.TraceLine(data)
if (SERVER and trace.Hit) then
local entity = trace.Entity
if (IsValid(entity) and entity:IsPlayer()) then
local vec = (trace.HitPos - trace.StartPos):GetNormal()
local contador = entity:GetNetworkedVar("contador")
vec.z = math.abs(vec.z) + 0.175
if entity:GetNetworkedInt("anonymous") == 0 then
entity:SetVelocity(vec * contador)
elseif entity:GetNetworkedInt("anonymous") == 1 then
entity:SetVelocity(vec * contador/10)
end
end
end
self.Weapon:SetNextPrimaryFire(CurTime() + 0.155 )
local position = self.Owner:GetPos()
local position2D = position:ToScreen()
print(position2D)
end
The error happens here
local position2D = position:ToScreen()
Edit: The error says: attempt to call method “ToScreen” <a nil value>
Check for clientside cos ToScreen is clientside function.
[lua]
if CLIENT then
local position = self.Owner:GetPos()
local position2d = position:ToScreen()
print(position2d)
end
[/lua]
I see, It works(but I don’t see nothing on the print),but my real problem is this code right here:
(This is on a clientside file)
function GM:Think()
if LocalPlayer():IsValid() then
if not vgui.MouseEnabled then
gui.EnableScreenClicker(true)
end
local screen = LocalPlayer():GetPos():ToScreen()
local Mx, My = gui.MousePos()
LocalPlayer():SetEyeAngles(Vector(0, Mx - screen.x, screen.y - My):Angle())
end
end
Right now I have a cam where I can see the player in a 2D perspective, what I’m triying to do is to move the angle of the player up and down using the mouse, right now the mouse appears and works, but the player doesn’t change angles.
The code on the weapon was because I wanted to see what was the problem because it didn’t appeared and I’m sure is because of this piece of code I posted here right now, but I don’t know where is the problem or why doesn’t do what I want
Edit: I saw the error, It’s solved, thanks for the help guys xDDDD