Ejemplo n.º 1
0
        public static CustomSprite CreateSpriteFromBitmap(CustomBitmap bitmap)
        {
            CustomSprite ret = new CustomSprite();

            ret.Bitmap = bitmap;
            return(ret);
        }
Ejemplo n.º 2
0
        public void Load(CustomBitmap spriteBitmap)
        {
            misilBitmap = spriteBitmap;

            sprite        = new CustomSprite();
            sprite.Bitmap = misilBitmap;
        }
Ejemplo n.º 3
0
        public void Load(string exampleDir, CustomBitmap spriteSheet)
        {
            asteroidBitmap = spriteSheet;

            sprites = new List <CustomSprite>();

            spriteSize = new Vector2(SpriteWidth, SpriteHeight);
            size       = 1.0f;
            angle      = 0.0f;

            CustomSprite newSprite;

            //Creo 64 sprites asignando distintos clipping rects a cada uno.
            for (var i = 0; i < 8; i++)
            {
                for (var j = 0; j < 8; j++)
                {
                    newSprite         = new CustomSprite();
                    newSprite.Bitmap  = asteroidBitmap;
                    newSprite.SrcRect = new Rectangle(j * (int)spriteSize.X, i * (int)spriteSize.Y, (int)spriteSize.X,
                                                      (int)spriteSize.Y);
                    newSprite.Scaling  = new Vector2(size, size);
                    newSprite.Rotation = angle;
                    sprites.Add(newSprite);
                }
            }

            currentSprite = 0;

            GenerateRandomPosition();
        }
Ejemplo n.º 4
0
 public CraftingMenu()
     : base()
 {
     // Imagenes para los slots
     bitmapSlotBackground = new CustomBitmap(Game.Default.MediaDirectory + "craftingSlotBackground.jpg", D3DDevice.Instance.Device);
     bitmapSlotProduct    = new CustomBitmap(Game.Default.MediaDirectory + "cajaMadera4.jpg", D3DDevice.Instance.Device);
 }
Ejemplo n.º 5
0
        public PrincipalMenu(Subnautica gameInstance)
            : base()
        {
            input = gameInstance.Input;

            this.gameInstance    = gameInstance;
            bitmapSlotBackground = new CustomBitmap(Game.Default.MediaDirectory + "craftingSlotBackground.jpg", D3DDevice.Instance.Device);

            background          = new CustomSprite(Game.Default.MediaDirectory + "blackSquare.jpg");
            background.Color    = Color.FromArgb(80, 0, 0, 0); // para la transparencia
            background.SrcRect  = new Rectangle(0, 0, D3DDevice.Instance.Width, D3DDevice.Instance.Height);
            background.Position = TGCVector2.Zero;

            wasdSprite          = new CustomSprite(gameInstance.MediaDir + "Sprites//WASD.png");
            wasdSprite.SrcRect  = new Rectangle(0, 0, D3DDevice.Instance.Width, D3DDevice.Instance.Height);
            wasdSprite.Position = new TGCVector2(D3DDevice.Instance.Width / 8, D3DDevice.Instance.Height / 2.5f);

            escISprite          = new CustomSprite(gameInstance.MediaDir + "Sprites//EscI.png");
            escISprite.SrcRect  = new Rectangle(0, 0, D3DDevice.Instance.Width, D3DDevice.Instance.Height);
            escISprite.Position = new TGCVector2(D3DDevice.Instance.Width / 2.7f, D3DDevice.Instance.Height / 2.5f);

            mouseSprite          = new CustomSprite(gameInstance.MediaDir + "Sprites//Mouse.png");
            mouseSprite.SrcRect  = new Rectangle(0, 0, D3DDevice.Instance.Width, D3DDevice.Instance.Height);
            mouseSprite.Position = new TGCVector2(D3DDevice.Instance.Width / 1.5f, D3DDevice.Instance.Height / 2f);

            titleText      = new TgcText2D();
            titleText.Text = "Tgcito se va de buceo";
            titleText.changeFont(new Font("TimesNewRoman", 50, FontStyle.Bold));
            titleText.Align    = TgcText2D.TextAlign.CENTER;
            titleText.Position = new Point(0, D3DDevice.Instance.Height / 6);
            titleText.Color    = Color.AntiqueWhite;

            UpdateSlotDisplay();
        }
