tModLoader v2024.04
A mod to make and play Terraria mods
UnicornMountJump Class Reference

Inherits VanillaExtraJump.

Public Member Functions

override float GetDurationMultiplier (Player player)
 Vanilla's jumps use the following values: More...
 
override void OnStarted (Player player, ref bool playSound)
 This hook runs when the player uses this jump via pressing the jump key
Effects that should appear when the jump starts can be spawned here.
For example, the Cloud in a Bottle's initial puff of smoke is spawned here.

To make the jump re-usable, set ExtraJumpState.Available to true
More...
 
override void ShowVisuals (Player player)
 Spawn effects that should appear while the player is performing this jump here.
Only runs while the jump is ExtraJumpState.Active
For example, the Sandstorm in a Bottle's dusts are spawned here. More...
 
override void UpdateHorizontalSpeeds (Player player)
 Modify the player's horizontal movement while performing this jump here.
Only runs while the jump is ExtraJumpState.Active

Vanilla's jumps use the following values: More...
 
- Public Member Functions inherited from VanillaExtraJump
sealed override Position GetDefaultPosition ()
 Returns this extra jump's default position in regard to the vanilla extra jumps. Make use of e.g. Before/After, and provide an extra jump.

More...
 
sealed override IEnumerable< PositionGetModdedConstraints ()
 Modded jumps are placed between vanilla jumps via GetDefaultPosition and, by default, are sorted in load order.
This hook allows you to sort this jump before/after other modded jumps that were placed between the same two vanilla jumps.
Example: More...
 
- Public Member Functions inherited from ExtraJump
virtual bool CanShowVisuals (Player player)
 Return false to prevent ShowVisuals(Player) from executing.
By default, this hook returns whether the player is moving upwards with respect to Player.gravDir More...
 
virtual bool CanStart (Player player)
 An extra condition for whether this extra jump can be started. Used by vanilla for flippers (Entity.wet). Returns true by default. More...
 
abstract Position GetDefaultPosition ()
 Returns this extra jump's default position in regard to the vanilla extra jumps. Make use of e.g. Before/After, and provide an extra jump.

More...
 
abstract float GetDurationMultiplier (Player player)
 Vanilla's jumps use the following values: More...
 
virtual IEnumerable< PositionGetModdedConstraints ()
 Modded jumps are placed between vanilla jumps via GetDefaultPosition and, by default, are sorted in load order.
This hook allows you to sort this jump before/after other modded jumps that were placed between the same two vanilla jumps.
Example: More...
 
virtual void OnEnded (Player player)
 This hook runs before ExtraJumpState.Active is set from true to false
Jumps end when their duration expires or when ExtraJumpState.Enabled is no longer true.
Jumps may end early via Player.StopExtraJumpInProgress, called when a grappling hook is thrown, the player grabs onto a rope, or when the player is frozen, turned to stone or webbed. More...
 
virtual void OnRefreshed (Player player)
 This hook runs before ExtraJumpState.Available is set to true in Player.RefreshDoubleJumps
This occurs at the start of the grounded jump and while the player is grounded, or when jumping off a grappling hook/rope. More...
 
virtual void OnStarted (Player player, ref bool playSound)
 This hook runs when the player uses this jump via pressing the jump key
Effects that should appear when the jump starts can be spawned here.
For example, the Cloud in a Bottle's initial puff of smoke is spawned here.

To make the jump re-usable, set ExtraJumpState.Available to true
More...
 
sealed override void SetupContent ()
 If you make a new ModType, seal this override, and call SetStaticDefaults in it. More...
 
virtual void ShowVisuals (Player player)
 Spawn effects that should appear while the player is performing this jump here.
Only runs while the jump is ExtraJumpState.Active
For example, the Sandstorm in a Bottle's dusts are spawned here. More...
 
override string ToString ()
 
virtual void UpdateHorizontalSpeeds (Player player)
 Modify the player's horizontal movement while performing this jump here.
Only runs while the jump is ExtraJumpState.Active

Vanilla's jumps use the following values: More...
 
- Public Member Functions inherited from ModType< TEntity, TModType >
virtual TModType Clone (TEntity newEntity)
 Create a copy of this instanced global. Called when an entity is cloned. More...
 
