Add CScriptDockAreaChange

Former-commit-id: 7b1fc72739
This commit is contained in:
Henrique Gemignani Passos Lima
2022-10-16 03:03:19 +03:00
parent af9f796433
commit 0019a1bd46
7 changed files with 105 additions and 10 deletions

View File

@@ -0,0 +1,11 @@
#ifndef _CSCRIPTDOCK
#define _CSCRIPTDOCK
#include "MetroidPrime/CPhysicsActor.hpp"
class CScriptDock : public CPhysicsActor {
public:
void SetDockReference(CStateManager& mgr, int);
};
#endif // _CSCRIPTDOCK

View File

@@ -0,0 +1,18 @@
#ifndef _CSCRIPTDOCKAREACHANGE
#define _CSCRIPTDOCKAREACHANGE
#include "MetroidPrime/CEntity.hpp"
class CScriptDockAreaChange : public CEntity {
int x34_dockReference;
public:
CScriptDockAreaChange(TUniqueId, const rstl::string&, const CEntityInfo&, int, bool);
void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId objId, CStateManager& stateMgr) override;
void Accept(IVisitor& visitor) override;
~CScriptDockAreaChange();
};
#endif // _CSCRIPTDOCKAREACHANGE

View File

@@ -0,0 +1,10 @@
#ifndef _CSCRIPTRELAY
#define _CSCRIPTRELAY
#include "MetroidPrime/CEntity.hpp"
class CScriptRelay : public CEntity {
public:
};
#endif // _CSCRIPTRELAY

View File

@@ -17,6 +17,8 @@ enum node_color {
kNC_Black,
};
void* rbtree_traverse_forward(const void*, void*);
template < typename T, typename P, int U, typename S = select1st< P >, typename Cmp = less< T >,
typename Alloc = rmemory_allocator >
class red_black_tree {
@@ -42,7 +44,19 @@ public:
return mNode == other.mNode && mHeader == other.mHeader;
}
bool operator!=(const const_iterator& other) const {
return !(*this == other); // mNode != other.mNode || mHeader != other.mHeader;
// return !(*this == other);
return mNode != other.mNode || mHeader != other.mHeader;
}
const_iterator& operator++() {
mNode = static_cast<node*>(rbtree_traverse_forward(static_cast<const void*>(mHeader), static_cast<void*>(mNode)));
return *this;
}
const_iterator operator++(int) {
const_iterator result = *this;
mNode = static_cast<node*>(rbtree_traverse_forward(static_cast<const void*>(mHeader), static_cast<void*>(mNode)));
return result;
}
};