diff --git a/entities.lua b/entities.lua index a4b5f81..58444da 100755 --- a/entities.lua +++ b/entities.lua @@ -392,7 +392,7 @@ minetest.register_entity("ap_airship:airship", { initial_properties = { physical = true, collide_with_objects = true, --true, - collisionbox = {-10, -3.5, -10, 10, 15, 10}, --{-1,0,-1, 1,0.3,1}, + collisionbox = {-10, -4.1, -10, 10, 15, 10}, --{-1,0,-1, 1,0.3,1}, selectionbox = {-2, -3.5, -2, 2, 0, 2}, visual = "mesh", backface_culling = false, @@ -437,6 +437,9 @@ minetest.register_entity("ap_airship:airship", { _disconnection_check_time = 0, _inv = nil, _inv_id = "", + _name_color = 0, + _name_hor_aligment = 3.0, + item = "ap_airship:airship", get_staticdata = function(self) -- unloaded/unloads ... is now saved @@ -455,6 +458,7 @@ minetest.register_entity("ap_airship:airship", { stored_inv_id = self._inv_id, stored_passengers = self._passengers, --passengers list stored_passengers_locked = self._passengers_locked, + stored_ship_name = self._ship_name, }) end, @@ -484,6 +488,7 @@ minetest.register_entity("ap_airship:airship", { self._inv_id = data.stored_inv_id self._passengers = data.stored_passengers or ap_airship.copy_vector({[1]=nil, [2]=nil, [3]=nil, [4]=nil, [5]=nil, [6]=nil, [7]=nil, [8]=nil, [9]=nil, [10]=nil, [11]=nil, [12]=nil}) self._passengers_locked = data.stored_passengers_locked + self._ship_name = data.stored_ship_name --minetest.debug("loaded: ", self._energy) local properties = self.object:get_properties() properties.infotext = data.stored_owner .. " nice airship" @@ -580,7 +585,7 @@ minetest.register_entity("ap_airship:airship", { end self.lastvelocity = self.object:get_velocity() - self.time_total=self.time_total+self.dtime + self.time_total=(self.time_total or 0)+self.dtime end, logic = function(self) @@ -713,9 +718,9 @@ minetest.register_entity("ap_airship:airship", { self.object:set_bone_position("timao", {x=0,y=-22.562,z=176.018}, {x=0,y=0,z=self._rudder_angle*8}) self.object:set_bone_position("compass_axis", {x=0,y=-21.8,z=178.757}, {x=0, y=S_angle, z=0}) - noded = airutils.nodeatpos(airutils.pos_shift(curr_pos,{y=-3.7})) + noded = airutils.nodeatpos(airutils.pos_shift(curr_pos,{y=-4.5})) if (noded and noded.drawtype ~= 'airlike') or self.isonground then - self.object:set_bone_position("door", {x=0,y=-13.1266,z=54.1922}, {x=-18,y=0,z=0}) + self.object:set_bone_position("door", {x=0,y=-13.1266,z=54.1922}, {x=-28,y=0,z=0}) else self.object:set_bone_position("door", {x=0,y=-13.1266,z=54.1922}, {x=0,y=0,z=0}) end diff --git a/init.lua b/init.lua index 1443035..0a471ed 100755 --- a/init.lua +++ b/init.lua @@ -35,6 +35,7 @@ ap_airship.rotor_texture = "ap_airship_helice.png" ap_airship.textures = { ap_airship.grey_texture, --"ap_airship_painting.png", --balao ap_airship.metal_texture, --ponteira nariz + "airutils_name_canvas.png", "ap_airship_brown.png", --mobilia ap_airship.metal_texture, --mobilia ap_airship.black_texture, -- corpo da bussola diff --git a/models/ap_airship_mesh.b3d b/models/ap_airship_mesh.b3d index 0838621..65c5f76 100755 Binary files a/models/ap_airship_mesh.b3d and b/models/ap_airship_mesh.b3d differ diff --git a/utilities.lua b/utilities.lua index a57ca25..f69672c 100755 --- a/utilities.lua +++ b/utilities.lua @@ -254,6 +254,12 @@ local function paint(self) if indx then l_textures[_] = self.logo end + if airutils._use_signs_api then + indx = texture:find('airutils_name_canvas.png') + if indx then + l_textures[_] = "airutils_name_canvas.png^"..airutils.convert_text_to_texture(self._ship_name, self._name_color or 0, self._name_hor_aligment or 0.8) + end + end end self.object:set_properties({textures=l_textures}) end