Debug: Change interfaces using SpriteGroupDumper

Pass SpriteGroupDumper ref instead of print function
Make use_shadows non-static
wip-string
Jonathan G Rennison 5 months ago
parent 8c4d36a498
commit 5b6c0c1f2e

@ -223,7 +223,7 @@ public:
}
virtual void ExtraInfo(uint index, NIExtraInfoOutput &output) const {}
virtual void SpriteDump(uint index, DumpSpriteGroupPrinter print) const {}
virtual void SpriteDump(uint index, SpriteGroupDumper &dumper) const {}
virtual bool ShowExtraInfoOnly(uint index) const { return false; };
virtual bool ShowExtraInfoIncludingGRFIDOnly(uint index) const { return false; };
virtual bool ShowSpriteDumpButton(uint index) const { return false; };
@ -566,12 +566,11 @@ struct NewGRFInspectWindow : Window {
const_cast<NewGRFInspectWindow *>(this)->highlight_tag_lines.clear();
const_cast<NewGRFInspectWindow *>(this)->nfo_line_lines.clear();
if (this->sprite_dump) {
SpriteGroupDumper::use_shadows = this->sprite_dump_unopt;
bool collapsed = false;
const SpriteGroup *collapse_group = nullptr;
uint collapse_lines = 0;
char tmp_buf[256];
nih->SpriteDump(index, [&](const SpriteGroup *group, DumpSpriteGroupPrintOp operation, uint32 highlight_tag, const char *buf) {
SpriteGroupDumper dumper([&](const SpriteGroup *group, DumpSpriteGroupPrintOp operation, uint32 highlight_tag, const char *buf) {
if (this->log_console && operation == DSGPO_PRINT) DEBUG(misc, 0, " %s", buf);
if (operation == DSGPO_NFO_LINE) {
@ -623,7 +622,8 @@ struct NewGRFInspectWindow : Window {
}
::DrawString(ir.left, ir.right, ir.top + (scroll_offset * this->resize.step_height), buf, colour);
});
SpriteGroupDumper::use_shadows = false;
dumper.use_shadows = this->sprite_dump_unopt;
nih->SpriteDump(index, dumper);
return;
} else {
NewGRFInspectWindow *this_mutable = const_cast<NewGRFInspectWindow *>(this);

@ -1660,7 +1660,7 @@ void AnalyseEngineCallbacks()
}
}
void DumpVehicleSpriteGroup(const Vehicle *v, DumpSpriteGroupPrinter print)
void DumpVehicleSpriteGroup(const Vehicle *v, SpriteGroupDumper &dumper)
{
char buffer[512];
const Engine *e = Engine::Get(v->engine_type);
@ -1670,7 +1670,7 @@ void DumpVehicleSpriteGroup(const Vehicle *v, DumpSpriteGroupPrinter print)
root_spritegroup = GetWagonOverrideSpriteSet(v->engine_type, v->cargo_type, v->GetGroundVehicleCache()->first_engine);
if (root_spritegroup != nullptr) {
seprintf(buffer, lastof(buffer), "Wagon Override for cargo: %u, engine type: %u", v->cargo_type, v->GetGroundVehicleCache()->first_engine);
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
}
}
@ -1684,15 +1684,14 @@ void DumpVehicleSpriteGroup(const Vehicle *v, DumpSpriteGroupPrinter print)
root_spritegroup = e->grf_prop.spritegroup[CT_DEFAULT];
seprintf(buffer, lastof(buffer), "CT_DEFAULT");
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
}
SpriteGroupDumper dumper(print);
dumper.DumpSpriteGroup(root_spritegroup, 0);
for (uint i = 0; i < NUM_CARGO + 2; i++) {
if (e->grf_prop.spritegroup[i] != root_spritegroup && e->grf_prop.spritegroup[i] != nullptr) {
print(nullptr, DSGPO_PRINT, 0, "");
dumper.Print("");
switch (i) {
case CT_DEFAULT:
seprintf(buffer, lastof(buffer), "OTHER SPRITE GROUP: CT_DEFAULT");
@ -1704,14 +1703,14 @@ void DumpVehicleSpriteGroup(const Vehicle *v, DumpSpriteGroupPrinter print)
seprintf(buffer, lastof(buffer), "OTHER SPRITE GROUP: Cargo: %u", i);
break;
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
dumper.DumpSpriteGroup(e->grf_prop.spritegroup[i], 0);
}
}
for (const WagonOverride &wo : e->overrides) {
if (wo.group != root_spritegroup && wo.group != nullptr) {
print(nullptr, DSGPO_PRINT, 0, "");
print(nullptr, DSGPO_PRINT, 0, "OTHER SPRITE GROUP: Wagon override");
dumper.Print("");
dumper.Print("OTHER SPRITE GROUP: Wagon override");
dumper.DumpSpriteGroup(wo.group, 0);
}
}

@ -293,16 +293,15 @@ bool IsGetTownZonesCallbackHandlerPresent()
return false;
}
void DumpGenericCallbackSpriteGroups(GrfSpecFeature feature, DumpSpriteGroupPrinter print)
void DumpGenericCallbackSpriteGroups(GrfSpecFeature feature, SpriteGroupDumper &dumper)
{
SpriteGroupDumper dumper(print);
bool first = true;
for (GenericCallbackList::const_reverse_iterator it = _gcl[feature].rbegin(); it != _gcl[feature].rend(); ++it) {
if (!first) print(nullptr, DSGPO_PRINT, 0, "");
if (!first) dumper.Print("");
char buffer[64];
seprintf(buffer, lastof(buffer), "GRF: %08X, town zone cb enabled: %s",
BSWAP32(it->file->grfid), HasBit(it->file->observed_feature_tests, GFTOF_TOWN_ZONE_CALLBACK) ? "yes" : "no");
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
first = false;
dumper.DumpSpriteGroup(it->group, 0);
}

@ -720,12 +720,12 @@ bool IndustryTemporarilyRefusesCargo(Industry *ind, CargoID cargo_type)
return false;
}
void DumpIndustrySpriteGroup(const IndustrySpec *spec, DumpSpriteGroupPrinter print)
void DumpIndustrySpriteGroup(const IndustrySpec *spec, SpriteGroupDumper &dumper)
{
DumpSpriteGroup(spec->grf_prop.spritegroup[0], std::move(print));
dumper.DumpSpriteGroup(spec->grf_prop.spritegroup[0], 0);
}
void DumpIndustryTileSpriteGroup(const IndustryTileSpec *spec, DumpSpriteGroupPrinter print)
void DumpIndustryTileSpriteGroup(const IndustryTileSpec *spec, SpriteGroupDumper &dumper)
{
DumpSpriteGroup(spec->grf_prop.spritegroup[0], std::move(print));
dumper.DumpSpriteGroup(spec->grf_prop.spritegroup[0], 0);
}

@ -104,15 +104,14 @@ NewLandscapeResolverObject::NewLandscapeResolverObject(const GRFFile *grffile, c
}
}
void DumpNewLandscapeRocksSpriteGroups(DumpSpriteGroupPrinter print)
void DumpNewLandscapeRocksSpriteGroups(SpriteGroupDumper &dumper)
{
SpriteGroupDumper dumper(print);
bool first = true;
for (const GRFFile *grf : _new_landscape_rocks_grfs) {
if (!first) print(nullptr, DSGPO_PRINT, 0, "");
if (!first) dumper.Print("");
char buffer[64];
seprintf(buffer, lastof(buffer), "GRF: %08X", BSWAP32(grf->grfid));
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
first = false;
dumper.DumpSpriteGroup(grf->new_rocks_group, 0);
}

@ -127,15 +127,14 @@ uint GetNewSignalsVerticalClearanceInfo(TileIndex tile, uint z)
}
}
void DumpNewSignalsSpriteGroups(DumpSpriteGroupPrinter print)
void DumpNewSignalsSpriteGroups(SpriteGroupDumper &dumper)
{
SpriteGroupDumper dumper(print);
bool first = true;
for (const GRFFile *grf : _new_signals_grfs) {
if (!first) print(nullptr, DSGPO_PRINT, 0, "");
if (!first) dumper.Print("");
char buffer[64];
seprintf(buffer, lastof(buffer), "GRF: %08X", BSWAP32(grf->grfid));
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
first = false;
dumper.DumpSpriteGroup(grf->new_signals_group, 0);
}

@ -639,7 +639,7 @@ void TriggerObjectAnimation(Object *o, ObjectAnimationTrigger trigger, const Obj
}
}
void DumpObjectSpriteGroup(const ObjectSpec *spec, DumpSpriteGroupPrinter print)
void DumpObjectSpriteGroup(const ObjectSpec *spec, SpriteGroupDumper &dumper)
{
DumpSpriteGroup(spec->grf_prop.spritegroup[0], std::move(print));
dumper.DumpSpriteGroup(spec->grf_prop.spritegroup[0], 0);
}

