/* public AbstractBrick(Vector2D positionUL, Vector2D positionUR, Vector2D positionDL,string p) { this.PositionUL = positionUL; this.PositionUR = positionUR; this.PositionDL = positionDL; this.picture = p; }*/ public AbstractBrick(Vector2D positionUL, Vector2D positionUR, Vector2D positionDL, GameBitmap bmp) { this.PositionUL = positionUL; this.PositionUR = positionUR; this.PositionDL = positionDL; this.bmp = bmp; this.ObjectTextures = null; }
public BigBrick(Vector2D positionVector, int virtualGameWidth, int virtualGameHeight, GameBitmap bmp) : base(new Vector2D(positionVector), new Vector2D(positionVector.X + 220, positionVector.Y), //+ висината new Vector2D(positionVector.X, positionVector.Y + 100) /* + висината */ ,bmp/*slikata*/) { this.GameWidth = virtualGameWidth; this.GameHeight = virtualGameHeight; this.Position = new Vector2D(positionVector); ObjectWidth = 220; ObjectHeight = 100; Velocity = new Vector2D(0, 0); this.Health = 200; this.DamageEffect = 200; this.InitTextures(); }
//дечки, тоа што сте го пратиле на конструкторот //: base(new Vector2D(positionVector), positionVector + new Vector2D(200, 0), //+ висината //positionVector + new Vector2D(0, 80) /* + висината */, p) //тука треба да биде како што го поправив, овој + new Vector2D(100, 0) поместува //од горното лево теме до горното десно при што поместувањето треба //да биде за вектор (должина, 0), затоа тука е 100, не 200. public SmallBrick(Vector2D positionVector, int virtualGameWidth, int virtualGameHeight,GameBitmap bmp) : base(new Vector2D(positionVector), new Vector2D(positionVector.X + 100, positionVector.Y), //+ ШИРИНА (width) new Vector2D(positionVector.X, positionVector.Y + 100) /* + висината (height) */,bmp) { this.GameWidth = virtualGameWidth; this.GameHeight = virtualGameHeight; this.Position = new Vector2D(positionVector); ObjectWidth = 100; ObjectHeight = 100; Velocity = new Vector2D(0, 0); this.Health = 100; this.DamageEffect = 200; this.InitTextures(); }
/// <summary> /// Иницијализирај ги (вчитај ги) сите слики за циглите во меморија. Овој метод е направен /// поради оптимизација. Сите цигли од ист тип ќе користат иста слика (бидејќи /// сите од ист тип се и со исти димензии нема да има resize). /// </summary> private void InitBrickTextures() { BrickTextureRedRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_red_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureBlueRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_blue_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexturePurpleRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_purple_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureYellowRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_yellow_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureGreyRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_grey_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureGreenRectangle = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_green_rectangle.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureRedRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_red_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureBlueRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_blue_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexturePurpleRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_purple_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureYellowRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_yellow_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureGreyRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_grey_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTextureGreenRectangle1 = new GameBitmap(RendererCache.GetBitmapFromFile( "\\Resources\\Images\\element_green_square.png"), new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); }
private void CreateBricks() { Random r = new Random((int)DateTime.Now.Ticks); double y = 100; GameBitmap BrickTexture = null; for (int i = 0; i < 6; i++) { //int d = r.Next(3); int opcija = r.Next(6); if ((i % 2) == 0) { if (opcija == 0) { BrickTexture = new GameBitmap(BrickTextureRedRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Red; } else if (opcija == 1) { BrickTexture = new GameBitmap(BrickTextureBlueRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Blue; } else if (opcija == 2) { BrickTexture = new GameBitmap(BrickTexturePurpleRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Purple; } else if (opcija == 3) { BrickTexture = new GameBitmap(BrickTextureYellowRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Yellow; } else if (opcija == 4) { BrickTexture = new GameBitmap(BrickTextureGreyRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Gray; } else { BrickTexture = new GameBitmap(BrickTextureGreenRectangle.UniqueKey, new Vector2D(0, 0), new Vector2D(200, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Green; } BigBrick grb = new BigBrick(new Vector2D(20, 100), Game.VirtualGameWidth, Game.VirtualGameHeight, BrickTexture); double offset = 180; while (offset + grb.ObjectWidth < Game.VirtualGameWidth - 50) { GameBitmap temp = new GameBitmap(BrickTexture.UniqueKey, offset, y, 220, 100); temp.ColorLowSpec = BrickTexture.ColorLowSpec; Game.GameObjects.Add(new BigBrick(new Vector2D(offset, y), Game.VirtualGameWidth, Game.VirtualGameHeight, temp)); offset += grb.ObjectWidth + 250; } y += grb.ObjectHeight + 100; } else { if (opcija == 0) { BrickTexture = new GameBitmap(BrickTextureRedRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Red; } else if (opcija == 1) { BrickTexture = new GameBitmap(BrickTextureBlueRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Blue; } else if (opcija == 2) { BrickTexture = new GameBitmap(BrickTexturePurpleRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Purple; } else if (opcija == 3) { BrickTexture = new GameBitmap(BrickTextureYellowRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Yellow; } else if (opcija == 4) { BrickTexture = new GameBitmap(BrickTextureGreyRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Gray; } else { BrickTexture = new GameBitmap(BrickTextureGreenRectangle1.UniqueKey, new Vector2D(0, 0), new Vector2D(100, 0), new Vector2D(0, 100)); BrickTexture.ColorLowSpec = Color.Green; } SmallBrick grb = new SmallBrick(new Vector2D(20, 100), Game.VirtualGameWidth, Game.VirtualGameHeight, BrickTexture); double offset = 290; while (offset + grb.ObjectWidth < Game.VirtualGameWidth - 50) { GameBitmap temp = new GameBitmap(BrickTexture.UniqueKey, offset, y, 100, 100); temp.ColorLowSpec = BrickTexture.ColorLowSpec; Game.GameObjects.Add(new SmallBrick(new Vector2D(offset, y), Game.VirtualGameWidth, Game.VirtualGameHeight, temp)); offset += grb.ObjectWidth + 200; } y += grb.ObjectHeight + 140; } } }
/// <summary> /// Исцртување на една слика /// </summary> /// <param name="?"></param> /// <param name="g"></param> /// <param name="frameWidth"></param> /// <param name="frameHeight"></param> public void Render(GameBitmap bitmap, Graphics g, int frameWidth, int frameHeight, bool lowSpec) { List<GameBitmap> list = new List<GameBitmap>(1); List<IList<GameBitmap>> list2 = new List<IList<GameBitmap>>(); list2.Add(list); list.Add(bitmap); this.Render(list2, g, frameWidth, frameHeight, lowSpec); }
private static bool MenuOptionHover(Point cursor, GameBitmap menuOptionBitmap) { return (cursor.X >= menuOptionBitmap.PositionUL.X && cursor.X <= menuOptionBitmap.PositionUR.X && cursor.Y >= menuOptionBitmap.PositionUL.Y && cursor.Y <= menuOptionBitmap.PositionDR.Y); }
public void ReloadResources() { Bitmap textMT = StaticStringFactory.CreateOrangeString("Multithreading"); textMultithreading = new GameBitmap(textMT, (VirtualGameWidth - 400) / 2.0, 5, 400, 60); }