Пример #1
0
    private void TeleportFighters()
    {
        // Make sure player is facing right direction
        SpriteRenderer playerSprite = Player.GetComponent <SpriteRenderer>();

        if (playerSprite.flipX)
        {
            playerSprite.flipX = false;
        }

        // Positioning the player
        Player.transform.position = new Vector2(PlayerFightSpawn.transform.position.x, PlayerFightSpawn.transform.position.y);
        PlayerMovement pm = Player.GetComponent <PlayerMovement>();

        pm.CanMove(false); // player cannot move

        // positioning mob
        transform.parent.position = new Vector2(MobFightSpawn.transform.position.x, MobFightSpawn.transform.position.y);

        // ready to fight
        fightManager.CanFight(true);
        fightManager.SetOpponent(transform.parent.gameObject.GetComponent <Mob>()); // storing player's opponent

        // activate health bars
        fightManager.ShowFightUI(true);
    }
Пример #2
0
    private IEnumerator EndFight()
    {
        // Interrupting animation if running
        animationRunning = false;

        // Setting mob to defeated
        defeated = true;

        // Setting next turn to player's turn and deactivating buttons
        fightManager.currentTurn = FightManager.Turn.Player;
        fightManager.ButtonsActive(false);

        // Playing mob's death animation
        gameObject.GetComponent <Animator>().Play(gameObject.name + "_Dead");

        yield return(new WaitForSeconds(2f));

        // Mob now dead
        dead = true;

        // Send delegate
        if (onPlayerDefeatMob != null)
        {
            onPlayerDefeatMob();
        }

        // Add food to player inventory
        inventoryManager.AddItemToInventory(dropItem, Random.Range(0, 4));

        // Fight is ended
        fightManager.CanFight(false);
        ResetForNextFight();             // Resetting
        fightManager.ActivateFakeMobs(); // Activating animated models for attacks
        Destroy(gameObject);             // Mob is destroyed
    }
 public void CheckHealth()
 {
     if (CurrentHealth <= 0)
     {
         dead = true;
         fightManager.CanFight(false);
         ResetForNextFight();
         Debug.Log("Player is defeated");
     }
 }