TopDown Engine
v4.2
|
This base class, meant to be extended (see ProjectileWeapon.cs for an example of that) handles rate of fire (rate of use actually), and ammo reloading More...
Public Types | |
enum | TriggerModes { TriggerModes.SemiAuto, TriggerModes.Auto } |
the possible use modes for the trigger (semi auto : the Player needs to release the trigger to fire again, auto : the Player can hold the trigger to fire repeatedly More... | |
enum | WeaponStates { WeaponStates.WeaponIdle, WeaponStates.WeaponStart, WeaponStates.WeaponDelayBeforeUse, WeaponStates.WeaponUse, WeaponStates.WeaponDelayBetweenUses, WeaponStates.WeaponStop, WeaponStates.WeaponReloadNeeded, WeaponStates.WeaponReloadStart, WeaponStates.WeaponReload, WeaponStates.WeaponReloadStop, WeaponStates.WeaponInterrupted } |
the possible states the weapon can be in More... | |
Public Member Functions | |
virtual void | Initialization () |
Initialize this weapon. More... | |
virtual void | InitializeComboWeapons () |
Initializes the combo weapon, if it's one More... | |
virtual void | SetOwner (Character newOwner, CharacterHandleWeapon handleWeapon) |
Sets the weapon's owner More... | |
virtual void | WeaponInputStart () |
Called by input, turns the weapon on More... | |
virtual void | WeaponInputReleased () |
Describes what happens when the weapon's input gets released More... | |
virtual void | TurnWeaponOn () |
Describes what happens when the weapon starts More... | |
virtual void | CaseWeaponIdle () |
If the weapon is idle, we reset the movement multiplier More... | |
virtual void | CaseWeaponStart () |
When the weapon starts we switch to a delay or shoot based on our weapon's settings More... | |
virtual void | CaseWeaponDelayBeforeUse () |
If we're in delay before use, we wait until our delay is passed and then request a shoot More... | |
virtual void | CaseWeaponUse () |
On weapon use we use our weapon then switch to delay between uses More... | |
virtual void | CaseWeaponDelayBetweenUses () |
When in delay between uses, we either turn our weapon off or make a shoot request More... | |
virtual void | CaseWeaponStop () |
On weapon stop, we switch to idle More... | |
virtual void | CaseWeaponReloadNeeded () |
If a reload is needed, we mention it and switch to idle More... | |
virtual void | CaseWeaponReloadStart () |
on reload start, we reload the weapon and switch to reload More... | |
virtual void | CaseWeaponReload () |
on reload, we reset our movement multiplier, and switch to reload stop once our reload delay has passed More... | |
virtual void | CaseWeaponReloadStop () |
on reload stop, we swtich to idle and load our ammo More... | |
virtual void | CaseWeaponInterrupted () |
on weapon interrupted, we turn our weapon off and switch back to idle More... | |
virtual void | Interrupt () |
Call this method to interrupt the weapon More... | |
virtual IEnumerator | ShootRequestCo () |
Determines whether or not the weapon can fire More... | |
virtual void | ShootRequest () |
virtual void | WeaponUse () |
When the weapon is used, plays the corresponding sound More... | |
virtual void | WeaponInputStop () |
Called by input, turns the weapon off if in auto mode More... | |
virtual void | TurnWeaponOff () |
Turns the weapon off. More... | |
virtual void | ReloadNeeded () |
Describes what happens when the weapon needs a reload More... | |
virtual void | InitiateReloadWeapon () |
Initiates a reload More... | |
virtual void | FlipWeapon () |
Flips the weapon. More... | |
virtual IEnumerator | WeaponDestruction () |
Destroys the weapon More... | |
virtual void | ApplyOffset () |
Applies the offset specified in the inspector More... | |
virtual void | InitializeAnimatorParameters () |
Adds required animator parameters to the animator parameters list if they exist More... | |
virtual void | UpdateAnimator () |
Override this to send parameters to the character's animator. This is called once per cycle, by the Character class, after Early, normal and Late process(). More... | |
Public Attributes | |
string | WeaponName |
the name of the weapon, only used for debugging More... | |
bool | WeaponCurrentlyActive = true |
whether or not the weapon is currently active More... | |
bool | InputAuthorized = true |
if this is true, this weapon will be able to read input (usually via the CharacterHandleWeapon ability), otherwise player input will be disabled More... | |
TriggerModes | TriggerMode = TriggerModes.Auto |
is this weapon on semi or full auto ? More... | |
float | DelayBeforeUse = 0f |
the delay before use, that will be applied for every shot More... | |
bool | DelayBeforeUseReleaseInterruption = true |
whether or not the delay before used can be interrupted by releasing the shoot button (if true, releasing the button will cancel the delayed shot) More... | |
float | TimeBetweenUses = 1f |
the time (in seconds) between two shots More... | |
bool | TimeBetweenUsesReleaseInterruption = true |
whether or not the time between uses can be interrupted by releasing the shoot button (if true, releasing the button will cancel the time between uses) More... | |
bool | UseBurstMode = false |
if this is true, the weapon will activate repeatedly for every shoot request More... | |
int | BurstLength = 3 |
the amount of 'shots' in a burst sequence More... | |
float | BurstTimeBetweenShots = 0.1f |
the time between shots in a burst sequence (in seconds) More... | |
bool | MagazineBased = false |
whether or not the weapon is magazine based. If it's not, it'll just take its ammo inside a global pool More... | |
int | MagazineSize = 30 |
the size of the magazine More... | |
bool | AutoReload |
if this is true, pressing the fire button when a reload is needed will reload the weapon. Otherwise you'll need to press the reload button More... | |
bool | NoInputReload = false |
if this is true, reload will automatically happen right after the last bullet is shot, without the need for input More... | |
float | ReloadTime = 2f |
the time it takes to reload the weapon More... | |
int | AmmoConsumedPerShot = 1 |
the amount of ammo consumed everytime the weapon fires More... | |
bool | AutoDestroyWhenEmpty |
if this is set to true, the weapon will auto destroy when there's no ammo left More... | |
float | AutoDestroyWhenEmptyDelay = 1f |
the delay (in seconds) before weapon destruction if empty More... | |
bool | PreventReloadIfAmmoEmpty = false |
if this is true, the weapon won't try and reload if the ammo is empty, when using WeaponAmmo More... | |
int | CurrentAmmoLoaded = 0 |
the current amount of ammo loaded inside the weapon More... | |
Vector3 | WeaponAttachmentOffset = Vector3.zero |
an offset that will be applied to the weapon once attached to the center of the WeaponAttachment transform. More... | |
bool | FlipWeaponOnCharacterFlip = true |
should that weapon be flipped when the character flips? More... | |
Vector3 | RightFacingFlipValue = new Vector3(1, 1, 1) |
the FlipValue will be used to multiply the model's transform's localscale on flip. Usually it's -1,1,1, but feel free to change it to suit your model's specs More... | |
Vector3 | LeftFacingFlipValue = new Vector3(-1, 1, 1) |
the FlipValue will be used to multiply the model's transform's localscale on flip. Usually it's -1,1,1, but feel free to change it to suit your model's specs More... | |
Transform | WeaponUseTransform |
a transform to use as the spawn point for weapon use (if null, only offset will be considered, otherwise the transform without offset) More... | |
bool | WeaponShouldFlip = true |
if this is true, the weapon will flip to match the character's orientation More... | |
Transform | LeftHandHandle |
the transform to which the character's left hand should be attached to More... | |
Transform | RightHandHandle |
the transform to which the character's right hand should be attached to More... | |
bool | ModifyMovementWhileAttacking = false |
if this is true, a multiplier will be applied to movement while the weapon is active More... | |
float | MovementMultiplier = 0f |
the multiplier to apply to movement while attacking More... | |
bool | PreventAllMovementWhileInUse = false |
if this is true all movement will be prevented (even flip) while the weapon is active More... | |
bool | PreventAllAimWhileInUse = false |
if this is true all aim will be prevented while the weapon is active More... | |
float | RecoilForce = 0f |
the force to apply to push the character back when shooting - positive values will push the character back, negative values will launch it forward, turning that recoil into a thrust More... | |
List< Animator > | Animators |
the other animators (other than the Character's) that you want to update every time this weapon gets used More... | |
bool | PerformAnimatorSanityChecks = false |
If this is true, sanity checks will be performed to make sure animator parameters exist before updating them. Turning this to false will increase performance but will throw errors if you're trying to update non existing parameters. Make sure your animator has the required parameters. More... | |
bool | MirrorCharacterAnimatorParameters = false |
if this is true, the weapon's animator(s) will mirror the animation parameter of the owner character (that way your weapon's animator will be able to "know" if the character is walking, jumping, etc) More... | |
int | WeaponAnimationID = 0 |
the ID of the weapon to pass to the animator More... | |
string | IdleAnimationParameter |
the name of the weapon's idle animation parameter : this will be true all the time except when the weapon is being used More... | |
string | StartAnimationParameter |
the name of the weapon's start animation parameter : true at the frame where the weapon starts being used More... | |
string | DelayBeforeUseAnimationParameter |
the name of the weapon's delay before use animation parameter : true when the weapon has been activated but hasn't been used yet More... | |
string | SingleUseAnimationParameter |
the name of the weapon's single use animation parameter : true at each frame the weapon activates (shoots) More... | |
string | UseAnimationParameter |
the name of the weapon's in use animation parameter : true at each frame the weapon has started firing but hasn't stopped yet More... | |
string | DelayBetweenUsesAnimationParameter |
the name of the weapon's delay between each use animation parameter : true when the weapon is in use More... | |
string | StopAnimationParameter |
the name of the weapon stop animation parameter : true after a shot and before the next one or the weapon's stop More... | |
string | ReloadStartAnimationParameter |
the name of the weapon reload start animation parameter More... | |
string | ReloadAnimationParameter |
the name of the weapon reload animation parameter More... | |
string | ReloadStopAnimationParameter |
the name of the weapon reload end animation parameter More... | |
string | WeaponAngleAnimationParameter |
the name of the weapon's angle animation parameter More... | |
string | WeaponAngleRelativeAnimationParameter |
the name of the weapon's angle animation parameter, adjusted so it's always relative to the direction the character is currently facing More... | |
string | EquippedAnimationParameter |
the name of the parameter to send to true as long as this weapon is equipped, used or not. While all the other parameters defined here are updated by the Weapon class itself, and passed to the weapon and character, this one will be updated by CharacterHandleWeapon only." More... | |
string | InterruptedAnimationParameter |
the name of the parameter to send to true when the weapon gets interrupted. While all the other parameters defined here are updated by the Weapon class itself, and passed to the weapon and character, this one will be updated by CharacterHandleWeapon only." More... | |
MMFeedbacks | WeaponStartMMFeedback |
the feedback to play when the weapon starts being used More... | |
MMFeedbacks | WeaponUsedMMFeedback |
the feedback to play while the weapon is in use More... | |
MMFeedbacks | WeaponUsedMMFeedbackAlt |
if set, this feedback will be used randomly instead of WeaponUsedMMFeedback More... | |
MMFeedbacks | WeaponStopMMFeedback |
the feedback to play when the weapon stops being used More... | |
MMFeedbacks | WeaponReloadMMFeedback |
the feedback to play when the weapon gets reloaded More... | |
MMFeedbacks | WeaponReloadNeededMMFeedback |
the feedback to play when the weapon gets reloaded More... | |
MMFeedbacks | WeaponReloadImpossibleMMFeedback |
the feedback to play when the weapon can't reload as there's no more ammo available. You'll need PreventReloadIfAmmoEmpty to be true for this to work More... | |
bool | InitializeOnStart = false |
If this is true, the weapon will initialize itself on start, otherwise it'll have to be init manually, usually by the CharacterHandleWeapon class. More... | |
bool | Interruptable = false |
whether or not this weapon can be interrupted More... | |
bool | Flipped |
if true, the weapon is flipped More... | |
MMStateMachine< WeaponStates > | WeaponState |
the weapon's state machine More... | |
Protected Member Functions | |
virtual void | Start () |
On start we initialize our weapon More... | |
virtual void | InitializeFeedbacks () |
virtual void | Update () |
On Update, we check if the weapon is or should be used More... | |
virtual void | LateUpdate () |
On LateUpdate, processes the weapon state More... | |
virtual void | ProcessWeaponState () |
Called every lastUpdate, processes the weapon's state machine More... | |
virtual void | ApplyRecoil () |
Applies recoil if necessary More... | |
virtual void | ResetMovementMultiplier () |
virtual void | ReloadWeapon () |
Reloads the weapon More... | |
virtual void | TriggerWeaponStartFeedback () |
Plays the weapon's start sound More... | |
virtual void | TriggerWeaponUsedFeedback () |
Plays the weapon's used sound More... | |
virtual void | TriggerWeaponStopFeedback () |
Plays the weapon's stop sound More... | |
virtual void | TriggerWeaponReloadNeededFeedback () |
Plays the weapon's reload needed sound More... | |
virtual void | TriggerWeaponReloadFeedback () |
Plays the weapon's reload sound More... | |
virtual void | AddParametersToAnimator (Animator animator, HashSet< int > list) |
virtual void | UpdateAnimator (Animator animator, HashSet< int > list) |
Static Protected Attributes | |
const string | _aliveAnimationParameterName = "Alive" |
Properties | |
virtual string | WeaponID [get, set] |
the name of the inventory item corresponding to this weapon. Automatically set (if needed) by InventoryEngineWeapon More... | |
virtual Character | Owner [get, protected set] |
the weapon's owner More... | |
virtual CharacterHandleWeapon | CharacterHandleWeapon [get, set] |
the weapon's owner's CharacterHandleWeapon component More... | |
virtual WeaponAmmo | WeaponAmmo [get, protected set] |
the WeaponAmmo component optionnally associated to this weapon More... | |
float | MovementMultiplierStorage [get, set] |
bool | IsComboWeapon [get, set] |
bool | IsAutoComboWeapon [get, set] |
This base class, meant to be extended (see ProjectileWeapon.cs for an example of that) handles rate of fire (rate of use actually), and ammo reloading
|
strong |
|
strong |
|
protectedvirtual |
|
virtual |
Applies the offset specified in the inspector
|
protectedvirtual |
Applies recoil if necessary
|
virtual |
If we're in delay before use, we wait until our delay is passed and then request a shoot
|
virtual |
When in delay between uses, we either turn our weapon off or make a shoot request
|
virtual |
If the weapon is idle, we reset the movement multiplier
|
virtual |
on weapon interrupted, we turn our weapon off and switch back to idle
|
virtual |
on reload, we reset our movement multiplier, and switch to reload stop once our reload delay has passed
|
virtual |
If a reload is needed, we mention it and switch to idle
|
virtual |
on reload start, we reload the weapon and switch to reload
|
virtual |
on reload stop, we swtich to idle and load our ammo
|
virtual |
When the weapon starts we switch to a delay or shoot based on our weapon's settings
|
virtual |
On weapon stop, we switch to idle
|
virtual |
On weapon use we use our weapon then switch to delay between uses
|
virtual |
Flips the weapon.
Reimplemented in MoreMountains.TopDownEngine.ChargeWeapon.
|
virtual |
Initialize this weapon.
Reimplemented in MoreMountains.TopDownEngine.HitscanWeapon, MoreMountains.TopDownEngine.MeleeWeapon, MoreMountains.TopDownEngine.ChargeWeapon, MoreMountains.TopDownEngine.ProjectileWeapon, and MoreMountains.TopDownEngine.ExplodudesWeapon.
|
virtual |
Adds required animator parameters to the animator parameters list if they exist
|
virtual |
Initializes the combo weapon, if it's one
|
protectedvirtual |
|
virtual |
Initiates a reload
|
virtual |
Call this method to interrupt the weapon
Reimplemented in MoreMountains.TopDownEngine.MeleeWeapon.
|
protectedvirtual |
On LateUpdate, processes the weapon state
|
protectedvirtual |
Called every lastUpdate, processes the weapon's state machine
|
virtual |
Describes what happens when the weapon needs a reload
|
protectedvirtual |
Reloads the weapon
ammo | Ammo. |
|
protectedvirtual |
|
virtual |
Sets the weapon's owner
newOwner | New owner. |
|
virtual |
Reimplemented in MoreMountains.TopDownEngine.ExplodudesWeapon.
|
virtual |
Determines whether or not the weapon can fire
|
protectedvirtual |
On start we initialize our weapon
|
protectedvirtual |
Plays the weapon's reload sound
|
protectedvirtual |
Plays the weapon's reload needed sound
|
protectedvirtual |
Plays the weapon's start sound
|
protectedvirtual |
Plays the weapon's stop sound
|
protectedvirtual |
Plays the weapon's used sound
|
virtual |
Turns the weapon off.
|
virtual |
Describes what happens when the weapon starts
Reimplemented in MoreMountains.TopDownEngine.ChargeWeapon.
|
protectedvirtual |
On Update, we check if the weapon is or should be used
Reimplemented in MoreMountains.TopDownEngine.ChargeWeapon, and MoreMountains.TopDownEngine.ExplodudesWeapon.
|
virtual |
Override this to send parameters to the character's animator. This is called once per cycle, by the Character class, after Early, normal and Late process().
|
protectedvirtual |
|
virtual |
Destroys the weapon
|
virtual |
Describes what happens when the weapon's input gets released
Reimplemented in MoreMountains.TopDownEngine.ChargeWeapon.
|
virtual |
Called by input, turns the weapon on
|
virtual |
Called by input, turns the weapon off if in auto mode
|
virtual |
When the weapon is used, plays the corresponding sound
Reimplemented in MoreMountains.TopDownEngine.MeleeWeapon, MoreMountains.TopDownEngine.HitscanWeapon, and MoreMountains.TopDownEngine.ProjectileWeapon.
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
int MoreMountains.TopDownEngine.Weapon.AmmoConsumedPerShot = 1 |
the amount of ammo consumed everytime the weapon fires
List<Animator> MoreMountains.TopDownEngine.Weapon.Animators |
the other animators (other than the Character's) that you want to update every time this weapon gets used
bool MoreMountains.TopDownEngine.Weapon.AutoDestroyWhenEmpty |
if this is set to true, the weapon will auto destroy when there's no ammo left
float MoreMountains.TopDownEngine.Weapon.AutoDestroyWhenEmptyDelay = 1f |
the delay (in seconds) before weapon destruction if empty
bool MoreMountains.TopDownEngine.Weapon.AutoReload |
if this is true, pressing the fire button when a reload is needed will reload the weapon. Otherwise you'll need to press the reload button
int MoreMountains.TopDownEngine.Weapon.BurstLength = 3 |
the amount of 'shots' in a burst sequence
float MoreMountains.TopDownEngine.Weapon.BurstTimeBetweenShots = 0.1f |
the time between shots in a burst sequence (in seconds)
int MoreMountains.TopDownEngine.Weapon.CurrentAmmoLoaded = 0 |
the current amount of ammo loaded inside the weapon
float MoreMountains.TopDownEngine.Weapon.DelayBeforeUse = 0f |
the delay before use, that will be applied for every shot
string MoreMountains.TopDownEngine.Weapon.DelayBeforeUseAnimationParameter |
the name of the weapon's delay before use animation parameter : true when the weapon has been activated but hasn't been used yet
bool MoreMountains.TopDownEngine.Weapon.DelayBeforeUseReleaseInterruption = true |
whether or not the delay before used can be interrupted by releasing the shoot button (if true, releasing the button will cancel the delayed shot)
string MoreMountains.TopDownEngine.Weapon.DelayBetweenUsesAnimationParameter |
the name of the weapon's delay between each use animation parameter : true when the weapon is in use
string MoreMountains.TopDownEngine.Weapon.EquippedAnimationParameter |
the name of the parameter to send to true as long as this weapon is equipped, used or not. While all the other parameters defined here are updated by the Weapon class itself, and passed to the weapon and character, this one will be updated by CharacterHandleWeapon only."
bool MoreMountains.TopDownEngine.Weapon.Flipped |
if true, the weapon is flipped
bool MoreMountains.TopDownEngine.Weapon.FlipWeaponOnCharacterFlip = true |
should that weapon be flipped when the character flips?
string MoreMountains.TopDownEngine.Weapon.IdleAnimationParameter |
the name of the weapon's idle animation parameter : this will be true all the time except when the weapon is being used
bool MoreMountains.TopDownEngine.Weapon.InitializeOnStart = false |
If this is true, the weapon will initialize itself on start, otherwise it'll have to be init manually, usually by the CharacterHandleWeapon class.
bool MoreMountains.TopDownEngine.Weapon.InputAuthorized = true |
if this is true, this weapon will be able to read input (usually via the CharacterHandleWeapon ability), otherwise player input will be disabled
bool MoreMountains.TopDownEngine.Weapon.Interruptable = false |
whether or not this weapon can be interrupted
string MoreMountains.TopDownEngine.Weapon.InterruptedAnimationParameter |
the name of the parameter to send to true when the weapon gets interrupted. While all the other parameters defined here are updated by the Weapon class itself, and passed to the weapon and character, this one will be updated by CharacterHandleWeapon only."
Vector3 MoreMountains.TopDownEngine.Weapon.LeftFacingFlipValue = new Vector3(-1, 1, 1) |
the FlipValue will be used to multiply the model's transform's localscale on flip. Usually it's -1,1,1, but feel free to change it to suit your model's specs
Transform MoreMountains.TopDownEngine.Weapon.LeftHandHandle |
the transform to which the character's left hand should be attached to
bool MoreMountains.TopDownEngine.Weapon.MagazineBased = false |
whether or not the weapon is magazine based. If it's not, it'll just take its ammo inside a global pool
int MoreMountains.TopDownEngine.Weapon.MagazineSize = 30 |
the size of the magazine
bool MoreMountains.TopDownEngine.Weapon.MirrorCharacterAnimatorParameters = false |
if this is true, the weapon's animator(s) will mirror the animation parameter of the owner character (that way your weapon's animator will be able to "know" if the character is walking, jumping, etc)
bool MoreMountains.TopDownEngine.Weapon.ModifyMovementWhileAttacking = false |
if this is true, a multiplier will be applied to movement while the weapon is active
float MoreMountains.TopDownEngine.Weapon.MovementMultiplier = 0f |
the multiplier to apply to movement while attacking
bool MoreMountains.TopDownEngine.Weapon.NoInputReload = false |
if this is true, reload will automatically happen right after the last bullet is shot, without the need for input
bool MoreMountains.TopDownEngine.Weapon.PerformAnimatorSanityChecks = false |
If this is true, sanity checks will be performed to make sure animator parameters exist before updating them. Turning this to false will increase performance but will throw errors if you're trying to update non existing parameters. Make sure your animator has the required parameters.
bool MoreMountains.TopDownEngine.Weapon.PreventAllAimWhileInUse = false |
if this is true all aim will be prevented while the weapon is active
bool MoreMountains.TopDownEngine.Weapon.PreventAllMovementWhileInUse = false |
if this is true all movement will be prevented (even flip) while the weapon is active
bool MoreMountains.TopDownEngine.Weapon.PreventReloadIfAmmoEmpty = false |
if this is true, the weapon won't try and reload if the ammo is empty, when using WeaponAmmo
float MoreMountains.TopDownEngine.Weapon.RecoilForce = 0f |
the force to apply to push the character back when shooting - positive values will push the character back, negative values will launch it forward, turning that recoil into a thrust
string MoreMountains.TopDownEngine.Weapon.ReloadAnimationParameter |
the name of the weapon reload animation parameter
string MoreMountains.TopDownEngine.Weapon.ReloadStartAnimationParameter |
the name of the weapon reload start animation parameter
string MoreMountains.TopDownEngine.Weapon.ReloadStopAnimationParameter |
the name of the weapon reload end animation parameter
float MoreMountains.TopDownEngine.Weapon.ReloadTime = 2f |
the time it takes to reload the weapon
Vector3 MoreMountains.TopDownEngine.Weapon.RightFacingFlipValue = new Vector3(1, 1, 1) |
the FlipValue will be used to multiply the model's transform's localscale on flip. Usually it's -1,1,1, but feel free to change it to suit your model's specs
Transform MoreMountains.TopDownEngine.Weapon.RightHandHandle |
the transform to which the character's right hand should be attached to
string MoreMountains.TopDownEngine.Weapon.SingleUseAnimationParameter |
the name of the weapon's single use animation parameter : true at each frame the weapon activates (shoots)
string MoreMountains.TopDownEngine.Weapon.StartAnimationParameter |
the name of the weapon's start animation parameter : true at the frame where the weapon starts being used
string MoreMountains.TopDownEngine.Weapon.StopAnimationParameter |
the name of the weapon stop animation parameter : true after a shot and before the next one or the weapon's stop
float MoreMountains.TopDownEngine.Weapon.TimeBetweenUses = 1f |
the time (in seconds) between two shots
bool MoreMountains.TopDownEngine.Weapon.TimeBetweenUsesReleaseInterruption = true |
whether or not the time between uses can be interrupted by releasing the shoot button (if true, releasing the button will cancel the time between uses)
TriggerModes MoreMountains.TopDownEngine.Weapon.TriggerMode = TriggerModes.Auto |
is this weapon on semi or full auto ?
string MoreMountains.TopDownEngine.Weapon.UseAnimationParameter |
the name of the weapon's in use animation parameter : true at each frame the weapon has started firing but hasn't stopped yet
bool MoreMountains.TopDownEngine.Weapon.UseBurstMode = false |
if this is true, the weapon will activate repeatedly for every shoot request
string MoreMountains.TopDownEngine.Weapon.WeaponAngleAnimationParameter |
the name of the weapon's angle animation parameter
string MoreMountains.TopDownEngine.Weapon.WeaponAngleRelativeAnimationParameter |
the name of the weapon's angle animation parameter, adjusted so it's always relative to the direction the character is currently facing
int MoreMountains.TopDownEngine.Weapon.WeaponAnimationID = 0 |
the ID of the weapon to pass to the animator
Vector3 MoreMountains.TopDownEngine.Weapon.WeaponAttachmentOffset = Vector3.zero |
an offset that will be applied to the weapon once attached to the center of the WeaponAttachment transform.
bool MoreMountains.TopDownEngine.Weapon.WeaponCurrentlyActive = true |
whether or not the weapon is currently active
string MoreMountains.TopDownEngine.Weapon.WeaponName |
the name of the weapon, only used for debugging
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponReloadImpossibleMMFeedback |
the feedback to play when the weapon can't reload as there's no more ammo available. You'll need PreventReloadIfAmmoEmpty to be true for this to work
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponReloadMMFeedback |
the feedback to play when the weapon gets reloaded
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponReloadNeededMMFeedback |
the feedback to play when the weapon gets reloaded
bool MoreMountains.TopDownEngine.Weapon.WeaponShouldFlip = true |
if this is true, the weapon will flip to match the character's orientation
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponStartMMFeedback |
the feedback to play when the weapon starts being used
MMStateMachine<WeaponStates> MoreMountains.TopDownEngine.Weapon.WeaponState |
the weapon's state machine
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponStopMMFeedback |
the feedback to play when the weapon stops being used
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponUsedMMFeedback |
the feedback to play while the weapon is in use
MMFeedbacks MoreMountains.TopDownEngine.Weapon.WeaponUsedMMFeedbackAlt |
if set, this feedback will be used randomly instead of WeaponUsedMMFeedback
Transform MoreMountains.TopDownEngine.Weapon.WeaponUseTransform |
a transform to use as the spawn point for weapon use (if null, only offset will be considered, otherwise the transform without offset)
|
getset |
the weapon's owner's CharacterHandleWeapon component
|
getset |
|
getset |
|
getset |
|
getprotected set |
the weapon's owner
|
getprotected set |
the WeaponAmmo component optionnally associated to this weapon
|
getset |
the name of the inventory item corresponding to this weapon. Automatically set (if needed) by InventoryEngineWeapon