init.lua 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. local S
  2. if minetest.get_modpath("intllib") then
  3. S = intllib.Getter()
  4. else
  5. S = function(s,a,...)a={a,...}return s:gsub("@(%d+)",function(n)return a[tonumber(n)]end)end
  6. end
  7. advtrains.register_wagon("moretrains_railroad_car", {
  8. mesh="moretrains_railroad_car.b3d",
  9. textures = {"moretrains_railroad_car.png"},
  10. drives_on={default=true},
  11. max_speed=20,
  12. seats = {
  13. {
  14. name="1",
  15. attach_offset={x=-4, y=-2, z=8},
  16. view_offset={x=0, y=-2, z=0},
  17. group="pass",
  18. },
  19. {
  20. name="2",
  21. attach_offset={x=4, y=-2, z=8},
  22. view_offset={x=0, y=-2, z=0},
  23. group="pass",
  24. },
  25. {
  26. name="1a",
  27. attach_offset={x=-4, y=-2, z=0},
  28. view_offset={x=0, y=-2, z=0},
  29. group="pass",
  30. },
  31. {
  32. name="2a",
  33. attach_offset={x=4, y=-2, z=0},
  34. view_offset={x=0, y=-2, z=0},
  35. group="pass",
  36. },
  37. {
  38. name="3",
  39. attach_offset={x=-4, y=-2, z=-8},
  40. view_offset={x=0, y=-2, z=0},
  41. group="pass",
  42. },
  43. {
  44. name="4",
  45. attach_offset={x=4, y=8, z=-8},
  46. view_offset={x=0, y=-2, z=0},
  47. group="pass",
  48. },
  49. },
  50. seat_groups = {
  51. pass={
  52. name = "Passenger area",
  53. access_to = {},
  54. require_doors_open=true,
  55. },
  56. },
  57. doors={
  58. open={
  59. [-1]={frames={x=0, y=10}, time=1},
  60. [1]={frames={x=20, y=30}, time=1}
  61. },
  62. close={
  63. [-1]={frames={x=10, y=20}, time=1},
  64. [1]={frames={x=30, y=40}, time=1}
  65. }
  66. },
  67. door_entry={-1.7},
  68. assign_to_seat_group = {"pass"},
  69. visual_size = {x=1, y=1},
  70. wagon_span=2.94,
  71. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  72. drops={"default:steelblock"},
  73. }, S("Railroad Car"), "moretrains_railroad_car_inv.png")
  74. minetest.register_craft({
  75. output = 'advtrains:moretrains_railroad_car',
  76. recipe = {
  77. {'default:steelblock', 'default:tin_ingot', 'default:steelblock'},
  78. {'dye:dark_green', 'default:glass', 'dye:blue'},
  79. {'advtrains:wheel', '', 'advtrains:wheel'},
  80. },
  81. })
  82. advtrains.register_wagon("moretrains_diesel_german", {
  83. mesh="moretrains_diesel_german.b3d",
  84. textures = {"moretrains_diesel_german.png"},
  85. drives_on={default=true},
  86. max_speed=20,
  87. seats = {
  88. {
  89. name=S("Driver Stand (right)"),
  90. attach_offset={x=0, y=-1.4, z=-7.2},
  91. view_offset={x=2, y=0.2, z=-8},
  92. driving_ctrl_access=true,
  93. group = "dstand",
  94. },
  95. },
  96. seat_groups = {
  97. dstand={
  98. name = "Driver Stand",
  99. access_to = {},
  100. driving_ctrl_access = true,
  101. },
  102. },
  103. assign_to_seat_group = {"dstand"},
  104. visual_size = {x=1, y=1},
  105. wagon_span=2.8,
  106. is_locomotive=true,
  107. collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
  108. drops={"default:steelblock 4"},
  109. horn_sound = "advtrains_industrial_horn",
  110. }, S("Old German Diesel"), "moretrains_diesel_german_inv.png")
  111. minetest.register_craft({
  112. output = 'advtrains:moretrains_diesel_german',
  113. recipe = {
  114. {'default:glass', 'dye:red', ''},
  115. {'default:steelblock', 'advtrains:driver_cab', 'default:steelblock'},
  116. {'advtrains:wheel', 'advtrains:wheel', 'advtrains:wheel'},
  117. },
  118. })