From aece9187bdfd88ec31f0f23b7b684fb374d06682 Mon Sep 17 00:00:00 2001 From: mbb Date: Mon, 31 Jul 2017 17:57:42 +0200 Subject: [PATCH] add wagon --- init.lua | 152 ++++++++++++++++++++------- models/advtrains_wagon_ny.b3d | Bin 0 -> 113014 bytes textures/advtrains_engine_ny_inv.png | Bin 0 -> 415 bytes textures/advtrains_wagon_ny_inv.png | Bin 0 -> 406 bytes 4 files changed, 114 insertions(+), 38 deletions(-) create mode 100644 models/advtrains_wagon_ny.b3d create mode 100644 textures/advtrains_engine_ny_inv.png create mode 100644 textures/advtrains_wagon_ny_inv.png diff --git a/init.lua b/init.lua index 3226142..ed7453f 100755 --- a/init.lua +++ b/init.lua @@ -20,23 +20,56 @@ advtrains.register_wagon("NY_lokomotive", { driving_ctrl_access=true, group = "dstand", }, --- { --- name=S("Driver Stand (right)"), --- attach_offset={x=5, y=10, z=-10}, --- view_offset={x=0, y=6, z=0}, --- driving_ctrl_access=true, --- group = "dstand", --- }, +{ + name="1", + attach_offset={x=-4, y=8, z=0}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="2", + attach_offset={x=4, y=8, z=0}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="3", + attach_offset={x=-4, y=8, z=-8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="4", + attach_offset={x=4, y=8, z=-8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, }, seat_groups = { dstand={ name = "Driver Stand", - access_to = {}, + access_to = {"pass"}, + require_doors_open=true, + }, + pass={ + name = "Passenger area", + access_to = {"dstand"}, + require_doors_open=true, }, }, - assign_to_seat_group = {"dstand"}, + assign_to_seat_group = {"dstand", "pass"}, + doors={ + open={ + [-1]={frames={x=0, y=20}, time=1}, + [1]={frames={x=40, y=60}, time=1} + }, + close={ + [-1]={frames={x=20, y=40}, time=1}, + [1]={frames={x=60, y=80}, time=1} + } + }, visual_size = {x=1, y=1}, - wagon_span=1.85, + wagon_span=4, collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, update_animation=function(self, velocity) if self.old_anim_velocity~=advtrains.abs_ceil(velocity) then @@ -44,34 +77,77 @@ advtrains.register_wagon("NY_lokomotive", { self.old_anim_velocity=advtrains.abs_ceil(velocity) end end, - custom_on_activate = function(self, staticdata_table, dtime_s) - minetest.add_particlespawner({ - amount = 10, - time = 0, - -- ^ If time is 0 has infinite lifespan and spawns the amount on a per-second base - minpos = {x=0, y=2, z=1.2}, - maxpos = {x=0, y=2, z=1.2}, - minvel = {x=-0.2, y=1.8, z=-0.2}, - maxvel = {x=0.2, y=2, z=0.2}, - minacc = {x=0, y=-0.1, z=0}, - maxacc = {x=0, y=-0.3, z=0}, - minexptime = 2, - maxexptime = 4, - minsize = 1, - maxsize = 4, - -- ^ The particle's properties are random values in between the bounds: - -- ^ minpos/maxpos, minvel/maxvel (velocity), minacc/maxacc (acceleration), - -- ^ minsize/maxsize, minexptime/maxexptime (expirationtime) - collisiondetection = true, - -- ^ collisiondetection: if true uses collision detection - vertical = false, - -- ^ vertical: if true faces player using y axis only - texture = "smoke_puff.png", - -- ^ Uses texture (string) - attached = self.object, - }) - end, + + drops={"advtrains:engine_ny"}, -}, S("NY Engine"), "advtrains_engine_ny_inv.png") +}, S("NY subway Engine"), "advtrains_engine_ny_inv.png") + +advtrains.register_wagon("ny_wagon", { + mesh="advtrains_wagon_ny.b3d", + textures = {"advtrains_engine_ny.png"}, + drives_on={default=true}, + max_speed=20, + seats = { + { + name="1", + attach_offset={x=-4, y=8, z=8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="2", + attach_offset={x=4, y=8, z=8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="1a", + attach_offset={x=-4, y=8, z=0}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="2a", + attach_offset={x=4, y=8, z=0}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="3", + attach_offset={x=-4, y=8, z=-8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + { + name="4", + attach_offset={x=4, y=8, z=-8}, + view_offset={x=0, y=-4, z=0}, + group="pass", + }, + }, + seat_groups = { + pass={ + name = "Passenger area", + access_to = {}, + require_doors_open=true, + }, + }, + assign_to_seat_group = {"pass"}, + doors={ + open={ + [-1]={frames={x=0, y=20}, time=1}, + [1]={frames={x=40, y=60}, time=1} + }, + close={ + [-1]={frames={x=20, y=40}, time=1}, + [1]={frames={x=60, y=80}, time=1} + } + }, + door_entry={-1, 1}, + visual_size = {x=1, y=1}, + wagon_span=2.3, + collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, + drops={"advtrains_wagon_ny"}, +}, S("NY subway wagon"), "advtrains_wagon_ny_inv.png") diff --git a/models/advtrains_wagon_ny.b3d b/models/advtrains_wagon_ny.b3d new file mode 100644 index 0000000000000000000000000000000000000000..cea892cb9f9953ca2fba9e9e55c7af9d2a27cebc GIT binary patch literal 113014 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 BvH}1A literal 0 HcmV?d00001 diff --git a/textures/advtrains_engine_ny_inv.png b/textures/advtrains_engine_ny_inv.png new file mode 100644 index 0000000000000000000000000000000000000000..0fa59f273606b5e941f0384bed0bf86ab130c459 GIT binary patch literal 415 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPtyF9-+r>Eeu&p;vB%#er@=ltB<)VvZPmw~~#C^fMp zHASI3vm`^o-P1Q9MK6_|fq{|P)5S5w;`G~zj(LX+1YGa$P}vx)cx11@_ZOSQUpQ8E zdWnfQDl2TvogjX2qvB;(rzu@tdl@$WiqALsb-(So4SUM}zPe@RE-m}st0(l#{1bD3 z?P_cPjTA~w*?#-vp95)|1G9BCRp0Ht z_ggXf_BIpW=I?P%97iPN|5+dN;9z{e*TmQP_BMt;3~bk@ywE-@asU)gp00i_>zopr E0BOUfvj6}9 literal 0 HcmV?d00001 diff --git a/textures/advtrains_wagon_ny_inv.png b/textures/advtrains_wagon_ny_inv.png new file mode 100644 index 0000000000000000000000000000000000000000..a24d85296438d30f3d1a7959465d9076afa39758 GIT binary patch literal 406 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPtyF9;z%;J!^>p&sd%#er@=ltB<)VvZPmw~~#C^fMp zHASI3vm`^o-P1Q9MK6^dDE`aS#WBR<^xKJ!d4~)HT<`Bt*%-Xh;Za0KbI6=?kCX~n zRJQScQnD~h*`*M%a>W&HgVq1P9=rD6Y|nFBh23|juhLRFWYNbek=!-^_44|8k!!AJ zC;0@0%3Ja5)G_rvYLGJX3-{@tde^RHd5H)zOgrsA^Y{N5ma=^o*H?5bSQVqUFeEE_ zb#C_mlyjz4Rx*(_^UpK%tXiTtHLo-{@rX~33UB4HtTR)RF0Kh%^5;eQ?)!mPJ)g&~ zU#qpWZ|7Zx6PC&hx8H`%Esj|q{%V)nu@iOsr~hP~eb#O5)+JLa-c`Mqm;AkN`D?2^ v--VnMj{W#_-_Xs8qvHM2*H*vwu|Hr>UpIYa;*3{*py2Uz^>bP0l+XkKRTrkj literal 0 HcmV?d00001