示例#1
0
    public void Update()
    {
        if (DoPower)
        {
            switch (m_power)
            {
            case Powers.None:
                break;

            case Powers.Add:
            case Powers.Substract:
                BasicPower();
                break;

            case Powers.Multiplication:
                MultiPower();
                break;

            case Powers.Division:
                DiviPower();
                break;

            case Powers.Convert:
                break;

            default:
                break;
            }
            if (powerFunction.PowerStep == -1 || powerFunction.isReady)
            {
                if (m_power == Powers.Add || m_power == Powers.Substract)
                {
                    powerFunction.BasicStop(ref m_items);
                }
                else if (m_power == Powers.Division)
                {
                    powerFunction.DiviStop(ref m_items);
                }

                m_usePower            = false;
                powerFunction.isReady = false;
            }
        }
        else //De en/två objekt man har plockat upp
        {
            for (int i = 0; i < m_items.Count; i++)
            {
                if (m_usePower)
                {
                    MoveToMerge(m_items[i]);
                }
                else
                {
                    if (m_split)
                    {
                        m_items.Add(m_items[0].popMergeObj());
                        foreach (Pickeditem p in m_items)
                        {
                            p.StartMS(true, false);
                        }
                        m_items[1].setMoveTo = Positions.Picked;
                        m_split = false;
                        break;
                    }
                    if (RemoveSection(m_items[i]))
                    {
                        break;
                    }
                    m_usePower = false;
                }
                m_items[i].Update(i, 0.5f, m_items.Count);
            }
        }
    }