Ejemplo n.º 1
0
    void take_damage(float dmg)
    {
        player_hp -= dmg * Time.deltaTime;
        if (player_1)
        {
            UI_controller.instance.UpdateP1_health(player_hp);
        }
        else
        {
            UI_controller.instance.UpdateP2_health(player_hp);
        }

        if (player_hp <= 0)
        {
            rigid.velocity = Vector3.zero;
            GetComponent <BoxCollider2D>().enabled = false;
            animator.enabled    = false;
            manager.dead_count += 1;
            if (player_1)
            {
                GetComponent <SpriteRenderer>().sprite = P1_die;
            }
            else
            {
                GetComponent <SpriteRenderer>().sprite = P2_die;
            }
        }

        if (manager.dead_count == 2)
        {
            manager.gameover("ace");//gameover
        }
    }
Ejemplo n.º 2
0
    IEnumerator timer()
    {
        while (remaining_time > 0)
        {
            yield return(new WaitForSeconds(1));

            pointer_rect.eulerAngles -= new Vector3(0, 0, 1.2f);
            remaining_time--;
            next_switch--;
            if (next_switch == 0)
            {
                Camera_Controller.instance.Switch_host();
                next_switch = 30;
            }

            next_consume--;
            if (next_consume == 0)
            {
                if (food_list.Count > 0)
                {
                    DeleteFood();
                    manager.food -= 1;
                }
                next_consume = food_consume_time;
            }

            if (ship_appear_time > 0)
            {
                ship_appear_time--;
                if (ship_appear_time == 0)
                {
                    ship.SetActive(true);
                }
            }
            time.text = (remaining_time / 60).ToString() + " : " + (remaining_time % 60).ToString("00");
        }
        manager.gameover("timeup");
    }
Ejemplo n.º 3
0
    IEnumerator collect_item()
    {
        stop_cor_while = false;
        if (wood)
        {
            audio_source.clip = chop;
            audio_source.Play();
        }
        else if (food)
        {
            audio_source.clip = get_food;
            audio_source.Play();
        }
        else if (buildingHouse)
        {
            audio_source.clip = build;
            audio_source.Play();
        }
        sprite.sprite = ing_sprite;


        if (control_script.player_1)
        {
            UI_controller.instance.P1_progress_bar.gameObject.SetActive(true);
            UI_controller.instance.P1_progress_bar.transform.position = transform.position + 6 * Vector3.up;
            UI_controller.instance.P1_child.fillAmount = 0;

            float total_frame = (time / control_script.ability_power[control_script.resource_type]) / Time.deltaTime;

            while (!stop_cor_while && UI_controller.instance.P1_child.fillAmount < 0.98f)
            {
                UI_controller.instance.P1_child.fillAmount += 0.98f / total_frame;
                yield return(null);
            }
            UI_controller.instance.P1_progress_bar.gameObject.SetActive(false);
        }
        else
        {
            UI_controller.instance.P2_progress_bar.gameObject.SetActive(true);
            UI_controller.instance.P2_progress_bar.transform.position = transform.position + 6 * Vector3.up;
            UI_controller.instance.P2_child.fillAmount = 0;

            float total_frame = (time / control_script.ability_power[control_script.resource_type]) / Time.deltaTime;

            while (!stop_cor_while && UI_controller.instance.P2_child.fillAmount < 0.98f)
            {
                UI_controller.instance.P2_child.fillAmount += 0.98f / total_frame;
                yield return(null);
            }
            UI_controller.instance.P2_progress_bar.gameObject.SetActive(false);
        }

        if (!stop_cor_while)
        {
            control_script.collecting = false;
            completed = true;
            if (wood || food)
            {
                GetComponent <BoxCollider2D>().enabled = false;
                if (wood)
                {
                    manager.wood++;
                    UI_controller.instance.AddWood();
                    Dynamic_resource_manager.instance.Destroy_Wood(gameObject);//delay setActive(false)
                }
                else if (food)
                {
                    manager.food++;
                    UI_controller.instance.AddFood();
                    Dynamic_resource_manager.instance.Destroy_Food(gameObject);
                }
            }
            else if (buildingHouse)
            {
                manager.house_duration.Add(duration);
                UI_controller.instance.Add_Duration_Bar(transform.position + 6 * Vector3.up, false);
                StartCoroutine(count_down(duration));
            }
            else if (fire)
            {
                manager.fire_duration.Add(duration);
                UI_controller.instance.Add_Duration_Bar(transform.position + 6 * Vector3.up, true);
                StartCoroutine(count_down(duration));
            }
            else if (ship)
            {
                print(control_script.transform.name + " take ship");
                manager.gameover(control_script.transform.name);
            }
            sprite.sprite = after_sprite;
        }
        else
        {
            sprite.sprite = ori_sprite;
        }

        control_script.animator.SetBool("collecting", false);
        control_script.animator.SetBool("slashing", false);
        control_script.animator.SetBool("building", false);
        audio_source.Stop();
    }