@ -272,7 +272,7 @@ uint8 GetReverseRailTypeTranslation(RailType railtype, const GRFFile *grffile)
return 0xFF;
}
void DumpRailTypeSpriteGroup(RailType rt, DumpSpriteGroupPrinter print)
void DumpRailTypeSpriteGroup(RailType rt, SpriteGroupDumper &dumper)
{
char buffer[64];
const RailTypeInfo *rti = GetRailTypeInfo(rt);
@ -294,13 +294,11 @@ void DumpRailTypeSpriteGroup(RailType rt, DumpSpriteGroupPrinter print)
};
static_assert(lengthof(sprite_group_names) == RTSG_END);
SpriteGroupDumper dumper(print);
bool non_first_group = false;
for (RailTypeSpriteGroup rtsg = (RailTypeSpriteGroup)0; rtsg < RTSG_END; rtsg = (RailTypeSpriteGroup)(rtsg + 1)) {
if (rti->group[rtsg] != nullptr) {
if (non_first_group) {
print(nullptr, DSGPO_PRINT, 0, "");
dumper.Print("");
} else {
non_first_group = true;
}
@ -309,7 +307,7 @@ void DumpRailTypeSpriteGroup(RailType rt, DumpSpriteGroupPrinter print)
if (rti->grffile[rtsg] != nullptr) {
b += seprintf(b, lastof(buffer), ", GRF: %08X", BSWAP32(rti->grffile[rtsg]->grfid));
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
dumper.DumpSpriteGroup(rti->group[rtsg], 0);
}
}

@ -680,7 +680,7 @@ void StationUpdateRoadStopCachedTriggers(BaseStation *st)
}
}
void DumpRoadStopSpriteGroup(const BaseStation *st, const RoadStopSpec *spec, DumpSpriteGroupPrinter print)
void DumpRoadStopSpriteGroup(const BaseStation *st, const RoadStopSpec *spec, SpriteGroupDumper &dumper)
{
CargoID ctype = CT_DEFAULT_NA;
@ -703,5 +703,5 @@ void DumpRoadStopSpriteGroup(const BaseStation *st, const RoadStopSpec *spec, Du
ctype = CT_DEFAULT;
}
DumpSpriteGroup(spec->grf_prop.spritegroup[ctype], std::move(print));
dumper.DumpSpriteGroup(spec->grf_prop.spritegroup[ctype], 0);
}

