diff options
-rw-r--r-- | engines/xeen/character.cpp | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/engines/xeen/character.cpp b/engines/xeen/character.cpp index 12c0385e4d..77c01fe8fc 100644 --- a/engines/xeen/character.cpp +++ b/engines/xeen/character.cpp @@ -800,21 +800,23 @@ bool Character::guildMember() const { FileManager &files = *g_vm->_files; Party &party = *g_vm->_party; - if (party._mazeId == 49 && !files._ccNum) { + if (files._ccNum) { + switch (party._mazeId) { + case 29: + return hasAward(CASTLEVIEW_GUILD_MEMBER); + case 31: + return hasAward(SANDCASTER_GUILD_MEMBER); + case 33: + return hasAward(LAKESIDE_GUILD_MEMBER); + case 35: + return hasAward(NECROPOLIS_GUILD_MEMBER); + default: + return hasAward(OLYMPUS_GUILD_MEMBER); + } + } else if (party._mazeId == 49) { return hasAward(SHANGRILA_GUILD_MEMBER); - } - - switch (party._mazeId) { - case 29: - return hasAward(CASTLEVIEW_GUILD_MEMBER); - case 31: - return hasAward(SANDCASTER_GUILD_MEMBER); - case 33: - return hasAward(LAKESIDE_GUILD_MEMBER); - case 35: - return hasAward(NECROPOLIS_GUILD_MEMBER); - default: - return hasAward(OLYMPUS_GUILD_MEMBER); + } else { + return hasAward(party._mazeId - 28); } } |