TopDown Engine
v3.6
|
Add this component to a character and it'll be able to control an inventory Animator parameters : none More...
Public Types | |
enum | WeaponRotationModes { WeaponRotationModes.Normal, WeaponRotationModes.AddEmptySlot, WeaponRotationModes.AddInitialWeapon } |
Public Member Functions | |
override void | ProcessAbility () |
The second of the 3 passes you can have in your ability. Think of it as Update() More... | |
virtual void | EquipWeapon (string weaponID) |
Equips the weapon with the name passed in parameters More... | |
virtual void | OnMMEvent (MMInventoryEvent inventoryEvent) |
Watches for InventoryLoaded events When an inventory gets loaded, if it's our WeaponInventory, we check if there's already a weapon equipped, and if yes, we equip it More... | |
Public Member Functions inherited from MoreMountains.TopDownEngine.CharacterAbility | |
delegate void | AbilityEvent () |
virtual string | HelpBoxText () |
This method is only used to display a helpbox text at the beginning of the ability's inspector. More... | |
virtual void | ForceInitialization () |
Call this any time you want to force this ability to initialize (again) More... | |
virtual void | ResetInput () |
Resets all input for this ability. Can be overridden for ability specific directives More... | |
virtual void | EarlyProcessAbility () |
The first of the 3 passes you can have in your ability. Think of it as EarlyUpdate() if it existed More... | |
virtual void | LateProcessAbility () |
The last of the 3 passes you can have in your ability. Think of it as LateUpdate() 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... | |
virtual void | PermitAbility (bool abilityPermitted) |
Changes the status of the ability's permission More... | |
virtual void | Flip () |
Override this to specify what should happen in this ability when the character flips More... | |
virtual void | ResetAbility () |
Override this to reset this ability's parameters. It'll be automatically called when the character gets killed, in anticipation for its respawn. More... | |
virtual void | SetInputManager (InputManager newInputManager) |
Changes the reference to the input manager with the one set in parameters More... | |
virtual void | PlayAbilityStartSfx () |
Plays the ability start sound effect More... | |
virtual void | PlayAbilityUsedSfx () |
Plays the ability used sound effect More... | |
virtual void | StopAbilityUsedSfx () |
Stops the ability used sound effect More... | |
virtual void | PlayAbilityStopSfx () |
Plays the ability stop sound effect More... | |
virtual void | PlayAbilityStartFeedbacks () |
Plays the ability start sound effect More... | |
virtual void | StopStartFeedbacks () |
Stops the ability used sound effect More... | |
virtual void | PlayAbilityStopFeedbacks () |
Plays the ability stop sound effect More... | |
Public Member Functions inherited from MoreMountains.Tools.MMEventListener< MMInventoryEvent > | |
void | OnMMEvent (T eventType) |
Public Attributes | |
string | PlayerID = "Player1" |
the unique ID of this player as far as the InventoryEngine is concerned. This has to match all its Inventory and InventoryEngine UI components' PlayerID for that player. If you're not going for multiplayer here, just leave Player1. More... | |
string | MainInventoryName |
the name of the main inventory for this character More... | |
string | WeaponInventoryName |
the name of the inventory where this character stores weapons More... | |
string | HotbarInventoryName |
the name of the hotbar inventory for this character More... | |
Transform | InventoryTransform |
a transform to pass to the inventories, will be passed to the inventories and used as reference for drops. If left empty, this.transform will be used. More... | |
WeaponRotationModes | WeaponRotationMode = WeaponRotationModes.Normal |
the rotation mode for weapons : Normal will cycle through all weapons, AddEmptySlot will return to empty hands, AddOriginalWeapon will cycle back to the original weapon More... | |
AutoPickItem[] | AutoPickItems |
a list of items to automatically add to this Character's inventories on start More... | |
bool | AutoPickOnlyIfMainInventoryIsEmpty |
if this is true, auto pick items will only be added if the main inventory is empty More... | |
InventoryWeapon | AutoEquipWeaponOnStart |
a weapon to auto equip on start More... | |
bool | AutoEquipOnlyIfMainInventoryIsEmpty |
if this is true, auto equip will only occur if the main inventory is empty More... | |
bool | AutoEquipOnlyIfEquipmentInventoryIsEmpty |
if this is true, auto equip will only occur if the equipment inventory is empty More... | |
bool | AutoEquipOnRespawn = true |
if this is true, auto equip will also happen on respawn More... | |
CharacterHandleWeapon | CharacterHandleWeapon |
the target handle weapon ability - if left empty, will pick the first one it finds More... | |
virtual List< string > | AvailableWeaponsIDs => _availableWeaponsIDs |
Public Attributes inherited from MoreMountains.TopDownEngine.CharacterAbility | |
AudioClip | AbilityStartSfx |
the sound fx to play when the ability starts More... | |
AudioClip | AbilityInProgressSfx |
the sound fx to play while the ability is running More... | |
AudioClip | AbilityStopSfx |
the sound fx to play when the ability stops More... | |
MMFeedbacks | AbilityStartFeedbacks |
the feedbacks to play when the ability starts More... | |
MMFeedbacks | AbilityStopFeedbacks |
the feedbacks to play when the ability stops More... | |
bool | AbilityPermitted = true |
if true, this ability can perform as usual, if not, it'll be ignored. You can use this to unlock abilities over time for example More... | |
CharacterStates.MovementStates[] | BlockingMovementStates |
an array containing all the blocking movement states. If the Character is in one of these states and tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while Idle or Swimming, for example. More... | |
CharacterStates.CharacterConditions[] | BlockingConditionStates |
an array containing all the blocking condition states. If the Character is in one of these states and tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while dead, for example. More... | |
Weapon.WeaponStates[] | BlockingWeaponStates |
an array containing all the blocking weapon states. If one of the character's weapons is in one of these states and yet the character tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while attacking, for example. More... | |
AbilityEvent | OnAbilityStart |
AbilityEvent | OnAbilityStop |
Protected Member Functions | |
override void | Initialization () |
On init we setup our ability More... | |
virtual void | Setup () |
Grabs all inventories, and fills weapon lists More... | |
virtual void | AutoEquipWeapon () |
virtual void | GrabInventories () |
Grabs any inventory it can find that matches the names set in the inspector More... | |
override void | HandleInput () |
On handle input, we watch for the switch weapon button, and switch weapon if needed More... | |
virtual void | FillAvailableWeaponsLists () |
Fills the weapon list. The weapon list will be used to determine what weapon we can switch to More... | |
virtual void | DetermineNextWeaponName () |
Determines the name of the next weapon in line More... | |
virtual void | SwitchWeapon () |
Switches to the next weapon in line More... | |
override void | OnRespawn () |
Override this to describe what should happen to this ability when the character respawns More... | |
override void | OnDeath () |
Override this to describe what should happen to this ability when the character respawns More... | |
override void | OnEnable () |
On enable, we start listening for MMGameEvents. You may want to extend that to listen to other types of events. More... | |
override void | OnDisable () |
On disable, we stop listening for MMGameEvents. You may want to extend that to stop listening to other types of events. More... | |
Protected Member Functions inherited from MoreMountains.TopDownEngine.CharacterAbility | |
virtual void | Awake () |
On awake we proceed to pre initializing our ability More... | |
virtual void | Start () |
On Start(), we call the ability's intialization More... | |
virtual void | PreInitialization () |
A method you can override to have an initialization before the actual initialization More... | |
virtual void | BindAnimator () |
Binds the animator from the character and initializes the animator parameters More... | |
virtual void | InitializeAnimatorParameters () |
Adds required animator parameters to the animator parameters list if they exist More... | |
virtual void | InternalHandleInput () |
Internal method to check if an input manager is present or not More... | |
virtual void | RegisterAnimatorParameter (string parameterName, AnimatorControllerParameterType parameterType, out int parameter) |
Registers a new animator parameter to the list More... | |
virtual void | OnHit () |
Override this to describe what should happen to this ability when the character takes a hit More... | |
Protected Attributes | |
List< int > | _availableWeapons |
List< string > | _availableWeaponsIDs |
string | _nextWeaponID |
bool | _nextFrameWeapon = false |
string | _nextFrameWeaponName |
bool | _initialized = false |
int | _initializedFrame = -1 |
Protected Attributes inherited from MoreMountains.TopDownEngine.CharacterAbility | |
Character | _character |
TopDownController | _controller |
TopDownController2D | _controller2D |
TopDownController3D | _controller3D |
GameObject | _model |
Health | _health |
CharacterMovement | _characterMovement |
InputManager | _inputManager |
Animator | _animator = null |
CharacterStates | _state |
SpriteRenderer | _spriteRenderer |
MMStateMachine< CharacterStates.MovementStates > | _movement |
MMStateMachine< CharacterStates.CharacterConditions > | _condition |
AudioSource | _abilityInProgressSfx |
bool | _abilityInitialized = false |
float | _verticalInput |
float | _horizontalInput |
bool | _startFeedbackIsPlaying = false |
List< CharacterHandleWeapon > | _handleWeaponList |
Static Protected Attributes | |
const string | _emptySlotWeaponName = "_EmptySlotWeaponName" |
const string | _initialSlotWeaponName = "_InitialSlotWeaponName" |
Properties | |
virtual Inventory | MainInventory [get, set] |
virtual Inventory | WeaponInventory [get, set] |
virtual Inventory | HotbarInventory [get, set] |
Properties inherited from MoreMountains.TopDownEngine.CharacterAbility | |
virtual bool | AbilityAuthorized [get] |
virtual bool | AbilityInitialized [get] |
whether or not this ability has been initialized More... | |
Add this component to a character and it'll be able to control an inventory Animator parameters : none
|
protectedvirtual |
|
protectedvirtual |
Determines the name of the next weapon in line
|
virtual |
Equips the weapon with the name passed in parameters
weaponID |
|
protectedvirtual |
Fills the weapon list. The weapon list will be used to determine what weapon we can switch to
|
protectedvirtual |
Grabs any inventory it can find that matches the names set in the inspector
|
protectedvirtual |
On handle input, we watch for the switch weapon button, and switch weapon if needed
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
protectedvirtual |
On init we setup our ability
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
protectedvirtual |
Override this to describe what should happen to this ability when the character respawns
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
protectedvirtual |
On disable, we stop listening for MMGameEvents. You may want to extend that to stop listening to other types of events.
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
protectedvirtual |
On enable, we start listening for MMGameEvents. You may want to extend that to listen to other types of events.
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
virtual |
Watches for InventoryLoaded events When an inventory gets loaded, if it's our WeaponInventory, we check if there's already a weapon equipped, and if yes, we equip it
inventoryEvent | Inventory event. |
|
protectedvirtual |
Override this to describe what should happen to this ability when the character respawns
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
virtual |
The second of the 3 passes you can have in your ability. Think of it as Update()
Reimplemented from MoreMountains.TopDownEngine.CharacterAbility.
|
protectedvirtual |
Grabs all inventories, and fills weapon lists
|
protectedvirtual |
Switches to the next weapon in line
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
bool MoreMountains.TopDownEngine.CharacterInventory.AutoEquipOnlyIfEquipmentInventoryIsEmpty |
if this is true, auto equip will only occur if the equipment inventory is empty
bool MoreMountains.TopDownEngine.CharacterInventory.AutoEquipOnlyIfMainInventoryIsEmpty |
if this is true, auto equip will only occur if the main inventory is empty
bool MoreMountains.TopDownEngine.CharacterInventory.AutoEquipOnRespawn = true |
if this is true, auto equip will also happen on respawn
InventoryWeapon MoreMountains.TopDownEngine.CharacterInventory.AutoEquipWeaponOnStart |
a weapon to auto equip on start
AutoPickItem [] MoreMountains.TopDownEngine.CharacterInventory.AutoPickItems |
a list of items to automatically add to this Character's inventories on start
bool MoreMountains.TopDownEngine.CharacterInventory.AutoPickOnlyIfMainInventoryIsEmpty |
if this is true, auto pick items will only be added if the main inventory is empty
virtual List<string> MoreMountains.TopDownEngine.CharacterInventory.AvailableWeaponsIDs => _availableWeaponsIDs |
CharacterHandleWeapon MoreMountains.TopDownEngine.CharacterInventory.CharacterHandleWeapon |
the target handle weapon ability - if left empty, will pick the first one it finds
string MoreMountains.TopDownEngine.CharacterInventory.HotbarInventoryName |
the name of the hotbar inventory for this character
Transform MoreMountains.TopDownEngine.CharacterInventory.InventoryTransform |
a transform to pass to the inventories, will be passed to the inventories and used as reference for drops. If left empty, this.transform will be used.
string MoreMountains.TopDownEngine.CharacterInventory.MainInventoryName |
the name of the main inventory for this character
string MoreMountains.TopDownEngine.CharacterInventory.PlayerID = "Player1" |
the unique ID of this player as far as the InventoryEngine is concerned. This has to match all its Inventory and InventoryEngine UI components' PlayerID for that player. If you're not going for multiplayer here, just leave Player1.
string MoreMountains.TopDownEngine.CharacterInventory.WeaponInventoryName |
the name of the inventory where this character stores weapons
WeaponRotationModes MoreMountains.TopDownEngine.CharacterInventory.WeaponRotationMode = WeaponRotationModes.Normal |
the rotation mode for weapons : Normal will cycle through all weapons, AddEmptySlot will return to empty hands, AddOriginalWeapon will cycle back to the original weapon
|
getset |
|
getset |
|
getset |