diff options
Diffstat (limited to 'ZAPD/ZRoom/Commands/SetCollisionHeader.cpp')
| -rw-r--r-- | ZAPD/ZRoom/Commands/SetCollisionHeader.cpp | 44 |
1 files changed, 20 insertions, 24 deletions
diff --git a/ZAPD/ZRoom/Commands/SetCollisionHeader.cpp b/ZAPD/ZRoom/Commands/SetCollisionHeader.cpp index d08a301..1eb13f6 100644 --- a/ZAPD/ZRoom/Commands/SetCollisionHeader.cpp +++ b/ZAPD/ZRoom/Commands/SetCollisionHeader.cpp @@ -1,33 +1,34 @@ #include "SetCollisionHeader.h" -#include "../../BitConverter.h" -#include "../../StringHelper.h" -#include "../../ZFile.h" -#include "../ZRoom.h" -SetCollisionHeader::SetCollisionHeader(ZRoom* nZRoom, std::vector<uint8_t> rawData, - uint32_t rawDataIndex) - : ZRoomCommand(nZRoom, rawData, rawDataIndex) +#include "BitConverter.h" +#include "StringHelper.h" +#include "ZFile.h" +#include "ZRoom/ZRoom.h" + +SetCollisionHeader::SetCollisionHeader(ZFile* nParent) : ZRoomCommand(nParent) +{ +} + +void SetCollisionHeader::ParseRawData() { - segmentOffset = GETSEGOFFSET(BitConverter::ToInt32BE(rawData, rawDataIndex + 4)); - collisionHeader = new ZCollisionHeader(nZRoom->parent); - collisionHeader->SetRawData(rawData); + ZRoomCommand::ParseRawData(); + collisionHeader = new ZCollisionHeader(parent); + collisionHeader->SetRawData(parent->GetRawData()); collisionHeader->SetRawDataIndex(segmentOffset); collisionHeader->SetName( - StringHelper::Sprintf("%sCollisionHeader0x%06X", nZRoom->GetName().c_str(), segmentOffset)); + StringHelper::Sprintf("%sCollisionHeader_%06X", parent->GetName().c_str(), segmentOffset)); collisionHeader->ParseRawData(); } -std::string SetCollisionHeader::GenerateSourceCodePass1(std::string roomName, uint32_t baseAddress) +SetCollisionHeader::~SetCollisionHeader() { - return StringHelper::Sprintf( - "%s 0x00, (u32)&%sCollisionHeader0x%06X", - ZRoomCommand::GenerateSourceCodePass1(roomName, baseAddress).c_str(), - zRoom->GetName().c_str(), segmentOffset); + delete collisionHeader; } -std::string SetCollisionHeader::GenerateSourceCodePass2(std::string roomName, uint32_t baseAddress) +std::string SetCollisionHeader::GetBodySourceCode() const { - return ""; + std::string listName = parent->GetDeclarationPtrName(cmdArg2); + return StringHelper::Sprintf("SCENE_CMD_COL_HEADER(%s)", listName.c_str()); } std::string SetCollisionHeader::GetCommandCName() const @@ -35,12 +36,7 @@ std::string SetCollisionHeader::GetCommandCName() const return "SCmdColHeader"; } -std::string SetCollisionHeader::GenerateExterns() const -{ - return ""; -} - RoomCommand SetCollisionHeader::GetRoomCommand() const { return RoomCommand::SetCollisionHeader; -}
\ No newline at end of file +} |
