0

added label metadata to rendermodes (no more ugly map labels)

This commit is contained in:
Aaron Griffith
2011-09-08 07:34:35 -04:00
parent bbb2a3943e
commit fb45fb3dff
10 changed files with 29 additions and 9 deletions

View File

@@ -23,7 +23,7 @@ from time import strftime, localtime
import json import json
import util import util
from c_overviewer import get_render_mode_inheritance from c_overviewer import get_render_mode_inheritance, get_render_mode_info
import overviewer_version import overviewer_version
""" """
@@ -130,8 +130,15 @@ class MapGen(object):
#config = config.replace("{bg_color}", self.bg_color) #config = config.replace("{bg_color}", self.bg_color)
# helper function to get a label for the given rendermode
def get_render_mode_label(rendermode):
info = get_render_mode_info(rendermode)
if 'label' in info:
return info['label']
return rendermode.capitalize()
# create generated map type data, from given quadtrees # create generated map type data, from given quadtrees
maptypedata = map(lambda q: {'label' : q.rendermode.capitalize(), maptypedata = map(lambda q: {'label' : get_render_mode_label(q.rendermode),
'path' : q.tiledir, 'path' : q.tiledir,
'bg_color': self.bg_color, 'bg_color': self.bg_color,
'overlay' : 'overlay' in get_render_mode_inheritance(q.rendermode), 'overlay' : 'overlay' in get_render_mode_inheritance(q.rendermode),

View File

@@ -316,7 +316,8 @@ const RenderModeOption rendermode_cave_options[] = {
}; };
RenderModeInterface rendermode_cave = { RenderModeInterface rendermode_cave = {
"cave", "render only caves", "cave", "Cave",
"render only caves",
rendermode_cave_options, rendermode_cave_options,
&rendermode_lighting, &rendermode_lighting,
sizeof(RenderModeCave), sizeof(RenderModeCave),

View File

@@ -356,7 +356,8 @@ const RenderModeOption rendermode_lighting_options[] = {
}; };
RenderModeInterface rendermode_lighting = { RenderModeInterface rendermode_lighting = {
"lighting", "draw shadows from the lighting data", "lighting", "Lighting",
"draw shadows from the lighting data",
rendermode_lighting_options, rendermode_lighting_options,
&rendermode_normal, &rendermode_normal,
sizeof(RenderModeLighting), sizeof(RenderModeLighting),

View File

@@ -154,7 +154,8 @@ const RenderModeOption rendermode_mineral_options[] = {
}; };
RenderModeInterface rendermode_mineral = { RenderModeInterface rendermode_mineral = {
"mineral", "draws a colored overlay showing where ores are located", "mineral", "Mineral",
"draws a colored overlay showing where ores are located",
rendermode_mineral_options, rendermode_mineral_options,
&rendermode_overlay, &rendermode_overlay,
sizeof(RenderModeMineral), sizeof(RenderModeMineral),

View File

@@ -66,7 +66,8 @@ rendermode_night_draw(void *data, RenderState *state, PyObject *src, PyObject *m
} }
RenderModeInterface rendermode_night = { RenderModeInterface rendermode_night = {
"night", "like \"lighting\", except at night", "night", "Night",
"like \"lighting\", except at night",
NULL, NULL,
&rendermode_lighting, &rendermode_lighting,
sizeof(RenderModeNight), sizeof(RenderModeNight),

View File

@@ -299,7 +299,8 @@ const RenderModeOption rendermode_normal_options[] = {
}; };
RenderModeInterface rendermode_normal = { RenderModeInterface rendermode_normal = {
"normal", "nothing special, just render the blocks", "normal", "Normal",
"nothing special, just render the blocks",
rendermode_normal_options, rendermode_normal_options,
NULL, NULL,
sizeof(RenderModeNormal), sizeof(RenderModeNormal),

View File

@@ -134,7 +134,8 @@ rendermode_overlay_draw(void *data, RenderState *state, PyObject *src, PyObject
} }
RenderModeInterface rendermode_overlay = { RenderModeInterface rendermode_overlay = {
"overlay", "base rendermode for informational overlays", "overlay", "Overlay",
"base rendermode for informational overlays",
NULL, NULL,
NULL, NULL,
sizeof(RenderModeOverlay), sizeof(RenderModeOverlay),

View File

@@ -114,7 +114,8 @@ rendermode_spawn_draw(void *data, RenderState *state, PyObject *src, PyObject *m
} }
RenderModeInterface rendermode_spawn = { RenderModeInterface rendermode_spawn = {
"spawn", "draws a red overlay where monsters can spawn at night", "spawn", "Spawn",
"draws a red overlay where monsters can spawn at night",
NULL, NULL,
&rendermode_overlay, &rendermode_overlay,
sizeof(RenderModeSpawn), sizeof(RenderModeSpawn),

View File

@@ -312,6 +312,10 @@ PyObject *get_render_mode_info(PyObject *self, PyObject *args) {
PyDict_SetItemString(info, "name", tmp); PyDict_SetItemString(info, "name", tmp);
Py_DECREF(tmp); Py_DECREF(tmp);
tmp = PyString_FromString(render_modes[i]->label);
PyDict_SetItemString(info, "label", tmp);
Py_DECREF(tmp);
tmp = PyString_FromString(render_modes[i]->description); tmp = PyString_FromString(render_modes[i]->description);
PyDict_SetItemString(info, "description", tmp); PyDict_SetItemString(info, "description", tmp);
Py_DECREF(tmp); Py_DECREF(tmp);

View File

@@ -48,6 +48,8 @@ typedef struct _RenderModeInterface RenderModeInterface;
struct _RenderModeInterface { struct _RenderModeInterface {
/* the name of this mode */ /* the name of this mode */
const char *name; const char *name;
/* the label to use in the map */
const char *label;
/* the short description of this render mode */ /* the short description of this render mode */
const char *description; const char *description;