formspec added

master
Alexsandro Percy 2021-11-23 10:12:55 -03:00
parent 63276d2d86
commit 655bc048e2
3 changed files with 47 additions and 13 deletions

View File

@ -59,8 +59,8 @@ minetest.register_entity("demoiselle:demoiselle", {
initial_properties = {
physical = true,
collide_with_objects = true,
collisionbox = {-1.2, 0, -1.2, 1.2, 1, 1.2}, --{-1,0,-1, 1,0.3,1},
selectionbox = {-2, 0, -2, 2, 1, 2},
collisionbox = {-1.2, 0, -1.2, 1.2, 2, 1.2}, --{-1,0,-1, 1,0.3,1},
selectionbox = {-2, 0, -2, 2, 2, 2},
visual = "mesh",
backface_culling = false,
mesh = "demoiselle.b3d",
@ -267,16 +267,7 @@ minetest.register_entity("demoiselle:demoiselle", {
if self.owner == name then
-- pilot section
if name == self.driver_name then
--=========================
-- dettach player
--=========================
demoiselle.dettachPlayer(self, clicker)
--[[ sound and animation
if self.sound_handle then
minetest.sound_stop(self.sound_handle)
self.sound_handle = nil
end
self.engine:set_animation_frame_speed(0)]]--
demoiselle.pilot_formspec(name)
elseif not self.driver_name then
--=========================
-- attach player

42
demoiselle_forms.lua Normal file
View File

@ -0,0 +1,42 @@
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_global_definitions.lua")
--------------
-- Manual --
--------------
function demoiselle.getPlaneFromPlayer(player)
local seat = player:get_attach()
local plane = seat:get_attach()
return plane
end
function demoiselle.pilot_formspec(name)
local basic_form = table.concat({
"formspec_version[3]",
"size[6,4.5]",
}, "")
basic_form = basic_form.."button[1,1.0;4,1;go_out;Go Offboard]"
basic_form = basic_form.."button[1,2.5;4,1;hud;Show/Hide Gauges]"
minetest.show_formspec(name, "demoiselle:pilot_main", basic_form)
end
minetest.register_on_player_receive_fields(function(player, formname, fields)
if formname == "demoiselle:pilot_main" then
local name = player:get_player_name()
local plane_obj = demoiselle.getPlaneFromPlayer(player)
local ent = plane_obj:get_luaentity()
if fields.hud then
if ent._show_hud == true then
ent._show_hud = false
else
ent._show_hud = true
end
end
if fields.go_out then
demoiselle.dettachPlayer(ent, player)
end
minetest.close_formspec(name, "demoiselle:pilot_main")
end
end)

View File

@ -5,7 +5,7 @@ demoiselle.gravity = tonumber(minetest.settings:get("movement_gravity")) or 9.8
demoiselle.wing_angle_of_attack = 2.5
demoiselle.min_speed = 4
demoiselle.max_engine_acc = 4 --5
demoiselle.lift = 15 --12
demoiselle.lift = 16 --12
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_global_definitions.lua")
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_crafts.lua")
@ -14,6 +14,7 @@ dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_fuel_manag
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_custom_physics.lua")
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_utilities.lua")
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_entities.lua")
dofile(minetest.get_modpath("demoiselle") .. DIR_DELIM .. "demoiselle_forms.lua")
--
-- helpers and co.