diff options
Diffstat (limited to 'gamemode/shared/itemsystem/weapons_common.lua')
| -rw-r--r-- | gamemode/shared/itemsystem/weapons_common.lua | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/gamemode/shared/itemsystem/weapons_common.lua b/gamemode/shared/itemsystem/weapons_common.lua deleted file mode 100644 index 6f553fa..0000000 --- a/gamemode/shared/itemsystem/weapons_common.lua +++ /dev/null @@ -1,70 +0,0 @@ - -ART = ART or {} - ---- Finds the direction a player is moveing. --- @param player The player to find the move direction of --- @return The string "forward", "backward", "right", or "left" -function ART.playermovedir(player) - local vel = player:GetVelocity():GetNormalized() - vel.z = 0 - local swings = { - {player:GetForward(),"forward"}, - {-player:GetForward(),"backward"}, - {player:GetRight(),"right"}, - {-player:GetRight(),"left"} - } - table.sort(swings,function(a,b) - return vel:Dot(a[1]) > vel:Dot(b[1]) - end) - return swings[1][2] -end - - -local positionset = {} ---- The arc swing of a weapon. --- Finds anything that a weapon should hit in it's swing, and calls a function on it. --- @param player The player that's swinging the weapon --- @param tiems A table of times that the trace calculations should be done at, this table needs to be the same length as the positions table --- @param positions The position offsets from the player that swung that should be the start/end points of the arc --- @param onhit A function to call on any entities that were hit in the swing of the weapon. -function ART.swingarc(player,times,positions,onhit) - local positionpoints = {} - table.insert(positionset,positionpoints) - for k,v in ipairs(times) do - timer.Simple(v,function() - ART.TraceWeapon = true - ART.TraceStart = CurTime() - print("positions[k]",positions[k],"playerpos",player:GetPos(),"add",Vector(0,0,64)) - local weaponpos = positions[k] + player:GetPos() + Vector(0,0,64) - table.insert(positionpoints,weaponpos) - if #positionpoints > 1 then - --print("Trace from ", positionpoints[#positionpoints-1], " to ", positionpoints[#positionpoints]) - local tr = util.TraceLine({ - start = positionpoints[#positionpoints-1], - endpos = positionpoints[#positionpoints], - }) - onhit(tr) - end - end) - end - timer.Simple(times[#times],function() - print("Inserted swing, drawn positions are now:") - PrintTable(positionset) - ART.TraceWeapon = false - end) -end - -hook.Add( "HUDPaint", "weaponswings", function() - cam.Start3D() -- Start the 3D function so we can draw onto the screen. - for k,v in pairs(positionset) do - for i = 1,#v-1 do - render.DrawLine( v[i], v[i+1], Color(255,0,0,255), false ) - render.DrawLine( v[i], v[i]+Vector(0,0,20),Color(0,255,0,255),false) - end - end - --render.SetMaterial( material ) -- Tell render what material we want, in this case the flash from the gravgun - --render.DrawSprite( pos, 16, 16, white ) -- Draw the sprite in the middle of the map, at 16x16 in it's original colour with full alpha. - cam.End3D() -end ) - -return wcommon |
