Esempio n. 1
0
        public override void OnUpdate(float deltaTime)
        {
            // Lerp everything off life time
            if (!lifeTime.Check(false))
            {
                curColor = ColorRGB.Lerp(fireColor, smokeColor, lifeTime.PercentComplete);
                curScale = Utils.Lerp(0.2f, 1, lifeTime.PercentComplete);
                curRot   = Utils.Lerp(0, 90, lifeTime.PercentComplete);

                if (lifeTime.PercentComplete >= 2f / 3f)
                {
                    curTexture    = smokeTexture3;
                    smokeOffset.x = smokeTexture3.width / 2;
                    smokeOffset.y = smokeTexture3.height / 2;
                }
                else if (lifeTime.PercentComplete >= 1f / 3f)
                {
                    curTexture    = smokeTexture2;
                    smokeOffset.x = smokeTexture2.width / 2;
                    smokeOffset.y = smokeTexture2.height / 2;
                }
                else
                {
                    smokeOffset.x = smokeTexture1.width / 2;
                    smokeOffset.y = smokeTexture1.height / 2;
                }
                smokeOffset *= curScale;

                base.OnUpdate(deltaTime);
                return;
            }

            // Death Zone
            SmokeManager.RemoveSmoke(this);
        }
Esempio n. 2
0
 public void CheckCollision(Tank tank)
 {
     if (Collider.Collision(collider, tank.collider))
     {
         tank.TakeDamage();
         SmokeManager.CreateSmoke(Position);
         Destroy();
     }
 }
Esempio n. 3
0
        void GameDraw()
        {
            background.Draw();

            PickupManager.Draw();
            EnemyManager.Draw();
            SmokeManager.Draw();

            player.Draw();

            UI.Draw(player);
        }
Esempio n. 4
0
        void GameUpdate()
        {
            currentTime = stopwatch.ElapsedMilliseconds;
            deltaTime   = (currentTime - lastTime) / 1000.0f;

            timer += deltaTime;
            if (timer >= 1)
            {
                fps    = frames;
                frames = 0;
                timer -= 1;
            }
            frames++;

            player.Update(deltaTime);

            background.Update(deltaTime);
            EnemyManager.Update(deltaTime);
            PickupManager.Update(deltaTime);
            SmokeManager.Update(deltaTime);

            CurCenter = Program.Center;
            lastTime  = currentTime;
        }