aboutsummaryrefslogtreecommitdiff
path: root/advtrains
Commit message (Collapse)AuthorAge
* Remove path invalidation statement.orwell962017-12-18
| | | | | Caused problems on multiple detector rails in a row, because paths got cleared in-between a train step Also optimize some code
* Fix detector lookup in ATC railsorwell962017-12-18
|
* Do not spam the server chat with messages from /at_sync_ndb and trains going ↵orwell962017-12-18
| | | | | | off_track The off-track warning has moved into the info text of wagons
* Rewrite rail connection system...orwell962017-12-18
| | | | | | | | | ...to support an arbitrary number of connections for rails, which leads to these new features: - switches now get recognized by the trackworker correctly - ability to add real rail crosses During this, I also rewrote the rail registering system and the conway function (important part of path prediction) Note, developers: the track preset format changed, you might need to rewrite them according to the presets in tracks.lua if you wrote your own (possibly breaks advcarts)
* Use preferred rail orientation algorithm also for double connectionsorwell962017-12-18
|
* Move train_load() function into advtrains_train_trackorwell962017-12-18
|
* Make sure an old_velocity is always passedorwell962017-12-06
| | | Fixes crash on placing a new subway wagon
* Implement sound api and some soundsorwell962017-12-06
| | | | | | | - Level crossing bell - Horns - Subway train driving and door sounds ...to be continued...
* Change name of update_animation functionorwell962017-11-29
| | | | I will use this for sounds, and so it needs to be changed to a more general name
* remove superfluous parameterorwell962017-11-27
| | | | ... from update_trainpart_properties call Prohibits flipping of all wagons when extent_h wasn't set
* Do not modify rails that should not be modifiedorwell962017-11-24
| | | | | | ... when placing tracks, such as slopes Fixes slopes being replaced by curves. Also, check the node below for connection (does not check rely, but that would be uneccessary)
* Merge branch 'master' of https://github.com/orwell96/advtrainsorwell962017-11-24
|\
| * Preserve the player's looking directionorwell962017-11-23
| | | | | | Contributed by @gpcf
* | Correct yaw to preferred rail direction calculationorwell962017-11-24
|/
* Add modifiable wagon extentsorwell962017-11-23
| | | | This will be required for advcarts
* Fix multiple track types not working simultaneouslyorwell962017-11-22
| | | | | | | Bug was caused by the drives_on table of every train and advtrains.all_tracktypes sharing the same reference, which caused advtrains.all_tracktypes to become the intersection of all train drives_on's in the world. However, this did become empty, causing nothing to work anymore.
* do not register wagons in the advtrains namespace automaticallyorwell962017-11-22
| | | | One step towards advcarts compatibility
* Make trackplacer align rails by any tracks, not just by tracks with the same ↵orwell962017-11-22
| | | | | | | nnpref This finally fixes the need to rotate atc rails and bumpers. Also prefers rotation that is closer to the player's look dir (placed bumpers will face the player)
* Do not punch signsorwell962017-11-14
| | | | For some reason, a sign text gets removed by a train when it drives by. This should fix it.
* Fix occasional crash in discouple on_punchorwell962017-11-14
| | | I think the issue is caused by the new animal damage code...
* Fix entity damageorwell962017-11-02
| | | | Animals from mobs weren't damaged because they have the immortal group set. Instead, we check for the existence of "fleshy".
* Change name of the node database group in order to clone node database code ↵orwell962017-10-31
| | | | | | into a library mod advtrains will keep its own node database code for reasons of crash recovery, with the handicap that improvements to nplib need to be manually backported.
* Punch non-player objects when they get overridden by a train.orwell962017-10-25
|
* Fix subway train placerorwell962017-10-25
|
* Some workaround fixes for Linuxworks serverorwell962017-10-25
| | | | | Trains no longer get deleted when there's no rail Fast item to create subway train
* Implement multi-occupation in detector.on_node table to finally fix collisionsorwell962017-10-25
|
* Replace many math.floor(x+0.5) calls (or math.floor calls that should be ↵orwell962017-10-25
| | | | those) by custom atround() function
* Fix coupling and collisions in certain casesorwell962017-10-25
| | | | | | If a train moved towards another train, and the other train's step was executed after the first one's, the trains did eventually not collide. Fix by moving the enter_node and collision check to step_b Also change some couple behavior
* Moved default train track to separate mod, for integration with advcarts.Gabriel Pérez-Cerezo2017-10-25
|
* Fix last commitorwell962017-10-23
|
* Fix continous object_property modificationorwell962017-10-23
| | | This problem caused flickering of door animations on subways.
* Set wagon line numberGabriel Pérez-Cerezo2017-10-23
|
* Prefer saved nodedb node before node loaded from maporwell962017-10-11
| | | | Possibly fixes bug on linuxworks server.
* Merge remote-tracking branch 'lemon-melon-repo/master'orwell962017-10-11
|\
| * Add speed as number in km/h to train hudlemon-melon2017-07-15
| |
| * Add m/s to km/h helper functionlemon-melon2017-07-15
| |
* | Do not crash when train_pos is nil while checking wagon entity loadingorwell962017-10-11
| |
* | Fix error cascade due to inexistent drb_dump when debugging is disabledorwell962017-10-11
| |
* | Remove zip release files, move mod to root, exclude assets from Makefile (#92)rubenwardy2017-09-20
| |
* | Merge PR from mbb - Improve models and texturesMBB2017-08-24
| |
* | Added command to reroute trainsGabriel Pérez-Cerezo2017-08-15
| |
* | Fixed #86Gabriel Pérez-Cerezo2017-08-15
|/
* Add command to throw all players out of trains, fixes #78orwell962017-06-12
|
* Fix broken door animations caused by continuous set_object_properties() ↵orwell962017-06-08
| | | | | | messages sent to client ... which each time caused the animation to be reset
* lower capacity of freight carsorwell962017-06-08
|
* Change log level of save_all message to atprint()orwell962017-06-08
|
* Do not clear the F table when running the init code failsorwell962017-06-08
|
* Merge pull request #67 from AntumDeluge/settingsorwell962017-06-08
|\ | | | | Replace deprecated methods
| * Replace deprecated methods:AntumDeluge2017-06-07
| | | | | | | | - 'setting_get' with 'settings:get' - 'setting_getbool' with 'settings:get_bool'
* | Check if 'digtron' global exists before calling in condition:AntumDeluge2017-06-07
|/ | | Fixes 'Undeclared global variable "digtron"'.
pan class="hl num">2, maxexptime = 4, minsize = 1, maxsize = 5, -- ^ 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={"default:steelblock 1"}, horn_sound = "advtrains_steam_whistle", glow = -1, --supposed to disable effect of light to texture color, so that the entity always appears as full-bright }, S("Detailed Steam Engine"), "advtrains_detailed_engine_steam_inv.png") advtrains.register_wagon("wagon_default", { mesh="advtrains_passenger_wagon.b3d", textures = {"advtrains_wagon.png"}, drives_on={default=true}, max_speed=10, seats = { { name="1", attach_offset={x=2, y=6, z=8}, view_offset={x=0, y=-4, z=0}, group="pass", }, { name="2", attach_offset={x=-1, y=6, z=8}, 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=0, z=0}, group="pass", }, { name="4", attach_offset={x=4, y=8, z=-8}, view_offset={x=0, y=0, z=0}, group="pass", }, }, seat_groups = { pass={ name = "Passenger area", access_to = {}, }, }, assign_to_seat_group = {"pass"}, visual_size = {x=1, y=1}, wagon_span=2.634, collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, drops={"default:steelblock 1"}, glow = -1, --supposed to disable effect of light to texture color, so that the entity always appears as full-bright }, S("Passenger Wagon"), "advtrains_wagon_inv.png") advtrains.register_wagon("wagon_box", { mesh="advtrains_wagon_box.b3d", textures = {"advtrains_wagon_box.png"}, drives_on={default=true}, max_speed=10, seats = {}, visual_size = {x=1, y=1}, wagon_span=2, collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, drops={"default:steelblock 1"}, has_inventory = true, get_inventory_formspec = function(self, pname, invname) return "size[8,11]".. "list["..invname..";box;0,0;8,3;]".. "list[current_player;main;0,5;8,4;]".. "listring[]" end, inventory_list_sizes = { box=8*3, }, glow = -1, --supposed to disable effect of light to texture color, so that the entity always appears as full-bright }, S("Box Wagon"), "advtrains_wagon_box_inv.png") minetest.register_craft({ output = 'advtrains:newlocomotive', recipe = { {'', '', 'advtrains:chimney'}, {'advtrains:driver_cab', 'dye:black', 'advtrains:boiler'}, {'advtrains:wheel', 'advtrains:wheel', 'advtrains:wheel'}, }, }) minetest.register_craft({ output = 'advtrains:detailed_steam_engine', recipe = { {'', '', 'advtrains:chimney'}, {'advtrains:driver_cab', 'dye:green', 'advtrains:boiler'}, {'advtrains:wheel', 'advtrains:wheel', 'advtrains:wheel'}, }, }) minetest.register_craft({ output = 'advtrains:wagon_default', recipe = { {'default:steelblock', 'default:steelblock', 'default:steelblock'}, {'default:glass', 'dye:dark_green', 'default:glass'}, {'advtrains:wheel', 'advtrains:wheel', 'advtrains:wheel'}, }, }) minetest.register_craft({ output = 'advtrains:wagon_box', recipe = { {'group:wood', 'group:wood', 'group:wood'}, {'group:wood', 'default:chest', 'group:wood'}, {'advtrains:wheel', '', 'advtrains:wheel'}, }, })