コード例 #1
0
ファイル: UKI_Data.cs プロジェクト: icelab-uki/uki
        public void checkSwitch_Spin()
        {
            //70-120
            if (p_spin_step == 0 && p_handR_Z < 1 && p_handL_Z < 1)
            {
                if (facing_Angle < 70)
                {
                    p_spin_step = 1;  p_spin_clockwise = true;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
                else if (facing_Angle > 110)
                {
                    p_spin_step = 1;  p_spin_clockwise = false;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
            }
            else if (p_spin_step == 1)
            {
                if (p_spin_clockwise == true && facing_Angle > 140)
                {
                    p_spin_step = 2;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
                else if (p_spin_clockwise == false && facing_Angle < 60)
                {
                    p_spin_step = 2;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
            }
            else if (p_spin_step == 2)
            {
                if (p_spin_clockwise == true && facing_Angle < 90)
                {
                    p_spin_step = 3; p_spin_ready = true;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
                else if (p_spin_clockwise == false && facing_Angle > 90)
                {
                    p_spin_step = 3; p_spin_ready = true;
                    if (offline_process)
                    {
                        p_spin_timeCombo_offline = current_id;
                    }
                    else
                    {
                        p_spin_timeCombo = DateTime.Now;
                    }
                }
            }
            //----------
            Boolean timeout = false;

            if (p_spin_step == 1 || p_spin_step == 2 || p_spin_step == 3)
            {
                if (offline_process && current_id > p_spin_timeCombo_offline + 25)
                {
                    timeout = true;
                }
                else if (TheTool.checkTimePass(1000, p_spin_timeCombo, time2))
                {
                    timeout = true;
                }
            }
            //
            if (timeout)
            {
                p_spin_step = 0; p_spin_ready = false;
            }
        }