virtual bool IsLoadingEnabled (Mod mod)
 Allows you to stop Mod.AddContent from actually adding this content. Useful for items that can be disabled by a config. More...
 
virtual void Load ()
 Allows you to perform one-time loading tasks. Beware that mod content has not finished loading here, things like ModContent lookup tables or ID Sets are not fully populated. More...
 
virtual TModType NewInstance (TEntity entity)
 Create a new instance of this ModType for a specific entity More...
 
string PrettyPrintName ()
 
virtual void SetStaticDefaults ()
 Allows you to modify the properties after initial loading has completed. More...
 
virtual void SetupContent ()
 If you make a new ModType, seal this override, and call SetStaticDefaults in it. More...
 
virtual void Unload ()
 Allows you to safely unload things you added in Load. More...
 
virtual bool IsLoadingEnabled (Mod mod)
 Whether or not this type should be loaded when it's told to. Returning false disables Mod.AddContent from actually loading this type. More...
 
abstract void Load (Mod mod)
 Called when loading the type. More...
 
abstract void Unload ()
 Called during unloading when needed. More...
 
- Public Member Functions inherited from ModType< TEntity >
virtual TModType Clone (TEntity newEntity)
 Create a copy of this instanced global. Called when an entity is cloned. More...
 
virtual bool IsLoadingEnabled (Mod mod)
 Allows you to stop Mod.AddContent from actually adding this content. Useful for items that can be disabled by a config. More...
 
virtual void Load ()
 Allows you to perform one-time loading tasks. Beware that mod content has not finished loading here, things like ModContent lookup tables or ID Sets are not fully populated. More...
 
virtual TModType NewInstance (TEntity entity)
 Create a new instance of this ModType for a specific entity More...
 
string PrettyPrintName ()
 
virtual void SetStaticDefaults ()
 Allows you to modify the properties after initial loading has completed. More...
 
virtual void SetupContent ()
 If you make a new ModType, seal this override, and call SetStaticDefaults in it. More...
 
virtual void Unload ()
 Allows you to safely unload things you added in Load. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ExtraJump
sealed override void Register ()
 If you make a new ModType, seal this override. More...
 
- Protected Member Functions inherited from ModType< TEntity, TModType >
abstract TEntity CreateTemplateEntity ()
 
virtual void InitTemplateInstance ()
 Create dummy objects for instanced mod-types More...
 
override void InitTemplateInstance ()
 Create dummy objects for instanced mod-types More...
 
abstract void Register ()
 If you make a new ModType, seal this override. More...
 
virtual void ValidateType ()
 Check for the correct overrides of different hook methods and fields and properties More...
 
- Protected Member Functions inherited from ModType< TEntity >
abstract TEntity CreateTemplateEntity ()
 
virtual void InitTemplateInstance ()
 Create dummy objects for instanced mod-types More...
 
override void InitTemplateInstance ()
 Create dummy objects for instanced mod-types
 
abstract void Register ()
 If you make a new ModType, seal this override. More...
 
virtual void ValidateType ()
 Check for the correct overrides of different hook methods and fields and properties More...
 
- Static Protected Attributes inherited from ExtraJump
static readonly Position AfterBottleJumps = new After(CloudInABottle)
 
static readonly Position BeforeBottleJumps = new Before(SandstormInABottle)
 
static readonly Position BeforeMountJumps = new Before(BasiliskMount)
 
static readonly Position MountJumpPosition = new After(BasiliskMount)
 
- Properties inherited from ExtraJump
static ExtraJump BasiliskMount = new BasiliskMountJump() [get]
 
static ExtraJump BlizzardInABottle = new BlizzardInABottleJump() [get]
 
static ExtraJump CloudInABottle = new CloudInABottleJump() [get]
 
static ExtraJump FartInAJar = new FartInAJarJump() [get]
 
static ExtraJump Flipper = new FlipperJump() [get]
 
static ExtraJump GoatMount = new GoatMountJump() [get]
 
static ExtraJump SandstormInABottle = new SandstormInABottleJump() [get]
 
static ExtraJump SantankMount = new SantankMountJump() [get]
 
static ExtraJump TsunamiInABottle = new TsunamiInABottleJump() [get]
 
int Type [get, set]
 The internal ID of this ExtraJump.
 
