public override void Update() { if (MapCollider.Intersects(SceneManager.gameScene.player.MapCollider)) { if (Sprite.Alpha == 1) { SoundManager.door.Play(); } if (Sprite.Alpha > .4f) { Sprite.Alpha -= .05f; } } else { if (Sprite.Alpha <= .4f) { SoundManager.door.Play(); } if (Sprite.Alpha < 1) { Sprite.Alpha += .05f; } } }
public override void Update() { Position += velocity; traveledDist += velocity.Length(); //List<GameObject> objects = new List<GameObject>(); //foreach (Enemy e in Game1.enemies) objects.Add((GameObject)e); foreach (GameObject g in SceneManager.gameScene.objects) { if (g.ObstructsBullets) { if (MapCollider.Intersects(g.BulletCollider)) { g.Health -= Properties.Damage * (traveledDist / Properties.MaxRange); this.Dead = true; } } } foreach (Tile t in CloseSolidTiles) { if (t.Properties.ObstructsBullets) { if (MapCollider.Intersects(t.Hitbox)) { this.Dead = true; } } } if (!Camera.AreaIsVisible(MapCollider)) { Dead = true; } }
public override void Update() { foreach (Item item in SceneManager.gameScene.objects.Where(item => item is Item && item.BulletCollider.Intersects(BulletCollider))) //yo dawg, i heard you like items.. { if (item.Properties == Items.properties[9]) { SceneManager.gameScene.RemoveObject(item); fuel++; Debug.WriteLine("boat got fuel, level: " + fuel); } } if (Velocity.Length() > 0) { Camera.Follow(Center); time++; if (time > 120) { SceneManager.CurrentScene = SceneManager.winScene; } SceneManager.gameScene.player.Position = Position + new Vector2(0, -50); } if (fuel >= REQUIRED_FUEL && MapCollider.Intersects(SceneManager.gameScene.player.MapCollider)) { //end the game Velocity = new Vector2(10, 5); //SceneManager.gameScene.RemoveObject(SceneManager.gameScene.player); Sprite.Frame = 0; SceneManager.CurrentScene.RemoveObject(SceneManager.gameScene.player); SceneManager.gameScene.player.Sprite.AnimationSpeed = 0; SceneManager.gameScene.player.inventoryVisible = false; } Position += Velocity; base.Update(); }