@ -168,7 +168,7 @@ uint8 GetReverseRoadTypeTranslation(RoadType roadtype, const GRFFile *grffile)
return 0xFF;
}
void DumpRoadTypeSpriteGroup(RoadType rt, DumpSpriteGroupPrinter print)
void DumpRoadTypeSpriteGroup(RoadType rt, SpriteGroupDumper &dumper)
{
char buffer[64];
const RoadTypeInfo *rti = GetRoadTypeInfo(rt);
@ -189,8 +189,6 @@ void DumpRoadTypeSpriteGroup(RoadType rt, DumpSpriteGroupPrinter print)
};
static_assert(lengthof(sprite_group_names) == ROTSG_END);
SpriteGroupDumper dumper(print);
for (RoadTypeSpriteGroup rtsg = (RoadTypeSpriteGroup)0; rtsg < ROTSG_END; rtsg = (RoadTypeSpriteGroup)(rtsg + 1)) {
if (rti->group[rtsg] != nullptr) {
char *b = buffer;
@ -198,9 +196,9 @@ void DumpRoadTypeSpriteGroup(RoadType rt, DumpSpriteGroupPrinter print)
if (rti->grffile[rtsg] != nullptr) {
b += seprintf(b, lastof(buffer), ", GRF: %08X", BSWAP32(rti->grffile[rtsg]->grfid));
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
dumper.DumpSpriteGroup(rti->group[rtsg], 0);
print(nullptr, DSGPO_PRINT, 0, "");
dumper.Print("");
}
}
}