Ejemplo n.º 6
0
 public Button(String Name, TgcD3dInput Input, CustomBitmap normal, CustomBitmap mouseover, Action Callback, FontFamily fontFamily) : base(Input)
 {
     this.nombre                 = Name;
     this.sprite_normal          = normal;
     this.sprite_mouseover       = mouseover;
     this.current_sprite         = new CustomSprite();
     this.current_sprite.Bitmap  = sprite_normal;
     this.current_sprite.Scaling = new Vector2(0.5f, 0.5f);
     this.Callback               = Callback;
     drawText       = new TgcText2D();
     drawText.Align = TgcText2D.TextAlign.LEFT;
     drawText.changeFont(new Font(fontFamily, 25, FontStyle.Regular));
 }
Ejemplo n.º 7
0
        public CustomBitmap [] GetImages(int nb, TimeSpan delay)
        {
            // logger.Info("Acquiring images... " + nb);
            var images = new CustomBitmap [nb];
            // logger.Info("array built ");

            var startX = 1;             //r.Next() % (width / 2);
            var startY = r.Next() % (height / 2);

            // logger.Info("Start {0},{1}", startX, startY);

            for (int i = 0; i < nb; i++)
            {
                // logger.Info("will generate " + i + "  ");

                var image = new CustomBitmap(width, height);
                //logger.Info("Image " + i + " bitmap built ");
                //logger.Info("River speed: " + river.RiverSpeed);
                //logger.Info("Pixels per meter: " + ppm);
                //logger.Info("Delay: " + delay.TotalSeconds);

                // Move the start according the speed of the river
                startX = (int)(startX + river.RiverSpeed * ppm * delay.TotalSeconds);
                //startY = (int) (startY + river.RiverSpeed * ppm * delay.TotalSeconds);
                //logger.Info("Next {0},{1}", startX, startY);

                for (int x = 0; x < square_size; x++)
                {
                    for (int y = 0; y < square_size; y++)
                    {
                        image.SetPixel(Math.Min(startX + x, width - 1), Math.Min(startY + y, height - 1), 1);
                    }
                }
                //logger.Info("square drawn ");

                if (river.NoisyImage)
                {
                    for (int j = 0; j < 5; j++)
                    {
                        image.SetPixel(r.Next(0, width), r.Next(0, height), 1);
                    }
                }

                images [i] = image;
                //logger.Info("Image " + i + " generated ");

                //logger.Trace(image.ToString ());
            }

            return(images);
        }
Ejemplo n.º 8
0
        public void Load(CustomBitmap bitmap, TgcD3dInput input)
        {
            Input           = input;
            spaceshipBitmap = bitmap;

            sprites = new List <CustomSprite>();

            spriteSize = new TGCVector2(41, 44);
            size       = 2.0f;

            CustomSprite newSprite;

            for (var i = 0; i < 3; i++)
            {
                newSprite         = new CustomSprite();
                newSprite.Bitmap  = spaceshipBitmap;
                newSprite.SrcRect = new Rectangle(i * (int)spriteSize.X, 0, (int)spriteSize.X, (int)spriteSize.Y);
                newSprite.Scaling = new TGCVector2(size, size);
                sprites.Add(newSprite);
            }

            currentSprite = 0;
            state         = StateEnum.Idle;

            Position = new TGCVector2(100, 100);
            speed    = TGCVector2.Zero;

            angleToMousePointer = 0;

            RestartPosition();

            GameManager.Instance.userVars.addVar("elapsed");
            GameManager.Instance.userVars.addVar("speedX");
            GameManager.Instance.userVars.addVar("speedY");

            GameManager.Instance.userVars.addVar("PosX");
            GameManager.Instance.userVars.addVar("PosY");

            GameManager.Instance.userVars.addVar("MousePosX");
            GameManager.Instance.userVars.addVar("MousePosY");

            GameManager.Instance.userVars.addVar("AngleMouse");

            GameManager.Instance.userVars.addVar("Misiles");
        }
