ridable ![code/datums/elements/ridable.dm 9](git.png)
This element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it, at which point a riding component is created on the movable, and that component handles the actual riding behavior.
Besides the target, the ridable element has one argument: the component subtype. This is not really ideal since there's ~20-30 component subtypes rather than having the behavior defined on the ridable atoms themselves or some such, but because the old riding behavior was so horrifyingly spread out and redundant, just having the variables, behavior, and procs be standardized is still a big improvement.
Vars | |
potion_boosted | If we have a xenobio red potion applied to us, we get split off so we can pass our special status onto new riding components |
---|---|
riding_component_type | The specific riding component subtype we're loading our instructions from, don't leave this as default please! |
Procs | |
check_mounting | Someone is buckling to this movable, which is literally the only thing we care about (other than speed potions) |
check_potion | Checks to see if we've been hit with a red xenobio potion to make us faster. This is only registered if we're a vehicle |
equip_buckle_inhands | Try putting the appropriate number of riding offhand items into the target's hands, return FALSE if we can't |
unequip_buckle_inhands | Remove all of the relevant riding offhand items from the target |
Var Details
potion_boosted ![code/datums/elements/ridable.dm 15](git.png)
If we have a xenobio red potion applied to us, we get split off so we can pass our special status onto new riding components
riding_component_type ![code/datums/elements/ridable.dm 13](git.png)
The specific riding component subtype we're loading our instructions from, don't leave this as default please!
Proc Details
check_mounting
Someone is buckling to this movable, which is literally the only thing we care about (other than speed potions)
check_potion
Checks to see if we've been hit with a red xenobio potion to make us faster. This is only registered if we're a vehicle
equip_buckle_inhands
Try putting the appropriate number of riding offhand items into the target's hands, return FALSE if we can't
unequip_buckle_inhands
Remove all of the relevant riding offhand items from the target