TrainCarts/Signs/Property

From BergerHealer Wiki
Jump to navigation Jump to search
Other languages:
English

« Go back


Introduction

Property signs can perform the same tasks as you can do through commands, but then automated. They require redstone power to function and ignore cart ownership, so if you only want it to target trains you own, combine it with a switcher sign checking for owners.


Syntax

Signtemplate.png
[train]
property
speedlimit
1.5


Second line: property

Third line: the property name to change

Fourth line: the value to set the property to

Boolean Statements

Property 'playerenterexit' is controlled using the lever

Boolean properties like playerenter and slowdown can be set using a statement to evaluate true/false. This makes it much easier to toggle something on or off with redstone, or based on another property of the train.

Remote Control

Remote Control You can remotely set properties on trains. Say your train is called train01, then you use the following on the sign:

Signtemplate.png
[train train01]
property
maxspeed
0.4


Properties

The following properties can be set using both [cart] and [train]:

Property Value example Meaning
addtag
tag1
Add a single tag
settag
taga
Set to a single tag
remtag a Remove a single tag
addowner
Maxxue
Add an owner to the train
setowner
Maxxue
Clear all owners and set to this owner
remowner Maxxue Remove a single owner from the train
destination station2 Set the destination
mobenter false Set if mobs can enter
playerenter true Set if players can enter
playerexit yes Set if players can exit
playerenterexit
playerexitenter
yes Sets both playerenter and playerexit at the same time to the same value.
spawnitemdrops
spawndrops
killdrops
true Sets whether carts drop items when destroyed.
When disabled, also disables contents of chest/hopper minecarts dropping.

The following properties can only be set using [train]:

Property Value example Meaning
name
setname
rename
Intercity#A Sets a new name on the train. The #-sign is replaced with a number 1 to infinity.
dname
setdname
displayname
setdisplayname
Trainname Sets the display name used with trigger signs (%triggernameN%)
exitoffset
exityaw
exitpitch
exitrotation
2/0/0
30
0
90
Change player exit offset, yaw, pitch and rotation.
speedlimit
maxspeed
0.6 The maximum allowed speed the train can go
pushing<ref name="collision">Old syntax for compatibility. Replaced by typecollision. See Collision modes</ref> false Set if the train pushes mobs, players, trains and misc
pushmobs<ref name="collision"/> true Set if the train pushes mobs
pushplayers<ref name="collision"/> no Set if the train pushes players
pushmisc<ref name="collision"/> yes Set if the train pushes misc (items, boats, etc.)
playercollision
mobcollision
traincollision
misccollision
default
cancel
kill
killnodrops
push
enter
link
Set a collision mode for the train against players, mobs, trains or other types of entities.
slowdown false Set if the train slows down, either by gravity or by friction
slowfriction false Set if the train slows down due to friction
slowgravity false Set if the train slows down, or speeds up, due to gravity
gravity 1.0 Changes the acceleration and deceleration due to gravity (multiplier, 1.0 is default)
linking deny Set if the train can link with other trains
collision allow Set if the train can collide with other entities
keepcloaded
loadchunks
keeploaded
true Set if the train keeps nearby chunks loaded
default
setdefault
stat1def Load one of the default train properties found in
DefaultTrainProperties.yml into this train
banking 1 0 Change the banking (First number: Strength, Second number: Smoothness)
godmode

invincible

true Makes a train invincible, so that players cannot destroy it by hitting it.

Players with the train.break.any permission (default: OP) can break trains anyway.

waitdistance
waitdelay
waitacceleration
waitpredicted
See the Wait Property section
route add
route set
route remove
route clear
destination_name Adds/removes/clears/sets the destinations of the route set for a train. Destinations are added at the end.
route load
loadroute
my_saved_route Loads a previously saved route by name.

Set name

The name property alters the name of the train. To account for multiple trains being renamed, and because every train needs a unique name, the # value is added as a counter-based replacement. For example, the first train passing over the property sign with name value: Intercity#A would be named Intercity1A and the second Intercity2A, and so on. You can use this in combination with the spawner sign to spawn trains with a fixed naming system. This naming system can then be used for remote control to control all trains of a certain spawner or category.

Wait Property

The wait properties control when a train will automatically slow down. This can be used to slow a train down when obstacles are ahead of the train. This feature largely replaces the older waiter sign, and is a lot more intelligent:

The following 'wait' properties exist:

Property Example Value Description
waitdistance 20.5 Distance to keep between this train and the train ahead, in blocks. The train will slow down or stop completely maintaining distance.
waitacceleration 20kmh/s The rate of acceleration at which trains slow down or speed up when obstacles ahead appear or disappear. When specifying two numbers, the first number is the rate speeding up, the second number the rate slowing down. This can be set without the waitdistance, and will be used to slow down when approaching blockers or mutexes.
waitdelay 30 When the train is completely stopped due an obstacle, waits at least this delay in seconds until starting to move again
waitpredicted false Controls whether the path the train will take is predicted. By default on. When enabled, this will take into account switcher signs and where the train will be routed to when checking for obstacles.

They can also be configured with the /train wait <property> <value> set of commands.