mirror of
https://github.com/zeldaret/ss
synced 2026-07-09 06:13:17 -04:00
Merge pull request #177 from swekka/d_a_obj_bird_statue
d_a_obj_bird_statue OK
This commit is contained in:
@@ -2,9 +2,9 @@ _prolog = .text:0x00000000; // type:function size:0x2C scope:global
|
||||
_epilog = .text:0x00000030; // type:function size:0x2C scope:global
|
||||
_unresolved = .text:0x00000060; // type:function size:0x4 scope:global
|
||||
dAcOBirdStatue_c_classInit__Fv = .text:0x00000070; // type:function size:0x54
|
||||
fn_627_D0 = .text:0x000000D0; // type:function size:0x98
|
||||
fn_627_170 = .text:0x00000170; // type:function size:0xA4
|
||||
fn_627_220 = .text:0x00000220; // type:function size:0x28
|
||||
createHeap__16dAcOBirdStatue_cFv = .text:0x000000D0; // type:function size:0x98
|
||||
create__16dAcOBirdStatue_cFv = .text:0x00000170; // type:function size:0xA4
|
||||
draw__16dAcOBirdStatue_cFv = .text:0x00000220; // type:function size:0x28
|
||||
__dt__16dAcOBirdStatue_cFv = .text:0x00000250; // type:function size:0x68
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
|
||||
+1
-1
@@ -1958,7 +1958,7 @@ config.libs = [
|
||||
NonMatching, "d_a_obj_bigbomb_flower", "REL/d/a/obj/d_a_obj_bigbomb_flower.cpp"
|
||||
),
|
||||
Rel(NonMatching, "d_a_obj_bird_sp", "REL/d/a/obj/d_a_obj_bird_sp.cpp"),
|
||||
Rel(NonMatching, "d_a_obj_bird_statue", "REL/d/a/obj/d_a_obj_bird_statue.cpp"),
|
||||
Rel(Matching, "d_a_obj_bird_statue", "REL/d/a/obj/d_a_obj_bird_statue.cpp"),
|
||||
Rel(NonMatching, "d_a_obj_blade", "REL/d/a/obj/d_a_obj_blade.cpp"),
|
||||
Rel(NonMatching, "d_a_obj_blast_rock", "REL/d/a/obj/d_a_obj_blast_rock.cpp"),
|
||||
Rel(NonMatching, "d_a_obj_block_rope", "REL/d/a/obj/d_a_obj_block_rope.cpp"),
|
||||
|
||||
@@ -6,9 +6,14 @@
|
||||
class dAcOBirdStatue_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOBirdStatue_c() {}
|
||||
virtual ~dAcOBirdStatue_c() {}
|
||||
virtual ~dAcOBirdStatue_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int draw() override;
|
||||
|
||||
private:
|
||||
/* 0x330 */ m3d::smdl_c mMdl;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,39 @@
|
||||
#include "d/a/obj/d_a_obj_bird_statue.h"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(OBJ_BIRD_STATUE, dAcOBirdStatue_c, fProfile::OBJ_BIRD_STATUE, 0x285, 0, 3);
|
||||
|
||||
bool dAcOBirdStatue_c::createHeap() {
|
||||
void *data = getOarcResFile("BirdStatue");
|
||||
if (data == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
nw4r::g3d::ResFile file(data);
|
||||
if (!file.IsValid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
nw4r::g3d::ResMdl mdl = file.GetResMdl("BirdStatue");
|
||||
if (!mdl.IsValid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return mMdl.create(mdl, &heap_allocator, 0, 1, nullptr);
|
||||
}
|
||||
|
||||
int dAcOBirdStatue_c::create() {
|
||||
if (!initAllocatorWork1Heap(0xffffffff, "dAcOBirdStatue_c::m_allocator", 0x20)) {
|
||||
return FAILED;
|
||||
}
|
||||
updateMatrix();
|
||||
mMdl.setLocalMtx(mWorldMtx);
|
||||
mVec3_c min, max;
|
||||
mMdl.getBounds(&min,&max);
|
||||
boundingBox.Set(min, max);
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcOBirdStatue_c::draw(){
|
||||
dAcObjBase_c::drawModelType1(&mMdl);
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user