From 0d58c4f8ab1d174c808c77bf94342c91f6e0c443 Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sat, 13 Oct 2012 10:51:48 +0000 Subject: Draw zone colors and background texture on the galactic map. --- src/game/base/game.cc | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/game/base/game.cc') diff --git a/src/game/base/game.cc b/src/game/base/game.cc index 8c82968..dd720f0 100644 --- a/src/game/base/game.cc +++ b/src/game/base/game.cc @@ -1085,8 +1085,6 @@ bool Game::load_world() if (inifile.got_key_label("zone", label)) { zone = new core::Zone(label); - // set default ambient light color - zone->set_ambient_color(0.1f, 0.1f, 0.1f); core::Zone::add(zone); } else { inifile.unknown_key(); @@ -1124,6 +1122,10 @@ bool Game::load_zone(core::Zone *zone) using math::Vector3f; using math::Color; + // set zone defaults + zone->set_color(0.5f); + zone->set_ambient_color(0.1f); + std::string inifilename("ini/zones/"); inifilename.append(zone->label()); @@ -1274,6 +1276,16 @@ bool Game::load_zone(core::Zone *zone) } else if (zoneini.got_key_string("sky", strval)) { zone->set_sky(strval); continue; + } else if (zoneini.got_key_color("color", color)) { + zone->set_color(color); + continue; + } else if (zoneini.got_key_label("faction", strval)) { + Faction *faction = Faction::find(strval); + if (!faction) { + zoneini.unknown_error("unknown faction '" + strval + "'"); + } else { + zone->set_color(faction->color()); + } } else if (zoneini.got_key_color("ambient", color)) { zone->set_ambient_color(color); continue; -- cgit v1.2.3