diff options
Diffstat (limited to 'advtrains_train_subway')
-rw-r--r-- | advtrains_train_subway/init.lua | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/advtrains_train_subway/init.lua b/advtrains_train_subway/init.lua index d47b9ca..845f15f 100644 --- a/advtrains_train_subway/init.lua +++ b/advtrains_train_subway/init.lua @@ -132,56 +132,3 @@ minetest.register_craft({ {'default:steelblock', 'default:steelblock', 'default:steelblock'}, }, }) - -minetest.register_craftitem(":advtrains:subway_train", { - description = "Subway train, will drive forward when placed", - inventory_image = "advtrains_subway_wagon_inv.png", - wield_image = "advtrains_subway_wagon_inv.png", - - on_place = function(itemstack, placer, pointed_thing) - return advtrains.pcall(function() - if not pointed_thing.type == "node" then - return - end - local pname = placer:get_player_name() - - local node=minetest.get_node_or_nil(pointed_thing.under) - if not node then atprint("[advtrains]Ignore at placer position") return itemstack end - local nodename=node.name - if(not advtrains.is_track_and_drives_on(nodename, {default=true})) then - atprint("no track here, not placing.") - return itemstack - end - if not minetest.check_player_privs(placer, {train_operator = true }) then - minetest.chat_send_player(pname, "You don't have the train_operator privilege.") - return itemstack - end - if not minetest.check_player_privs(placer, {train_admin = true }) and minetest.is_protected(pointed_thing.under, placer:get_player_name()) then - return itemstack - end - local tconns=advtrains.get_track_connections(node.name, node.param2) - local yaw = placer:get_look_horizontal() - local plconnid = advtrains.yawToClosestConn(yaw, tconns) - - local prevpos = advtrains.get_adjacent_rail(pointed_thing.under, tconns, plconnid, {default=true}) - if not prevpos then - minetest.chat_send_player(pname, "The track you are trying to place the wagon on is not long enough!") - return - end - - local wid1 = advtrains.create_wagon("advtrains:subway_wagon", pname) - local wid2 = advtrains.create_wagon("advtrains:subway_wagon", pname) - local wid3 = advtrains.create_wagon("advtrains:subway_wagon", pname) - - local id=advtrains.create_new_train_at(pointed_thing.under, plconnid, 0, {wid1, wid2, wid3}) - - minetest.after(2, function() advtrains.trains[id].tarvelocity = 2 end) - - if not advtrains.is_creative(pname) then - itemstack:take_item() - end - return itemstack - - end) - end, - }) |