aboutsummaryrefslogtreecommitdiff
path: root/advtrains
diff options
context:
space:
mode:
Diffstat (limited to 'advtrains')
-rw-r--r--advtrains/api_doc.txt3
-rw-r--r--advtrains/init.lua2
-rw-r--r--advtrains/trainlogic.lua2
3 files changed, 6 insertions, 1 deletions
diff --git a/advtrains/api_doc.txt b/advtrains/api_doc.txt
index 6b338a7..faaac7c 100644
--- a/advtrains/api_doc.txt
+++ b/advtrains/api_doc.txt
@@ -72,6 +72,9 @@ advtrains.register_wagon(name, prototype, description, inventory_image)
^- optional. If defined, defines the locations of the doors on the model as distance from the object center on the path.
^- Getting on by walking in then takes effect.
^- Positive values mean front, negative ones back. Resulting position is automatically shifted to the right side.
+ door_operation_time = 2
+ ^- Time in seconds specifying how long opening/closing the doors takes. The maximum of this value is used
+ ^- by the stop rail (and possibly ATC) to wait for closing the doors before departure. Default is 1 second.
coupler_types_front = {scharfenberg=true},
coupler_types_back = {chain=true},
diff --git a/advtrains/init.lua b/advtrains/init.lua
index cd63104..86bd240 100644
--- a/advtrains/init.lua
+++ b/advtrains/init.lua
@@ -496,7 +496,7 @@ advtrains.avt_save = function(remove_players_from_wagons)
"text_outside", "text_inside", "line", "routingcode",
"il_sections", "speed_restriction", "speed_restrictions_t", "is_shunt",
"path_ori_cp", "autocouple", "atc_wait_autocouple", "ars_disable",
- "staticdata",
+ "staticdata", "line_status",
})
--then save it
tmp_trains[id]=v
diff --git a/advtrains/trainlogic.lua b/advtrains/trainlogic.lua
index c0ac179..559c029 100644
--- a/advtrains/trainlogic.lua
+++ b/advtrains/trainlogic.lua
@@ -1048,6 +1048,7 @@ function advtrains.update_trainpart_properties(train_id, invert_flipstate)
--FIX: deep-copy the table!!!
train.max_speed=20
train.extent_h = 0;
+ train.door_operation_time = 1
local rel_pos=0
local count_l=0
@@ -1088,6 +1089,7 @@ function advtrains.update_trainpart_properties(train_id, invert_flipstate)
train.max_speed=math.min(train.max_speed, wagon.max_speed)
train.extent_h = math.max(train.extent_h, wagon.extent_h or 1);
+ train.door_operation_time = math.max(train.door_operation_time, wagon.door_operation_time or 2)
end
end
train.trainlen = rel_pos