- 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.
This commit is contained in:
RealBadAngel 2013-07-17 20:28:42 +02:00
parent 2ef1bb7e46
commit 79858dca5e
2 changed files with 12 additions and 5 deletions

View File

@ -500,16 +500,23 @@ minetest.register_abm({
end end
if player_name~=owner and gate["type"]=="private" then return end if player_name~=owner and gate["type"]=="private" then return end
local dir1=gate["destination_dir"] local dir1=gate["destination_dir"]
local dest_angle
if dir1 == 0 then if dir1 == 0 then
pos1.z=pos1.z+2 pos1.z = pos1.z-2
dest_angle = 180
elseif dir1 == 1 then elseif dir1 == 1 then
pos1.x=pos1.x+2 pos1.x = pos1.x-2
dest_angle = 90
elseif dir1 == 2 then elseif dir1 == 2 then
pos1.z=pos1.z-2 pos1.z=pos1.z+2
dest_angle = 0
elseif dir1 == 3 then elseif dir1 == 3 then
pos1.x=pos1.x-2 pos1.x = pos1.x+2
dest_angle = -90
end end
print(dump(dir1))
object:moveto(pos1,false) 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,}) minetest.sound_play("enterEventHorizon", {pos = pos, gain = 1.0,loop = false, max_hear_distance = 72,})
end end
end end

View File

@ -181,7 +181,7 @@ stargate.get_formspec = function(player_name,page)
local temp_gate=stargate_network["players"][player_name]["temp_gate"] local temp_gate=stargate_network["players"][player_name]["temp_gate"]
local formspec = "size[14,10]" local formspec = "size[14,10]"
--background --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,0.0;Stargate DHD]"
formspec = formspec.."label[0,.5;Position: ("..temp_gate["pos"].x..","..temp_gate["pos"].y..","..temp_gate["pos"].z..")]" 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;]" formspec = formspec.."image_button[3.5,.6;.6,.6;toggle_icon.png;toggle_type;]"