public void InitState(CharStateManager thisCharacter)
 {
     //activate rig, play animation.
     thisCharacter.attackRig.SetActive(true);
     thisCharacter.animator.Play(thisCharacter.CHAR_ATTACK);
     SoundManager.Instance.Play(thisCharacter.attackAudioList[Random.Range(0, thisCharacter.attackAudioList.Count - 1)]);
     thisCharacter.currentSkillObject.PlaySkillAnimation(GameManager.bossPosition);
     thisCharacter.DecrementSkillCost();
     //invoke a delegate here to let BossState and anyone elser who cares that this player has begun an attack.
     // you can even pass thisCharacter as an argument
     // AH YES..PASS IN A DELAY FLOAT DEPENDING ON THE SKILL
     // thisCharacter.playerAttackStart?.Invoke(0);
 }
Example #2
0
 public void InitState(CharStateManager thisCharacter)
 {
     thisCharacter.buffRig.SetActive(true);
     thisCharacter.animator.Play(thisCharacter.CHAR_BUFF);
     SoundManager.Instance.Play(thisCharacter.attackAudioList[Random.Range(0, thisCharacter.attackAudioList.Count - 1)]);
     thisCharacter.DecrementSkillCost();
     //because this is a buff..we need to make sure this plays in 3 diff positions...so...just call it 3 times!
     //each with the proper ally positions
     foreach (var character in thisCharacter.gameManager.currentCharacters)
     {
         //debug this later to ffind out the type.
         thisCharacter.currentSkillObject.PlaySkillAnimation(character.transform.position);
     }
 }