From fc0a6776c2c158a486022191bcd6d1e28acb227f Mon Sep 17 00:00:00 2001 From: Allanis <allanis@saracraft.net> Date: Sun, 31 Mar 2013 17:46:04 +0100 Subject: [PATCH] [Add] Load mission factions and such. --- bin/conf | 4 ++-- src/mission.c | 18 ++++++++++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/bin/conf b/bin/conf index 7228683..a38d327 100644 --- a/bin/conf +++ b/bin/conf @@ -1,6 +1,6 @@ --WINDOW. -width = 1280 -height = 1024 +width = 800 +height = 600 fullscreen = 0 -- SCREEN. diff --git a/src/mission.c b/src/mission.c index 5fba83d..cb617ba 100644 --- a/src/mission.c +++ b/src/mission.c @@ -131,8 +131,22 @@ static MissionData* mission_parse(const xmlNodePtr parent) { do { if(xml_isNode(cur, "location")) tmp->avail.loc = mission_location(xml_get(cur)); - /*else if(xml_isNode(cur, "")) // Need to parse other thingies. - tmp->u.amm.damage_shield = xml_getFloat(cur);*/ + else if(xml_isNode(cur, "planet")) + tmp->avail.planet = strdup(xml_get(cur)); + else if(xml_isNode(cur, "system")) + tmp->avail.system = strdup(xml_get(cur)); + else if(xml_isNode(cur, "alliance")) { + tmp->avail.factions = realloc(tmp->avail.factions, + sizeof(int) * ++tmp->avail.nfactions); + tmp->avail.factions[tmp->avail.nfactions-1] = + faction_getAlliance(xml_get(cur)); + } + else if(xml_isNode(cur, "faction")) { + tmp->avail.factions = realloc(tmp->avail.factions, + sizeof(int) * ++tmp->avail.nfactions); + tmp->avail.factions[tmp->avail.nfactions-1] = + faction_get(xml_get(cur)); + } } while((cur = cur->next)); } } while((node = node->next));