void checkSupportedUnitType(const BWAPI::UnitType & type)
        {
            if (type == BWAPI::UnitTypes::None || type == BWAPI::UnitTypes::Unknown)
            {
                System::FatalError("Unknown unit type in experiment file");
            }

            if (type == BWAPI::UnitTypes::Protoss_Corsair || 
                type == BWAPI::UnitTypes::Zerg_Devourer || 
                type == BWAPI::UnitTypes::Zerg_Scourge ||
                type == BWAPI::UnitTypes::Terran_Valkyrie)
            {
                System::FatalError("Units with just air weapons currently not supported correctly: " + type.getName());
            }

            if (type.isBuilding() && (type != BWAPI::UnitTypes::Protoss_Photon_Cannon || type != BWAPI::UnitTypes::Zerg_Sunken_Colony || type != BWAPI::UnitTypes::Terran_Missile_Turret))
            {
                System::FatalError("Non-attacking buildings not currently supported: " + type.getName());
            }

            if (type.isSpellcaster())
            {
                System::FatalError("Spell casting units not currently supported: " + type.getName());
            }
        }
Example #2
0
        void checkSupportedUnitType(const BWAPI::UnitType & type)
        {
            if (type == BWAPI::UnitTypes::None || type == BWAPI::UnitTypes::Unknown)
            {
                System::FatalError("Unknown unit type in experiment file, not supported");
            }

            if (type == BWAPI::UnitTypes::Protoss_Corsair || 
                type == BWAPI::UnitTypes::Zerg_Devourer || 
                type == BWAPI::UnitTypes::Zerg_Scourge ||
                type == BWAPI::UnitTypes::Terran_Valkyrie)
            {
                System::FatalError("Units with just air weapons currently not supported correctly: " + type.getName());
            }

//            if (type.isBuilding() && !(type == BWAPI::UnitTypes::Protoss_Photon_Cannon && type == BWAPI::UnitTypes::Zerg_Sunken_Colony && type == BWAPI::UnitTypes::Terran_Missile_Turret))
//            {
//                System::FatalError("Non-attacking buildings not currently supported: " + type.getName());
//            }

            if (type.isSpellcaster() && type!=BWAPI::UnitTypes::Terran_Medic && type!=BWAPI::UnitTypes::Protoss_High_Templar)
            if (type.isSpellcaster() && type!=BWAPI::UnitTypes::Terran_Medic)
            {
                System::FatalError("Spell casting units not currently supported: " + type.getName());
            }

            // Don't support units loading other units yet
            if (type == BWAPI::UnitTypes::Terran_Vulture_Spider_Mine ||
            		type == BWAPI::UnitTypes::Protoss_Carrier ||
            		type == BWAPI::UnitTypes::Protoss_Interceptor ||
            		type == BWAPI::UnitTypes::Protoss_Reaver ||
            		type == BWAPI::UnitTypes::Protoss_Scarab ||
            		type == BWAPI::UnitTypes::Zerg_Broodling)
            {

            	System::FatalError("Units which have unit projectiles not supported: " + type.getName());
            }

        }
Example #3
0
        bool isSupportedUnitType(const BWAPI::UnitType & type)
        {
        	if (type == BWAPI::UnitTypes::None || type == BWAPI::UnitTypes::Unknown)
        	{
        		return false;
        	}

        	if (type == BWAPI::UnitTypes::Protoss_Corsair ||
        			type == BWAPI::UnitTypes::Zerg_Devourer ||
        			type == BWAPI::UnitTypes::Zerg_Scourge ||
        			type == BWAPI::UnitTypes::Terran_Valkyrie)
        	{
        		return false;
        	}

//        	if (type.isBuilding() && !(type == BWAPI::UnitTypes::Protoss_Photon_Cannon || type == BWAPI::UnitTypes::Zerg_Sunken_Colony || type == BWAPI::UnitTypes::Terran_Missile_Turret))
//        	{
//        		return false;
//        	}

        	if (type.isSpellcaster() && type!=BWAPI::UnitTypes::Terran_Medic)
        	{
        		return false;
        	}

        	// Don't support units loading other units yet
        	if (type == BWAPI::UnitTypes::Terran_Vulture_Spider_Mine ||
        			type == BWAPI::UnitTypes::Protoss_Carrier ||
        			type == BWAPI::UnitTypes::Protoss_Interceptor ||
        			type == BWAPI::UnitTypes::Protoss_Reaver ||
        			type == BWAPI::UnitTypes::Protoss_Scarab ||
        			type == BWAPI::UnitTypes::Zerg_Broodling)
        	{
        		return false;
        	}

        	return true;
        }