@ -589,8 +589,6 @@ static char *DumpSpriteGroupAdjust(char *p, const char *last, const Deterministi
return p;
}
bool SpriteGroupDumper::use_shadows = false;
void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *padding, uint flags)
{
uint32 highlight_tag = 0;
@ -671,7 +669,7 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
const std::vector<DeterministicSpriteGroupRange> *ranges = &(dsg->ranges);
bool calculated_result = dsg->calculated_result;
if (SpriteGroupDumper::use_shadows) {
if (this->use_shadows) {
auto iter = _deterministic_sg_shadows.find(dsg);
if (iter != _deterministic_sg_shadows.end()) {
default_group = iter->second.default_group;
@ -786,7 +784,7 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
const std::vector<const SpriteGroup *> *groups = &(rsg->groups);
if (SpriteGroupDumper::use_shadows) {
if (this->use_shadows) {
auto iter = _randomized_sg_shadows.find(rsg);
if (iter != _randomized_sg_shadows.end()) {
groups = &(iter->second.groups);
@ -930,9 +928,3 @@ void SpriteGroupDumper::DumpSpriteGroup(const SpriteGroup *sg, const char *paddi
}
}
}
void DumpSpriteGroup(const SpriteGroup *sg, DumpSpriteGroupPrinter print)
{
SpriteGroupDumper dumper(std::move(print));
dumper.DumpSpriteGroup(sg, 0);
}

@ -770,7 +770,7 @@ enum DumpSpriteGroupPrintOp {
using DumpSpriteGroupPrinter = std::function<void(const SpriteGroup *, DumpSpriteGroupPrintOp, uint32, const char *)>;
struct SpriteGroupDumper {
static bool use_shadows;
bool use_shadows = false;
private:
char buffer[1024];
@ -794,9 +794,13 @@ public:
{
this->DumpSpriteGroup(sg, "", flags);
}
void Print(const char *msg)
{
this->print_fn(nullptr, DSGPO_PRINT, 0, msg);
}
};
void DumpSpriteGroup(const SpriteGroup *sg, DumpSpriteGroupPrinter print);
uint32 EvaluateDeterministicSpriteGroupAdjust(DeterministicSpriteGroupSize size, const DeterministicSpriteGroupAdjust &adjust, ScopeResolver *scope, uint32 last_value, uint32 value);
#endif /* NEWGRF_SPRITEGROUP_H */

@ -1032,7 +1032,7 @@ void StationUpdateCachedTriggers(BaseStation *st)
}
}
void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, DumpSpriteGroupPrinter print)
void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, SpriteGroupDumper &dumper)
{
char buffer[512];
@ -1052,14 +1052,13 @@ void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, DumpSp
seprintf(buffer, lastof(buffer), "Cargo: %u", ro.station_scope.cargo_type);
break;
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
SpriteGroupDumper dumper(print);
dumper.DumpSpriteGroup(ro.root_spritegroup, 0);
for (uint i = 0; i < NUM_CARGO + 3; i++) {
if (statspec->grf_prop.spritegroup[i] != ro.root_spritegroup && statspec->grf_prop.spritegroup[i] != nullptr) {
print(nullptr, DSGPO_PRINT, 0, "");
dumper.Print("");
switch (i) {
case CT_DEFAULT:
seprintf(buffer, lastof(buffer), "OTHER SPRITE GROUP: CT_DEFAULT");
@ -1074,7 +1073,7 @@ void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, DumpSp
seprintf(buffer, lastof(buffer), "OTHER SPRITE GROUP: Cargo: %u", i);
break;
}
print(nullptr, DSGPO_PRINT, 0, buffer);
dumper.Print(buffer);
dumper.DumpSpriteGroup(statspec->grf_prop.spritegroup[i], 0);
}
}

@ -661,10 +661,10 @@ class NIHVehicle : public NIHelper {
output.print(buffer);
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpVehicleSpriteGroup(const Vehicle *v, DumpSpriteGroupPrinter print);
DumpVehicleSpriteGroup(Vehicle::Get(index), std::move(print));
extern void DumpVehicleSpriteGroup(const Vehicle *v, SpriteGroupDumper &dumper);
DumpVehicleSpriteGroup(Vehicle::Get(index), dumper);
}
};
@ -813,10 +813,10 @@ class NIHStation : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, DumpSpriteGroupPrinter print);
DumpStationSpriteGroup(GetStationSpec(index), BaseStation::GetByTile(index), std::move(print));
extern void DumpStationSpriteGroup(const StationSpec *statspec, BaseStation *st, SpriteGroupDumper &dumper);
DumpStationSpriteGroup(GetStationSpec(index), BaseStation::GetByTile(index), dumper);
}
};
@ -919,9 +919,9 @@ class NIHHouse : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
DumpSpriteGroup(HouseSpec::Get(GetHouseType(index))->grf_prop.spritegroup[0], std::move(print));
dumper.DumpSpriteGroup(HouseSpec::Get(GetHouseType(index))->grf_prop.spritegroup[0], 0);
}
};
@ -992,12 +992,12 @@ class NIHIndustryTile : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
const IndustryTileSpec *indts = GetIndustryTileSpec(GetIndustryGfx(index));
if (indts) {
extern void DumpIndustryTileSpriteGroup(const IndustryTileSpec *spec, DumpSpriteGroupPrinter print);
DumpIndustryTileSpriteGroup(indts, std::move(print));
extern void DumpIndustryTileSpriteGroup(const IndustryTileSpec *spec, SpriteGroupDumper &dumper);
DumpIndustryTileSpriteGroup(indts, dumper);
}
}
};
@ -1227,12 +1227,12 @@ class NIHIndustry : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
const IndustrySpec *spec = (const IndustrySpec *)this->GetSpec(index);
if (spec) {
extern void DumpIndustrySpriteGroup(const IndustrySpec *spec, DumpSpriteGroupPrinter print);
DumpIndustrySpriteGroup(spec, std::move(print));
extern void DumpIndustrySpriteGroup(const IndustrySpec *spec, SpriteGroupDumper &dumper);
DumpIndustrySpriteGroup(spec, dumper);
}
}
};
@ -1307,9 +1307,9 @@ class NIHCargo : public NIHelper {
output.print(buffer);
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
DumpSpriteGroup(CargoSpec::Get(index)->group, std::move(print));
dumper.DumpSpriteGroup(CargoSpec::Get(index)->group, 0);
}
};
@ -1435,10 +1435,10 @@ class NIHSignals : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpNewSignalsSpriteGroups(DumpSpriteGroupPrinter print);
DumpNewSignalsSpriteGroups(std::move(print));
extern void DumpNewSignalsSpriteGroups(SpriteGroupDumper &dumper);
DumpNewSignalsSpriteGroups(dumper);
}
};
@ -1576,10 +1576,10 @@ class NIHObject : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpObjectSpriteGroup(const ObjectSpec *spec, DumpSpriteGroupPrinter print);
DumpObjectSpriteGroup(ObjectSpec::GetByTile(index), std::move(print));
extern void DumpObjectSpriteGroup(const ObjectSpec *spec, SpriteGroupDumper &dumper);
DumpObjectSpriteGroup(ObjectSpec::GetByTile(index), dumper);
}
};
@ -1705,10 +1705,10 @@ class NIHRailType : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpRailTypeSpriteGroup(RailType rt, DumpSpriteGroupPrinter print);
DumpRailTypeSpriteGroup(GetTileRailType(index), std::move(print));
extern void DumpRailTypeSpriteGroup(RailType rt, SpriteGroupDumper &dumper);
DumpRailTypeSpriteGroup(GetTileRailType(index), dumper);
}
};
@ -1924,10 +1924,10 @@ class NIHTown : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpGenericCallbackSpriteGroups(GrfSpecFeature feature, DumpSpriteGroupPrinter print);
DumpGenericCallbackSpriteGroups(GSF_FAKE_TOWNS, std::move(print));
extern void DumpGenericCallbackSpriteGroups(GrfSpecFeature feature, SpriteGroupDumper &dumper);
DumpGenericCallbackSpriteGroups(GSF_FAKE_TOWNS, dumper);
}
};
@ -2156,14 +2156,14 @@ class NIHRoadType : public NIHelper {
writeInfo(RTT_TRAM);
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
for (RoadTramType rtt : { RTT_ROAD, RTT_TRAM }) {
RoadType rt = GetRoadType(index, rtt);
if (rt == INVALID_ROADTYPE) continue;
extern void DumpRoadTypeSpriteGroup(RoadType rt, DumpSpriteGroupPrinter print);
DumpRoadTypeSpriteGroup(rt, print);
extern void DumpRoadTypeSpriteGroup(RoadType rt, SpriteGroupDumper &dumper);
DumpRoadTypeSpriteGroup(rt, dumper);
}
}
};
@ -2257,10 +2257,10 @@ class NIHRoadStop : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpRoadStopSpriteGroup(const BaseStation *st, const RoadStopSpec *spec, DumpSpriteGroupPrinter print);
DumpRoadStopSpriteGroup(BaseStation::GetByTile(index), GetRoadStopSpec(index), std::move(print));
extern void DumpRoadStopSpriteGroup(const BaseStation *st, const RoadStopSpec *spec, SpriteGroupDumper &dumper);
DumpRoadStopSpriteGroup(BaseStation::GetByTile(index), GetRoadStopSpec(index), dumper);
}
};
@ -2319,10 +2319,10 @@ class NIHNewLandscape : public NIHelper {
}
}
/* virtual */ void SpriteDump(uint index, DumpSpriteGroupPrinter print) const override
/* virtual */ void SpriteDump(uint index, SpriteGroupDumper &dumper) const override
{
extern void DumpNewLandscapeRocksSpriteGroups(DumpSpriteGroupPrinter print);
DumpNewLandscapeRocksSpriteGroups(std::move(print));
extern void DumpNewLandscapeRocksSpriteGroups(SpriteGroupDumper &dumper);
DumpNewLandscapeRocksSpriteGroups(dumper);
}
};

Loading…
Cancel
Save