public TileBackground(Texture2D _sprite, Vector2 _pos, Vector2 _vel, int _hp, LevelManager l) : base(_sprite, _pos, _vel, _hp, l) { rect = l.getCurrentLevelArea(); rect.Inflate(10000, 10000); pos.X -= 5000; pos.Y -= 5000; center.X += 5000; center.Y += 5000; rotation = (float)Game1.random.NextDouble() * (float)Math.PI * 2.0f; }
public virtual void update(GameTime gameTime) { pos += vel; vel *= friction; updateBBoxPos(); if (rotation < 0) { rotation += (float)Math.PI * 2.0f; } if (rotation > (float)Math.PI * 2.0f) { rotation -= (float)Math.PI * 2.0f; } if (alive && firing) { if (fireCounter == 0) { fireBullet(); } fireCounter = (fireCounter + 1) % fireCounterMax; } if (bounded) { if (pos.X < levelManager.getCurrentLevelArea().Left) { pos.X = levelManager.getCurrentLevelArea().Left; } else if (pos.X > levelManager.getCurrentLevelArea().Right) { pos.X = levelManager.getCurrentLevelArea().Right; } if (pos.Y > levelManager.getCurrentLevelArea().Bottom) { pos.Y = levelManager.getCurrentLevelArea().Bottom; } else if (pos.Y < levelManager.getCurrentLevelArea().Top) { pos.Y = levelManager.getCurrentLevelArea().Top; } } }
public void update(GameTime gameTime) { move(player.getPos() - pos); camArea = levelManager.getCurrentLevelArea(); camArea.Inflate(-200, -200); if (pos.X < camArea.Left) { pos.X = camArea.Left; } else if (pos.X > camArea.Right) { pos.X = camArea.Right; } if (pos.Y > camArea.Bottom) { pos.Y = camArea.Bottom; } else if (pos.Y < camArea.Top) { pos.Y = camArea.Top; } /*if (pos.X - screenPos.X < levelManager.getCurrentLevelArea().Left) * pos.X = levelManager.getCurrentLevelArea().Left + screenPos.X; * else if (pos.X + screenPos.X > levelManager.getCurrentLevelArea().Right) * pos.X = levelManager.getCurrentLevelArea().Right - screenPos.X; * if (pos.Y + screenPos.Y > levelManager.getCurrentLevelArea().Bottom) * pos.Y = levelManager.getCurrentLevelArea().Bottom - screenPos.Y; * else if (pos.Y - screenPos.Y < levelManager.getCurrentLevelArea().Top) * pos.Y = levelManager.getCurrentLevelArea().Top + screenPos.Y;*/ updateTransform(); //Console.WriteLine(transform); }