fully implemented

This commit is contained in:
Sebastian Snoer
2025-05-26 17:56:33 +02:00
parent 155799c0ba
commit 24be72eec1
3 changed files with 9 additions and 12 deletions
+3 -9
View File
@@ -17,14 +17,8 @@ import sys
from pathlib import Path
from typing import Any, Dict, List
from tools.project import (
Object,
ProjectConfig,
ProgressCategory,
calculate_progress,
generate_build,
is_windows,
)
from tools.project import (Object, ProgressCategory, ProjectConfig,
calculate_progress, generate_build, is_windows)
# Game versions
DEFAULT_VERSION = 0
@@ -2293,7 +2287,7 @@ config.libs = [
Rel(NonMatching, "d_a_obj_syako_shutter", "REL/d/a/obj/d_a_obj_syako_shutter.cpp"),
Rel(NonMatching, "d_a_obj_tableware", "REL/d/a/obj/d_a_obj_tableware.cpp"),
Rel(NonMatching, "d_a_obj_tackle", "REL/d/a/obj/d_a_obj_tackle.cpp"),
Rel(NonMatching, "d_a_obj_tarzan_pole", "REL/d/a/obj/d_a_obj_tarzan_pole.cpp"),
Rel(Matching, "d_a_obj_tarzan_pole", "REL/d/a/obj/d_a_obj_tarzan_pole.cpp"),
Rel(NonMatching, "d_a_obj_tenijima", "REL/d/a/obj/d_a_obj_tenijima.cpp"),
Rel(NonMatching, "d_a_obj_teni_rail", "REL/d/a/obj/d_a_obj_teni_rail.cpp"),
Rel(
+2
View File
@@ -21,6 +21,8 @@ public:
private:
static dCcD_SrcSph sCcSrc;
static const f32 sUnusedFloat;
static const f32 sUnusedFloat2;
/* 0x330 */ nw4r::g3d::ResFile mBrres;
/* 0x334 */ m3d::smdl_c mMdl;
+4 -3
View File
@@ -25,6 +25,7 @@ dCcD_SrcSph dAcOTarzanPole_c::sCcSrc = {
// clang-format on
bool dAcOTarzanPole_c::createHeap() {
320.0f; // To fix .rodata
// Get Res File
void *resFile = getOarcResFile("WhipBar");
mBrres = nw4r::g3d::ResFile(resFile);
@@ -44,6 +45,7 @@ bool dAcOTarzanPole_c::createHeap() {
return true;
}
const f32 dAcOTarzanPole_c::sUnusedFloat = 0.0f;
int dAcOTarzanPole_c::create() {
if (!initAllocatorWork1Heap(0xFFFFFFFF, "dAcOTarzanPole_c::m_allocator", 0x20)) {
return FAILED;
@@ -74,13 +76,12 @@ int dAcOTarzanPole_c::doDelete() {
return SUCCEEDED;
}
const f32 dAcOTarzanPole_c::sUnusedFloat2 = 320.0f;
int dAcOTarzanPole_c::actorExecute() {
// Update matrix
updateMatrix();
mMdl.setLocalMtx(mWorldMtx);
mMdl.calc(false);
// IDK Player?
dAcPy_c *player = dAcPy_c::LINK;
bool bVar = false;
if (mCollider.mTg.MskRPrm(1) && mCollider.mTg.GetActor() != nullptr) {
@@ -96,7 +97,7 @@ int dAcOTarzanPole_c::actorExecute() {
poscopy3 = poscopy2 + mVec3_c::Ey * 20;
if (player != nullptr && !player->checkActionFlags(0x400000) && dAcItem_c::checkFlag(ITEM_WHIP)) {
AttentionManager::GetInstance()->addUnk7Target((dAcObjBase_c &)*this, 1000, 0, 10, -600.0, 200);
AttentionManager::GetInstance()->addUnk7Target((dAcObjBase_c &)*this, 1, 1000.0f, 10.0f, -600.0, 200);
}
mCollider.SetC(poscopy2);