Пример #1
0
    public void MengmengComeOn(ref MengMeng meng, ref Wupeng wupeng)
    {
        if (wupeng.state != State_Wupeng.Sleep)
        {
            meng.timer += Time.deltaTime;

            if (meng.timer > (1.0f / (float)meng.attackSpeed))
            {
                meng.timer  = 0.0f;
                meng.count += 1;

                if (meng.count % 2 == 0)
                {
                    Debug.Log("meng打鼓加buff,wupeng获得 " + meng.attackAdd + " 点攻击增益");
                    wupeng.attack += meng.attackAdd;
                    wupeng.buff   += meng.attackAdd;
                }
            }
        }
        if (wupeng.state == State_Wupeng.Sleep)
        {
            wupeng.attack -= wupeng.buff;
            wupeng.buff    = 0;
        }
    }
Пример #2
0
        public void SateMachine(ref Doudou doudou, ref Zz zz, ref WuWu wuwu, ref MengMeng meng)
        {
            CurrentTime += Time.deltaTime;
            //Debug.Log(CurrentTime);
            switch (state)
            {
            case Wupeng.State.Eating:
                meng.StateMachine(ref this);
                if (CurrentTime - 3f >= 0)
                {
                    CurrentTime = 0;
                    Energy      = 100;
                    state       = Wupeng.State.Beating;
                    Debug.Log("Wupeng is Beating");
                }
                break;

            case Wupeng.State.Beating:
                meng.StateMachine(ref this);
                if (CurrentTime - 1f >= 0)
                {
                    CurrentTime = 0;
                    Energy     -= 10;
                    doudou.HP  -= Atk;
                    Debug.Log("doudou.HP is " + doudou.HP);
                    Debug.Log("Wupeng.Energy is " + Energy);
                    if (Energy <= 0)
                    {
                        state = Wupeng.State.Sleeping;
                        Debug.Log("Wupeng is Sleeping");
                    }
                }
                break;

            case Wupeng.State.Sleeping:
                Atk = Base_Atk;
                zz.SateMachine(ref doudou, ref wuwu);
                if (CurrentTime - 5f >= 0)
                {
                    CurrentTime = 0;
                    state       = Wupeng.State.Eating;
                    Debug.Log("Wupeng is Eating");
                }
                break;
            }
        }
Пример #3
0
    void Start()
    {
        //work01
        wupeng = new Wupeng()
        {
            enegy = 0, attack = 8, state = State_Wupeng.Eat, timer = 0.0f, buff = 0
        };

        //work02
        doudou = new Doudou()
        {
            name = "DouDou", hp = 1000
        };

        //work04
        zz = new ZZ()
        {
            name = "zz", recover = 5, timer = 0.0f, state = State_ZZ.Prepare, count = 0, buff = 0
        };


        //work06
        wuwu = new Wuwu()
        {
            name = "wuwu", recoverAdd = 1, recoverSpeed = 3, timer = 0.0f
        };

        //work07
        meng = new MengMeng()
        {
            name = "meng", attackAdd = 1, attackSpeed = 4, timer = 0.0f, count = 0
        };

        //work08
        tlight = new TrafficLight()
        {
            state  = State_TrafficLight.Yellow, green_last = 2.0f, red_last = 3.0f, yello_last = 1.5f, timer = 0.0f,
            yellow = imgYellow, green = imgGreen, red = imgRed
        };

        //work09
        timer = new Timer()
        {
            timer = 0.0f
        };

        //work10
        rocket = new Rocket()
        {
            image       = imgRocket,
            speed       = 2f,
            state       = State_Rocket.counting,
            lunchDevice = new LunchDevice()
            {
                countdown_Prepare = new Timer()
                {
                    timer = 10.0f, temper = 10.0f
                }, countdown_lunch = new Timer()
                {
                    timer = 2.0f, temper = 2.0f
                }
            }
        };
    }
Пример #4
0
    public void WupengUpdate(ref Wupeng wupeng, ref ZZ zz, ref Doudou doudou, ref Wuwu wuwu, ref MengMeng meng)
    {
        WupengUpdate(ref wupeng, ref doudou);

        ZZRecoverDoudou(ref wupeng, ref zz, ref doudou);

        WuwuComeOn(ref zz, ref wuwu);

        MengmengComeOn(ref meng, ref wupeng);
    }