} // end draw function
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
}//end drawitems function