From 79858dca5e5c5293ffa3b3ba050ed94293cc0e27 Mon Sep 17 00:00:00 2001 From: RealBadAngel Date: Wed, 17 Jul 2013 20:28:42 +0200 Subject: [PATCH] - Fix teleportation: now it teleports player to side of the gate player was lookin at when placing. - Teleportation handles now player look yaw. - Fix to a bug in gates formspec. --- stargate/gate_defs.lua | 15 +++++++++++---- stargate/stargate_gui.lua | 2 +- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/stargate/gate_defs.lua b/stargate/gate_defs.lua index caca8ca..374a055 100644 --- a/stargate/gate_defs.lua +++ b/stargate/gate_defs.lua @@ -500,16 +500,23 @@ minetest.register_abm({ end if player_name~=owner and gate["type"]=="private" then return end local dir1=gate["destination_dir"] + local dest_angle if dir1 == 0 then - pos1.z=pos1.z+2 + pos1.z = pos1.z-2 + dest_angle = 180 elseif dir1 == 1 then - pos1.x=pos1.x+2 + pos1.x = pos1.x-2 + dest_angle = 90 elseif dir1 == 2 then - pos1.z=pos1.z-2 + pos1.z=pos1.z+2 + dest_angle = 0 elseif dir1 == 3 then - pos1.x=pos1.x-2 + pos1.x = pos1.x+2 + dest_angle = -90 end + print(dump(dir1)) object:moveto(pos1,false) + object:set_look_yaw(math.rad(dest_angle)) minetest.sound_play("enterEventHorizon", {pos = pos, gain = 1.0,loop = false, max_hear_distance = 72,}) end end diff --git a/stargate/stargate_gui.lua b/stargate/stargate_gui.lua index 9046e53..f96d48a 100644 --- a/stargate/stargate_gui.lua +++ b/stargate/stargate_gui.lua @@ -181,7 +181,7 @@ stargate.get_formspec = function(player_name,page) local temp_gate=stargate_network["players"][player_name]["temp_gate"] local formspec = "size[14,10]" --background - formspec = formspec .."background[-0.19,-0.2,;14.38,10.55;ui_form_bg.png]" + formspec = formspec .."background[-0.19,-0.2;14.38,10.55;ui_form_bg.png]" formspec = formspec.."label[0,0.0;Stargate DHD]" formspec = formspec.."label[0,.5;Position: ("..temp_gate["pos"].x..","..temp_gate["pos"].y..","..temp_gate["pos"].z..")]" formspec = formspec.."image_button[3.5,.6;.6,.6;toggle_icon.png;toggle_type;]"