Commit Graph

334 Commits (9d7b21c451ac5ae9475236814f33e5627061ece1)

Author SHA1 Message Date
orwell96 7507dbba3a Add train_operator privilege check on discouple 2018-01-09 22:04:25 +01:00
orwell96 79da249c3d Add bord computer to trains
Features:
- couple/decouple trains from a driver stand
- new couple lock system (owner based, overridable by 'train_remove' privilege)
- all train operators can now change the inside/outside text, allows for multilines
Accessible via right-click menu or by pressing Sneak+Jump keys
2018-01-09 21:30:56 +01:00
orwell96 33a8f0f570 Move driving_ctrl_access property to seat group
there's now a more strict check for the train_operator privilege
Also added custom reasons on getting on a train.
2018-01-09 18:30:29 +01:00
orwell96 ae88f29481 Don't use looped sounds on subway
(causes engine bugs with dangling sound handles)
2018-01-07 20:52:15 +01:00
orwell96 1f26781b6a Change controls for trains (again) 2018-01-07 20:41:48 +01:00
orwell96 07442cfe8f Decrease the amount of garbage saved in save files 2018-01-07 19:00:43 +01:00
orwell96 e3b7046968 Remove path invalidation statement.
Caused problems on multiple detector rails in a row, because paths got cleared in-between a train step
Also optimize some code
2017-12-18 23:44:01 +01:00
orwell96 8a51a10a61 Fix detector lookup in ATC rails 2017-12-18 23:26:01 +01:00
orwell96 09838252fe Do not spam the server chat with messages from /at_sync_ndb and trains going off_track
The off-track warning has moved into the info text of wagons
2017-12-18 23:20:29 +01:00
orwell96 46c4447da0 Rewrite rail connection system...
...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)
2017-12-18 23:09:23 +01:00
orwell96 faa60e2bd4 Use preferred rail orientation algorithm also for double connections 2017-12-18 12:39:38 +01:00
orwell96 cd0aaa53a0 Move train_load() function into advtrains_train_track 2017-12-18 12:21:54 +01:00
orwell96 e9c51dfab4
Make sure an old_velocity is always passed
Fixes crash on placing a new subway wagon
2017-12-06 21:27:04 +01:00
orwell96 dc67ff7226 Implement sound api and some sounds
- Level crossing bell
- Horns
- Subway train driving and door sounds
...to be continued...
2017-12-06 13:23:55 +01:00
orwell96 83df46d786 Change name of update_animation function
I will use this for sounds, and so it needs to be changed to a more general name
2017-11-29 17:20:46 +01:00
orwell96 7681de96c9
remove superfluous parameter
... from update_trainpart_properties call
Prohibits flipping of all wagons when extent_h wasn't set
2017-11-27 17:46:01 +01:00
orwell96 a3d3520fdb Do not modify rails that should not be modified
... 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)
2017-11-24 12:31:46 +01:00
orwell96 ef076d6435 Merge branch 'master' of https://github.com/orwell96/advtrains 2017-11-24 12:07:23 +01:00
orwell96 3d29635a8f Correct yaw to preferred rail direction calculation 2017-11-24 12:06:46 +01:00
orwell96 7ea41df5d9
Preserve the player's looking direction
Contributed by @gpcf
2017-11-23 19:59:21 +01:00
orwell96 d78d07589d Add modifiable wagon extents
This will be required for advcarts
2017-11-23 17:00:39 +01:00
orwell96 5fc6cc7f5b Fix multiple track types not working simultaneously
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.
2017-11-22 23:13:42 +01:00
orwell96 2d4833b5a8 do not register wagons in the advtrains namespace automatically
One step towards advcarts compatibility
2017-11-22 22:16:08 +01:00
orwell96 409e2125c9 Make trackplacer align rails by any tracks, not just by tracks with the same 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)
2017-11-22 20:46:36 +01:00
orwell96 ce73643b10
Do not punch signs
For some reason, a sign text gets removed by a train when it drives by.
This should fix it.
2017-11-14 23:16:08 +01:00
orwell96 17ee62dc64
Fix occasional crash in discouple on_punch
I think the issue is caused by the new animal damage code...
2017-11-14 22:08:56 +01:00
orwell96 480011c781
Fix entity damage
Animals from mobs weren't damaged because they have the immortal group set.
Instead, we check for the existence of "fleshy".
2017-11-02 18:00:38 +01:00
orwell96 9294e770ca Change name of the node database group in order to clone node database code 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.
2017-10-31 13:52:32 +01:00
orwell96 cac7753158 Punch non-player objects when they get overridden by a train. 2017-10-25 14:04:20 +02:00
orwell96 3659fa9e63 Fix subway train placer 2017-10-25 13:31:01 +02:00
orwell96 c5256fb3aa Some workaround fixes for Linuxworks server
Trains no longer get deleted when there's no rail
Fast item to create subway train
2017-10-25 12:34:49 +02:00
orwell96 f1a8b4f505 Implement multi-occupation in detector.on_node table to finally fix collisions 2017-10-25 11:49:34 +02:00
orwell96 1f9a9062e0 Replace many math.floor(x+0.5) calls (or math.floor calls that should be those) by custom atround() function 2017-10-25 10:51:19 +02:00
orwell96 c67770833b Fix coupling and collisions in certain cases
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
2017-10-25 10:33:41 +02:00
Gabriel Pérez-Cerezo f228e2d30e Moved default train track to separate mod, for integration with advcarts. 2017-10-25 09:52:10 +02:00
orwell96 291da56aa2 Fix last commit 2017-10-23 14:02:40 +02:00
orwell96 850d8ac570 Fix continous object_property modification
This problem caused flickering of door animations on subways.
2017-10-23 13:56:59 +02:00
Gabriel Pérez-Cerezo 11d6a12ce7 Set wagon line number 2017-10-23 13:40:20 +02:00
orwell96 be771d9413 Prefer saved nodedb node before node loaded from map
Possibly fixes bug on linuxworks server.
2017-10-11 12:45:37 +02:00
orwell96 6ade65b6d6 Merge remote-tracking branch 'lemon-melon-repo/master' 2017-10-11 12:32:23 +02:00
orwell96 0dfb0fce22 Do not crash when train_pos is nil while checking wagon entity loading 2017-10-11 11:53:14 +02:00
orwell96 b6a5620cd3 Fix error cascade due to inexistent drb_dump when debugging is disabled 2017-10-11 11:22:35 +02:00
rubenwardy d65c4916ce Remove zip release files, move mod to root, exclude assets from Makefile (#92) 2017-09-20 18:05:04 +02:00
MBB b75c83ea43 Merge PR from mbb - Improve models and textures 2017-08-24 19:26:40 +02:00
Gabriel Pérez-Cerezo 9826161a14 Added command to reroute trains 2017-08-15 14:35:42 +02:00
Gabriel Pérez-Cerezo c894dee7ef Fixed #86 2017-08-15 14:35:41 +02:00
lemon-melon c184c00f26 Add speed as number in km/h to train hud 2017-07-15 16:04:08 +01:00
lemon-melon efc319f877 Add m/s to km/h helper function 2017-07-15 16:01:15 +01:00
orwell96 a34ff7664a Add command to throw all players out of trains, fixes #78 2017-06-12 21:13:53 +02:00
orwell96 05704ac016 Fix broken door animations caused by continuous set_object_properties() messages sent to client
... which each time caused the animation to be reset
2017-06-08 14:20:40 +02:00
orwell96 af46d180f8 lower capacity of freight cars 2017-06-08 11:13:53 +02:00
orwell96 3abd0f0e34 Change log level of save_all message to atprint() 2017-06-08 11:07:45 +02:00
orwell96 e1fce28fac Do not clear the F table when running the init code fails 2017-06-08 11:05:24 +02:00
orwell96 d78450bb7c Merge pull request #67 from AntumDeluge/settings
Replace deprecated methods
2017-06-08 10:52:36 +02:00
AntumDeluge f6b00f882c Check if 'digtron' global exists before calling in condition:
Fixes 'Undeclared global variable "digtron"'.
2017-06-07 17:38:25 -07:00
AntumDeluge 7db4a5f039 Replace deprecated methods:
- 'setting_get' with 'settings:get'
- 'setting_getbool' with 'settings:get_bool'
2017-06-07 03:53:52 -07:00
gpcf 92af0b53e5 Add loading/unloading rails (#63)
Pull request by gpcf
Will update zip file with next release
2017-05-31 21:32:05 +02:00
orwell96 93250ca3a2 Fix still broken ndb restoring, and make sid() honor nil values 2017-05-31 15:55:45 +02:00
orwell96 ca6989b560 Fix detector rails changing to default orientation
Release 1.8.1
2017-05-30 15:19:24 +02:00
orwell96 b8a3ac038f Re-add option for debugging features and add option to disable collisions 2017-05-30 15:16:56 +02:00
orwell96 5ebadbd6ff Fix collision bug (trains driving through each other) 2017-05-30 14:55:41 +02:00
orwell96 e484654f89 Re-add debug ring buffer and print its contents on a lua crash
When the crash on linuxworks has been fixed, the ringbuffer will go into master and behind an option
also fix last commit
2017-05-30 09:20:01 +02:00
orwell96 74c8784b21 Fix command + Update zip file - Version 1.8 2017-05-22 16:18:24 +02:00
orwell96 d22b9fb011 Add Digtron compatibility
Override digtron's item-place function to be able to place tracks with digtrons.
2017-05-22 15:44:25 +02:00
orwell96 9132c5d996 Fix some 'undeclared assignment' warnings 2017-05-22 15:13:43 +02:00
orwell96 0f14562112 Fix Syntax Error 2017-05-22 15:08:10 +02:00
orwell96 d85f95ad10 Fix issue #40
Was caused by arrowconn not being set. Instructs user to revisit.
2017-05-22 15:01:38 +02:00
orwell96 5fe0ba1f24 Remove the debug setting 2017-05-22 14:59:35 +02:00
orwell96 b6cbc36192 Fix a series of bugs
- Prevent min_iot from becoming a comma value, which caused a major problem on the linuxworks server
- Fix previous commit
- also restore the nodedb file after a crash
Other changes:
- add chatcommand to update the nodedb after using WorldEdit
2017-05-22 14:56:41 +02:00
orwell96 2f2a859e08 Don't invoke conway on a path item that has been over-generated
This breaks ATC systems that are based on wronly switched switches, but fixes a series of bugs (esp. setting train recovery positions at a place where no tracks are)
2017-05-15 12:46:58 +02:00
orwell96 da884afbb1 write the saved nodedb state back to the map when restoring after a crash
also, print a complete stack trace when an error happens
also, don't replace nodes in the nodedb when worldedit has been used
2017-05-12 21:57:51 +02:00
orwell96 5aaf493cef Remove pos_to_string whereever possible to prevent crashes 2017-05-12 19:59:42 +02:00
orwell96 dbe13e67f1 Relicensing media under CC-BY-SA 2017-05-04 16:50:44 +02:00
orwell96 28717b4d65 Performance improvements: Don't clear paths unless absolutely necessary
instead delete path elements that are too far from the train one-by-one
Also when switching a switch or changing rails, only clear train paths of trains that are nearby.
2017-05-03 16:31:13 +02:00
orwell96 0c7144bcc4 Merge nocrash branch into master and merging it with the unified functions so that restoring works how it should
Also fix minor bugs and an occasional crash with couples
2017-04-29 19:44:43 +02:00
orwell96 331db7ba5f Unify globalstep, load and save of all components into single functions 2017-04-29 19:13:15 +02:00
orwell96 f42b01c74b Add pcall wrapper to prevent server crashes when advtrains throws an error
Instead, read save files again and restore state before the crash
Rebased to latest commit
2017-04-29 14:53:00 +02:00
orwell96 337db2a573 Add Andrew's Cross 2017-04-27 15:33:40 +02:00
orwell96 64dcbad3d2 Fix bug introduced by last commit (revert change) 2017-04-12 15:11:44 +02:00
orwell96 fe8794b353 Add privilege for basic train operation.
This privilege is granted to singleplayer by default, but is not granted on servers. This prevents unexperienced or evil players from breaking automatic train operation on servers.
2017-04-09 15:17:51 +02:00
orwell96 4ea222fd6a record_protection_violation: fix player name not being passed 2017-04-07 23:06:02 +02:00
orwell96 e795f51293 Fix #59 2017-04-05 13:35:39 +02:00
orwell96 0447e43be9 Actually check for protection when placing trains and use the train_place privilege 2017-04-02 17:07:58 +02:00
orwell96 327b12d488 Assert some variable types obtained from lua automation 2017-03-30 22:17:54 +02:00
orwell96 606c129f57 Add support to display text to passengers and on the outside of the train
Outside is currently displayed as infotext. TODO: signs-like draw it on the wagon
FIXME: When object properties are set, for some reason the animation restarts
2017-03-30 21:51:45 +02:00
orwell96 b5a5d9035f Respect protection_bypass privilege, fix crash with areas and properly record protection violations 2017-03-30 21:21:03 +02:00
orwell96 a091ac2e1d Fix privilege enforcement being useless
Privilege violations caused an error message but didn't abort the operation
2017-03-16 22:04:32 +01:00
orwell96 ba0e75a692 Fix Atc arrows pointing into wrong direction 2017-03-12 19:27:40 +01:00
orwell96 dab50fe064 Screw buttonlike rules for wall signals and use regular rules. 2017-03-12 12:19:18 +01:00
orwell96 e9fb8f9f1b Redo rail models
Use multiple textures for slope objects, include mbb's rail textures and make curves and switches look better. Also add cable template.
2017-03-12 12:19:18 +01:00
orwell96 0dd40c2434 Don't drop items in creative mode when player gets overrun by train 2017-03-11 22:19:01 +01:00
orwell96 4187d2504c "Sneak" instead of "Shift" for the sneak key 2017-03-09 13:22:11 +01:00
orwell96 1137dad2fe Update manual and include everything in repo 2017-03-09 12:05:50 +01:00
orwell96 272c7b1390 Improve debug outputs of couples and increase maximum distance 2017-03-03 10:56:58 +01:00
orwell96 71ff39637f Only get on by walking in when there's a platform, improve get off handling 2017-02-28 16:25:32 +01:00
orwell96 d51a00c823 Add passive component naming 2017-02-28 14:38:59 +01:00
orwell96 aa2ec0fc03 Add ceiling-mounted signal
This is the wall signal as ceiling variant. Because the trackdb can only save 4 rotation values, we need a ceiling version of this.
2017-02-28 13:39:38 +01:00
orwell96 be1ac1e68e Fix collision issues 2017-02-21 11:39:13 +01:00
orwell96 3b354fb085 Also check positions on high platforms at entering doors 2017-02-21 11:38:17 +01:00
orwell96 56cbfc2c85 Only place rails on solid nodes 2017-02-21 11:02:25 +01:00
orwell96 6b5f5ea345 Fix manual operation of mesecon switches 2017-02-20 11:31:14 +01:00
orwell96 e4e76322ba Fix crash when ATC rail exists but no command is saved.
Crash was caused by a concatenation for a debug message. atprint can handle nil if passed as separate parameter
Setting the train's atc command to nil just means that there is no command.
2017-02-20 11:14:37 +01:00
orwell96 e97287614c don't pass unexistant variable to train_step_b (fixes #46) 2017-02-17 15:30:34 +01:00
orwell96 38fecddff9 use mesecons_switch as correct dependency for luaautomation 2017-02-15 21:29:34 +01:00
orwell96 5eac1d1d27 fix crash on seatpc nil 2017-02-15 21:19:30 +01:00
orwell96 5b7a06fe0f fix #34 - end_index not set when step_a returned in phase 2 2017-02-15 19:45:43 +01:00
orwell96 3f382974b8 Proper implementation for getting on by walking into train, rework damage and player controls in train, fix death and join bugs, do not spawn bones on death 2017-02-09 00:13:36 +01:00
orwell96 4abb967f92 Merge PR from gpcf (Get on by walking in) 2017-02-07 22:10:48 +01:00
orwell96 9f862a158c Use identical proxy environment with swapped metatable to not having to setfenv every function in F. 2017-02-07 22:06:39 +01:00
orwell96 3f54727e4f Check if node is actually loaded before querying get_meta()
Known to cause a segfault in engine sometimes.
2017-02-05 22:54:31 +01:00
orwell96 d84c23f084 Do not invalidate paths unnecessarily
Recomputing paths needs time and computing power, so do this only when really necessary
2017-02-05 20:41:31 +01:00
orwell96 648e501f46 Fix "lock couples" checkbox on wagon properties form 2017-02-05 20:14:37 +01:00
orwell96 b31229d62e Fix ATC components being randomly ignored by trains.
Also add warnings to off_track stuff
Also pack for release
2017-02-05 17:57:46 +01:00
Gabriel Pérez-Cerezo 746e328b7b
Merge branch 'master' of https://github.com/orwell96/advtrains 2017-02-05 16:32:53 +01:00
orwell96 c79be69aef Fix itrainmap 2017-02-05 13:21:06 +01:00
orwell96 af14d57557 Fix LuaAtc Interrupt saving
The timer was loaded, but not saved, leading to it being counted from 0 upwards every restart, which of course broke interrupts.
2017-02-05 12:42:39 +01:00
orwell96 d4975a7003 Even more bugfixes
- add translations of all index values to invert_train
- fix on_leave_node callbacks not being called when train reverses
- fix callbacks on train creation and destruction
- Fix warning when saving ATC rail info
2017-02-04 21:09:20 +01:00
orwell96 61e48fff28 Commit 1.6.2
- Add some more stuff to API for LuaATC rails
- Warn on strange events even if debug info is disabled
- save atlatc on shutdown too
- fix detector rails in unloaded chunks
- do not fail silently in simple ATC rails
2017-02-04 18:35:34 +01:00
orwell96 b3ce833df8 fix up stuff in itrainmap 2017-02-03 20:43:46 +01:00
orwell96 328d5054a1 Revert change to node pos hashes, and rewrite trackdb to use individual coordinates
The precision of integers was not sufficient for saving pos node hashes in most cases, leading to strange bugs.
This fixes broken ATC rails, broken LuaAutomation stuff and trackdb on Windows.
Probably also fixes trains randomly stopping.
2017-02-03 20:40:30 +01:00
orwell96 a72dda17be Add quick position lookup by punching nodes 2017-02-03 15:40:44 +01:00
orwell96 f74ef2a456 add wallmounted light signal 2017-02-03 14:14:45 +01:00
orwell96 82efe2e773 Fix itrainmap not working 2017-02-03 10:27:34 +01:00
orwell96 4882abb1c0 Merge PR from mbb: add better textures and crafts 2017-02-02 23:07:09 +01:00
mbblp 54b78023d7 add better textures and crafts 2017-02-02 23:06:24 +01:00
orwell96 bcf82ed70d Add documentation and pack for release 2017-02-02 22:26:43 +01:00
orwell96 948482a99e LuaAutomation: Add interrupt to the ingame API and implement initialization code handling and env management 2017-02-02 21:14:20 +01:00
orwell96 b19033b224 LuaAutomation - Basic component implementation
Implements the base code for LuaAutomation, an ATC rail and a punch-operated 'operation panel' as well as interface for passive components.
Changes in advtrains code where neccessary.
Supported passive components are light signals, switches and mesecon switches
2017-02-02 17:17:39 +01:00
orwell96 a8f9e3d43e Fix collision to work with pos node hashes 2017-02-02 16:39:16 +01:00
orwell96 f6d1157ba1 Lua automation - initial incomplete coding 2017-02-02 00:02:11 +01:00
orwell96 78e936bea7 Replace all table indices that were pos_to_string strings with node hashes.
Lua table string lookup consumes about 10 times more time than numeric indices
2017-01-31 20:52:02 +01:00
orwell96 01f0d2c445 Join itrainmap mod into the modpack 2017-01-31 20:36:38 +01:00
orwell96 3ca1115142 Remove lua_atc from advtrains main mod. 2017-01-31 20:36:03 +01:00
orwell96 1648de4114 Limit dtime to prevent trains moving too far in a single step
and update zip
2017-01-29 21:50:11 +01:00
orwell96 90390dfc98 Add getter calls for raw nodedb
(required for itrainmap mod)
2017-01-29 21:24:40 +01:00
orwell96 4b63e8d9d6 Fix wagon properties not saved on button click 2017-01-29 21:24:03 +01:00
Gabriel Pérez-Cerezo bfd24ee43a
Found out why collision box does not fit train 2017-01-29 12:52:51 +01:00
Gabriel Pérez-Cerezo 5f01cd2d5a
Added getting on and off by walking in and out. Default seat on subway is now passenger seat. 2017-01-29 12:37:47 +01:00
orwell96 724b03abb9 Fix a crash, update translations and zip file 2017-01-28 17:58:19 +01:00
orwell96 83c859b13a Multiple major changes:
- implement wagon properties and seat group access check
- fix a server warning about unassigned variable
- refill advtrains.detector.on_node every step
- reorder train step function(s):
  - fixed bug that some atc rails were not recognized
  - saving some extra calculations
  - integrate path prediction directly to step functions and separate it
  (also see comment directly above train_step_a())
- add couple lock feature (can't couple or discouple from wagon with locked couples)
- ...
2017-01-28 16:46:24 +01:00
orwell96 262f425966 remove tunnelborer
better now than too late.
use 'digtron' for more realistic functionality.
2017-01-25 22:06:54 +01:00
orwell96 e322e00e3d Document door animation parameters 2017-01-25 21:55:40 +01:00
orwell96 54b566e7a7 Add forced get-on/off to prevent trains being unusable due to closed doors.
else you would be able to lock yourself out of trains or lock players in trains with no escape.
2017-01-25 21:38:08 +01:00
orwell96 ffc49f0972 Rewrite seating system
Players no longer need to worry where to sit down.
2017-01-25 21:23:54 +01:00
orwell96 bd0a4a51b8 Fix typo that caused crash 2017-01-25 12:26:43 +01:00
orwell96 edc7f1ec5f Fix find&replace mistake that broke ATC command interpretation 2017-01-24 21:10:53 +01:00
orwell96 29886d5657 Fix crash when train went off track 2017-01-24 20:41:37 +01:00
orwell96 a2d0b1b8f2 Create new models and textures for japanese train 2017-01-24 19:09:33 +01:00
orwell96 631e77b189 Do not recover wagons from minetest's static storage
Since missing wagons are spawned anyway by update_trainpart_properties, this only causes visible trouble when a train gets into loaded area. also avoids placing entities into unloaded terrain randomly.
2017-01-23 21:36:38 +01:00
orwell96 fac8b518c9 Add intllib support and German translation 2017-01-23 21:29:59 +01:00
orwell96 203a36a5eb Merge branch 'master' of https://github.com/orwell96/advtrains 2017-01-19 20:36:00 +01:00
Gabriel Pérez-Cerezo 647b3c8a4c
Removed last occurrence of minetest.env 2017-01-18 23:28:23 +01:00
Gabriel Pérez-Cerezo fc67d4531a
Merged priv 2017-01-18 23:22:06 +01:00
orwell96 6060556796 Make signals work with the nodedb again 2017-01-18 21:19:03 +01:00
orwell96 7ab4154216 Add 'collision mercy' to get stuck trains out of walls.
Also change the collision logic so that the collision mercy can't be activated accidentally.
2017-01-18 20:51:47 +01:00
orwell96 f7dbd932ca Update manual 2017-01-18 19:04:02 +01:00
orwell96 f52b67a37c Add door controls and ATC commands 2017-01-18 19:03:27 +01:00
orwell96 d73289237e Make 'print debug messages' a setting 2017-01-18 17:50:40 +01:00
orwell96 ea01c9605c Update readme.txt with contributions 2017-01-17 22:34:15 +01:00
orwell96 2f5ebd63c3 Add detailed steam engine contributed by mbb and Krokoschlange 2017-01-17 22:31:29 +01:00
orwell96 262826fb8c Correct view offset and wagon_span on new subway wagon 2017-01-17 22:22:30 +01:00
orwell96 b6e2aeea71 Add animation for steam engine
I needed to completely rewrite the animation because irrlicht couldn't handle the animation NathanS created.
2017-01-17 21:54:50 +01:00
orwell96 9c400f7d43 Model, animate, texture and integrate new subway wagon
engine follows!
2017-01-17 20:02:25 +01:00
orwell96 275579c364 Don't crash when wagons do not exist but show a warning instead 2017-01-17 15:29:37 +01:00
orwell96 b649ea5fe4 replace trackdb by nodedb
- trackdb is kept for large rail networks to still work but not saved anymore
- saving node name and param2 instead of track connections, so also signals can be saved.
- small serialization format
- fast access times, almost no redundancy
2017-01-16 20:09:37 +01:00
orwell96 dc8b47a066 Unite all save data (except the track database) into a single save file 2017-01-12 17:33:43 +01:00
orwell96 ddd42163be Prevent non-initialized wagons from accidentally polluting the world
sometimes wagons get created/loaded but are not initialized. These stand around and can't be removed.
Now if a wagon does not get initialized after 20 steps, something went wrong and the wagon is removed.
2017-01-10 22:54:10 +01:00
orwell96 c2a92608fa Fix restoring the detector.on_node table when paths get cleaned up 2017-01-10 22:44:27 +01:00
orwell96 0d2ec6f49a Clean up debug message code 2017-01-08 21:10:02 +01:00
orwell96 9bc069f825 Add fancy passenger wagon 2017-01-06 17:54:16 +01:00
orwell96 c0957b8a31 also print ATC reverse command warning
and move atc_command.txt at a better place
2017-01-04 21:49:16 +01:00
orwell96 bf68c6f0d5 Purge all debug messages and change 'print' function name to 'atprint'
Ready for 2.0 release.
2017-01-04 21:34:18 +01:00
orwell96 dd4e989639 update makefile to new circumstances 2017-01-04 21:25:32 +01:00
orwell96 400cb55bb0 Fix bug in track database
the entire database was broken due to a not removed indexing
2017-01-04 21:23:15 +01:00
orwell96 2d0b51b897 Restructure mod directory 2017-01-04 19:10:03 +01:00
orwell96 853a9e690e Add Automatic Train Control system 2017-01-04 12:02:00 +01:00
orwell96 a9d43ce2ca add API documentation 2017-01-03 18:48:00 +01:00
orwell96 cc6cf09ac8 make detector code clear entries of trains that do not exist 2017-01-02 18:54:24 +01:00
orwell96 79d0549c8a unify update_trainpart_properties and check_trainpartload 2017-01-02 18:40:49 +01:00
orwell96 2a924d086a fix discouple not disappearing and a logical mistake with owners 2017-01-02 13:55:25 +01:00
orwell96 8784ee41dd Do not duplicate definitions of 'print' in every file 2017-01-02 13:49:20 +01:00
orwell96 987cd5b7f0 spawn couple on train collision
also fix empty trains hanging around for too long
2016-12-31 15:16:19 +01:00
orwell96 d08e202346 remove train type concept and calculate train's capabilities based on used wagons 2016-12-22 18:55:10 +01:00
orwell96 f806ed9eee Turning mod into a modpack and separating the trains from the core mod 2016-12-20 14:17:39 +01:00