diff --git a/forms.lua b/forms.lua index 78fac9a..766bcb9 100755 --- a/forms.lua +++ b/forms.lua @@ -256,8 +256,6 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) -- dettach player --========================= -- eject passenger if the plane is on ground - ent.driver_name = nil - ent._at_control = false ap_airship.dettach_pax(ent, player, "l") @@ -267,8 +265,6 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) -- dettach player --========================= -- eject passenger if the plane is on ground - ent.driver_name = nil - ent._at_control = false ap_airship.dettach_pax(ent, player, "r") diff --git a/utilities.lua b/utilities.lua index f52d56a..4bcb4a4 100755 --- a/utilities.lua +++ b/utilities.lua @@ -185,6 +185,11 @@ function ap_airship.dettach_pax(self, player, side) if not self._passengers then return end if player then local name = player:get_player_name() --self._passenger + if self.driver_name == name then + self.driver_name = nil + self._at_control = false + end + ap_airship.remove_hud(player) -- passenger clicked the object => driver gets off the vehicle