Make zone compile on Windows.

develop
expwnent 2015-01-31 21:04:12 -05:00
parent e9b4fc513a
commit 5b3e5b533e
1 changed files with 44 additions and 44 deletions

@ -2394,6 +2394,14 @@ bool compareUnitAgesOlder(df::unit* i, df::unit* j)
// maleAdult
//};
enum unit_ptr_index
{
fk_index = 0,
mk_index = 1,
fa_index = 2,
ma_index = 3
};
struct WatchedRace
{
public:
@ -2416,17 +2424,9 @@ public:
// butcherable units
vector <df::unit*> unit_ptr[4];
vector <df::unit*> fk_ptr = unit_ptr[0];
vector <df::unit*> mk_ptr = unit_ptr[1];
vector <df::unit*> fa_ptr = unit_ptr[2];
vector <df::unit*> ma_ptr = unit_ptr[3];
// priority butcherable units
vector <df::unit*> prot_ptr[4];
vector <df::unit*> fk_pri_ptr = prot_ptr[0];
vector <df::unit*> mk_pri_ptr = prot_ptr[1];
vector <df::unit*> fa_pri_ptr = prot_ptr[2];
vector <df::unit*> ma_pri_ptr = prot_ptr[3];
WatchedRace(bool watch, int id, unsigned _fk, unsigned _mk, unsigned _fa, unsigned _ma)
{
@ -2477,14 +2477,14 @@ public:
void SortUnitsByAge()
{
sort(fk_ptr.begin(), fk_ptr.end(), compareUnitAgesOlder);
sort(mk_ptr.begin(), mk_ptr.end(), compareUnitAgesOlder);
sort(fa_ptr.begin(), fa_ptr.end(), compareUnitAgesYounger);
sort(ma_ptr.begin(), ma_ptr.end(), compareUnitAgesYounger);
sort(fk_pri_ptr.begin(), fk_pri_ptr.end(), compareUnitAgesOlder);
sort(mk_pri_ptr.begin(), mk_pri_ptr.end(), compareUnitAgesOlder);
sort(fa_pri_ptr.begin(), fa_pri_ptr.end(), compareUnitAgesYounger);
sort(ma_pri_ptr.begin(), ma_pri_ptr.end(), compareUnitAgesYounger);
sort(unit_ptr[fk_index].begin(), unit_ptr[fk_index].end(), compareUnitAgesOlder);
sort(unit_ptr[mk_index].begin(), unit_ptr[mk_index].end(), compareUnitAgesOlder);
sort(unit_ptr[fa_index].begin(), unit_ptr[fa_index].end(), compareUnitAgesYounger);
sort(unit_ptr[ma_index].begin(), unit_ptr[ma_index].end(), compareUnitAgesYounger);
sort(prot_ptr[fk_index].begin(), prot_ptr[fk_index].end(), compareUnitAgesOlder);
sort(prot_ptr[mk_index].begin(), prot_ptr[mk_index].end(), compareUnitAgesOlder);
sort(prot_ptr[fa_index].begin(), prot_ptr[fa_index].end(), compareUnitAgesYounger);
sort(prot_ptr[ma_index].begin(), prot_ptr[ma_index].end(), compareUnitAgesYounger);
}
void PushUnit(df::unit * unit)
@ -2492,16 +2492,16 @@ public:
if(isFemale(unit))
{
if(isBaby(unit) || isChild(unit))
fk_ptr.push_back(unit);
unit_ptr[fk_index].push_back(unit);
else
fa_ptr.push_back(unit);
unit_ptr[fa_index].push_back(unit);
}
else //treat sex n/a like it was male
{
if(isBaby(unit) || isChild(unit))
mk_ptr.push_back(unit);
unit_ptr[mk_index].push_back(unit);
else
ma_ptr.push_back(unit);
unit_ptr[ma_index].push_back(unit);
}
}
@ -2510,16 +2510,16 @@ public:
if(isFemale(unit))
{
if(isBaby(unit) || isChild(unit))
fk_pri_ptr.push_back(unit);
prot_ptr[fk_index].push_back(unit);
else
fa_pri_ptr.push_back(unit);
prot_ptr[fa_index].push_back(unit);
}
else
{
if(isBaby(unit) || isChild(unit))
mk_pri_ptr.push_back(unit);
prot_ptr[mk_index].push_back(unit);
else
ma_pri_ptr.push_back(unit);
prot_ptr[ma_index].push_back(unit);
}
}
@ -2575,10 +2575,10 @@ public:
{
SortUnitsByAge();
int slaughter_count = 0;
slaughter_count += ProcessUnits(fk_ptr, fk_pri_ptr, fk_prot, fk);
slaughter_count += ProcessUnits(mk_ptr, mk_pri_ptr, mk_prot, mk);
slaughter_count += ProcessUnits(fa_ptr, fa_pri_ptr, fa_prot, fa);
slaughter_count += ProcessUnits(ma_ptr, ma_pri_ptr, ma_prot, ma);
slaughter_count += ProcessUnits(unit_ptr[fk_index], prot_ptr[fk_index], fk_prot, fk);
slaughter_count += ProcessUnits(unit_ptr[mk_index], prot_ptr[mk_index], mk_prot, mk);
slaughter_count += ProcessUnits(unit_ptr[fa_index], prot_ptr[fa_index], fa_prot, fa);
slaughter_count += ProcessUnits(unit_ptr[ma_index], prot_ptr[ma_index], ma_prot, ma);
ClearUnits();
return slaughter_count;
}
@ -3647,31 +3647,31 @@ static int autobutcher_getWatchList(lua_State *L)
int id = w->raceId;
w = checkRaceStocksTotal(id);
Lua::SetField(L, w->fk_ptr.size(), ctable, "fk_total");
Lua::SetField(L, w->mk_ptr.size(), ctable, "mk_total");
Lua::SetField(L, w->fa_ptr.size(), ctable, "fa_total");
Lua::SetField(L, w->ma_ptr.size(), ctable, "ma_total");
Lua::SetField(L, w->unit_ptr[fk_index].size(), ctable, "fk_total");
Lua::SetField(L, w->unit_ptr[mk_index].size(), ctable, "mk_total");
Lua::SetField(L, w->unit_ptr[fa_index].size(), ctable, "fa_total");
Lua::SetField(L, w->unit_ptr[ma_index].size(), ctable, "ma_total");
delete w;
w = checkRaceStocksProtected(id);
Lua::SetField(L, w->fk_ptr.size(), ctable, "fk_protected");
Lua::SetField(L, w->mk_ptr.size(), ctable, "mk_protected");
Lua::SetField(L, w->fa_ptr.size(), ctable, "fa_protected");
Lua::SetField(L, w->ma_ptr.size(), ctable, "ma_protected");
Lua::SetField(L, w->unit_ptr[fk_index].size(), ctable, "fk_protected");
Lua::SetField(L, w->unit_ptr[mk_index].size(), ctable, "mk_protected");
Lua::SetField(L, w->unit_ptr[fa_index].size(), ctable, "fa_protected");
Lua::SetField(L, w->unit_ptr[ma_index].size(), ctable, "ma_protected");
delete w;
w = checkRaceStocksButcherable(id);
Lua::SetField(L, w->fk_ptr.size(), ctable, "fk_butcherable");
Lua::SetField(L, w->mk_ptr.size(), ctable, "mk_butcherable");
Lua::SetField(L, w->fa_ptr.size(), ctable, "fa_butcherable");
Lua::SetField(L, w->ma_ptr.size(), ctable, "ma_butcherable");
Lua::SetField(L, w->unit_ptr[fk_index].size(), ctable, "fk_butcherable");
Lua::SetField(L, w->unit_ptr[mk_index].size(), ctable, "mk_butcherable");
Lua::SetField(L, w->unit_ptr[fa_index].size(), ctable, "fa_butcherable");
Lua::SetField(L, w->unit_ptr[ma_index].size(), ctable, "ma_butcherable");
delete w;
w = checkRaceStocksButcherFlag(id);
Lua::SetField(L, w->fk_ptr.size(), ctable, "fk_butcherflag");
Lua::SetField(L, w->mk_ptr.size(), ctable, "mk_butcherflag");
Lua::SetField(L, w->fa_ptr.size(), ctable, "fa_butcherflag");
Lua::SetField(L, w->ma_ptr.size(), ctable, "ma_butcherflag");
Lua::SetField(L, w->unit_ptr[fk_index].size(), ctable, "fk_butcherflag");
Lua::SetField(L, w->unit_ptr[mk_index].size(), ctable, "mk_butcherflag");
Lua::SetField(L, w->unit_ptr[fa_index].size(), ctable, "fa_butcherflag");
Lua::SetField(L, w->unit_ptr[ma_index].size(), ctable, "ma_butcherflag");
delete w;
lua_rawseti(L, -2, i+1);