Ejemplo n.º 9
0
        public PauseMenu(Subnautica gameInstance)
            : base()
        {
            this.gameInstance    = gameInstance;
            bitmapSlotBackground = new CustomBitmap(Game.Default.MediaDirectory + "craftingSlotBackground.jpg", D3DDevice.Instance.Device);

            background          = new CustomSprite(Game.Default.MediaDirectory + "blackSquare.jpg");
            background.Color    = Color.FromArgb(170, 0, 0, 0); // para la transparencia
            background.SrcRect  = new Rectangle(0, 0, D3DDevice.Instance.Width, D3DDevice.Instance.Height);
            background.Position = TGCVector2.Zero;

            pauseText          = new TgcText2D();
            pauseText.Text     = "Pausa";
            pauseText.Position = new Point(0, D3DDevice.Instance.Height / 2 - 65);
            pauseText.Align    = TgcText2D.TextAlign.CENTER;
            pauseText.changeFont(new Font("TimesNewRoman", 50, FontStyle.Bold));
            pauseText.Color = Color.DarkGray;
        }
Ejemplo n.º 10
0
        public override void Draw(PaintEventArgs e)
        {
            if (bitmap == null)
            {
                bitmap = new Bitmap(CountX - 1, CountY - 1);
            }
            //updateZminZmax(); tak ostabit'

            if (needRecoloring)
            {
                Recoloring();
            }

            //Graphics g = e.Graphics;
            System.Drawing.Point leftTop     = map.MapToScreen(new GeoPoint(XMin, YMax));
            System.Drawing.Point rightBottom = map.MapToScreen(new GeoPoint(XMax, YMin));
            Rectangle            rect        = new Rectangle(leftTop.X, leftTop.Y, rightBottom.X - leftTop.X, rightBottom.Y - leftTop.Y);

            CustomBitmap bmp = new CustomBitmap(bitmap, new MapObjects.Points.GeoPoint(rect.X, rect.Y), rect.Width, rect.Height);

            bmp.Draw(e);
        }
Ejemplo n.º 11
0
        public CraftingSlot(TGCVector2 position, BluePrint bluePrint, Menu menu, CustomBitmap bitmapBackground, CustomBitmap bitmapProduct)
            : base(position, menu)
        {
            Item productSample = ItemDatabase.Instance.Generate(bluePrint.ProductId);

            this.bluePrint = bluePrint;

            productSlot          = new CustomSprite();
            productSlot.Bitmap   = bitmapProduct;
            productSlot.Position = new TGCVector2(position.X + 10, position.Y + 10);
            float slotScalingFactor = 0.5f;

            productSlot.Scaling = TGCVector2.One * slotScalingFactor;

            productSprite          = ItemDatabase.Instance.ItemSprites[productSample.ID];
            productSprite.Scaling  = TGCVector2.One * 0.5f;
            productSprite.Position = productSlot.Position;

            title.Text     = productSample.Name;
            title.Position = new Point((int)(productSlot.Position.X + productSlot.Bitmap.Size.Width * slotScalingFactor + 15), (int)productSlot.Position.Y + 20);
            title.Align    = TgcText2D.TextAlign.LEFT;
            title.changeFont(new Font("TimesNewRoman", 20, FontStyle.Bold));
            title.Color = Color.DarkGray;

            description.Text     = bluePrint.Description;
            description.Position = new Point(title.Position.X, title.Position.Y + 30);
            description.Size     = new Size(600, 300);
            description.Align    = TgcText2D.TextAlign.LEFT;
            description.changeFont(new Font("TimesNewRoman", 14, FontStyle.Bold));
            description.Color = Color.LightGray;

            Size = new Size((int)(productSlot.Bitmap.Size.Width * slotScalingFactor + description.Size.Width + 30), (int)(productSlot.Bitmap.Height * slotScalingFactor + 20));

            slotBackground          = new CustomSprite();
            slotBackground.Bitmap   = bitmapBackground;
            slotBackground.Position = Position;
            // slotBackground.SrcRect = new Rectangle((int)position.X, (int)position.Y, Size.Width, Size.Height);
            slotBackground.SrcRect = new Rectangle(0, 0, Size.Width, Size.Height);
        }
