void read_guilds_dat() { string guildsfile = config.world_data_path + "guilds.txt"; if (!FileExists( guildsfile )) return; ConfigFile cf( guildsfile ); ConfigSection sect_general( cf, "GENERAL", CST_UNIQUE ); ConfigSection sect_guild( cf, "GUILD", CST_NORMAL ); ConfigElem elem; while (cf.read( elem )) { if (sect_general.matches( elem )) { nextguildid = elem.remove_ulong( "NEXTGUILDID", 1 ); } else if (sect_guild.matches( elem )) { Guild* guild = new Guild(elem); guilds[ guild->guildid() ].set( guild ); } } register_guilds(); }
void read_combat_config() { ConfigFile cf; ConfigElem elem; if (FileExists( "config/combat.cfg" )) { if ( config.loglevel > 1 ) { cout << "Loading combat.cfg options\n"; } cf.open( "config/combat.cfg" ); cf.readraw( elem ); } else if ( config.loglevel > 1 ) { cout << "File config/combat.cfg not found, skipping.\n"; } combat_config.display_parry_success_messages = elem.remove_bool("DisplayParrySuccessMessages", false); combat_config.warmode_inhibits_regen = elem.remove_bool("WarmodeInhibitsRegen", false); combat_config.attack_self = elem.remove_bool("SingleCombat", false); combat_config.warmode_delay = elem.remove_ulong("WarModeDelay", 1); combat_config.core_hit_sounds = elem.remove_bool("CoreHitSounds", false); combat_config.scripted_attack_checks = elem.remove_bool("ScriptedAttackChecks", false); combat_config.reset_swing_onturn = elem.remove_bool("ResetSwingOnTurn", false); combat_config.send_swing_packet = elem.remove_bool("SendSwingPacket", true); combat_config.send_damage_packet = elem.remove_bool("SendDamagePacket", false); combat_config.core_attack_effects = elem.remove_bool("CoreAttackEffects", true); }