3 * \brief Load a list of possible graphics modes.
5 * Copyright (c) 2011 Brett Reid
7 * This work is free software; you can redistribute it and/or modify it
8 * under the terms of either:
10 * a) the GNU General Public License as published by the Free Software
11 * Foundation, version 2, or
13 * b) the "Angband licence":
14 * This software may be copied and distributed for educational, research,
15 * and not for profit purposes provided that this copyright and statement
16 * are included in all such copies. Other copyrights may also apply.
18 /* Imported from Angband 4.2 to support main-cocoa.m in Hengband. */
19 #ifndef INCLUDED_GRAFMODE_H
20 #define INCLUDED_GRAFMODE_H
22 #include "system/h-basic.h"
25 * Default graphic modes
27 #define GRAPHICS_NONE 0
31 * Specifications for graphics modes.
33 * grafID: ID of tile set should be >0 and unique for anything new.
34 * alphablend: Bool whether or not the tileset needs alpha blending.
35 * overdrawRow: Row in the file where tiles in that row or lower draw the tile
37 * overdrawMax: Row in the file where tiles in that row or above draw the tile
39 * cell_width: Width of an individual tile in pixels.
40 * cell_height: Height of an individual tile in pixels.
41 * pref: Value of ANGBAND_GRAF variable.
42 * file: Name of PNG file (if any).
43 * menuname: Name of the tileset in menu.
45 typedef struct _graphics_mode {
46 struct _graphics_mode *pNext;
58 * This is a hack for Hengband: ANGBAND_GRAF set to this rather
59 * then the pref field above.
64 extern graphics_mode *graphics_modes;
65 extern graphics_mode *current_graphics_mode;
66 extern int graphics_mode_high_id;
68 bool init_graphics_modes();
69 void close_graphics_modes(void);
70 graphics_mode* get_graphics_mode(byte id);
72 #endif /* INCLUDED_GRAFMODE_H */