#ifndef _DNAMP1_SCAN_HPP_ #define _DNAMP1_SCAN_HPP_ #include "../DNACommon/DNACommon.hpp" #include "DNAMP1.hpp" namespace Retro { namespace DNAMP1 { struct SCAN : BigYAML { DECL_YAML Value version; Value magic; UniqueID32 frame; UniqueID32 string; enum ScanSpeed { Normal, Slow }; Value scanSpeed; enum Category { None, SpacePirateData, ChozoLore, Creatures, Research }; Value category; Value isImportant; struct Texture : BigYAML { DECL_YAML UniqueID32 texture; Value appearanceRange; enum Position { Pane0, Pane1, Pane2, Pane3, Pane01, Pane12, Pane23, Pane012, Pane123, Pane0123, Pane4, Pane5, Pane6, Pane7, Pane45, Pane56, Pane67, Pane456, Pane567, Pane4567, Invalid = -1 }; Value position; Value width; // width of animation cell Value height; // height of animation cell Value interval; // 0.0 - 1.0 Value fadeDuration; // 0.0 - 1.0 }; Texture textures[4]; static bool Extract(PAKEntryReadStream& rs, const HECL::ProjectPath& outPath) { SCAN scan; scan.read(rs); FILE* fp = HECL::Fopen(outPath.getAbsolutePath().c_str(), _S("wb")); scan.toYAMLFile(fp); fclose(fp); return true; } }; } } #endif