add: if (instantVictory) { num_ships = 0; battle_counter = 1; instantVictory = FALSE; }
context: Battle (void){	SIZE num_ships;	extern SIZE InitShips (void);	void UninitShips (void);	LockMutex (GraphicsLock);	SetResourceIndex (hResIndex);#if !(DEMO_MODE || CREATE_JOURNAL)	TFB_SeedRandom (GetTimeCounter ());#else /* DEMO_MODE */	if (BattleSeed == 0)		BattleSeed = TFB_Random ();	TFB_SeedRandom (BattleSeed);	BattleSeed = TFB_Random (); /* get next battle seed */#endif /* DEMO_MODE */	BattleSong (FALSE);		num_ships = InitShips ();	if (num_ships)	{		BATTLE_STATE bs;		GLOBAL (CurrentActivity) |= IN_BATTLE;		battle_counter = MAKE_WORD (				CountLinks (&race_q[0]),				CountLinks (&race_q[1])				);		while (num_ships--)		{			if (!GetNextStarShip (NULL_PTR, num_ships))				goto AbortBattle;		}		BattleSong (TRUE);		bs.NextTime = 0;		bs.InputFunc = &DoBattle;		bs.first_time = (BOOLEAN)(LOBYTE (GLOBAL (CurrentActivity)) == IN_HYPERSPACE);		UnlockMutex (GraphicsLock);		DoInput ((PVOID)&bs, FALSE);		LockMutex (GraphicsLock);AbortBattle:		StopMusic ();		StopSound ();	}	UninitShips ();	FreeBattleSong ();	UnlockMutex (GraphicsLock);		return (num_ships < 0);}