diff options
| author | Apickx <apickx@cogarr.com> | 2018-03-24 20:47:32 -0400 |
|---|---|---|
| committer | Apickx <apickx@cogarr.com> | 2018-03-24 20:47:32 -0400 |
| commit | d22897e044a422e125f46e52c3467473a3656378 (patch) | |
| tree | b7eedbaa95f3ec6c7c28a2b33405dda84adbf945 /data/artery/global/sv_dupboat.lua | |
| download | artery_stranded-d22897e044a422e125f46e52c3467473a3656378.tar.gz artery_stranded-d22897e044a422e125f46e52c3467473a3656378.tar.bz2 artery_stranded-d22897e044a422e125f46e52c3467473a3656378.zip | |
Inital commit
Inital commit
Diffstat (limited to 'data/artery/global/sv_dupboat.lua')
| -rw-r--r-- | data/artery/global/sv_dupboat.lua | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/data/artery/global/sv_dupboat.lua b/data/artery/global/sv_dupboat.lua new file mode 100644 index 0000000..1a32d0c --- /dev/null +++ b/data/artery/global/sv_dupboat.lua @@ -0,0 +1,38 @@ +if not nrequire then return end +duplicator.Allow("prop_physics") + +local dups = {} + +local function copyplayer(ply,cmd,args) + local tr = util.TraceLine({ + start = ply:GetPos(), + endpos = ply:GetPos() + Vector(0,0,-100), + }) + local ent = tr.Entity + print('Ent is', ent) + duplicator.SetLocalPos( ply:GetPos()) + local dup = duplicator.Copy(ent) + duplicator.SetLocalPos(Vector(0,0,0)) + print("After normalizing, dup was") + PrintTable(dup) + dups[args[1]] = dup + print("saved boat as", args[1]) +end + +local function pasteplayer(ply,cmd,args) + print("Pasteing ", args[1]) + local dup = dups[args[1]] + print("Before setting up under player, dup is") + PrintTable(dup) + for k,v in pairs(dup.Entities) do + v.Pos = v.Pos + ply:GetPos() + end + print("After setting up under player, dup is") + PrintTable(dup) + duplicator.SetLocalPos( ply:GetPos()) + duplicator.Paste(ply,dup.Entities, dup.Constraints) + duplicator.SetLocalPos(Vector(0,0,0)) +end + +concommand.Add("artery_copyboat",copyplayer) +concommand.Add("artery_pasteboat",pasteplayer) |