static ExtraJump UnicornMount = new UnicornMountJump() [get]
 
- Properties inherited from ModType< TEntity, TModType >
virtual bool CloneNewInstances [get]
 Whether to create new instances of this mod type via Clone(TEntity) or via the default constructor Defaults to false (default constructor).
 
TEntity Entity [get, set]
 
string FullName [get]
 The internal name of this, including the mod it is from. More...
 
virtual bool IsCloneable [get]
 Whether or not this type is cloneable. Cloning is supported if
all reference typed fields in each sub-class which doesn't override Clone are marked with [CloneByReference]
 
Mod Mod [get, set]
 The mod this belongs to. More...
 
virtual string Name [get]
 The internal name of this. More...
 
- Properties inherited from IModType
string FullName [get]
 => $"{Mod.Name}/{Name}" More...
 
Mod Mod [get]
 The mod this belongs to. More...
 
string Name [get]
 The internal name of this instance. More...
 
- Properties inherited from ModType< TEntity >
virtual bool CloneNewInstances [get]
 Whether to create new instances of this mod type via Clone(TEntity) or via the default constructor Defaults to false (default constructor).
 
TEntity Entity [get, set]
 
string FullName [get]
 The internal name of this, including the mod it is from. More...
 
virtual bool IsCloneable [get]
 Whether or not this type is cloneable. Cloning is supported if
all reference typed fields in each sub-class which doesn't override Clone are marked with [CloneByReference]
 
Mod Mod [get, set]
 The mod this belongs to. More...
 
virtual string Name [get]
 The internal name of this. More...
 

Member Function Documentation

◆ GetDurationMultiplier()

override float UnicornMountJump.GetDurationMultiplier ( Player  player)
virtual

Vanilla's jumps use the following values:

Basilisk mount: 0.75
Blizzard in a Bottle: 1.5
Cloud in a Bottle: 0.75
Fart in a Jar: 2
Goat mount: 2
Sandstorm in a Bottle: 3
Santank mount: 2
Tsunami in a Bottle: 1.25
Unicorn mount: 2

Parameters
playerThe player performing the jump
Returns
A modifier to the player's jump height, which when combined effectively acts as the duration for the jump

Implements ExtraJump.

◆ OnStarted()

override void UnicornMountJump.OnStarted ( Player  player,
ref bool  playSound 
)
virtual

This hook runs when the player uses this jump via pressing the jump key
Effects that should appear when the jump starts can be spawned here.
For example, the Cloud in a Bottle's initial puff of smoke is spawned here.

To make the jump re-usable, set ExtraJumpState.Available to true

Parameters
playerThe player performing the jump
playSoundWhether the poof sound should play. Set this parameter to false if you want to play a different sound.

Reimplemented from ExtraJump.

◆ ShowVisuals()

override void UnicornMountJump.ShowVisuals ( Player  player)
virtual

Spawn effects that should appear while the player is performing this jump here.
Only runs while the jump is ExtraJumpState.Active
For example, the Sandstorm in a Bottle's dusts are spawned here.

Parameters
playerThe player performing the jump

Reimplemented from ExtraJump.

◆ UpdateHorizontalSpeeds()

override void UnicornMountJump.UpdateHorizontalSpeeds ( Player  player)
virtual

Modify the player's horizontal movement while performing this jump here.
Only runs while the jump is ExtraJumpState.Active

Vanilla's jumps use the following values:

Basilisk mount: runAcceleration *= 3; maxRunSpeed *= 1.5;
Blizzard in a Bottle: runAcceleration *= 3; maxRunSpeed *= 1.5;
Cloud in a Bottle: no change
Fart in a Jar: runAcceleration *= 3; maxRunSpeed *= 1.75;
Goat mount: runAcceleration *= 3; maxRunSpeed *= 1.5;
Sandstorm in a Bottle: runAcceleration *= 1.5; maxRunSpeed *= 2;
Santank mount: runAcceleration *= 3; maxRunSpeed *= 1.5;
Tsunami in a Bottle: runAcceleration *= 1.5; maxRunSpeed *= 1.25;
Unicorn mount: runAcceleration *= 3; maxRunSpeed *= 1.5;

Parameters
playerThe player performing the jump

Reimplemented from ExtraJump.