Files
OpenAssetTools/src/ObjWriting/ObjWriting.cpp
2021-07-23 01:12:36 +02:00

37 lines
877 B
C++

#include "ObjWriting.h"
#include "Dumping/IZoneDumper.h"
#include "Game/IW3/ZoneDumperIW3.h"
#include "Game/IW4/ZoneDumperIW4.h"
#include "Game/IW5/ZoneDumperIW5.h"
#include "Game/T5/ZoneDumperT5.h"
#include "Game/T6/ZoneDumperT6.h"
ObjWriting::Configuration_t ObjWriting::Configuration;
const IZoneDumper* const ZONE_DUMPER[]
{
new IW3::ZoneDumper(),
new IW4::ZoneDumper(),
new IW5::ZoneDumper(),
new T5::ZoneDumper(),
new T6::ZoneDumper()
};
bool ObjWriting::DumpZone(AssetDumpingContext& context)
{
for (const auto* dumper : ZONE_DUMPER)
{
if (dumper->CanHandleZone(context))
{
if (dumper->DumpZone(context))
{
return true;
}
printf("Dumper for zone '%s' failed!\n", context.m_zone->m_name.c_str());
return false;
}
}
return false;
}