コード例 #1
0
ファイル: Alg.cs プロジェクト: karma19350/NumberHero
        private void GO()
        {
            if (Atop == 0)
            {
                return;
            }

            int[] dd = getA();
            for (int i = 0; i < 10; ++i)
            {
                if (dd[i] != -1)
                {
                    num[dd[i]].Used = true;
                }
            }

            if (!GoMove())
            {
                if (!GoAttack())
                {
                    ClearAlg();
                    if (CheckEmpty())
                    {
                        game.NewRound();
                    }
                }
            }
        }
コード例 #2
0
ファイル: Map.cs プロジェクト: karma19350/NumberHero
        public void GetClick(Point p)
        {
            if (!game.Waiting)
            {
                game.nowPlayer.ShowSpark(game.nowPlayer, "[" + game.nowPlayer.HP.ToString() + "]");
                for (int i = 0; i < game.cntPlayer; ++i)
                {
                    if (!game.player[i].Equals(game.nowPlayer))
                    {
                        if (game.player[i].Alive)
                        {
                            game.player[i].ShowSpark(game.player[i], game.player[i].HP.ToString(), false);
                        }
                    }
                }
            }


            if (game.WaitReviving)
            {
                for (int i = 0; i < MapX; ++i)
                {
                    for (int j = 0; j < MapY; ++j)
                    {
                        if (MapR[i, j].Contains(p))
                        {
                            if (bo[i, j])
                            {
                                game.nowPlayer.Appear(game.nowPlayer.str, i, j);
                                game.nowPlayer.Alive = true;
                                cmdDisappear();
                                game.WaitReviving = false;
                                game.NewRound();
                                return;
                            }
                        }
                    }
                }
            }

            if (game.WaitMoving)
            {
                for (int i = 0; i < MapX; ++i)
                {
                    for (int j = 0; j < MapY; ++j)
                    {
                        if (MapR[i, j].Contains(p))
                        {
                            if (bo[i, j])
                            {
                                game.nowPlayer.MoveTo(i, j);
                                cmdDisappear();
                                game.alg.ClearOpr();
                                game.WaitMoving = false;
                                if (!game.alg.GoAttack())
                                {
                                    game.alg.ClearAlg();
                                }
                                return;
                            }
                        }
                    }
                }
            }

            if (game.WaitAttacking)
            {
                for (int i = 0; i < MapX; ++i)
                {
                    for (int j = 0; j < MapY; ++j)
                    {
                        if (MapR[i, j].Contains(p))
                        {
                            if (bo[i, j])
                            {
                                for (int k = 0; k < game.cntPlayer; ++k)
                                {
                                    Player pl = game.player[k];
                                    if (pl.X == i && pl.Y == j && pl.Alive)
                                    {
                                        game.nowPlayer.Attack(pl);
                                        cmdDisappear();
                                        game.WaitAttacking = false;
                                        game.alg.ClearAlg();
                                        return;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }