Beispiel #1
0
    [Test]     //update_nextのテスト
    public void test_update_next()
    {
        next_puyo test_target = new next_puyo();

        test_target.init();

        int[] color = new int[2];

        bool flag = false;

        color[0] = test_target.get().get_color(0);
        color[1] = test_target.get().get_color(1);

        for (int i = 0; i < 10; i++)
        {
            puyopuyo ret_puyo = test_target.get();

            if ((color[0] != ret_puyo.get_color(0)) || (color[1] != ret_puyo.get_color(1)))
            {
                flag = true;
                break;
            }

            test_target.update_next();
        }

        Assert.AreEqual(true, flag);
    }
Beispiel #2
0
    [Test]     //initのテスト
    public void test_init()
    {
        next_puyo test_target = new next_puyo();

        test_target.init();

        puyopuyo ret_puyo = test_target.get();

        //puyo
        Assert.AreNotEqual(ret_puyo, null);

        //puyo color
        for (int i = 0; i < 2; i++)
        {
            int color = ret_puyo.get_color(i);
            Assert.AreEqual(3, color, 3);
        }

        //puyo pos
        for (int i = 0; i < 2; i++)
        {
            Assert.AreEqual(0, ret_puyo.get_position(i).get_x());
            Assert.AreEqual(0, ret_puyo.get_position(i).get_y());
        }
    }
Beispiel #3
0
    [Test]     //getのテスト
    public void test_get()
    {
        next_puyo test_target = new next_puyo();

        test_target.init();

        puyopuyo obj = test_target.get();

        Assert.AreNotEqual(null, obj);
    }
Beispiel #4
0
        //--------------------
        //fix
        //--------------------
        public void fix(puyopuyo input_puyo)
        {
            for (int i = 0; i < 2; i++)
            {
                int   color = input_puyo.get_color(i);
                Point pos   = input_puyo.get_position(i);

                m_Grid[pos.get_x(), pos.get_y()] = color;
            }
            set_state(1);
        }
Beispiel #5
0
        public void init()
        {
            //フィールド
            m_game_field = new GameField();
            m_game_field.init();

            //現在のぷよ生成
            m_temp_puyo = new puyopuyo();
            m_temp_puyo.init();

            //nextの生成と初期化
            m_next = new next_puyo();
            m_next.init();
        }
Beispiel #6
0
    public void test_next2temp()
    {
        GameManager test_target = new GameManager();

        test_target.init();

        test_target.next2temp();

        puyopuyo test = test_target.get_temp_puyo();

        Assert.AreEqual(3, test.get_position(0).get_x());
        Assert.AreEqual(10, test.get_position(0).get_y());
        Assert.AreEqual(3, test.get_position(1).get_x());
        Assert.AreEqual(11, test.get_position(1).get_y());
    }
Beispiel #7
0
    void update_next(puyopuyo next_puyo)
    {
        delete_next();
        for (int i = 0; i < 2; i++)
        {
            int color = next_puyo.get_color(i);
            int pos_x = 8;
            int pos_y = 9 + i;

            if (color == 0)
            {
                continue;
            }
            m_displayNext[i] = Instantiate(m_PrefabPuyo[color - 1], new Vector3(pos_x, pos_y, 0), new Quaternion(0, 0, 0, 0));
        }
    }
Beispiel #8
0
        public void rotate(bool isRight)
        {
            //copy
            puyopuyo prev_puyo = new puyopuyo();

            prev_puyo.init();
            prev_puyo.copy(m_temp_puyo);

            //rotate
            m_temp_puyo.rotate(isRight);

            //check
            if (m_game_field.check_collision(ref m_temp_puyo) == true)
            {
                m_temp_puyo.copy(prev_puyo);
            }
        }
    [Test]     //copyのテスト
    public void test_copy_color()
    {
        puyopuyo test_target = new puyopuyo();

        test_target.init();

        test_target.set_color(0, 1);
        test_target.set_color(1, 2);

        puyopuyo copy_obj = new puyopuyo();

        copy_obj.copy_color(test_target);

        for (int i = 0; i < 2; i++)
        {
            int color = copy_obj.get_color(i);
            Assert.AreEqual(color, i + 1);
        }
    }
    public void test_check_collision()
    {
        GameField test_target = new GameField();

        test_target.init();

        puyopuyo test_puyo = new puyopuyo();

        test_puyo.init();

        //ok
        test_puyo.set_position(0, 0, 0);
        test_puyo.set_position(1, 1, 0);

        Assert.AreEqual(false, test_target.check_collision(ref test_puyo));

        //range 0
        test_puyo.set_position(0, -1, 0);
        test_puyo.set_position(1, 0, 0);

        Assert.AreEqual(true, test_target.check_collision(ref test_puyo));

        //range 1
        test_puyo.set_position(0, 0, 0);
        test_puyo.set_position(1, -1, 0);

        Assert.AreEqual(true, test_target.check_collision(ref test_puyo));

        //puyo 0
        test_puyo.set_position(0, 0, 0);
        test_puyo.set_position(1, 1, 0);

        test_target.set_value(0, 0, 1);
        Assert.AreEqual(true, test_target.check_collision(ref test_puyo));

        //puyo 1
        test_puyo.set_position(0, 0, 0);
        test_puyo.set_position(1, 1, 0);

        test_target.set_value(1, 1, 1);
        Assert.AreEqual(true, test_target.check_collision(ref test_puyo));
    }