Ejemplo n.º 12
0
        internal void Init(string exampleDir, TgcUserVars userVars, TgcD3dInput input)
        {
            this.userVars = userVars;

            //Creo el sprite drawer
            spriteDrawer = new Drawer2D();

            //Creo la lista de asteroides.
            asteroids = new List <Asteroide>();

            //Creo la lista de misiles.
            misiles = new List <Misil>();

            ScreenWidth  = D3DDevice.Instance.Device.Viewport.Width;
            ScreenHeight = D3DDevice.Instance.Device.Viewport.Height;
            //Cargo el bitmap del spritesheet de la nave.
            asteroidBitmap = new CustomBitmap(exampleDir + "Asteroides.png", D3DDevice.Instance.Device);

            spaceshipBitmap = new CustomBitmap(exampleDir + "nave.png", D3DDevice.Instance.Device);

            //Cargo el bitmap del misil que dispara la nave.
            misilBitmap = new CustomBitmap(exampleDir + "particle.png", D3DDevice.Instance.Device);

            //Creo la nave espacial
            spaceShip = new Spaceship();
            spaceShip.Load(spaceshipBitmap, input);

            //Creo la cantidad de asteroides simultaneos.
            for (var i = 0; i < AsteroidCount; i++)
            {
                var asteroid = new Asteroide();
                asteroid.Load(exampleDir, asteroidBitmap);

                asteroids.Add(asteroid);
            }
        }
Ejemplo n.º 13
0
        public InventorySlot(TGCVector2 position, EItemID itemID, int amount, Menu menu, CustomBitmap bitmapBackground)
            : base(position, menu)
        {
            itemSample  = ItemDatabase.Instance.Generate(itemID);
            this.amount = amount;

            itemSprite          = ItemDatabase.Instance.ItemSprites[itemID];
            itemSprite.Position = Position;
            float scalingFactor = 0.25f;

            itemSprite.Scaling = TGCVector2.One * scalingFactor;

            itemName.Text     = itemSample.Name;
            itemName.Position = new Point((int)(itemSprite.Position.X + itemSprite.Bitmap.Size.Width * scalingFactor + 10), (int)itemSprite.Position.Y + 5);
            itemName.Align    = TgcText2D.TextAlign.LEFT;
            itemName.changeFont(new Font("TimesNewRoman", 14, FontStyle.Bold));
            itemName.Color = Color.DarkGray;

            itemDescription.Text     = itemSample.Description;
            itemDescription.Position = new Point(itemName.Position.X, itemName.Position.Y + 30);
            itemDescription.Size     = new Size(450, 300);
            itemDescription.Align    = TgcText2D.TextAlign.LEFT;
            itemDescription.changeFont(new Font("TimesNewRoman", 11, FontStyle.Bold));
            itemDescription.Color = Color.LightGray;

            itemAmount.Text     = amount.ToString();
            itemAmount.Position = new Point((int)itemSprite.Position.X, (int)itemSprite.Position.Y);
            itemAmount.Align    = TgcText2D.TextAlign.LEFT;
            itemAmount.changeFont(new Font("TimesNewRoman", 14, FontStyle.Bold));
            itemAmount.Color = Color.White;

            Size = new Size((int)(itemSprite.Bitmap.Size.Width * scalingFactor + itemDescription.Size.Width + 180), (int)(itemSprite.Bitmap.Height * scalingFactor + 30));

            slotBackground          = new CustomSprite();
            slotBackground.Bitmap   = bitmapBackground;
            slotBackground.Position = new TGCVector2(Position.X - 25, Position.Y - 15);
            // slotBackground.SrcRect = new Rectangle((int)position.X, (int)position.Y, Size.Width, Size.Height);
            slotBackground.SrcRect = new Rectangle(0, 0, Size.Width, Size.Height);
        }
Ejemplo n.º 14
0
        public PrincipalMenuSlot(TGCVector2 position, Menu menu, string text, Func <bool> onClickFunction, CustomBitmap bitmapBackground) : base(position, menu)
        {
            this.onClickFunction = onClickFunction;

            Size = new Size(300, 100);

            this.text          = new TgcText2D();
            this.text.Text     = text;
            this.text.Position = new Point((int)(position.X) + 50, (int)position.Y + 15);
            this.text.Align    = TgcText2D.TextAlign.LEFT;
            this.text.changeFont(new Font("TimesNewRoman", 20, FontStyle.Bold));
            this.text.Color = Color.White;


            slotBackground          = new CustomSprite();
            slotBackground.Bitmap   = bitmapBackground;
            slotBackground.Position = new TGCVector2(Position.X, Position.Y - 15);
            slotBackground.SrcRect  = new Rectangle(0, 0, Size.Width, Size.Height);
        }
Ejemplo n.º 15
0
 public InventoryMenu(Player owner)
     : base()
 {
     bitmapSlotBackground = new CustomBitmap(Game.Default.MediaDirectory + "craftingSlotBackground.jpg", D3DDevice.Instance.Device);
 }