ArcadeRPG.GameEngine.drawItems C# (CSharp) Метод

drawItems() публичный Метод

public drawItems ( SpriteBatch sb, SpriteFont sf ) : void
sb SpriteBatch
sf SpriteFont
Результат void
        public void drawItems(SpriteBatch sb, SpriteFont sf)
        {
            //check to see if user hit exit button

            //format display on screen for string to be drawn
            Vector2 formatpos = new Vector2(315, 170);
            float origx = formatpos.X;

            if (game_state.local_player.getInventory().Count == 0) // no items collected, display a message
            {
                sb.DrawString(sf, backpackmenu.getEmptyString(), new Vector2(formatpos.X + 45,formatpos.Y), Color.Black);
            }
            else // inventory has a capacity
            {
                //draws (each) item on inventory screen
                foreach (Item i in game_state.local_player.getInventory())
                {
                    //display format: Item image, image name

                    // Draw item image to screen
                    i.setPos(formatpos);
                    int tileSize = game_state.tile_engine.getTileSize();
                    Rectangle dest = new Rectangle((int)formatpos.X,(int)formatpos.Y,tileSize,tileSize);
                    Rectangle imageSource = new Rectangle((i.getTexture() % (tiles[2].Width / tileSize)) * tileSize,(i.getTexture() / (tiles[2].Width / tileSize)) * tileSize,tileSize,tileSize);
                    sb.Draw(item_background, new Vector2(formatpos.X - 4, formatpos.Y - 4), Color.White);
                    sb.Draw(tiles[2], dest, imageSource, Color.White);

                    // Draw item name to screen
                    formatpos.X += 50;
                    i.setPos(formatpos);
                    sb.DrawString(sf, i.getName(), i.getPos(), Color.Black, 0, imageOffset, 1.0f, SpriteEffects.None, 0);

                    // Reset position for next item
                    formatpos.Y += 50;
                    formatpos.X = origx; // re-allign for next item to be displayed
                }
            } // end else
        }