5471 if (un->
mounts.size() == 0) {
5483 typename WeaponGroupSet::const_iterator iter;
5484 printf(
"ToggleWeaponSet: %s\n",
FORWARD ?
"true" :
"false" );
5485 for (i = 0; i < un->
mounts.size(); ++i)
5488 for (
unsigned int j = 0;
j < un->
mounts.size(); ++
j)
5491 mygroup.insert( j );
5493 myset.insert( mygroup );
5494 allWeapons.insert( i );
5496 allWeaponsNoSpecial.insert( i );
5499 for (iter = mypairset.begin(); iter != mypairset.end(); ++iter)
5500 if ( (*iter).size() &&
notSpecial( un->
mounts[( *( (*iter).begin() ) )] ) ) {
5501 typename WeaponGroupSet::const_iterator iter2;
5502 for (iter2 = mypairset.begin(); iter2 != mypairset.end(); ++iter2)
5503 if ( (*iter2).size() &&
notSpecial( un->
mounts[( *( (*iter2).begin() ) )] ) ) {
5505 set_union( (*iter).begin(), (*iter).end(), (*iter2).begin(), (*iter2).end(),
5506 inserter( myGroup, myGroup.begin() ) );
5507 myset.insert( myGroup );
5510 static bool allow_special_with_weapons =
5512 if (allow_special_with_weapons)
5513 myset.insert( allWeapons );
5514 myset.insert( allWeaponsNoSpecial );
5515 for (iter = myset.begin(); iter != myset.end(); ++iter) {
5516 for (WeaponGroup::const_iterator iter2 = (*iter).begin(); iter2 != (*iter).end(); ++iter2)
5517 printf(
"%d:%s ", *iter2, un->
mounts[*iter2].type->weapon_name.c_str() );
5521 printf(
"CURRENT: " );
5522 for (i = 0; i < un->
mounts.size(); ++i)
5524 activeWeapons.insert( i );
5525 printf(
"%d:%s ", i, un->
mounts[i].type->weapon_name.c_str() );
5528 iter = myset.upper_bound( activeWeapons );
5529 if ( iter == myset.end() )
5530 iter = myset.begin();
5531 if ( iter == myset.end() )
5533 for (i = 0; i < un->
mounts.size(); ++i)
5534 un->
mounts[i].DeActive( missile );
5535 printf(
"ACTIVE: " );
5536 for (WeaponGroup::const_iterator iter2 = (*iter).begin(); iter2 != (*iter).end(); ++iter2) {
5537 printf(
"%d:%s ", *iter2, un->
mounts[*iter2].type->weapon_name.c_str() );
5538 un->
mounts[*iter2].Activate( missile );
5541 printf(
"ToggleWeapon end...\n" );