Beispiel #1
0
 private int arbitraryNumber; //yes its arbitray. idk why it works but it does
 public ParallaxBackground(Room room, string spriteName, float layer, float distSpeed)
 {
     arbitraryNumber = 32;
     Room            = room;
     DistanceSpeed   = distSpeed;
     Sprite          = new SpriteData();
     Sprite.Layer    = layer / 1000;
     windowSize      = new Vector2(Room.Game.GraphicsDevice.Viewport.Width, Room.Game.GraphicsDevice.Viewport.Height);
     Sprite.Size     = windowSize * 1.1f;
     AssetManager.RequestTexture(spriteName, (frame) =>
     {
         Sprite.Change(frame);
         drawFrom    = windowSize - Sprite.Size;
         drawFrom.Y += arbitraryNumber;
     });
 }
 public CompressedTouhouBall(Room room, Vector2 pos, float dir) : base(room, pos, dir)
 {
     outlineHue           = 0;
     outlineColor         = new Color(255, 255, 255);
     outlineSprite        = new SpriteData();
     outlineSprite.Layer  = 4f / 100;
     outlineSprite.Size   = new Vector2(32, 32);
     outlineSprite.Offset = outlineSprite.Size / 2;
     Speed         = 3;
     Sprite.Size   = new Vector2(24, 24);
     Sprite.Offset = Sprite.Size / 2;
     Hitbox        = AddVectorToRect(new Rectangle(0, 0, (int)Sprite.Size.X, (int)Sprite.Size.Y), -Sprite.Offset * 2);
     Sprite.Layer  = 5f / 100;
     AssetManager.RequestTexture("touhouBall", (frames) =>
     {
         Sprite.Change(frames);
     });
     AssetManager.RequestTexture("touhouBallOutline", (frames) =>
     {
         outlineSprite.Change(frames);
     });
 }
Beispiel #3
0
 public BossObject(Room room, Vector2 pos) : base(room, pos, new Vector2(0, 0), new Vector2(64, 64))
 {
     life         = maxLife;
     stepCooldown = 0;
     sprayDir     = minSprayDir;
     attackMode   = 3;
     target       = null;
     remainingStepsBeforeChange = stepsBeforeAttackChange;
     Sprite               = new SpriteData();
     Sprite.Size          = new Vector2(64, 64);
     Sprite.Layer         = Layer;
     Sprite.Speed         = 0.1f;
     Light                = new LightData();
     Light.Brightness     = 64;
     Light.Position       = Position + (Size / 2);
     healthbar            = new SpriteData();
     healthbar.Size       = new Vector2(384, 32);
     healthbar.Source     = new Rectangle(0, 0, (int)healthbar.Size.X, (int)healthbar.Size.Y);
     healthbar.Layer      = 0.98f;
     healthbarFrame       = new SpriteData();
     healthbarFrame.Size  = new Vector2(384, 32);
     healthbarFrame.Layer = 0.99f;
     drawHealthbarFrom    = new Vector2((Room.Game.GraphicsDevice.Viewport.Width - healthbarFrame.Size.X) / 2, healthbarTopPadding);
     AssetManager.RequestTexture("clownpiece", (frames) =>
     {
         Sprite.Change(frames);
     });
     AssetManager.RequestTexture("clownpieceHealthbar", (frames) =>
     {
         healthbar.Change(frames);
     });
     AssetManager.RequestTexture("clownpieceHealthbarFrame", (frames) =>
     {
         healthbarFrame.Change(frames);
     });
 }