minetest-mm/mods/advtrains/advtrains/doc/advtrains_speed_set_restric...

19 lines
1.0 KiB
Markdown

% advtrains_speed_set_restriction(3advtrains) | Advtrains Developer's Manual
# NAME
`advtrains.speed.set_restriction`, `advtrains.speed.merge_aspect` - modify speed restriction
# SYNOPSIS
* `advtrains.speed.set_restriction(train, rtype, rval)`
* `advtrains.speed.merge_aspect(train, asp)`
# DESCRIPTION
The `advtrains.speed.set_restriction` function sets the speed restriction of type `rtype` of `train` to `rval` and updates the speed restriction value to the strictest speed restriction in the table, or `nil` if all speed restrictions are `nil` or `-1`. If the speed restriction table does not exist, it is created with the `"main"` speed restriction being the speed restriction value of `train`.
The `advtrains.speed.merge_aspect` function merges the main aspect of `asp` into the speed restriction table with the same procedure described above. If the signal aspect table does not provide the type of speed restriction, the restriction type `"main"` is assumed.
# SIDE EFFECTS
Both functions modify `train.speed_restriction` and `train.speed_restrictions_t`.