[Fix] Fixed broken handling of health textures.

This commit is contained in:
Allanis 2014-04-08 21:43:23 +01:00
parent e9d216446d
commit fa3c8ab7da

View File

@ -999,10 +999,10 @@ void player_renderGUI(void) {
} }
/* Health */ /* Health */
gui_renderHealth(&cShield, &gui.shield, &gui.gfx_shield, player->shield / player->shield_max); gui_renderHealth(&cShield, &gui.shield, gui.gfx_shield, player->shield / player->shield_max);
gui_renderHealth(&cArmour, &gui.armour, &gui.gfx_armour, player->armour / player->armour_max); gui_renderHealth(&cArmour, &gui.armour, gui.gfx_armour, player->armour / player->armour_max);
gui_renderHealth(&cEnergy, &gui.energy, &gui.gfx_energy, player->energy / player->energy_max); gui_renderHealth(&cEnergy, &gui.energy, gui.gfx_energy, player->energy / player->energy_max);
gui_renderHealth(&cFuel, &gui.fuel, &gui.gfx_fuel, player->fuel / player->fuel_max); gui_renderHealth(&cFuel, &gui.fuel, gui.gfx_fuel, player->fuel / player->fuel_max);
/* Weapon. */ /* Weapon. */
if(player->secondary == NULL) { if(player->secondary == NULL) {
@ -1484,31 +1484,42 @@ static int gui_parse(const xmlNodePtr parent, const char* name) {
rect_parse(cur, &gui.shield.x, &gui.shield.y, rect_parse(cur, &gui.shield.x, &gui.shield.y,
&gui.shield.w, &gui.shield.h); &gui.shield.w, &gui.shield.h);
tmp = xml_get(cur); tmp = xml_get(cur);
if(tmp != NULL) if(tmp != NULL) {
gui.gfx_shield = gl_newImage(tmp); snprintf(buf, PATH_MAX, GUI_GFX"%s.png", tmp);
gui.gfx_shield = gl_newImage(buf);
}
RELATIVIZE(gui.shield); RELATIVIZE(gui.shield);
} }
if(xml_isNode(cur, "armour")) { if(xml_isNode(cur, "armour")) {
rect_parse(cur, &gui.armour.x, &gui.armour.y, rect_parse(cur, &gui.armour.x, &gui.armour.y,
&gui.armour.w, &gui.armour.h); &gui.armour.w, &gui.armour.h);
if(tmp != NULL) tmp = xml_get(cur);
gui.gfx_armour = gl_newImage(tmp); if(tmp != NULL) {
snprintf(buf, PATH_MAX, GUI_GFX"%s.png", tmp);
gui.gfx_armour = gl_newImage(buf);
}
RELATIVIZE(gui.armour); RELATIVIZE(gui.armour);
} }
if(xml_isNode(cur, "energy")) { if(xml_isNode(cur, "energy")) {
rect_parse(cur, &gui.energy.x, &gui.energy.y, rect_parse(cur, &gui.energy.x, &gui.energy.y,
&gui.energy.w, &gui.energy.h); &gui.energy.w, &gui.energy.h);
if(tmp != NULL) tmp = xml_get(cur);
gui.gfx_energy = gl_newImage(tmp); if(tmp != NULL) {
snprintf(buf, PATH_MAX, GUI_GFX"%s.png", tmp);
gui.gfx_energy = gl_newImage(buf);
}
RELATIVIZE(gui.energy); RELATIVIZE(gui.energy);
} }
if(xml_isNode(cur, "fuel")) { if(xml_isNode(cur, "fuel")) {
rect_parse(cur, &gui.fuel.x, &gui.fuel.y, rect_parse(cur, &gui.fuel.x, &gui.fuel.y,
&gui.fuel.w, &gui.fuel.h); &gui.fuel.w, &gui.fuel.h);
if(tmp != NULL) tmp = xml_get(cur);
gui.gfx_fuel = gl_newImage(tmp); if(tmp != NULL) {
snprintf(buf, PATH_MAX, GUI_GFX"%s.png", tmp);
gui.gfx_fuel = gl_newImage(buf);
}
RELATIVIZE(gui.fuel); RELATIVIZE(gui.fuel);
} }
} while((cur = cur->next)); } while((cur = cur->next));