Esempio n. 1
0
        public void InitializeSprites(ContentManager Content)
        {
            for (GunLevelUnit gunLevel = 0; gunLevel < Units.MaxGunLevel; gunLevel++)
            {
                horizontalProjectiles[gunLevel] = new Sprite(Content, "Bullet",
                                                             Units.TileToPixel(HorizontalProjectileSourceXs[gunLevel]), Units.TileToPixel(ProjectileSourceYs[gunLevel]),
                                                             Units.TileToPixel(1), Units.TileToPixel(1));
                verticalProjectiles[gunLevel] = new Sprite(Content, "Bullet",
                                                           Units.TileToPixel(HorizontalProjectileSourceXs[gunLevel] + 1), Units.TileToPixel(ProjectileSourceYs[gunLevel]),
                                                           Units.TileToPixel(1), Units.TileToPixel(1));
            }

            for (SpriteState.HorizontalFacing horizontalFacing = SpriteState.HorizontalFacing.FirstHorizontalFacing;
                 horizontalFacing < SpriteState.HorizontalFacing.LastHorizontalFacing;
                 ++horizontalFacing)
            {
                for (SpriteState.VerticalFacing verticalFacing = SpriteState.VerticalFacing.FirstVerticalFacing;
                     verticalFacing < SpriteState.VerticalFacing.LastVerticalFacing;
                     ++verticalFacing)
                {
                    InitializeSprite(Content, new PolarStarSpriteState(
                                         new Tuple <SpriteState.HorizontalFacing, SpriteState.VerticalFacing>(
                                             horizontalFacing, verticalFacing)));
                }
            }
        }
 public static ProjectileStarParticle Create(ContentManager Content, GameUnit x, GameUnit y)
 {
     return(new ProjectileStarParticle(Content, SpriteName,
                                       Units.TileToPixel(SourceX), Units.TileToPixel(SourceY),
                                       Units.TileToPixel(SourceWidth), Units.TileToPixel(SourceHeight),
                                       Fps, NumFrames, x, y));
 }
Esempio n. 3
0
        public void InitializeSprite(ContentManager Content, BatSpriteState spriteState)
        {
            TileUnit tileY = spriteState.HorizontalFacing == CaveStory.SpriteState.HorizontalFacing.Right ? (uint)3 : (uint)2;

            sprites[spriteState] = new AnimatedSprite(Content, "Npc\\NpcCemet",
                                                      Units.TileToPixel(2), Units.TileToPixel(tileY),
                                                      Units.TileToPixel(1), Units.TileToPixel(1),
                                                      FlyFps, NumFlyFrames);
        }
Esempio n. 4
0
 public override void Draw(SpriteBatch spriteBatch)
 {
     for (TileUnit x = 0; x < Game1.ScreenWidth; x += BackgroundSize)
     {
         for (TileUnit y = 0; y < Game1.ScreenHeight; y += BackgroundSize)
         {
             spriteBatch.Draw(tex, new Vector2(Units.TileToPixel(x), Units.TileToPixel(y)), Color.White);
         }
     }
 }
Esempio n. 5
0
 public PowerDoritoPickup(ContentManager Content, GameUnit centerX, GameUnit centerY, SizeType size) : base(CollisionType.BouncingCollision)
 {
     kinematicsX = new Kinematics(centerX - Units.HalfTile, (Game1.Random.Next(0, 11) - 5) * 0.025f);
     kinematicsY = new Kinematics(centerY - Units.HalfTile, (Game1.Random.Next(0, 11) - 5) * 0.025f);
     sprite      = new AnimatedSprite(Content, SpriteName,
                                      Units.TileToPixel(SourceX), Units.TileToPixel(SourceYs[(int)size]),
                                      Units.TileToPixel(SourceWidth), Units.TileToPixel(SourceHeight),
                                      Fps, NumFrames);
     this.size = size;
     timer     = new Timer(LifeTime, true);
 }
Esempio n. 6
0
 public Game1() : base()
 {
     graphics = new GraphicsDeviceManager(this);
     Content.RootDirectory = Config.graphicsQuality == Config.GraphicsQuality.OriginalQuality ?
                             "Content/OriginalGraphics" : "Content/HighQualityGraphics";
     System.Windows.Forms.Screen screen = System.Windows.Forms.Screen.AllScreens[0];
     Window.IsBorderless = true;
     Window.Position     = new Point(screen.Bounds.X, screen.Bounds.Y);
     graphics.PreferredBackBufferWidth  = Units.TileToPixel(ScreenWidth);
     graphics.PreferredBackBufferHeight = Units.TileToPixel(ScreenHeight);
     graphics.IsFullScreen = false;
 }
