Esempio n. 1
0
 private void Start()
 {
     charactersState = CharactersState.Idle;
     InputController.OnInputAction += OnInputCommand;
     //animator.SetFloat("Speed", 1f);
     //StartCoroutine(WaitForRun(3f));
 }
Esempio n. 2
0
 private void Skill()
 {
     if (charactersState == CharactersState.Attack || charactersState == CharactersState.Skill)
     {
         return;
     }
     charactersState = CharactersState.Skill;
     animator.SetTrigger("Skill");
     DelayRun.Execute(delegate { charactersState = CharactersState.Idle; Camera.main.GetComponent <Animator>().SetTrigger("Shake"); }, 1f, gameObject);
 }
Esempio n. 3
0
 private void Attack()
 {
     if (charactersState == CharactersState.Attack || charactersState == CharactersState.Skill)
     {
         return;
     }
     charactersState = CharactersState.Attack;
     animator.SetTrigger("Attack");
     DelayRun.Execute(delegate { charactersState = CharactersState.Idle; }, 0.5f, gameObject);
 }
Esempio n. 4
0
    private IEnumerator WaitForRun(float time)
    {
        charactersState = CharactersState.Attack;
        var timer = Time.time + time;

        while (Time.time < timer)
        {
            transform.Translate(transform.forward * Time.deltaTime);
            yield return(null);
        }
        animator.SetFloat("Speed", 0f);
        charactersState = CharactersState.Idle;
    }
        private String NextCharacterSpawnChance(CharactersState chars, int playCount)
        {
            switch (chars.NumUnlockedRandos)
            {
            case 0:
                return($"Play count: {playCount} (Mines Spawn: {(100f / Math.Max(9, 51 - playCount)).ToString("0.00")}%)");

            case 1:
                return($"Play count: {playCount} (Jungle Spawn: {(100f / Math.Max(9, 101 - playCount)).ToString("0.00")}%)");

            case 2:
                return($"Play count: {playCount} (Ice Spawn: {(100f / Math.Max(9, 201 - playCount)).ToString("0.00")}%)");

            case 3:
                return($"Play count: {playCount} (Temple Spawn: {(100f / Math.Max(9, 301 - playCount)).ToString("0.00")}%)");
            }
            return("");
        }
        private int TargetUnlockCount = 16; // I doubt they'll add more characters, could be changed to enum size though

        private SegmentStatus CheckStatus(CharactersState chars, int playCount)
        {
            var numEntriesUnlocked = chars.NumUnlockedCharacters;

            if (numEntriesUnlocked > 16)
            {
                return(new SegmentStatus()
                {
                    Type = SegmentStatusType.ERROR,
                    Message = $"More than {TargetUnlockCount} characters have been unlocked."
                });
            }
            else
            {
                return(new SegmentStatus()
                {
                    Type = SegmentStatusType.INFO,
                    Message = $"Waiting for characters ({chars.NumUnlockedCharacters}/{CharactersState.NumCharacters}). {NextCharacterSpawnChance(chars, playCount)}"
                });
            }
        }