예제 #1
0
 public void jump()//跳跃消耗和速度
 {
     if (contral.GetStatenum() <= 2 && move.isground() && health.cando())
     {
         move.AddSpeed(0, jumpspeed);
         health.consumeqi(consume);
         health.setrecoverqi(false);
         jumping = true;
     }
 }
예제 #2
0
 public void doattack(string s, float time, int num)//动作预设的时间,和预设的触发器,这个函数交给XXcontral来主动触发动作
 {
     if (contral.GetStatenum() <= 2)
     {
         if (health.cando())
         {
             contral.doit(s, canAttack(num), time);
         }
     }
 }
예제 #3
0
    public void dash(Charactercontral a)
    {//冲刺
        Heathscrips health = gameObject.GetComponent <Heathscrips>();

        if (a.GetStatenum() < 2 && (health == null || health.cando()))
        {
            animator.SetBool("dashing", true);
            move.setX(0);
            move.setY(0);
            contral = a;
            dashes  = dashtime;     //dash的时间设置为dashtime
            contral.Setstatenum(3); //技能状态
            right = move.Turn();


            if (health != null)
            {
                health.consumeqi(6);
            }
        }
    }
예제 #4
0
    // Update is called once per frame
    void Update()
    {
        if (right && left)
        {
            if (contral.GetStatenum() == 1)
            {
                contral.Setstatenum(0);
            }
        }
        else if (left)//输入为左,即为负
        {
            if (contral.GetStatenum() <= 1)
            {
                move.Turn(false);       //向左转向 ,即为负  角色向左走
                contral.Setstatenum(1); //如果不是移动状态设置为移动状态
            }
            if (contral.GetStatenum() <= 2)
            {
                move.moves(false);//如果不是技能状态,就可以移动    但是此状态下无法转向
            }
        }
        else if (right)//输入为右,即为正  角色向右走
        {
            if (contral.GetStatenum() <= 1)
            {
                move.Turn(true);        //向右转向
                contral.Setstatenum(1); //如果不是移动状态设置为移动状态
            }
            if (contral.GetStatenum() <= 2)
            {
                move.moves(true);//如果不是技能状态,就可以移动    但是此状态下无法转向
            }
        }
        else //停止状态
        {
            if (contral.GetStatenum() == 1)
            {
                contral.Setstatenum(0);
            }
        }

        right = false;
        left  = false;
    }