Esempio n. 7
0
 public DeathCloudParticle(ContentManager Content,
                           GameUnit centerX, GameUnit centerY,
                           VelocityUnit speed, DegreesUnit angle)
 {
     this.centerX = centerX - Units.HalfTile;
     this.centerY = centerY - Units.HalfTile;
     this.speed   = speed;
     offset       = new PolarVector(0, angle);
     sprite       = new AnimatedSprite(Content, SpriteName,
                                       Units.TileToPixel(SourceX), Units.TileToPixel(SourceY),
                                       Units.TileToPixel(SourceWidth), Units.TileToPixel(SourceHeight),
                                       Fps, NumFrames);
 }
Esempio n. 8
0
        public static Map CreateTestMap(ContentManager Content)
        {
            Map map = new Map();

            map.backdrop = new FixedBackdrop("bkBlue", Content);

            TileUnit numRows = 15;
            TileUnit numCols = 20;

            map.tiles = new List <List <Tile> >();
            for (int i = 0; i < numRows; i++)
            {
                map.backgroundTiles.Add(new List <Sprite>());
                map.tiles.Add(new List <Tile>());
                for (int j = 0; j < numCols; j++)
                {
                    map.backgroundTiles[i].Add(null);
                    map.tiles[i].Add(new Tile());
                }
            }

            Sprite   sprite = new Sprite(Content, "Stage/PrtCave", Units.TileToPixel(1), 0, Units.TileToPixel(1), Units.TileToPixel(1));
            BitArray tmp    = TileInfo.CreateTileType();

            tmp.Set((int)TileInfo.TileFlag.Wall, true);
            Tile     tile = new Tile(tmp, sprite);
            TileUnit row  = 11;

            for (TileUnit col = 0; col < numCols; col++)
            {
                map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col)] = tile;
            }
            map.tiles[10][5] = tile;
            map.tiles[9][4]  = tile;
            map.tiles[8][3]  = tile;
            map.tiles[7][2]  = tile;
            map.tiles[10][3] = tile;

            Sprite chainTop = new Sprite(Content, "Stage/PrtCave", Units.TileToPixel(11), Units.TileToPixel(2),
                                         Units.TileToPixel(1), Units.TileToPixel(1));
            Sprite chainMiddle = new Sprite(Content, "Stage/PrtCave", Units.TileToPixel(12), Units.TileToPixel(2),
                                            Units.TileToPixel(1), Units.TileToPixel(1));
            Sprite chainBottom = new Sprite(Content, "Stage/PrtCave", Units.TileToPixel(13), Units.TileToPixel(2),
                                            Units.TileToPixel(1), Units.TileToPixel(1));

            map.backgroundTiles[8][2]  = chainTop;
            map.backgroundTiles[9][2]  = chainMiddle;
            map.backgroundTiles[10][2] = chainBottom;
            return(map);
        }
Esempio n. 9
0
 public GunExperienceHud(ContentManager Content)
 {
     experienceBarSprite = new Sprite(Content, SpriteName,
                                      Units.GameToPixel(ExperienceBarSourceX), Units.GameToPixel(ExperienceBarSourceY),
                                      Units.GameToPixel(ExperienceBarSourceWidth), Units.GameToPixel(ExperienceBarSourceHeight));
     levelSprite = new Sprite(Content, SpriteName,
                              Units.TileToPixel(LevelSourceX), Units.GameToPixel(LevelSourceY),
                              Units.TileToPixel(LevelSourceWidth), Units.GameToPixel(LevelSourceHeight));
     flashSprite = new Sprite(Content, SpriteName,
                              Units.GameToPixel(FlashSourceX), Units.TileToPixel(FlashSourceY),
                              Units.GameToPixel(ExperienceBarSourceWidth), Units.GameToPixel(ExperienceBarSourceHeight));
     fillSprite = new VaryingWidthSprite(Content, SpriteName,
                                         Units.TileToPixel(FillSourceX), Units.TileToPixel(FillSourceY),
                                         Units.GameToPixel(ExperienceBarSourceWidth), 0,
                                         Units.GameToPixel(ExperienceBarSourceHeight));
     maxSprite = new Sprite(Content, SpriteName,
                            Units.GameToPixel(MaxSourceX), Units.GameToPixel(MaxSourceY),
                            Units.GameToPixel(ExperienceBarSourceWidth), Units.GameToPixel(ExperienceBarSourceHeight));
     flashTimer = new Timer(FlashTime);
     number     = NumberSprite.HudNumber(Content, 0, 2);
 }
