Exemplo n.º 1
0
    //顺序结算
    public void useinput(inputpackage p)
    {
        //if (p.wasd) { }
        if (p.useCard_skill)
        {
            card_mini c = mini(p.user).minion;//可能是手牌也可能是场上的
            if (c != null && cards.Contains(p.user))
            {
                order o = new order();
                o.usecard      = mini(p.use_mini);
                o.whichTrigger = p.use_trigger;
                //------------------------------------
                o.Target_pos     = p.targetposs;
                o.Target_card    = mini(p.target_mini);
                o.Target_trigger = trigger(p.target_trigger);
                o.action         = p.action;

                bool r = c.get_Input_order(o);
                if (r == false)
                {
                    print("tool  false");
                }
            }
        }
    }
Exemplo n.º 2
0
 //递归 逐条分解
 void moveOneLine(card_mini begin)
 {
     //如果有等待的上级移动 而且还没有移动
     if (begin.upmove && todoList.Contains(begin.upmove))
     {
         moveOneLine(begin.upmove);
     }
     begin.move_New_pos(deltaTime);//调用
     todoList.Remove(begin);
 }
Exemplo n.º 3
0
    public void OnTriggerEnter(Collider c)
    {
        if (debug)
        {
            print(c.gameObject.name);
        }
        card_mini m = c.gameObject.GetComponent <card_mini>();

        if (!m)
        {
            return;
        }
        if (debug)
        {
            print("get");
        }
        if (isfriend == miniKind.onlytarget)
        {
            if (m == mini().target)
            {
                lastenter = m; return;
            }
            else
            {
                return;
            }
        }

        int k = 0;

        if (m.player() == player())
        {
            k += 1;
        }
        else
        {
            k += 2;
        }
        if (m.player().hero == m)
        {
            k += 16;
        }
        else
        {
            k += 32;
        }
        //print("" + k + kind);
        if ((k & (int)isfriend) != 0 && (k & (int)ishero) != 0)
        {
            lastenter = m;
        }
    }
Exemplo n.º 4
0
    public override step_target test()
    {
        if (!lastenter)
        {
            return(null);
        }
        step_target n = new step_target();

        n.user        = mini();
        n.targretposs = transform.position;
        n.targetcard  = lastenter;
        //print(n);
        lastenter = null;
        return(n);
    }
Exemplo n.º 5
0
    public void setUpMove(card_mini theset)
    {
        card_mini toTest = theset;

        while (toTest.upmove_ != null)
        {
            if (toTest.upmove_ == this)
            {
                return;
            }
            else
            {
                toTest = toTest.upmove_;
            }
        }
        upmove = theset; return;
    }
Exemplo n.º 6
0
 public void setHP(card_mini m)
 {
     HP.value = m.now_HP / m.now_MaxHP;
 }