File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1297,7 +1297,9 @@ void parse_player_info2(mission *pm)
12971297 support_rearm_list.clear ();
12981298 stuff_loadout_list (support_rearm_list, ParseLookupType::MISSION_LOADOUT_WEAPON_LIST );
12991299
1300- if (!pm->support_ships .rearm_pool_from_loadout ) {
1300+ if (pm->support_ships .rearm_pool_from_loadout ) {
1301+ WarningEx (LOCATION , " +Support Rearm Pool is set but +Support Rearm Pool From Loadout is also enabled! The explicit pool will be ignored.\n " );
1302+ } else {
13011303 for (auto & wc : support_rearm_list) {
13021304 if (wc.index < 0 || wc.index >= weapon_info_size ()) {
13031305 continue ;
@@ -1314,6 +1316,8 @@ void parse_player_info2(mission *pm)
13141316 pm->support_ships .rearm_weapon_pool [nt][wc.index ] = 0 ;
13151317 } else if (wc.count < 0 ) {
13161318 pm->support_ships .rearm_weapon_pool [nt][wc.index ] = -1 ;
1319+ } else if (wc.count == 0 ) {
1320+ pm->support_ships .rearm_weapon_pool [nt][wc.index ] = 0 ;
13171321 } else if (wc.count > 0 && pm->support_ships .rearm_weapon_pool [nt][wc.index ] >= 0 ) {
13181322 pm->support_ships .rearm_weapon_pool [nt][wc.index ] += wc.count ;
13191323 }
Original file line number Diff line number Diff line change @@ -16465,13 +16465,12 @@ int ship_do_rearm_frame( object *objp, float frametime )
1646516465 if (objp == Player_obj)
1646616466 joy_ff_play_reload_effect();
1646716467
16468+ const int prev_ammo = swp->secondary_bank_ammo[i];
1646816469 swp->secondary_bank_ammo[i] += reload_amount;
16469- use_mission_rearm_pool_for_weapon(weapon_class, reload_amount, shipp->team);
1647016470 if (swp->secondary_bank_ammo[i] > swp->secondary_bank_start_ammo[i]) {
1647116471 swp->secondary_bank_ammo[i] = swp->secondary_bank_start_ammo[i];
1647216472 }
16473- } else {
16474- }
16473+ use_mission_rearm_pool_for_weapon(weapon_class, swp->secondary_bank_ammo[i] - prev_ammo, shipp->team);
1647516474 } else {
1647616475 banks_full++;
1647716476 }
@@ -16556,11 +16555,12 @@ int ship_do_rearm_frame( object *objp, float frametime )
1655616555 if (sound_index.isValid())
1655716556 snd_play_3d(gamesnd_get_game_sound(sound_index), &objp->pos, &View_position);
1655816557
16558+ const int prev_primary_ammo = swp->primary_bank_ammo[i];
1655916559 swp->primary_bank_ammo[i] += reload_amount;
16560- use_mission_rearm_pool_for_weapon(weapon_class, reload_amount, shipp->team);
1656116560 if (swp->primary_bank_ammo[i] > swp->primary_bank_start_ammo[i]) {
1656216561 swp->primary_bank_ammo[i] = swp->primary_bank_start_ammo[i];
1656316562 }
16563+ use_mission_rearm_pool_for_weapon(weapon_class, swp->primary_bank_ammo[i] - prev_primary_ammo, shipp->team);
1656416564 }
1656516565 } else {
1656616566 primary_banks_full++;
You can’t perform that action at this time.
0 commit comments