Esempio n. 10
0
 private FlashingPickup(ContentManager Content,
                        GameUnit centerX, GameUnit centerY,
                        TileUnit sourceX, TileUnit sourceY,
                        Rectangle rectangle,
                        int value, Pickup.PickupType type)
 {
     sprite = new Sprite(Content, SpriteName,
                         Units.TileToPixel(sourceX), Units.TileToPixel(sourceY),
                         Units.TileToPixel(1), Units.TileToPixel(1));
     flashSprite = new Sprite(Content, SpriteName,
                              Units.TileToPixel(sourceX + 1), Units.TileToPixel(sourceY),
                              Units.TileToPixel(1), Units.TileToPixel(1));
     dissipatingSprite = new Sprite(Content, SpriteName,
                                    Units.TileToPixel(DissipatingSourceX), Units.TileToPixel(DissipatingSourceY),
                                    Units.TileToPixel(1), Units.TileToPixel(1));
     x              = centerX - Units.HalfTile;
     y              = centerY - Units.HalfTile;
     timer          = new Timer(LifeTime, true);
     flashPeriod    = StartPeriod;
     this.rectangle = rectangle;
     this.value     = value;
     this.type      = type;
 }
Esempio n. 11
0
        public static Map CreateSlopeTestMap(ContentManager Content)
        {
            Map map = new Map();

            map.backdrop = new FixedBackdrop("bkBlue", Content);

            TileUnit numRows = 15;
            TileUnit numCols = 20;

            map.tiles = new List <List <Tile> >();
            for (int i = 0; i < numRows; i++)
            {
                map.backgroundTiles.Add(new List <Sprite>());
                map.tiles.Add(new List <Tile>());
                for (int j = 0; j < numCols; j++)
                {
                    map.backgroundTiles[i].Add(null);
                    map.tiles[i].Add(new Tile());
                }
            }

            BitArray tmp = TileInfo.CreateTileType();

            tmp.Set((int)TileInfo.TileFlag.Wall, true);
            Tile wallTile = new Tile(tmp, new Sprite(Content, "Stage/PrtCave", Units.TileToPixel(1), 0, Units.TileToPixel(1), Units.TileToPixel(1)));

            Tile[] slopeTiles = new Tile[(int)SlopeTiles.NumSlopes];
            for (int i = 0; i < (int)SlopeTiles.NumSlopes; i++)
            {
                BitArray a = TileInfo.CreateTileType();
                a.Set((int)TileInfo.TileFlag.Slope, true);
                a.Set(i / 2 % 2 == 0 ? (int)TileInfo.TileFlag.LeftSlope : (int)TileInfo.TileFlag.RightSlope, true);
                a.Set(i / 4 == 0 ? (int)TileInfo.TileFlag.TopSlope : (int)TileInfo.TileFlag.BottomSlope, true);
                a.Set((i + 1) / 2 % 2 == 0 ? (int)TileInfo.TileFlag.TallSlope : (int)TileInfo.TileFlag.ShortSlope, true);
                slopeTiles[i] = new Tile(a, new Sprite(Content, "Stage/PrtCave",
                                                       Units.TileToPixel((uint)(2 + i % 4)), Units.TileToPixel((uint)(i / 4)),
                                                       Units.TileToPixel(1), Units.TileToPixel(1)));
            }
            TileUnit row = 11;
            TileUnit col;

            for (col = 0; col < numCols; col++)
            {
                map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col)] = wallTile;
            }
            row--;
            col = 0;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.LBT];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.RBT];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.LBS];
            col++;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.RBS];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.RBT];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.LBT];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.LBS];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.RBS];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]     = slopeTiles[(int)SlopeTiles.RBT];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col)]       = wallTile;
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.RBS];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col)]       = wallTile;
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.RBT];
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col++)] = wallTile;
            col++;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = slopeTiles[(int)SlopeTiles.RBS];
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)] = wallTile;
            col  = 0;
            row -= 3;
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = wallTile;
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = slopeTiles[(int)SlopeTiles.LTT];
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = slopeTiles[(int)SlopeTiles.LTS];
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = slopeTiles[(int)SlopeTiles.RTS];
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = slopeTiles[(int)SlopeTiles.RTT];
            map.tiles[Convert.ToInt32(row - 1)][Convert.ToInt32(col)] = wallTile;
            map.tiles[Convert.ToInt32(row)][Convert.ToInt32(col++)]   = wallTile;
            return(map);
        }