Beispiel #11
0
    [Test]     //initのテスト
    public void test_init()
    {
        puyopuyo test_target = new puyopuyo();

        test_target.init();

        //color
        for (int i = 0; i < 2; i++)
        {
            int color = test_target.get_color(i);
            Assert.AreEqual(color, 0);
        }

        //pos
        for (int i = 0; i < 2; i++)
        {
            Assert.AreEqual(0, test_target.get_position(i).get_x());
            Assert.AreEqual(0, test_target.get_position(i).get_y());
        }
    }
Beispiel #12
0
        //--------------------
        //collision
        //--------------------
        public bool check_collision(ref puyopuyo input_puyo)
        {
            //range
            bool ans1 = isRange(input_puyo.get_position(0));
            bool ans2 = isRange(input_puyo.get_position(1));

            if ((ans1 == false) || (ans2 == false))
            {
                return(true);
            }

            //puyo
            ans1 = isPuyo(input_puyo.get_position(0));
            ans2 = isPuyo(input_puyo.get_position(1));
            if ((ans1 == false) || (ans2 == false))
            {
                return(true);
            }

            return(false);
        }
    public void test_fix()
    {
        GameField test_target = new GameField();

        test_target.init();

        puyopuyo test_puyo = new puyopuyo();

        test_puyo.init();

        test_puyo.set_position(0, 1, 0);
        test_puyo.set_position(1, 1, 1);
        test_puyo.set_color(0, 2);
        test_puyo.set_color(1, 3);

        test_target.fix(test_puyo);

        Assert.AreEqual(2, test_target.get_value(1, 0));
        Assert.AreEqual(3, test_target.get_value(1, 1));

        Assert.AreEqual(1, test_target.get_state());
    }
Beispiel #14
0
        public bool move(int move_x, int move_y)
        {
            //copy
            puyopuyo prev_puyo = new puyopuyo();

            prev_puyo.init();
            prev_puyo.copy(m_temp_puyo);

            //move
            m_temp_puyo.move(new Point(move_x, move_y));

            //check
            if (m_game_field.check_collision(ref m_temp_puyo) == true)
            {
                m_temp_puyo.copy(prev_puyo);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Beispiel #15
0
    public void test_rotate()
    {
        GameManager test_target = new GameManager();

        test_target.init();

        puyopuyo temp = test_target.get_temp_puyo();

        //-----set-----
        temp.set_position(0, 1, 2);
        temp.set_position(1, 1, 3);

        //move
        test_target.rotate(true);

        //check 0
        Assert.AreEqual(test_target.get_temp_puyo().get_position(0).get_x(), 1);
        Assert.AreEqual(test_target.get_temp_puyo().get_position(0).get_y(), 2);

        //check 1
        Assert.AreEqual(test_target.get_temp_puyo().get_position(1).get_x(), 0);
        Assert.AreEqual(test_target.get_temp_puyo().get_position(1).get_y(), 2);

        //-----set-----
        temp.set_position(0, 0, 0);
        temp.set_position(1, 0, 1);

        //move
        test_target.rotate(true);

        //check 0
        Assert.AreEqual(test_target.get_temp_puyo().get_position(0).get_x(), 0);
        Assert.AreEqual(test_target.get_temp_puyo().get_position(0).get_y(), 0);

        //check 1
        Assert.AreEqual(test_target.get_temp_puyo().get_position(1).get_x(), 0);
        Assert.AreEqual(test_target.get_temp_puyo().get_position(1).get_y(), 1);
    }
Beispiel #16
0
    void update_temp(puyopuyo temp_puyo)
    {
        delete_temp();

        if (temp_puyo.is_valid() == false)
        {
            return;
        }

        for (int i = 0; i < 2; i++)
        {
            int color = temp_puyo.get_color(i);

            if (color == 0)
            {
                continue;
            }

            Point   temp_pos = temp_puyo.get_position(i);
            Vector3 pos      = new Vector3(temp_pos.get_x(), temp_pos.get_y(), 0);

            m_dislayTemp[i] = Instantiate(m_PrefabPuyo[color - 1], pos, new Quaternion(0, 0, 0, 0));
        }
    }
Beispiel #17
0
 //---------------------------------
 //描画
 //---------------------------------
 public void draw(GameField gamefield, puyopuyo temp_puyo, puyopuyo next_puyo)
 {
     update_temp(temp_puyo);
     update_grid(gamefield);
     update_next(next_puyo);
 }
Beispiel #18
0
 //init
 public void init()
 {
     m_puyopuyo = new puyopuyo();
     m_puyopuyo.init();
     update_next();
 }