Beispiel #1
0
        public void Update(GameTime gameTime)
        {
            ((Player)ObjectList[0][0]).ControlledPlayer = true;
            foreach (BaseEnitiy obj in ObjectList[0])
            {
                if (obj is Player)
                {
                    if (((Player)obj).ControlledPlayer == true)
                    {
                        ControlledPlayer = (Player)obj;
                    }
                }
                obj.SetSprite(RAM.LoadContent(obj.CurrentAnimation.GetSpriteName(obj.CurrentAnimation.GetFrame())));
            }



            KeyboardState keyboardState = Keyboard.GetState();

            if (Menuflag == true)
            {
                pointer.Update(gameTime);
                if (keyboardState.IsKeyDown(Keys.Enter))
                {
                    if (pointer.GetChoice() == 0)//Move
                    {
                        Menuflag = false;
                    }
                    else if (pointer.GetChoice() == 1)//Attack
                    {
                        ((BattleChar)ObjectList[0][5]).Targeted = true;
                    }
                    else if (pointer.GetChoice() == 2)//Magic
                    {
                    }
                    else if (pointer.GetChoice() == 3)//Skill
                    {
                    }
                    else if (pointer.GetChoice() == 4)//Defend
                    {
                    }
                    else if (pointer.GetChoice() == 5)//Run
                    {
                        RAM.BattleFlag = false;
                    }
                }
            }
            else
            {
                // base.Update();
                MoveTime.Update(gameTime);
                foreach (BaseEnitiy obj in ObjectList[0])
                {
                    if (obj is Player)
                    {
                        ((Player)obj).Update(gameTime);
                    }
                    if (obj != ControlledPlayer)
                    {
                        if (obj.GetCir().Intersects(ControlledPlayer.GetPosition(), obj.GetPosition()) == false)
                        {
                            if (keyboardState.IsKeyDown(Keys.Up) &&
                                keyboardState.IsKeyDown(Keys.Left))
                            {
                                ControlledPlayer.SetPosition(new Vector2(ControlledPlayer.GetPosition().X + (RAM.TILESIZE / 8), ControlledPlayer.GetPosition().Y + (RAM.TILESIZE / 8)));
                            }
                            else if (keyboardState.IsKeyDown(Keys.Up) &&
                                     keyboardState.IsKeyDown(Keys.Right))
                            {
                                ControlledPlayer.SetPosition(new Vector2(ControlledPlayer.GetPosition().X - (RAM.TILESIZE / 8), ControlledPlayer.GetPosition().Y + (RAM.TILESIZE / 8)));
                            }
                            else if (keyboardState.IsKeyDown(Keys.Down) &&
                                     keyboardState.IsKeyDown(Keys.Left))
                            {
                                ControlledPlayer.SetPosition(new Vector2(ControlledPlayer.GetPosition().X + (RAM.TILESIZE / 8), ControlledPlayer.GetPosition().Y - (RAM.TILESIZE / 8)));
                            }
                            else if (keyboardState.IsKeyDown(Keys.Down) &&
                                     keyboardState.IsKeyDown(Keys.Right))
                            {
                                ControlledPlayer.SetPosition(new Vector2(ControlledPlayer.GetPosition().X - (RAM.TILESIZE / 8), ControlledPlayer.GetPosition().Y - (RAM.TILESIZE / 8)));
                            }
                            else if (keyboardState.IsKeyDown(Keys.Up))
                            {
                                ControlledPlayer.SetPositionY(ControlledPlayer.GetPosition().Y + RAM.TILESIZE / 8);
                            }
                            else if (keyboardState.IsKeyDown(Keys.Down))
                            {
                                ControlledPlayer.SetPositionY(ControlledPlayer.GetPosition().Y - RAM.TILESIZE / 8);
                            }
                            else if (keyboardState.IsKeyDown(Keys.Left))
                            {
                                ControlledPlayer.SetPositionX(ControlledPlayer.GetPosition().X + RAM.TILESIZE / 8);
                            }
                            else if (keyboardState.IsKeyDown(Keys.Right))
                            {
                                ControlledPlayer.SetPositionX(ControlledPlayer.GetPosition().X - RAM.TILESIZE / 8);
                            }
                        }
                    }
                }
            }

            /*
             * KeyboardState keyboardState = Keyboard.GetState();
             * float time = (float)gameTime.ElapsedGameTime.TotalMilliseconds;
             * BattleChar Chased = null;
             * base.Update();
             *
             * //TempList = ObjectList;
             * for (int x = 0; x <= PlayerList.Count - 1; )
             * {
             *  PlayerList.Remove(PlayerList[x]);
             * }
             * for (int x = 0; x <= EnemyList.Count - 1; )
             * {
             *  EnemyList.Remove(EnemyList[x]);
             * }
             * foreach (BattleChar obj in ObjectList)
             * {
             *  obj.MoveFlag = true;
             *  if (obj is Player)
             *  {
             *      if(((Player)obj).ControlledPlayer == true)
             *      {
             *          ControlledPlayer = ((Player)obj);
             *      }
             *      PlayerList.Add(((Player)obj));
             *      ((Player)obj).Update(gameTime);
             *  }
             *  if (obj is Enemy)
             *  {
             *      EnemyList.Add(((Enemy)obj));
             *      ((Enemy)obj).Update(gameTime);
             *  }
             *  CircleCollision(time);
             * }
             * LeftX = lowest;
             * lowest = 0;
             * int test = 0;
             * /////////////////////////////////////////////////////////////////////////////////////
             * /////////////////////////////////////////////////////////////////////////////////////
             *
             * foreach (Enemy enemy in EnemyList)
             * {
             *  if (enemy.MoveFlag == true)
             *  {
             *      int LowestHP = PlayerList[0].HP;
             *      foreach (Player player in PlayerList)
             *      {
             *
             *          if (LowestHP <= player.HP)
             *          {
             *              Chased = player;
             *          }
             *      }
             *
             *      Chase(gameTime, enemy, Chased);
             *  }
             * }
             * ////////////////////////////////////////////////////////////////////////////////////////////////////////
             * foreach (Player player in PlayerList)
             * {
             *  float MoveSpeed = player.MoveSpeed;
             *  if (player.MoveFlag == true)
             *  {
             *          if (player is TestPlayer)
             *          {
             *
             *              if (keyboardState.IsKeyDown(Keys.Right))
             *              {
             *                  float dsd = player.GetPosition().X;
             *                  float dse = player.GetPosition().Y;
             *                  int sdf = 34;
             *              }
             *                                      if (keyboardState.IsKeyDown(Keys.Up)
             *                  && keyboardState.IsKeyDown(Keys.Left))
             *              {
             *
             *                  player.SetPosition(new Vector2(player.GetPosition().X - MoveSpeed, player.GetPosition().Y - MoveSpeed));
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X + MoveSpeed, camera.GetPosition().Y + MoveSpeed));
             *                  StatsPos.X -= MoveSpeed;
             *                  StatsPos.Y -= MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Up)
             *                  && keyboardState.IsKeyDown(Keys.Right))
             *              {
             *                  player.SetPosition(new Vector2(player.GetPosition().X + MoveSpeed, player.GetPosition().Y - MoveSpeed));
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X - MoveSpeed, camera.GetPosition().Y + MoveSpeed));
             *                  StatsPos.X += MoveSpeed;
             *                  StatsPos.Y -= MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Down)
             *              && keyboardState.IsKeyDown(Keys.Left))
             *              {
             *                  player.SetPosition(new Vector2(player.GetPosition().X - MoveSpeed, player.GetPosition().Y + MoveSpeed));
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X + MoveSpeed, camera.GetPosition().Y - MoveSpeed));
             *                  StatsPos.X -= MoveSpeed;
             *                  StatsPos.Y += MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Down)
             *              && keyboardState.IsKeyDown(Keys.Right))
             *              {
             *                  player.SetPosition(new Vector2(player.GetPosition().X + MoveSpeed, player.GetPosition().Y + MoveSpeed));
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X - MoveSpeed, camera.GetPosition().Y - MoveSpeed));
             *                  StatsPos.X += MoveSpeed;
             *                  StatsPos.Y += MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Up))
             *              {
             *                  player.SetPositionY(player.GetPosition().Y - MoveSpeed);
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X, camera.GetPosition().Y + MoveSpeed));
             *                  StatsPos.Y -= MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Down))
             *              {
             *                  player.SetPositionY( player.GetPosition().Y + MoveSpeed);
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X, camera.GetPosition().Y - MoveSpeed));
             *                  StatsPos.Y += MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Left))
             *              {
             *                  player.SetPositionX(player.GetPositionX() - MoveSpeed);
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X + MoveSpeed, camera.GetPosition().Y));
             *                  StatsPos.X -= MoveSpeed;
             *              }
             *              else if (keyboardState.IsKeyDown(Keys.Right))
             *              {
             *                  float dsd = player.GetPosition().X;
             *                  float dse = player.GetPosition().Y;
             *                  float erew = MoveSpeed;
             *                  player.SetPositionX(player.GetPositionX() + MoveSpeed);
             *                  camera.SetPosition(new Vector2(camera.GetPosition().X - MoveSpeed, camera.GetPosition().Y));
             *                  StatsPos.X += MoveSpeed;
             *                  float dsdg = player.GetPosition().X;
             *                  int ds = 34;
             *              }
             *          }
             *          else
             *          {
             *              Chased = EnemyList[0];
             *              Chase(gameTime, player,Chased);
             *          }
             *  }
             * }
             * foreach (BattleChar obj in ObjectList)
             * {
             *  if (obj.HP < 0)
             *  {
             *      ObjectList.Remove(obj);
             *      break;
             *  }
             * }*/
            foreach (BattleChar obj in ObjectList[0])
            {
                obj.SetSprite(RAM.LoadContent(obj.CurrentAnimation.GetSpriteName(obj.CurrentAnimation.GetFrame())));
            }
        }