Esempio n. 12
0
        public void InitializeSprite(ContentManager Content, PolarStarSpriteState spriteState)
        {
            TileUnit tileY = spriteState.HorizontalFacing == SpriteState.HorizontalFacing.Left ?
                             Convert.ToUInt32(LeftOffset) : Convert.ToUInt32(RightOffset);

            switch (spriteState.VerticalFacing)
            {
            case SpriteState.VerticalFacing.Horizontal:
                tileY += HorizontalOffset;
                break;

            case SpriteState.VerticalFacing.Up:
                tileY += UpOffset;
                break;

            case SpriteState.VerticalFacing.Down:
                tileY += DownOffset;
                break;

            case SpriteState.VerticalFacing.LastVerticalFacing:
                break;
            }
            sprites[spriteState] = new Sprite(Content, SpritePath,
                                              Units.GameToPixel(PolarStarIndex * GunWidth), Units.TileToPixel(tileY),
                                              Units.GameToPixel(GunWidth), Units.GameToPixel(GunHeight));
        }
Esempio n. 13
0
 public Vector2 ToPixelUnit2D()
 {
     return(new Vector2(Units.TileToPixel((uint)value.X), Units.TileToPixel((uint)value.Y)));
 }
Esempio n. 14
0
        public void InitializeSprite(ContentManager Content, SpriteState spriteState)
        {
            TileUnit tileY = spriteState.horizontalFacing == SpriteState.HorizontalFacing.Left ?
                             Convert.ToUInt32(CharacterFrame) : Convert.ToUInt32(1 + CharacterFrame);

            TileUnit tileX = 0;

            switch (spriteState.motionType)
            {
            case SpriteState.MotionType.Walking:
                tileX = Convert.ToUInt32(WalkFrame);
                break;

            case SpriteState.MotionType.Standing:
                tileX = Convert.ToUInt32(StandFrame);
                break;

            case SpriteState.MotionType.Interacting:
                tileX = Convert.ToUInt32(BackFrame);
                break;

            case SpriteState.MotionType.Jumping:
                tileX = Convert.ToUInt32(JumpFrame);
                break;

            case SpriteState.MotionType.Falling:
                tileX = Convert.ToUInt32(FallFrame);
                break;

            case SpriteState.MotionType.LastMotionType:
                break;
            }

            switch (spriteState.verticalFacing)
            {
            case SpriteState.VerticalFacing.Horizontal:
                break;

            case SpriteState.VerticalFacing.Up:
                tileX += Convert.ToUInt32(UpFrameOffset);
                break;

            case SpriteState.VerticalFacing.Down:
                tileX = Convert.ToUInt32(DownFrame);
                break;

            default:
                break;
            }

            if (spriteState.motionType == SpriteState.MotionType.Walking)
            {
                switch (spriteState.strideType)
                {
                case SpriteState.StrideType.StrideMiddle:
                    break;

                case SpriteState.StrideType.StrideLeft:
                    tileX += 1;
                    break;

                case SpriteState.StrideType.StrideRight:
                    tileX += 2;
                    break;

                default:
                    break;
                }
                sprites.Add(spriteState, new Sprite(Content, SpriteFilePath,
                                                    Units.TileToPixel(tileX), Units.TileToPixel(tileY),
                                                    Units.TileToPixel(1), Units.TileToPixel(1)));
            }
            else
            {
                sprites.Add(spriteState, new Sprite(Content, SpriteFilePath,
                                                    Units.TileToPixel(tileX), Units.TileToPixel(tileY),
                                                    Units.TileToPixel(1), Units.TileToPixel(1)));
            }
        }