1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-08-20 05:51:18 +00:00

Updated to use latest version of ZAPD (#777)

* Updated config file

* Added missing files

* Temporarily removed asm_processor changes.

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "96ffc1e62"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "96ffc1e62"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "179af7d11"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "179af7d11"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* Cleanup and fixes.

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "50ad2fe78"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "50ad2fe78"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* Makefile fix

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "b9120803e"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "b9120803e"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
This commit is contained in:
Nicholas Estelami 2021-04-30 17:23:22 -04:00 committed by GitHub
parent 6e58354c71
commit 0432011bd9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
141 changed files with 7843 additions and 4338 deletions

View file

@ -3,6 +3,7 @@
#include <stdint.h>
#include <string>
#include <vector>
#include "ZFile.h"
#include "ZResource.h"
#include "tinyxml2.h"
@ -52,7 +53,7 @@ public:
int16_t posX, posY, posZ;
int16_t unused;
CutsceneCameraPoint(const std::vector<uint8_t>& rawData, int rawDataIndex);
CutsceneCameraPoint(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommand
@ -60,10 +61,10 @@ class CutsceneCommand
public:
uint32_t commandID;
uint32_t commandIndex;
CutsceneCommand(const std::vector<uint8_t>& rawData, int rawDataIndex);
virtual std::string GetCName(const std::string& prefix);
virtual std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
virtual ~CutsceneCommand();
CutsceneCommand(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
virtual std::string GetCName();
virtual std::string GenerateSourceCode(uint32_t baseAddress);
virtual size_t GetCommandSize();
};
@ -76,10 +77,10 @@ public:
uint16_t unused;
std::vector<CutsceneCameraPoint*> entries;
CutsceneCommandSetCameraPos(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
~CutsceneCommandSetCameraPos();
CutsceneCommandSetCameraPos(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -101,7 +102,7 @@ public:
uint32_t unused9;
uint32_t unused10;
SpecialActionEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
SpecialActionEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandSpecialAction : public CutsceneCommand
@ -109,9 +110,10 @@ class CutsceneCommandSpecialAction : public CutsceneCommand
public:
std::vector<SpecialActionEntry*> entries;
CutsceneCommandSpecialAction(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandSpecialAction(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandSpecialAction();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -133,7 +135,7 @@ public:
uint32_t unknown9;
uint32_t unknown10;
MusicFadeEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
MusicFadeEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandFadeBGM : public CutsceneCommand
@ -141,9 +143,10 @@ class CutsceneCommandFadeBGM : public CutsceneCommand
public:
std::vector<MusicFadeEntry*> entries;
CutsceneCommandFadeBGM(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandFadeBGM(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandFadeBGM();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -162,7 +165,7 @@ public:
uint32_t unknown6;
uint32_t unknown7;
MusicChangeEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
MusicChangeEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandPlayBGM : public CutsceneCommand
@ -170,9 +173,10 @@ class CutsceneCommandPlayBGM : public CutsceneCommand
public:
std::vector<MusicChangeEntry*> entries;
CutsceneCommandPlayBGM(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandPlayBGM(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandPlayBGM();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -181,9 +185,10 @@ class CutsceneCommandStopBGM : public CutsceneCommand
public:
std::vector<MusicChangeEntry*> entries;
CutsceneCommandStopBGM(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandStopBGM(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandStopBGM();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -202,7 +207,7 @@ public:
uint32_t unused6;
uint32_t unused7;
EnvLightingEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
EnvLightingEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandEnvLighting : public CutsceneCommand
@ -210,9 +215,10 @@ class CutsceneCommandEnvLighting : public CutsceneCommand
public:
std::vector<EnvLightingEntry*> entries;
CutsceneCommandEnvLighting(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandEnvLighting(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandEnvLighting();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -222,10 +228,10 @@ public:
uint16_t base;
uint16_t startFrame;
uint16_t endFrame;
CutsceneCommandSceneTransFX(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
~CutsceneCommandSceneTransFX();
CutsceneCommandSceneTransFX(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -241,7 +247,7 @@ public:
uint8_t unused0;
uint8_t unused1;
Unknown9Entry(const std::vector<uint8_t>& rawData, int rawDataIndex);
Unknown9Entry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandUnknown9 : public CutsceneCommand
@ -249,9 +255,10 @@ class CutsceneCommandUnknown9 : public CutsceneCommand
public:
std::vector<Unknown9Entry*> entries;
CutsceneCommandUnknown9(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandUnknown9(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandUnknown9();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -271,7 +278,7 @@ public:
uint32_t unused10;
uint32_t unused11;
UnkEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
UnkEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandUnknown : public CutsceneCommand
@ -279,9 +286,10 @@ class CutsceneCommandUnknown : public CutsceneCommand
public:
std::vector<UnkEntry*> entries;
CutsceneCommandUnknown(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandUnknown(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandUnknown();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -295,7 +303,7 @@ public:
uint8_t minute;
uint8_t unused;
DayTimeEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
DayTimeEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandDayTime : public CutsceneCommand
@ -303,9 +311,10 @@ class CutsceneCommandDayTime : public CutsceneCommand
public:
std::vector<DayTimeEntry*> entries;
CutsceneCommandDayTime(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandDayTime(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandDayTime();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -319,7 +328,7 @@ public:
uint16_t textID1;
uint16_t textID2;
TextboxEntry(const std::vector<uint8_t>& rawData, int rawDataIndex);
TextboxEntry(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandTextbox : public CutsceneCommand
@ -327,9 +336,10 @@ class CutsceneCommandTextbox : public CutsceneCommand
public:
std::vector<TextboxEntry*> entries;
CutsceneCommandTextbox(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandTextbox(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandTextbox();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -344,7 +354,7 @@ public:
int32_t endPosX, endPosY, endPosZ;
int32_t normalX, normalY, normalZ;
ActorAction(const std::vector<uint8_t>& rawData, int rawDataIndex);
ActorAction(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
};
class CutsceneCommandActorAction : public CutsceneCommand
@ -352,9 +362,10 @@ class CutsceneCommandActorAction : public CutsceneCommand
public:
std::vector<ActorAction*> entries;
CutsceneCommandActorAction(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandActorAction(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
~CutsceneCommandActorAction();
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -366,9 +377,9 @@ public:
uint16_t endFrame;
uint16_t unknown;
CutsceneCommandTerminator(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandTerminator(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -379,9 +390,9 @@ public:
uint16_t startFrame;
uint16_t endFrame;
CutsceneCommandEnd(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
std::string GenerateSourceCode(const std::string& roomName, int baseAddress);
CutsceneCommandEnd(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
std::string GetCName();
std::string GenerateSourceCode(uint32_t baseAddress);
size_t GetCommandSize();
};
@ -392,32 +403,41 @@ public:
uint16_t startFrame;
uint16_t endFrame;
CutsceneCommandNop(const std::vector<uint8_t>& rawData, int rawDataIndex);
std::string GetCName(const std::string& prefix);
CutsceneCommandNop(const std::vector<uint8_t>& rawData, uint32_t rawDataIndex);
std::string GetCName();
size_t GetCommandSize();
};
class ZCutscene : public ZResource
class ZCutsceneBase : public ZResource
{
public:
uint32_t segmentOffset;
ZCutsceneBase(ZFile* nParent);
virtual std::string GetBodySourceCode() = 0;
virtual void DeclareVar(const std::string& prefix, const std::string& bodyStr) = 0;
virtual uint32_t getSegmentOffset() = 0;
};
ZCutscene(std::vector<uint8_t> nRawData, int rawDataIndex, int rawDataSize);
class ZCutscene : public ZCutsceneBase
{
public:
ZCutscene(ZFile* nParent);
~ZCutscene();
std::string GetBodySourceCode() override;
void DeclareVar(const std::string& prefix, const std::string& bodyStr) override;
std::string GetSourceOutputCode(const std::string& prefix) override;
int GetRawDataSize() override;
CutsceneCommands GetCommandFromID(int id);
size_t GetRawDataSize() override;
CutsceneCommands GetCommandFromID(int32_t id);
uint32_t getSegmentOffset() override { return rawDataIndex; }
ZResourceType GetResourceType() override;
static ZCutscene* ExtractFromXML(tinyxml2::XMLElement* reader,
const std::vector<uint8_t>& nRawData, const int rawDataIndex,
const std::string& nRelPath);
void ExtractFromXML(tinyxml2::XMLElement* reader, const std::vector<uint8_t>& nRawData,
const uint32_t nRawDataIndex, const std::string& nRelPath) override;
protected:
int numCommands;
int endFrame;
int32_t numCommands;
int32_t endFrame;
std::vector<CutsceneCommand*> commands;
void ParseRawData() override;