All pastes #446180 Raw Edit

Mine

public text v1 · immutable
·published 2007-04-18 10:28 UTC
rendered paste body
--- src/client/cl_team.c	(revision 7689)
+++ src/client/cl_team.c	(working copy)
@@ -904,40 +904,47 @@
 /**
  * @brief
  */
-extern void CL_UpdateHireVar (void)
+extern void CL_UpdateHireVar (aircraft_t *aircraft)
 {
 	int i, p;
 	int hired_in_base;
-	aircraft_t *aircraft = NULL;
 	employee_t *employee = NULL;
+	base_t *base = NULL;
 
+#if 0
 	assert(baseCurrent);
 	assert((baseCurrent->aircraftCurrent >= 0) && (baseCurrent->aircraftCurrent < baseCurrent->numAircraftInBase));
 
 	aircraft = &baseCurrent->aircraft[baseCurrent->aircraftCurrent];
-	Cvar_Set("mn_hired", va(_("%i of %i"), baseCurrent->teamNum[baseCurrent->aircraftCurrent], aircraft->size));
+#endif
+    assert (aircraft);
+    base = aircraft->homebase;
+    assert (base);
 
-	hired_in_base = E_CountHired(baseCurrent, EMPL_SOLDIER);
+	Cvar_Set("mn_hired", va(_("%i of %i"), base->teamNum[aircraft->idxInBase], aircraft->size));
+	
+	Com_Printf("CL_UpdateHireVar()... aircraft idx: %i, homebase: %s\n", aircraft->idx, base->name);
+	hired_in_base = E_CountHired(base, EMPL_SOLDIER);
 	/* update curTeam list */
 	for (i = 0, p = 0; i < hired_in_base; i++) {
-		employee = E_GetHiredEmployee(baseCurrent, EMPL_SOLDIER, -(i+1));
+		employee = E_GetHiredEmployee(base, EMPL_SOLDIER, -(i+1));
 		if (!employee)
 			Sys_Error("CL_UpdateHireVar: Could not get employee %i\n", i);
 
 		if (CL_SoldierInAircraft(employee->idx, aircraft->idx)) {
-			baseCurrent->curTeam[p] = &employee->chr;
+			base->curTeam[p] = &employee->chr;
 			p++;
 		}
 	}
-	if (p != baseCurrent->teamNum[baseCurrent->aircraftCurrent])
+	if (p != base->teamNum[aircraft->idxInBase])
 		Sys_Error("CL_UpdateHireVar: SoldiersInBase: %i, teamNum[%i]: %i, p: %i\n",
 				hired_in_base,
-				baseCurrent->aircraftCurrent,
-				baseCurrent->teamNum[baseCurrent->aircraftCurrent],
+				aircraft->idxInBase,
+				base->teamNum[aircraft->idxInBase],
 				p);
 
 	for (; p < MAX_ACTIVETEAM; p++)
-		baseCurrent->curTeam[p] = NULL;
+		base->curTeam[p] = NULL;
 }