mirror of
https://github.com/SmallJoker/boost_cart.git
synced 2024-12-25 10:20:19 +01:00
Use minetest.raillike_group, do not connect rails with other raillike
This commit is contained in:
parent
b80d3aed4c
commit
af25c5411b
@ -83,7 +83,8 @@ end
|
|||||||
|
|
||||||
function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, direction)
|
function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, direction)
|
||||||
local pos = self.object:getpos()
|
local pos = self.object:getpos()
|
||||||
if not self.railtype then
|
local vel = self.object:getvelocity()
|
||||||
|
if not self.railtype or vector.equals(vel, {x=0, y=0, z=0}) then
|
||||||
local node = minetest.get_node(pos).name
|
local node = minetest.get_node(pos).name
|
||||||
self.railtype = minetest.get_item_group(node, "connect_to_raillike")
|
self.railtype = minetest.get_item_group(node, "connect_to_raillike")
|
||||||
end
|
end
|
||||||
@ -122,7 +123,7 @@ function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities,
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local vel = self.object:getvelocity()
|
-- Driver punches to accelerate the cart
|
||||||
if puncher:get_player_name() == self.driver then
|
if puncher:get_player_name() == self.driver then
|
||||||
if math.abs(vel.x + vel.z) > boost_cart.punch_speed_max then
|
if math.abs(vel.x + vel.z) > boost_cart.punch_speed_max then
|
||||||
return
|
return
|
||||||
|
@ -217,7 +217,15 @@ end
|
|||||||
|
|
||||||
function boost_cart:get_rail_groups(additional_groups)
|
function boost_cart:get_rail_groups(additional_groups)
|
||||||
-- Get the default rail groups and add more when a table is given
|
-- Get the default rail groups and add more when a table is given
|
||||||
local groups = {dig_immediate = 2, attached_node = 1, rail = 1, connect_to_raillike = 1}
|
local groups = {
|
||||||
|
dig_immediate = 2,
|
||||||
|
attached_node = 1,
|
||||||
|
rail = 1,
|
||||||
|
connect_to_raillike = 1
|
||||||
|
}
|
||||||
|
if minetest.raillike_group then
|
||||||
|
groups.connect_to_raillike = minetest.raillike_group("rail")
|
||||||
|
end
|
||||||
if type(additional_groups) == "table" then
|
if type(additional_groups) == "table" then
|
||||||
for k, v in pairs(additional_groups) do
|
for k, v in pairs(additional_groups) do
|
||||||
groups[k] = v
|
groups[k] = v
|
||||||
|
Loading…
Reference in New Issue
Block a user