Get/Put GroupInfo cleanup; using symbolic constants for clarity

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@2384 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
avolkov
2006-06-09 03:54:09 +00:00
parent 18a2f50c7d
commit d0fb58af54
25 changed files with 126 additions and 125 deletions
+44 -41
View File
@@ -232,12 +232,12 @@ FoundHome:
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
} }
PutGroupInfo (0L, ++which_group); PutGroupInfo (GROUPS_RANDOM, ++which_group);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
} while (--num_groups); } while (--num_groups);
} }
GetGroupInfo (0L, (BYTE)~0); GetGroupInfo (GROUPS_RANDOM, GROUP_INIT_IP);
} }
static void static void
@@ -247,15 +247,14 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
HSTARSHIP hStarShip; HSTARSHIP hStarShip;
SHIP_FRAGMENTPTR FragPtr; SHIP_FRAGMENTPTR FragPtr;
if (which_group == 0) if (which_group == GROUP_LIST)
{
if (pGH->GroupOffset[0] == 0)
pGH->GroupOffset[0] = LengthStateFile (fp);
{ {
QUEUE temp_q; QUEUE temp_q;
HSTARSHIP hNextShip; HSTARSHIP hNextShip;
if (pGH->GroupOffset[0] == 0)
pGH->GroupOffset[0] = LengthStateFile (fp);
temp_q = GLOBAL (npc_built_ship_q); temp_q = GLOBAL (npc_built_ship_q);
SetHeadLink (&GLOBAL (npc_built_ship_q), 0); SetHeadLink (&GLOBAL (npc_built_ship_q), 0);
SetTailLink (&GLOBAL (npc_built_ship_q), 0); SetTailLink (&GLOBAL (npc_built_ship_q), 0);
@@ -276,7 +275,7 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
if (GLOBAL (BattleGroupRef)) if (GLOBAL (BattleGroupRef))
PutGroupInfo (GLOBAL (BattleGroupRef), which_group); PutGroupInfo (GLOBAL (BattleGroupRef), which_group);
else else
FlushGroupInfo (pGH, 0L, which_group, fp); FlushGroupInfo (pGH, GROUPS_RANDOM, which_group, fp);
pGH->GroupOffset[which_group] = 0; pGH->GroupOffset[which_group] = 0;
RemoveQueue (&temp_q, hStarShip); RemoveQueue (&temp_q, hStarShip);
FreeStarShip (&temp_q, hStarShip); FreeStarShip (&temp_q, hStarShip);
@@ -284,8 +283,7 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
} }
GLOBAL (npc_built_ship_q) = temp_q; GLOBAL (npc_built_ship_q) = temp_q;
which_group = 0; which_group = GROUP_LIST;
}
} }
else if (which_group > pGH->NumGroups) else if (which_group > pGH->NumGroups)
{ {
@@ -297,7 +295,7 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
&GLOBAL (npc_built_ship_q), hStarShip); &GLOBAL (npc_built_ship_q), hStarShip);
RaceType = GET_RACE_ID (FragPtr); RaceType = GET_RACE_ID (FragPtr);
SeekStateFile (fp, pGH->GroupOffset[which_group], SEEK_SET); SeekStateFile (fp, pGH->GroupOffset[which_group], SEEK_SET);
WriteStateFile ((PBYTE)&RaceType, sizeof (RaceType), 1, fp); WriteStateFile (&RaceType, sizeof (RaceType), 1, fp);
UnlockStarShip (&GLOBAL (npc_built_ship_q), hStarShip); UnlockStarShip (&GLOBAL (npc_built_ship_q), hStarShip);
} }
SeekStateFile (fp, offset, SEEK_SET); SeekStateFile (fp, offset, SEEK_SET);
@@ -310,14 +308,16 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
NumShips = (BYTE)CountLinks (&GLOBAL (npc_built_ship_q)); NumShips = (BYTE)CountLinks (&GLOBAL (npc_built_ship_q));
if (which_group) if (which_group != GROUP_LIST)
{
SeekStateFile (fp, pGH->GroupOffset[which_group] SeekStateFile (fp, pGH->GroupOffset[which_group]
+ sizeof (RaceType), SEEK_SET); + sizeof (RaceType), SEEK_SET);
}
else else
{ {
RaceType = (BYTE)cur_player; BYTE BaseGroup = (BYTE)cur_player;
SeekStateFile (fp, pGH->GroupOffset[0], SEEK_SET); SeekStateFile (fp, pGH->GroupOffset[0], SEEK_SET);
WriteStateFile (&RaceType, sizeof (RaceType), 1, fp); WriteStateFile (&BaseGroup, sizeof (BaseGroup), 1, fp);
} }
WriteStateFile (&NumShips, sizeof (NumShips), 1, fp); WriteStateFile (&NumShips, sizeof (NumShips), 1, fp);
@@ -333,10 +333,10 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
hNextShip = _GetSuccLink (FragPtr); hNextShip = _GetSuccLink (FragPtr);
RaceType = GET_RACE_ID (FragPtr); RaceType = GET_RACE_ID (FragPtr);
WriteStateFile ((PBYTE)&RaceType, sizeof (RaceType), 1, fp); WriteStateFile (&RaceType, sizeof (RaceType), 1, fp);
#ifdef DEBUG_GROUPS #ifdef DEBUG_GROUPS
if (which_group == 0) if (which_group == GROUP_LIST)
log_add (log_Debug, "F) type %u, loc %u<%d, %d>, task 0x%02x:%u", log_add (log_Debug, "F) type %u, loc %u<%d, %d>, task 0x%02x:%u",
RaceType, RaceType,
GET_GROUP_LOC (FragPtr), GET_GROUP_LOC (FragPtr),
@@ -346,7 +346,7 @@ FlushGroupInfo (GROUP_HEADER *pGH, DWORD offset, BYTE which_group, PVOID fp)
GET_GROUP_DEST (FragPtr)); GET_GROUP_DEST (FragPtr));
#endif /* DEBUG_GROUPS */ #endif /* DEBUG_GROUPS */
Ptr = (PBYTE)&FragPtr->RaceDescPtr; Ptr = (PBYTE)&FragPtr->RaceDescPtr;
WriteStateFile ((PBYTE)Ptr, WriteStateFile (Ptr,
((PBYTE)&FragPtr->ShipInfo.race_strings) - Ptr, 1, fp); ((PBYTE)&FragPtr->ShipInfo.race_strings) - Ptr, 1, fp);
UnlockStarShip (&GLOBAL (npc_built_ship_q), hStarShip); UnlockStarShip (&GLOBAL (npc_built_ship_q), hStarShip);
hStarShip = hNextShip; hStarShip = hNextShip;
@@ -358,9 +358,11 @@ GetGroupInfo (DWORD offset, BYTE which_group)
{ {
PVOID fp; PVOID fp;
fp = OpenStateFile ( if (offset != GROUPS_RANDOM && which_group != GROUP_LIST)
offset && which_group ? DEFGRPINFO_FILE : RANDGRPINFO_FILE, fp = OpenStateFile (DEFGRPINFO_FILE, "r+b");
"r+b"); else
fp = OpenStateFile (RANDGRPINFO_FILE, "r+b");
if (fp) if (fp)
{ {
BYTE RaceType, NumShips; BYTE RaceType, NumShips;
@@ -374,7 +376,7 @@ GetGroupInfo (DWORD offset, BYTE which_group)
log_add (log_Debug, "GetGroupInfo(%lu): %u(%lu) out of %u", offset, log_add (log_Debug, "GetGroupInfo(%lu): %u(%lu) out of %u", offset,
which_group, GH.GroupOffset[which_group], GH.NumGroups); which_group, GH.GroupOffset[which_group], GH.NumGroups);
#endif /* DEBUG_GROUPS */ #endif /* DEBUG_GROUPS */
if (which_group == (BYTE)~0) if (which_group == GROUP_INIT_IP)
{ {
COUNT month_index, day_index, year_index; COUNT month_index, day_index, year_index;
@@ -386,7 +388,7 @@ GetGroupInfo (DWORD offset, BYTE which_group)
day_index = GH.day_index; day_index = GH.day_index;
month_index = GH.month_index; month_index = GH.month_index;
year_index = GH.year_index; year_index = GH.year_index;
if (offset == 0 if (offset == GROUPS_RANDOM
&& (GH.star_index != (COUNT)(CurStarDescPtr - star_array) && (GH.star_index != (COUNT)(CurStarDescPtr - star_array)
|| !ValidateEvent (ABSOLUTE_EVENT, || !ValidateEvent (ABSOLUTE_EVENT,
&month_index, &day_index, &year_index))) &month_index, &day_index, &year_index)))
@@ -495,9 +497,8 @@ GetGroupInfo (DWORD offset, BYTE which_group)
} }
} }
if (offset) if (offset != GROUPS_RANDOM)
InitGroupInfo (FALSE); InitGroupInfo (FALSE); /* Wipe out random battle groups */
/* Random battle group */
else if (ValidateEvent (ABSOLUTE_EVENT, /* still fresh */ else if (ValidateEvent (ABSOLUTE_EVENT, /* still fresh */
&month_index, &day_index, &year_index)) &month_index, &day_index, &year_index))
{ {
@@ -512,7 +513,7 @@ GetGroupInfo (DWORD offset, BYTE which_group)
COUNT ShipsLeft; COUNT ShipsLeft;
ShipsLeft = CountLinks (&GLOBAL (npc_built_ship_q)); ShipsLeft = CountLinks (&GLOBAL (npc_built_ship_q));
if (which_group == 0) if (which_group == GROUP_LIST)
{ {
SeekStateFile (fp, GH.GroupOffset[0], SEEK_SET); SeekStateFile (fp, GH.GroupOffset[0], SEEK_SET);
ReadStateFile (&BaseGroup, sizeof (BaseGroup), 1, fp); ReadStateFile (&BaseGroup, sizeof (BaseGroup), 1, fp);
@@ -528,10 +529,10 @@ GetGroupInfo (DWORD offset, BYTE which_group)
else else
{ {
cur_player = (SIZE)which_group; cur_player = (SIZE)which_group;
if (offset) if (offset != GROUPS_RANDOM)
PutGroupInfo (0L, 0); PutGroupInfo (GROUPS_RANDOM, GROUP_LIST);
else else
FlushGroupInfo (&GH, 0L, 0, fp); FlushGroupInfo (&GH, GROUPS_RANDOM, GROUP_LIST, fp);
BaseGroup = which_group; BaseGroup = which_group;
} }
@@ -545,7 +546,7 @@ GetGroupInfo (DWORD offset, BYTE which_group)
{ {
PBYTE Ptr; PBYTE Ptr;
ReadStateFile ((PBYTE)&RaceType, sizeof (RaceType), 1, fp); ReadStateFile (&RaceType, sizeof (RaceType), 1, fp);
hStarShip = CloneShipFragment (RaceType, hStarShip = CloneShipFragment (RaceType,
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
@@ -553,12 +554,12 @@ GetGroupInfo (DWORD offset, BYTE which_group)
FragPtr = (SHIP_FRAGMENTPTR)LockStarShip ( FragPtr = (SHIP_FRAGMENTPTR)LockStarShip (
&GLOBAL (npc_built_ship_q), hStarShip); &GLOBAL (npc_built_ship_q), hStarShip);
Ptr = (PBYTE)&FragPtr->RaceDescPtr; Ptr = (PBYTE)&FragPtr->RaceDescPtr;
ReadStateFile ((PBYTE)Ptr, ReadStateFile (Ptr,
((PBYTE)&FragPtr->ShipInfo.race_strings) - Ptr, 1, ((PBYTE)&FragPtr->ShipInfo.race_strings) - Ptr, 1,
fp); fp);
#ifdef DEBUG_GROUPS #ifdef DEBUG_GROUPS
if (which_group == 0) if (which_group == GROUP_LIST)
log_add (log_Debug, "G) type %u, loc %u<%d, %d>, " log_add (log_Debug, "G) type %u, loc %u<%d, %d>, "
"task 0x%02x:%u", "task 0x%02x:%u",
RaceType, RaceType,
@@ -569,14 +570,14 @@ GetGroupInfo (DWORD offset, BYTE which_group)
GET_GROUP_DEST (FragPtr)); GET_GROUP_DEST (FragPtr));
#endif /* DEBUG_GROUPS */ #endif /* DEBUG_GROUPS */
if (GET_GROUP_ID (FragPtr) != BaseGroup if (GET_GROUP_ID (FragPtr) != BaseGroup
|| which_group || which_group != GROUP_LIST
|| ShipsLeft) || ShipsLeft)
{ {
#ifdef DEBUG_GROUPS #ifdef DEBUG_GROUPS
log_add (log_Debug, "\n"); log_add (log_Debug, "\n");
#endif /* DEBUG_GROUPS */ #endif /* DEBUG_GROUPS */
if (RaceType == SHOFIXTI_SHIP if (RaceType == SHOFIXTI_SHIP
&& which_group && which_group != GROUP_LIST
&& !GET_GAME_STATE (SHOFIXTI_RECRUITED)) && !GET_GAME_STATE (SHOFIXTI_RECRUITED))
{ {
BYTE captains_name_index; BYTE captains_name_index;
@@ -614,14 +615,16 @@ PutGroupInfo (DWORD offset, BYTE which_group)
{ {
PVOID fp; PVOID fp;
fp = OpenStateFile ( if (offset != GROUPS_RANDOM && which_group != GROUP_LIST)
offset && which_group ? DEFGRPINFO_FILE : RANDGRPINFO_FILE, fp = OpenStateFile (DEFGRPINFO_FILE, "r+b");
"r+b"); else
fp = OpenStateFile (RANDGRPINFO_FILE, "r+b");
if (fp) if (fp)
{ {
GROUP_HEADER GH; GROUP_HEADER GH;
if (offset == (DWORD) ~0L) if (offset == GROUPS_ADD_NEW)
{ {
offset = LengthStateFile (fp); offset = LengthStateFile (fp);
GH.NumGroups = 0; GH.NumGroups = 0;
@@ -632,13 +635,13 @@ PutGroupInfo (DWORD offset, BYTE which_group)
// Some garbage is saved. -- SvdB // Some garbage is saved. -- SvdB
} }
if (which_group) if (which_group != GROUP_LIST)
{ {
SeekStateFile (fp, offset, SEEK_SET); SeekStateFile (fp, offset, SEEK_SET);
if (which_group == (BYTE)~0) if (which_group == GROUP_SAVE_IP)
{ {
cur_player = 0; cur_player = 0;
which_group = 0; which_group = GROUP_LIST;
} }
} }
ReadStateFile (&GH, sizeof (GH), 1, fp); ReadStateFile (&GH, sizeof (GH), 1, fp);
+4 -4
View File
@@ -229,7 +229,7 @@ DeviceFailed (BYTE which_device)
battle_counter = 0; battle_counter = 0;
GLOBAL (CurrentActivity) |= START_ENCOUNTER; GLOBAL (CurrentActivity) |= START_ENCOUNTER;
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (CHMMR_SHIP, CloneShipFragment (CHMMR_SHIP,
@@ -272,7 +272,7 @@ DeviceFailed (BYTE which_device)
{ {
SET_GAME_STATE (SHIP_TO_COMPEL, 1); SET_GAME_STATE (SHIP_TO_COMPEL, 1);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
} }
@@ -330,7 +330,7 @@ DeviceFailed (BYTE which_device)
GLOBAL (CurrentActivity) |= START_ENCOUNTER; GLOBAL (CurrentActivity) |= START_ENCOUNTER;
battle_counter = 0; battle_counter = 0;
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
SET_GAME_STATE (GLOBAL_FLAGS_AND_DATA, 1 << 7); SET_GAME_STATE (GLOBAL_FLAGS_AND_DATA, 1 << 7);
@@ -367,7 +367,7 @@ DeviceFailed (BYTE which_device)
GLOBAL (CurrentActivity) |= START_ENCOUNTER; GLOBAL (CurrentActivity) |= START_ENCOUNTER;
battle_counter = 0; battle_counter = 0;
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (CurStarDescPtr->Index == ILWRATH_DEFINED) if (CurStarDescPtr->Index == ILWRATH_DEFINED)
+2 -2
View File
@@ -78,7 +78,7 @@ GenerateChmmr (BYTE control)
&& !GET_GAME_STATE (ILWRATH_DECEIVED) && !GET_GAME_STATE (ILWRATH_DECEIVED)
&& ActivateStarShip (ILWRATH_SHIP, SPHERE_TRACKING)) && ActivateStarShip (ILWRATH_SHIP, SPHERE_TRACKING))
{ {
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (ILWRATH_SHIP, CloneShipFragment (ILWRATH_SHIP,
@@ -94,7 +94,7 @@ GenerateChmmr (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+1 -1
View File
@@ -44,7 +44,7 @@ GenerateColony (BYTE control)
CloneShipFragment (URQUAN_SHIP, CloneShipFragment (URQUAN_SHIP,
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
GLOBAL (BattleGroupRef) = PutGroupInfo (~0L, 1); GLOBAL (BattleGroupRef) = PutGroupInfo (GROUPS_ADD_NEW, 1);
b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef))); b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef))); b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef))); b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef)));
+2 -2
View File
@@ -114,7 +114,7 @@ GenerateDruuge (BYTE control)
if (ActivateStarShip (DRUUGE_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (DRUUGE_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (DRUUGE_SHIP, (BYTE)~0); NotifyOthers (DRUUGE_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (DRUUGE_SHIP, CloneShipFragment (DRUUGE_SHIP,
@@ -129,7 +129,7 @@ GenerateDruuge (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+2 -2
View File
@@ -87,7 +87,7 @@ GenerateIlwrath (BYTE control)
if (ActivateStarShip (ILWRATH_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (ILWRATH_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (ILWRATH_SHIP, (BYTE)~0); NotifyOthers (ILWRATH_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (ILWRATH_SHIP, CloneShipFragment (ILWRATH_SHIP,
@@ -103,7 +103,7 @@ GenerateIlwrath (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+1 -1
View File
@@ -169,7 +169,7 @@ GenerateMelnorme (BYTE control)
{ {
CloneShipFragment (MELNORME_SHIP, CloneShipFragment (MELNORME_SHIP,
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
GLOBAL (BattleGroupRef) = PutGroupInfo (~0L, 1); GLOBAL (BattleGroupRef) = PutGroupInfo (GROUPS_ADD_NEW, 1);
SetMelnormeRef (GLOBAL (BattleGroupRef)); SetMelnormeRef (GLOBAL (BattleGroupRef));
} }
GenerateRandomIP (INIT_NPCS); GenerateRandomIP (INIT_NPCS);
+2 -2
View File
@@ -134,7 +134,7 @@ GenerateMycon (BYTE control)
|| !GET_GAME_STATE (SUN_DEVICE_UNGUARDED)) || !GET_GAME_STATE (SUN_DEVICE_UNGUARDED))
{ {
NotifyOthers (MYCON_SHIP, (BYTE)~0); NotifyOthers (MYCON_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (CurStarDescPtr->Index == MYCON_DEFINED if (CurStarDescPtr->Index == MYCON_DEFINED
@@ -176,7 +176,7 @@ GenerateMycon (BYTE control)
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (MyconSurvivors) if (MyconSurvivors)
break; break;
+2 -2
View File
@@ -302,7 +302,7 @@ GenerateOrz (BYTE control)
&& ActivateStarShip (ORZ_SHIP, SPHERE_TRACKING)) && ActivateStarShip (ORZ_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (ORZ_SHIP, (BYTE)~0); NotifyOthers (ORZ_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (CurStarDescPtr->Index == ORZ_DEFINED) if (CurStarDescPtr->Index == ORZ_DEFINED)
@@ -335,7 +335,7 @@ GenerateOrz (BYTE control)
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (OrzSurvivors) if (OrzSurvivors)
break; break;
+2 -2
View File
@@ -172,7 +172,7 @@ GenerateTalkingPet (BYTE control)
|| ActivateStarShip (UMGAH_SHIP, SPHERE_TRACKING))) || ActivateStarShip (UMGAH_SHIP, SPHERE_TRACKING)))
{ {
NotifyOthers (UMGAH_SHIP, (BYTE)~0); NotifyOthers (UMGAH_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (ActivateStarShip (UMGAH_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (UMGAH_SHIP, SPHERE_TRACKING))
@@ -223,7 +223,7 @@ GenerateTalkingPet (BYTE control)
} }
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+2 -2
View File
@@ -106,7 +106,7 @@ GeneratePkunk (BYTE control)
if (ActivateStarShip (PKUNK_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (PKUNK_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (PKUNK_SHIP, (BYTE)~0); NotifyOthers (PKUNK_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (PKUNK_SHIP, CloneShipFragment (PKUNK_SHIP,
@@ -122,7 +122,7 @@ GeneratePkunk (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+6 -6
View File
@@ -53,7 +53,7 @@ BuildUrquanGuard (void)
if (GLOBAL (BattleGroupRef) == 0) if (GLOBAL (BattleGroupRef) == 0)
{ {
GLOBAL (BattleGroupRef) = PutGroupInfo (~0L, 1); GLOBAL (BattleGroupRef) = PutGroupInfo (GROUPS_ADD_NEW, 1);
b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef))); b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef))); b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef))); b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef)));
@@ -76,7 +76,7 @@ BuildUrquanGuard (void)
for (b0 = 1; b0 <= NUM_URQUAN_GUARDS1; ++b0) for (b0 = 1; b0 <= NUM_URQUAN_GUARDS1; ++b0)
PutGroupInfo (GLOBAL (BattleGroupRef), (BYTE)(NUM_URQUAN_GUARDS0 + b0)); PutGroupInfo (GLOBAL (BattleGroupRef), (BYTE)(NUM_URQUAN_GUARDS0 + b0));
GetGroupInfo (GLOBAL (BattleGroupRef), (BYTE)~0); GetGroupInfo (GLOBAL (BattleGroupRef), GROUP_INIT_IP);
XFormIPLoc ( XFormIPLoc (
&pSolarSysState->PlanetDesc[4].image.origin, &pSolarSysState->PlanetDesc[4].image.origin,
@@ -150,11 +150,11 @@ GenerateSamatra (BYTE control)
BuildUrquanGuard (); BuildUrquanGuard ();
else else
{ // Exorcise Ur-Quan ghosts upon system reentry { // Exorcise Ur-Quan ghosts upon system reentry
PutGroupInfo (0L, (BYTE)~0); // wipe out the group PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP); // wipe out the group
} }
break; break;
case REINIT_NPCS: case REINIT_NPCS:
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
battle_counter = 0; battle_counter = 0;
{ {
BOOLEAN GuardEngaged; BOOLEAN GuardEngaged;
@@ -246,7 +246,7 @@ GenerateSamatra (BYTE control)
if (pSolarSysState->pOrbitalDesc->pPrevDesc == &pSolarSysState->PlanetDesc[4] if (pSolarSysState->pOrbitalDesc->pPrevDesc == &pSolarSysState->PlanetDesc[4]
&& pSolarSysState->pOrbitalDesc == &pSolarSysState->MoonDesc[0]) && pSolarSysState->pOrbitalDesc == &pSolarSysState->MoonDesc[0])
{ {
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (!GET_GAME_STATE (URQUAN_MESSED_UP)) if (!GET_GAME_STATE (URQUAN_MESSED_UP))
@@ -283,7 +283,7 @@ GenerateSamatra (BYTE control)
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (UrquanSurvivors) if (UrquanSurvivors)
{ {
SET_GAME_STATE (URQUAN_PROTECTING_SAMATRA, 0); SET_GAME_STATE (URQUAN_PROTECTING_SAMATRA, 0);
+1 -1
View File
@@ -67,7 +67,7 @@ GenerateShofixti (BYTE control)
MAKE_WORD (b0, b1), MAKE_WORD (b2, b3) MAKE_WORD (b0, b1), MAKE_WORD (b2, b3)
); );
if (GLOBAL (BattleGroupRef) == 0 if (GLOBAL (BattleGroupRef) == 0
|| !GetGroupInfo (GLOBAL (BattleGroupRef), (BYTE)~0)) || !GetGroupInfo (GLOBAL (BattleGroupRef), GROUP_INIT_IP))
{ {
if (GLOBAL (BattleGroupRef) == 0) if (GLOBAL (BattleGroupRef) == 0)
GLOBAL (BattleGroupRef) = ~0L; GLOBAL (BattleGroupRef) = ~0L;
+3 -3
View File
@@ -64,7 +64,7 @@ init_probe (void)
HSTARSHIP hStarShip; HSTARSHIP hStarShip;
if (!GET_GAME_STATE (PROBE_MESSAGE_DELIVERED) if (!GET_GAME_STATE (PROBE_MESSAGE_DELIVERED)
&& GetGroupInfo (GLOBAL (BattleGroupRef), (BYTE)~0) && GetGroupInfo (GLOBAL (BattleGroupRef), GROUP_INIT_IP)
&& (hStarShip = GetHeadLink ( && (hStarShip = GetHeadLink (
&GLOBAL (npc_built_ship_q) &GLOBAL (npc_built_ship_q)
))) )))
@@ -186,7 +186,7 @@ generate_orbital (void)
if (pSolarSysState->pOrbitalDesc->pPrevDesc == &pSolarSysState->PlanetDesc[2] if (pSolarSysState->pOrbitalDesc->pPrevDesc == &pSolarSysState->PlanetDesc[2]
&& pSolarSysState->pOrbitalDesc == &pSolarSysState->MoonDesc[0]) && pSolarSysState->pOrbitalDesc == &pSolarSysState->MoonDesc[0])
{ {
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
battle_counter = 0; battle_counter = 0;
@@ -438,7 +438,7 @@ GenerateSOL (BYTE control)
CloneShipFragment (URQUAN_PROBE_SHIP, CloneShipFragment (URQUAN_PROBE_SHIP,
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
GLOBAL (BattleGroupRef) = PutGroupInfo (~0L, 1); GLOBAL (BattleGroupRef) = PutGroupInfo (GROUPS_ADD_NEW, 1);
SetProbeRef (GLOBAL (BattleGroupRef)); SetProbeRef (GLOBAL (BattleGroupRef));
} }
if (!init_probe ()) if (!init_probe ())
+2 -2
View File
@@ -159,7 +159,7 @@ GenerateSpathi (BYTE control)
&& ActivateStarShip (SPATHI_SHIP, SPHERE_TRACKING)) && ActivateStarShip (SPATHI_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (SPATHI_SHIP, (BYTE)~0); NotifyOthers (SPATHI_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (SPATHI_SHIP, CloneShipFragment (SPATHI_SHIP,
@@ -175,7 +175,7 @@ GenerateSpathi (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+2 -2
View File
@@ -104,7 +104,7 @@ GenerateSupox (BYTE control)
if (ActivateStarShip (SUPOX_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (SUPOX_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (SUPOX_SHIP, (BYTE)~0); NotifyOthers (SUPOX_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (SUPOX_SHIP, CloneShipFragment (SUPOX_SHIP,
@@ -120,7 +120,7 @@ GenerateSupox (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+2 -2
View File
@@ -145,7 +145,7 @@ GenerateThradd (BYTE control)
&& (BYTE)(GET_GAME_STATE (THRADD_MISSION) - 1) >= 3))) && (BYTE)(GET_GAME_STATE (THRADD_MISSION) - 1) >= 3)))
{ {
NotifyOthers (THRADDASH_SHIP, (BYTE)~0); NotifyOthers (THRADDASH_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (THRADDASH_SHIP, CloneShipFragment (THRADDASH_SHIP,
@@ -169,7 +169,7 @@ GenerateThradd (BYTE control)
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (CurStarDescPtr->Index == THRADD_DEFINED if (CurStarDescPtr->Index == THRADD_DEFINED
|| (!GET_GAME_STATE (HELIX_UNPROTECTED) || (!GET_GAME_STATE (HELIX_UNPROTECTED)
+4 -4
View File
@@ -146,7 +146,7 @@ GenerateUtwig (BYTE control)
&& ActivateStarShip (UTWIG_SHIP, SPHERE_TRACKING)) && ActivateStarShip (UTWIG_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (UTWIG_SHIP, (BYTE)~0); NotifyOthers (UTWIG_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (UTWIG_SHIP, CloneShipFragment (UTWIG_SHIP,
@@ -169,7 +169,7 @@ GenerateUtwig (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
@@ -179,7 +179,7 @@ GenerateUtwig (BYTE control)
{ {
COUNT i; COUNT i;
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
for (i = 0; i < 5; ++i) for (i = 0; i < 5; ++i)
@@ -203,7 +203,7 @@ GenerateUtwig (BYTE control)
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (DruugeSurvivors) if (DruugeSurvivors)
break; break;
+2 -2
View File
@@ -159,7 +159,7 @@ GenerateVUX (BYTE control)
&& ActivateStarShip (VUX_SHIP, SPHERE_TRACKING)) && ActivateStarShip (VUX_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (VUX_SHIP, (BYTE)~0); NotifyOthers (VUX_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (VUX_SHIP, CloneShipFragment (VUX_SHIP,
@@ -184,7 +184,7 @@ GenerateVUX (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
if (CurStarDescPtr->Index == VUX_DEFINED if (CurStarDescPtr->Index == VUX_DEFINED
|| !GET_GAME_STATE (ZEX_IS_DEAD)) || !GET_GAME_STATE (ZEX_IS_DEAD))
+2 -2
View File
@@ -88,7 +88,7 @@ GenerateYehat (BYTE control)
if (ActivateStarShip (YEHAT_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (YEHAT_SHIP, SPHERE_TRACKING))
{ {
NotifyOthers (YEHAT_SHIP, (BYTE)~0); NotifyOthers (YEHAT_SHIP, (BYTE)~0);
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
CloneShipFragment (YEHAT_SHIP, CloneShipFragment (YEHAT_SHIP,
@@ -104,7 +104,7 @@ GenerateYehat (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+4 -5
View File
@@ -77,7 +77,7 @@ GenerateScout (BYTE control)
CloneShipFragment (ZOQFOTPIK_SHIP, CloneShipFragment (ZOQFOTPIK_SHIP,
&GLOBAL (npc_built_ship_q), 0); &GLOBAL (npc_built_ship_q), 0);
GLOBAL (BattleGroupRef) = PutGroupInfo (~0L, 1); GLOBAL (BattleGroupRef) = PutGroupInfo (GROUPS_ADD_NEW, 1);
b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef))); b0 = LOBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef))); b1 = HIBYTE (LOWORD (GLOBAL (BattleGroupRef)));
b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef))); b2 = LOBYTE (HIWORD (GLOBAL (BattleGroupRef)));
@@ -171,7 +171,7 @@ GenerateZoqFotPik (BYTE control)
{ {
if (ActivateStarShip (ZOQFOTPIK_SHIP, SPHERE_TRACKING)) if (ActivateStarShip (ZOQFOTPIK_SHIP, SPHERE_TRACKING))
{ {
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
if (GET_GAME_STATE (ZOQFOT_DISTRESS)) if (GET_GAME_STATE (ZOQFOT_DISTRESS))
@@ -192,8 +192,7 @@ GenerateZoqFotPik (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
break; break;
} }
} }
@@ -210,7 +209,7 @@ GenerateZoqFotPik (BYTE control)
{ {
GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY; GLOBAL (CurrentActivity) &= ~START_INTERPLANETARY;
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
} }
break; break;
} }
+1 -1
View File
@@ -768,7 +768,7 @@ PickPlanetSide (PMENU_STATE pMS)
GLOBAL (CurrentActivity) |= START_ENCOUNTER; GLOBAL (CurrentActivity) |= START_ENCOUNTER;
battle_counter = 0; battle_counter = 0;
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
hStarShip = CloneShipFragment (SPATHI_SHIP, hStarShip = CloneShipFragment (SPATHI_SHIP,
+3 -3
View File
@@ -1573,17 +1573,17 @@ GenerateRandomIP (BYTE control)
switch (control) switch (control)
{ {
case INIT_NPCS: case INIT_NPCS:
if (!GetGroupInfo (GLOBAL (BattleGroupRef), (BYTE)~0)) if (!GetGroupInfo (GLOBAL (BattleGroupRef), GROUP_INIT_IP))
{ {
GLOBAL (BattleGroupRef) = 0; GLOBAL (BattleGroupRef) = 0;
BuildGroups (); BuildGroups ();
} }
break; break;
case REINIT_NPCS: case REINIT_NPCS:
GetGroupInfo (0L, 0); GetGroupInfo (GROUPS_RANDOM, GROUP_LOAD_IP);
break; break;
case UNINIT_NPCS: case UNINIT_NPCS:
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
ReinitQueue (&GLOBAL (npc_built_ship_q)); ReinitQueue (&GLOBAL (npc_built_ship_q));
break; break;
case GENERATE_MINERAL: case GENERATE_MINERAL:
+2 -9
View File
@@ -344,14 +344,7 @@ RetrySave:
if (CurStarDescPtr) if (CurStarDescPtr)
SD = *CurStarDescPtr; SD = *CurStarDescPtr;
else else
{ memset (&SD, 0, sizeof (SD));
SD.star_pt.x = 0;
SD.star_pt.y = 0;
SD.Type = 0;
SD.Index = 0;
SD.Prefix = 0;
SD.Postfix = 0;
}
frame = GLOBAL (ShipStamp.frame); frame = GLOBAL (ShipStamp.frame);
pt = GLOBAL (ip_location); pt = GLOBAL (ip_location);
@@ -359,7 +352,7 @@ RetrySave:
if (LOBYTE (GLOBAL (CurrentActivity)) == IN_INTERPLANETARY if (LOBYTE (GLOBAL (CurrentActivity)) == IN_INTERPLANETARY
&& !(GLOBAL (CurrentActivity) && !(GLOBAL (CurrentActivity)
& (START_ENCOUNTER | START_INTERPLANETARY))) & (START_ENCOUNTER | START_INTERPLANETARY)))
PutGroupInfo (0L, (BYTE)~0); PutGroupInfo (GROUPS_RANDOM, GROUP_SAVE_IP);
cwrite ((PBYTE)&GlobData.Game_state, sizeof (GlobData.Game_state), cwrite ((PBYTE)&GlobData.Game_state, sizeof (GlobData.Game_state),
1, fh); 1, fh);
+6
View File
@@ -30,6 +30,12 @@ extern void InitGroupInfo (BOOLEAN FirstTime);
extern void UninitGroupInfo (void); extern void UninitGroupInfo (void);
extern BOOLEAN GetGroupInfo (DWORD offset, BYTE which_group); extern BOOLEAN GetGroupInfo (DWORD offset, BYTE which_group);
extern DWORD PutGroupInfo (DWORD offset, BYTE which_group); extern DWORD PutGroupInfo (DWORD offset, BYTE which_group);
#define GROUPS_RANDOM 0L
#define GROUPS_ADD_NEW (~0L)
#define GROUP_LIST 0
#define GROUP_INIT_IP ((BYTE)~0)
#define GROUP_LOAD_IP GROUP_LIST
#define GROUP_SAVE_IP ((BYTE)~0)
extern void BuildGroups (void); extern void BuildGroups (void);
#define MAX_DESC_CHARS 60 #define MAX_DESC_CHARS 60