void WeaponManager::reset() { destroy(); all_game_weapons_.clear(); all_game_weapons_.push_back(loadWeapon(Weapon::Persuadatron)); all_game_weapons_.push_back(loadWeapon(Weapon::Pistol)); all_game_weapons_.push_back(loadWeapon(Weapon::Shotgun)); all_game_weapons_.push_back(loadWeapon(Weapon::Uzi)); all_game_weapons_.push_back(loadWeapon(Weapon::Scanner)); all_game_weapons_.push_back(loadWeapon(Weapon::MediKit)); all_game_weapons_.push_back(loadWeapon(Weapon::Minigun)); all_game_weapons_.push_back(loadWeapon(Weapon::Flamer)); all_game_weapons_.push_back(loadWeapon(Weapon::LongRange)); all_game_weapons_.push_back(loadWeapon(Weapon::EnergyShield)); all_game_weapons_.push_back(loadWeapon(Weapon::Laser)); all_game_weapons_.push_back(loadWeapon(Weapon::GaussGun)); all_game_weapons_.push_back(loadWeapon(Weapon::AccessCard)); all_game_weapons_.push_back(loadWeapon(Weapon::TimeBomb)); // Enables default weapons enableWeapon(Weapon::Persuadatron); enableWeapon(Weapon::Pistol); enableWeapon(Weapon::Shotgun); enableWeapon(Weapon::Scanner); enableWeapon(Weapon::MediKit); }
bool WeaponManager::loadFromFile(PortableFile &infile, const FormatVersion& v) { int nbWeap = infile.read32(); for (int i = 0; i < nbWeap; i++) { int type = infile.read32(); Weapon::WeaponType wt = Weapon::Unknown; switch (type) { case Weapon::Persuadatron: wt = Weapon::Persuadatron; break; case Weapon::Pistol: wt = Weapon::Pistol; break; case Weapon::GaussGun: wt = Weapon::GaussGun; break; case Weapon::Shotgun: wt = Weapon::Shotgun; break; case Weapon::Uzi: wt = Weapon::Uzi; break; case Weapon::Minigun: wt = Weapon::Minigun; break; case Weapon::Laser: wt = Weapon::Laser; break; case Weapon::Flamer: wt = Weapon::Flamer; break; case Weapon::LongRange: wt = Weapon::LongRange; break; case Weapon::Scanner: wt = Weapon::Scanner; break; case Weapon::MediKit: wt = Weapon::MediKit; break; case Weapon::TimeBomb: wt = Weapon::TimeBomb; break; case Weapon::AccessCard: wt = Weapon::AccessCard; break; case Weapon::EnergyShield: wt = Weapon::EnergyShield; break; default: wt = Weapon::Unknown; } // enable weapon enableWeapon(wt); } return true; }
GameProgress::GameProgress() : lives(3) , eTanks(0) , mTanks(0) , playerEnergy(DEFAULT_PLAYER_ENERGY) , playerMaxEnergy(DEFAULT_PLAYER_ENERGY) , bossEnergy(DEFAULT_PLAYER_ENERGY) , bossMaxEnergy(DEFAULT_PLAYER_ENERGY) , currentBoss(0) , currentWeapon(0) { std::fill(std::begin(weaponEnergies), std::end(weaponEnergies), DEFAULT_WEAPON_ENERGY); std::fill(std::begin(weaponsEnabled), std::end(weaponsEnabled), false); std::fill(std::begin(bossesDefeated), std::end(bossesDefeated), false); // Mega Buster is always the 0th weapon, so enable it enableWeapon(0, true); enableWeapon(1, true); enableWeapon(2, true); setETanks(4); }
void WeaponManager::cheatEnableAllWeapons() { enableWeapon(Weapon::Persuadatron); enableWeapon(Weapon::Pistol); enableWeapon(Weapon::Shotgun); enableWeapon(Weapon::Uzi); enableWeapon(Weapon::Scanner); enableWeapon(Weapon::MediKit); enableWeapon(Weapon::Minigun); enableWeapon(Weapon::Flamer); enableWeapon(Weapon::LongRange); enableWeapon(Weapon::EnergyShield); enableWeapon(Weapon::Laser); enableWeapon(Weapon::GaussGun); enableWeapon(Weapon::AccessCard); enableWeapon(Weapon::TimeBomb); }