Skip to content

Instantly share code, notes, and snippets.

@shibbo
Created April 3, 2020 19:22
Show Gist options
  • Save shibbo/78d82764006fccb8285fb66d52c6067f to your computer and use it in GitHub Desktop.
Save shibbo/78d82764006fccb8285fb66d52c6067f to your computer and use it in GitHub Desktop.
__int64 __fastcall PlayerActorHakoniwa::initPlayer(char *a1, __int64 a2, __int64 a3)
{
__int64 v3; // x25
__int64 v4; // x28
char *v5; // x19
al::LiveActor *v6; // x1
const char *v7; // x3
const char *v8; // x3
const char *v9; // x3
const al::LiveActor *v10; // x1
const al::FunctorBase *v11; // x3
al::ExecuteDirector *v12; // x1
const char *v13; // x2
ActorDimensionKeeper *v14; // x20
PlayerTrigger *v15; // x20
const char *v16; // x21
PlayerModelHolder *v17; // x20
al::LiveActor *v18; // x23
const al::ActorInitInfo *v19; // x22
const char *v20; // x26
char v21; // w0
bool v22; // w6
PlayerCostumeInfo *v23; // x24
al::LiveActor *v24; // x23
const al::ActorInitInfo *v25; // x26
const PlayerCostumeInfo *v26; // x1
char v27; // w0
bool v28; // w4
al::LiveActor *v29; // x22
PlayerPainPartsKeeper *v30; // x20
const char *v31; // x1
char *v32; // x0
PlayerJointControlKeeper *v33; // x20
__int64 v34; // x0
const PlayerConst *v35; // x22
al::LiveActor *v36; // x21
char v37; // w23
char v38; // w26
char v39; // w27
char v40; // w0
const PlayerConst *v41; // x20
PlayerColliderHakoniwa *v42; // x21
__int64 v43; // x20
__int64 v44; // x0
__int64 v45; // x2
__int64 v46; // x3
__int64 v47; // x20
__int64 v48; // x0
const PlayerModelHolder *v49; // x21
PlayerAnimator *v50; // x20
al::LiveActor *v51; // x1
al::ActorDitherAnimator *v52; // x0
__int64 v53; // x0
__int64 v54; // x8
__int64 v55; // x2
__int64 v56; // x20
PlayerContinuousJump *v57; // x20
PlayerContinuousLongJump *v58; // x20
PlayerDamageKeeper *v59; // x20
PlayerDemoActionFlag *v60; // x20
__int64 v61; // x0
__int64 v62; // x2
__int64 v63; // x3
__int64 v64; // x4
__int64 v65; // x20
PlayerAreaChecker *v66; // x20
al::WaterSurfaceFinder *v67; // x20
WorldEndBorderKeeper *v68; // x20
PlayerWallActionHistory *v69; // x20
PlayerCounterAfterUpperPunch *v70; // x20
PlayerCounterForceRun *v71; // x20
PlayerCounterQuickTurnJump *v72; // x20
PlayerJumpMessageRequest *v73; // x20
__int64 v74; // x0
__int64 v75; // x2
__int64 v76; // x4
__int64 v77; // x5
__int64 v78; // x20
PlayerEyeSensorHitHolder *v79; // x20
PlayerPushReceiver *v80; // x20
PlayerHitPush *v81; // x20
__int64 v82; // x0
__int64 v83; // x21
__int64 v84; // x20
al::LiveActor *v85; // x1
__int64 v86; // x0
__int64 v87; // x8
al::HitSensor *v88; // x20
al::LiveActor *v89; // x21
al::FootPrintHolder *v90; // x22
signed __int64 v91; // x0
al::FootPrintServer *v92; // x0
PlayerSeparateCapFlag *v93; // x20
PlayerWetControl *v94; // x20
al::LiveActor *v95; // x0
__int64 v96; // x8
int v97; // w0
__int64 v98; // x8
int v99; // w26
int v100; // w23
HackCapJudgePreInputSeparateThrow *v101; // x20
HackCapJudgePreInputSeparateJump *v102; // x20
__int64 v103; // x20
__int64 v104; // x21
__int64 v105; // x6
__int64 v106; // x7
__int64 v107; // x11
__int64 v108; // ST18_8
__int64 v109; // ST00_8
al::ExecuteDirector *v110; // x1
const al::FunctorBase *v111; // x3
const PlayerCounterAfterCapCatch *v112; // x27
PlayerRippleGenerator *v113; // x20
__int64 v114; // x0
__int64 v115; // x2
__int64 v116; // x6
__int64 v117; // x20
__int64 v118; // x5
__int64 v119; // x0
__int64 v120; // x7
__int64 v121; // x20
__int64 v122; // ST00_8
__int64 v123; // ST18_8
__int64 v124; // ST08_8
__int64 v125; // x0
__int64 v126; // x1
__int64 v127; // x21
__int64 v128; // x0
__int64 v129; // x8
__int64 v130; // x20
__int64 v131; // x2
__int64 v132; // x4
__int64 v133; // x6
__int64 v134; // x0
__int64 v135; // x1
__int64 v136; // x2
__int64 v137; // x20
PlayerSeCtrl *v138; // x20
__int64 v139; // x0
__int64 v140; // x21
__int64 v141; // x22
__int64 v142; // x24
PlayerHackKeeper *v143; // x20
__int64 v144; // x0
__int64 v145; // x8
signed __int64 v146; // x8
__int64 v147; // x0
__int64 v148; // x2
__int64 v149; // x3
__int64 v150; // x4
__int64 v151; // x20
PlayerModelHolder *v152; // x20
al *v153; // x0
const char *v154; // x2
al *v155; // x0
const char *v156; // x2
al::LiveActor *v157; // x21
al *v158; // x0
const char *v159; // x2
al::LiveActor *v160; // x20
PlayerCapManHeroEyesControl *v161; // x22
__int64 v162; // x0
__int64 v163; // x2
__int64 v164; // x20
__int64 v165; // x0
__int64 v166; // x2
__int64 v167; // x4
__int64 v168; // x5
__int64 v169; // x20
const PlayerCounterAfterCapCatch *v170; // ST80_8
PlayerJudgeDeadWipeStart *v171; // x20
__int64 v172; // x0
__int64 v173; // x2
__int64 v174; // x5
__int64 v175; // x6
__int64 v176; // x7
__int64 v177; // x20
__int64 v178; // x20
__int64 v179; // x0
__int64 v180; // x2
__int64 v181; // x20
__int64 v182; // x20
__int64 v183; // x0
__int64 v184; // x2
__int64 v185; // x4
__int64 v186; // x5
__int64 v187; // x20
__int64 v188; // x6
__int64 v189; // x0
__int64 v190; // x4
__int64 v191; // x7
__int64 v192; // x20
__int64 v193; // x0
__int64 v194; // x4
__int64 v195; // x7
__int64 v196; // x20
__int64 v197; // x0
__int64 v198; // x4
__int64 v199; // x20
__int64 v200; // x0
__int64 v201; // x4
__int64 v202; // x7
__int64 v203; // x20
__int64 v204; // x0
__int64 v205; // x2
__int64 v206; // x20
__int64 v207; // x0
__int64 v208; // x2
__int64 v209; // x4
__int64 v210; // x5
__int64 v211; // x6
__int64 v212; // x20
__int64 v213; // x0
__int64 v214; // x4
__int64 v215; // x5
__int64 v216; // x6
__int64 v217; // x20
__int64 v218; // x2
__int64 v219; // ST00_8
PlayerJudgePreInputCapThrow *v220; // x20
PlayerJudgePreInputHackAction *v221; // x20
__int64 v222; // x0
__int64 v223; // x3
__int64 v224; // x4
__int64 v225; // x20
__int64 v226; // x0
__int64 v227; // x2
__int64 v228; // x20
__int64 v229; // x0
__int64 v230; // x2
__int64 v231; // x5
__int64 v232; // x20
__int64 v233; // x0
__int64 v234; // x1
__int64 v235; // x4
__int64 v236; // x20
__int64 v237; // x0
__int64 v238; // x2
__int64 v239; // x3
__int64 v240; // x20
__int64 v241; // x0
__int64 v242; // x2
__int64 v243; // x5
__int64 v244; // x6
__int64 v245; // x20
PlayerJudgeStartSquat *v246; // x20
__int64 v247; // x0
__int64 v248; // x4
__int64 v249; // x5
__int64 v250; // x6
__int64 v251; // x20
__int64 v252; // x2
__int64 v253; // x8
__int64 v254; // ST00_8
__int64 v255; // x0
__int64 v256; // x2
__int64 v257; // x5
__int64 v258; // x6
__int64 v259; // x7
__int64 v260; // x20
__int64 v261; // ST00_8
__int64 v262; // x0
__int64 v263; // x3
__int64 v264; // x4
__int64 v265; // x20
__int64 v266; // x0
__int64 v267; // x3
__int64 v268; // x4
__int64 v269; // x5
__int64 v270; // x20
__int64 v271; // x0
__int64 v272; // x3
__int64 v273; // x4
__int64 v274; // x20
__int64 v275; // x0
__int64 v276; // x5
__int64 v277; // x8
__int64 v278; // x10
__int64 v279; // x20
__int64 v280; // ST10_8
__int64 v281; // ST00_8
__int64 v282; // x0
__int64 v283; // x3
__int64 v284; // x20
PlayerSpinCapAttack *v285; // x20
__int64 v286; // x0
__int64 v287; // x21
__int64 v288; // x24
__int64 v289; // x22
__int64 v290; // x20
__int64 v291; // x0
__int64 v292; // x2
__int64 v293; // x27
__int64 v294; // x0
__int64 v295; // x1
__int64 v296; // x2
__int64 v297; // x20
__int64 v298; // x0
__int64 v299; // x2
__int64 v300; // x3
__int64 v301; // x20
__int64 v302; // x0
__int64 v303; // x1
__int64 v304; // x3
__int64 v305; // x20
__int64 v306; // x8
PlayerJudgeStartWaterSurfaceRun *v307; // x20
__int64 v308; // x0
__int64 v309; // x3
__int64 v310; // x21
__int64 v311; // x0
__int64 v312; // x2
__int64 v313; // x5
__int64 v314; // x6
__int64 v315; // x20
int v316; // w3
__int64 v317; // x20
__int64 v318; // x20
ActorStateSandGeyser *v319; // x20
__int64 v320; // x20
__int64 v321; // ST10_8
__int64 v322; // x20
__int64 v323; // ST18_8
__int64 v324; // x20
__int64 v325; // ST28_8
char v326; // ST30_1
__int64 v327; // x0
__int64 v328; // x2
__int64 v329; // x5
__int64 v330; // x20
__int64 v331; // x20
__int64 v332; // ST38_8
__int64 v333; // x0
__int64 v334; // ST68_8
__int64 v335; // ST60_8
__int64 v336; // ST88_8
__int64 v337; // x20
__int64 v338; // ST70_8
PlayerJudgeCapCatch *v339; // x0
int v340; // w25
__int64 v341; // ST80_8
__int64 v342; // ST58_8
__int64 v343; // x21
const PlayerColliderHakoniwa *v344; // x26
__int64 v345; // x22
__int64 v346; // x24
__int64 v347; // x27
const HackCap *v348; // x28
HackCapJudgeHoldHoveringJump *v349; // x23
__int64 v350; // x0
__int64 v351; // x2
__int64 v352; // x5
__int64 v353; // x6
__int64 v354; // x20
__int64 v355; // x20
__int64 v356; // x20
__int64 v357; // x21
__int64 v358; // x22
int v359; // w0
__int64 v360; // x9
int v361; // w5
__int64 v362; // x0
__int64 v363; // x23
__int64 v364; // x21
__int64 v365; // x22
__int64 v366; // x24
__int64 v367; // x20
int v368; // w0
__int64 v369; // ST10_8
__int64 v370; // x0
__int64 v371; // x23
__int64 v372; // x21
__int64 v373; // x22
__int64 v374; // x24
__int64 v375; // x20
int v376; // w0
__int64 v377; // x0
__int64 v378; // x2
__int64 v379; // x6
__int64 v380; // x5
__int64 v381; // x20
__int64 v382; // x0
__int64 v383; // x2
__int64 v384; // x5
__int64 v385; // x6
__int64 v386; // x20
__int64 v387; // x20
__int64 v388; // x20
__int64 v389; // x0
__int64 v390; // x2
__int64 v391; // x5
__int64 v392; // x20
__int64 v393; // x20
__int64 v394; // x0
__int64 v395; // x2
__int64 v396; // x6
__int64 v397; // x7
__int64 v398; // x20
__int64 v399; // x20
__int64 v400; // x0
__int64 v401; // x2
__int64 v402; // x5
__int64 v403; // x6
__int64 v404; // x20
__int64 v405; // x0
__int64 v406; // x3
__int64 v407; // x20
__int64 v408; // x0
__int64 v409; // x2
__int64 v410; // x4
__int64 v411; // x6
__int64 v412; // x20
__int64 v413; // x0
__int64 v414; // x2
__int64 v415; // x3
__int64 v416; // x5
__int64 v417; // x20
__int64 v418; // x0
__int64 v419; // x2
__int64 v420; // x5
__int64 v421; // x6
__int64 v422; // x20
__int64 v423; // x20
PlayerStateAbyss *v424; // x20
const PlayerConst *v425; // x21
PlayerRecoverySafetyPoint *v426; // x22
PlayerAnimator *v427; // x23
PlayerColliderHakoniwa *v428; // x24
al::LiveActor *v429; // x0
__int64 v430; // x1
PlayerOxygen *v431; // x23
__int64 v432; // x0
int v433; // w26
int v434; // w28
int v435; // w0
__int64 v436; // x0
__int64 v437; // x4
__int64 v438; // x7
__int64 v439; // x0
__int64 v440; // x3
__int64 v441; // x4
__int64 v442; // x23
PlayerStainControl *v443; // x23
al::LiveActor *v444; // x0
__int64 v445; // x0
__int64 v446; // x2
__int64 v447; // x3
__int64 v448; // x5
__int64 v449; // x23
__int64 v450; // x6
__int64 v451; // x7
__int64 v452; // ST00_8
PlayerInfo *v453; // x23
__int64 v454; // x8
__int64 v455; // x9
signed __int64 v456; // x9
__int64 v457; // x24
__int64 v458; // x0
__int64 v459; // x2
__int64 v460; // x3
__int64 v461; // x23
__int64 v462; // x24
PlayerJudgeActiveCameraSubjective *v463; // x23
__int64 v464; // x0
__int64 v465; // x2
__int64 v466; // x3
__int64 v467; // x4
__int64 v468; // x23
__int64 v469; // x7
__int64 v470; // ST00_8
PlayerJudgeTalkSwim *v471; // x23
PlayerJudgeDead *v472; // x23
__int64 v473; // x24
PlayerJudgeDrawForward *v474; // x23
__int64 v475; // x24
__int64 v476; // x23
__int64 v477; // x24
__int64 v478; // x23
__int64 v479; // x24
__int64 v480; // x23
__int64 v481; // x24
__int64 v482; // x23
__int64 v483; // x26
__int64 v484; // x0
__int64 v485; // x24
__int64 v486; // x23
__int64 v487; // x25
__int64 v488; // x24
__int64 v489; // x20
__int64 v490; // x23
__int64 v491; // x23
__int64 v492; // x20
__int64 v493; // x21
__int64 v494; // x21
PlayerJudgePlaySwitchOnAreaWaitAnim *v495; // x20
__int64 v496; // x21
PlayerJudgeSleep *v497; // x20
__int64 v498; // x21
PlayerJudgeEnableGuideArrow *v499; // x20
__int64 v500; // x21
PlayerJudgeEnablePeachAmiibo *v501; // x20
__int64 v502; // x21
__int64 v503; // x0
__int64 v504; // x2
__int64 v505; // x3
__int64 v506; // x4
__int64 v507; // x20
__int64 v508; // x5
__int64 v509; // x21
__int64 v510; // x0
__int64 v511; // x2
__int64 v512; // x4
__int64 v513; // x5
__int64 v514; // x20
__int64 v515; // x6
__int64 v516; // x7
PlayerAnimator *v517; // x2
GaugeAir *v518; // x20
const al::ActorInitInfo *v519; // x1
const al::LayoutInitInfo *v520; // x0
__int64 v521; // x8
__int64 v522; // x20
__int64 v524; // [xsp+20h] [xbp-1F0h]
__int64 v525; // [xsp+30h] [xbp-1E0h]
__int64 v526; // [xsp+30h] [xbp-1E0h]
__int64 v527; // [xsp+38h] [xbp-1D8h]
__int64 v528; // [xsp+48h] [xbp-1C8h]
__int64 v529; // [xsp+50h] [xbp-1C0h]
int v530; // [xsp+78h] [xbp-198h]
al *v531; // [xsp+A0h] [xbp-170h]
PlayerCostumeInfo *v532; // [xsp+A8h] [xbp-168h]
int v533; // [xsp+B0h] [xbp-160h]
char v534; // [xsp+B8h] [xbp-158h]
__int64 v535; // [xsp+BCh] [xbp-154h]
const char *v536; // [xsp+C8h] [xbp-148h]
__int64 (__fastcall **v537)(); // [xsp+D0h] [xbp-140h]
const al::ActorInitInfo *v538; // [xsp+D8h] [xbp-138h]
int v539; // [xsp+E0h] [xbp-130h]
int v540; // [xsp+E4h] [xbp-12Ch]
__int64 (__fastcall **v541)(); // [xsp+128h] [xbp-E8h]
const char *v542; // [xsp+130h] [xbp-E0h]
__int64 (__fastcall *v543)(PlayerActorHakoniwa *__hidden); // [xsp+138h] [xbp-D8h]
__int64 v544; // [xsp+140h] [xbp-D0h]
v541 = off_7101CF30E8;
v3 = a3;
v4 = a2;
v5 = a1;
v542 = "PlayerActorHakoniwa";
al::initActorWithArchiveName();
rs::initPlayerActorInfo(v5, v3);
al::onCollide(v5, v6);
LOBYTE(v535) = 0;
al::tryGetArg(&v535, v4, "IsMoon", v7);
al::tryGetArg((v5 + 720), v4, "IsLongShadow", v8);
v534 = 0;
al::tryGetArg(&v534, v4, "IsInvalidateCap", v9);
if ( v534 )
GameDataFunction::disableCapByPlacement(v5, v10);
v12 = *(v4 + 224);
v541 = off_7101E249B8;
v542 = v5;
v543 = PlayerActorHakoniwa::updateModelShadowDropLength;
v544 = 0LL;
al::registerExecutorFunctor(&unk_71018D0E8F, v12, &v541, v11);
*(v5 + 89) = al::getHitSensor(v5, "Body", v13);
v14 = operator new(0x18uLL);
ActorDimensionKeeper::ActorDimensionKeeper(v14, v5);
*(v5 + 42) = v14;
v15 = operator new(0x28uLL);
PlayerTrigger::PlayerTrigger(v15);
*(v5 + 40) = v15;
v533 = v5 + 288;
v16 = (*(*v5 + 144LL))(v5);
v17 = operator new(0xB0uLL);
PlayerModelHolder::PlayerModelHolder(v17, 3u);
v18 = operator new(0x108uLL);
al::LiveActor::LiveActor(v18, &unk_71018D1135);
v19 = rs::getInitPlayerModelName(v3);
v20 = rs::getInitCapTypeName(v3);
v21 = rs::isClosetScenePlayer(v3);
v23 = PlayerFunction::initMarioModelActor(v18, v4, v19, v20, v16, (v21 & 1), v22);
PlayerModelHolder::registerModel(v17, v18, "Normal");
al::StringTmp<128>::StringTmp(&v541, &byte_71018AA876);
al::tryReplaceString(&v541, v19, "Mario", &byte_71018AA876);
(v541[3])(&v541);
sead::BufferedSafeStringBase<char>::format(v17 + 24, "%s", v542);
v538 = &v540;
v537 = off_7101CF31B8;
v539 = 64;
sead::BufferedSafeStringBase<char>::assureTerminationImpl_(&v537);
*v538 = sead::SafeStringBase<char>::cNullChar;
v532 = v23;
v537 = off_7101CF6A78;
if ( PlayerCostumeInfo::isEnableCostume2D(v23) & 1 )
sead::BufferedSafeStringBase<char>::format(&v537, "%s2D", v19);
else
sead::BufferedSafeStringBase<char>::format(&v537, "Mario2D");
v24 = operator new(0x108uLL);
al::LiveActor::LiveActor(v24, &unk_71018D1155);
(v537[3])(&v537);
v25 = v538;
v27 = PlayerFunction::isInvisibleCap(v23, v26);
PlayerFunction::initMarioModelActor2D(v24, v4, v25, (v27 & 1), v28);
PlayerModelHolder::registerModel(v17, v24, "Normal2D");
v29 = operator new(0x108uLL);
al::LiveActor::LiveActor(v29, &unk_71018D1171);
*(&v535 + 4) = off_7101CF30E8;
v536 = "Mario2DMini";
al::initChildActorWithArchiveNameNoPlacementInfo(v29, v4, &v535 + 4, 0LL);
(*(*v29 + 48LL))(v29);
PlayerModelHolder::registerModel(v17, v29, "Mini2D");
PlayerModelHolder::changeModel(v17, "Normal");
*(v5 + 43) = v17;
v30 = operator new(0x30uLL);
PlayerPainPartsKeeper::PlayerPainPartsKeeper(v30, v5, v23);
*(v5 + 77) = v30;
if ( rs::isNeedCreateNoseNeedle(v3) & 1 )
PlayerPainPartsKeeper::createNoseNeedle(*(v5 + 77), *(v5 + 43), v4);
if ( v535 )
v32 = "Moon";
else
v32 = &byte_71018AA876;
v531 = v4;
*(v5 + 38) = PlayerFunction::createMarioConst(v32, v31);
v33 = operator new(0xF0uLL);
v34 = PlayerModelHolder::findModelActor(*(v5 + 43), "Normal");
v35 = *(v5 + 38);
v36 = v34;
v37 = PlayerCostumeInfo::isNeedShrinkNose(v23);
v38 = PlayerCostumeInfo::isEnableBigEar(v23);
v39 = PlayerCostumeInfo::isFollowJoeStrap(v23);
v40 = PlayerCostumeInfo::isOffsetSunglass(v23);
PlayerJointControlKeeper::PlayerJointControlKeeper(v33, v36, v35, v37 & 1, v38 & 1, v39 & 1, v40 & 1);
*(v5 + 76) = v33;
v41 = *(v5 + 38);
v42 = operator new(0xC0uLL);
PlayerColliderHakoniwa::PlayerColliderHakoniwa(v42, v5, v41);
PlayerColliderHakoniwa::init(v42);
*(v5 + 46) = v42;
v43 = operator new(0x140uLL);
PlayerInput::PlayerInput();
*(v5 + 39) = v43;
v44 = operator new(0x58uLL);
v45 = *(v5 + 43);
v46 = *(v5 + 77);
v47 = v44;
PlayerModelChangerHakoniwa::PlayerModelChangerHakoniwa();
*(v5 + 44) = v47;
v48 = operator new(0x1A8uLL);
v49 = *(v5 + 43);
v50 = v48;
v52 = PlayerFunction::createPlayerDitherAnimator(v5, v51, 200.0);
PlayerAnimator::PlayerAnimator(v50, v49, v52);
*(v5 + 45) = v50;
if ( PlayerCostumeInfo::isNeedFullFaceAnim(v23) & 1 )
*(*(v5 + 45) + 416LL) = 1;
v53 = operator new(0xC0uLL);
v54 = *(v5 + 76);
v55 = *(v5 + 43);
v56 = v53;
PlayerEffect::PlayerEffect();
*(v5 + 71) = v56;
v57 = operator new(0x20uLL);
PlayerContinuousJump::PlayerContinuousJump(v57, *(v5 + 38));
*(v5 + 55) = v57;
v58 = operator new(0x10uLL);
PlayerContinuousLongJump::PlayerContinuousLongJump(v58, *(v5 + 38));
*(v5 + 56) = v58;
v59 = operator new(0x30uLL);
PlayerDamageKeeper::PlayerDamageKeeper(v59, v5, *(v5 + 71));
*(v5 + 51) = v59;
v60 = operator new(0x18uLL);
PlayerDemoActionFlag::PlayerDemoActionFlag(v60);
*(v5 + 52) = v60;
v61 = operator new(0x40uLL);
v62 = *(v5 + 38);
v63 = *(v5 + 40);
v64 = *(v5 + 46);
v65 = v61;
PlayerCapActionHistory::PlayerCapActionHistory();
*(v5 + 53) = v65;
v66 = operator new(0x10uLL);
PlayerAreaChecker::PlayerAreaChecker(v66, v5, *(v5 + 43));
*(v5 + 48) = v66;
v67 = operator new(0x38uLL);
al::WaterSurfaceFinder::WaterSurfaceFinder(v67, v5);
*(v5 + 49) = v67;
v68 = operator new(0x60uLL);
WorldEndBorderKeeper::WorldEndBorderKeeper(v68, v5);
*(v5 + 86) = v68;
v69 = operator new(0x38uLL);
PlayerWallActionHistory::PlayerWallActionHistory(v69);
*(v5 + 61) = v69;
v70 = operator new(4uLL);
PlayerCounterAfterUpperPunch::PlayerCounterAfterUpperPunch(v70);
*(v5 + 57) = v70;
v71 = operator new(8uLL);
PlayerCounterForceRun::PlayerCounterForceRun(v71);
*(v5 + 58) = v71;
v72 = operator new(0x18uLL);
PlayerCounterQuickTurnJump::PlayerCounterQuickTurnJump(v72, *(v5 + 38), *(v5 + 40));
*(v5 + 60) = v72;
v73 = operator new(0x28uLL);
PlayerJumpMessageRequest::PlayerJumpMessageRequest(v73);
*(v5 + 67) = v73;
v74 = operator new(0x38uLL);
v75 = *(v5 + 38);
v76 = *(v5 + 46);
v77 = *(v5 + 71);
v78 = v74;
PlayerSandSinkAffect::PlayerSandSinkAffect();
*(v5 + 68) = v78;
v79 = operator new(0x48uLL);
PlayerEyeSensorHitHolder::PlayerEyeSensorHitHolder(v79, 128);
*(v5 + 72) = v79;
PlayerEyeSensorHitHolder::createTargetMarkerBuffer(v79, 128);
v80 = operator new(0x38uLL);
PlayerPushReceiver::PlayerPushReceiver(v80, v5);
*(v5 + 73) = v80;
v81 = operator new(0x20uLL);
PlayerHitPush::PlayerHitPush(v81, v5, *(v5 + 38));
*(v5 + 74) = v81;
v82 = operator new(0x98uLL);
v83 = *(v5 + 46);
v84 = v82;
v86 = al::getTransPtr(v5, v85);
PlayerExternalVelocity::PlayerExternalVelocity(v84, v5, v83, v86);
v87 = *(v5 + 43);
*(v5 + 75) = v84;
v88 = *(v5 + 89);
v89 = *(*(v87 + 16) + 152LL);
v90 = operator new(0x58uLL);
if ( v89 )
v91 = v89 + 32;
else
v91 = 0LL;
v92 = al::getSceneObj(v91, 17LL);
al::FootPrintHolder::FootPrintHolder(v90, v89, "PlayerAnimation", v88, v92);
*(v90 + 9) = 0LL;
*(v90 + 10) = 0LL;
*(v5 + 83) = v90;
v93 = operator new(0x10uLL);
PlayerSeparateCapFlag::PlayerSeparateCapFlag(v93);
*(v5 + 80) = v93;
v94 = operator new(0x38uLL);
v95 = PlayerModelHolder::findModelActor(*(v5 + 43), "Normal");
PlayerWetControl::PlayerWetControl(v94, v5, v95, *(v5 + 48));
v96 = *(v5 + 71);
*(v5 + 81) = v94;
*(v94 + 1) = v96;
v97 = (*(*v5 + 248LL))(v5);
v98 = *(v5 + 46);
v99 = v97;
if ( v98 )
v100 = v98 + 16;
else
v100 = 0;
v101 = operator new(0x20uLL);
HackCapJudgePreInputSeparateThrow::HackCapJudgePreInputSeparateThrow(v101, *(v5 + 39), *(v5 + 80));
*(v5 + 152) = v101;
v102 = operator new(0x20uLL);
HackCapJudgePreInputSeparateJump::HackCapJudgePreInputSeparateJump(v102, *(v5 + 39), *(v5 + 80));
*(v5 + 153) = v102;
v103 = rs::getInitCapTypeName(v3);
v104 = operator new(0x610uLL);
v105 = *(v5 + 53);
v106 = *(v5 + 72);
v107 = *(v5 + 152);
v525 = *(v5 + 153);
v108 = *(v5 + 81);
v109 = *(v5 + 80);
HackCap::HackCap(v104, v5, v103, *(v5 + 39), *(v5 + 48), *(v5 + 61));
*(v5 + 41) = v104;
(*(*v104 + 8LL))(v104, v4);
v110 = *(v4 + 224);
v541 = off_7101E249B8;
v544 = 0LL;
v542 = v5;
v543 = PlayerActorHakoniwa::executeAfterCapTarget;
al::registerExecutorFunctor(&unk_71018B2875, v110, &v541, v111);
v112 = *(*(v5 + 53) + 32LL);
v113 = operator new(0x58uLL);
PlayerRippleGenerator::PlayerRippleGenerator(v113, v5, *(v5 + 41), *(v5 + 43));
*(v5 + 79) = v113;
v114 = operator new(0xB8uLL);
v115 = *(v5 + 41);
v116 = *(v5 + 89);
v117 = v114;
v118 = *(*(v5 + 46) + 184LL);
PlayerRecoverySafetyPoint::PlayerRecoverySafetyPoint();
*(v5 + 78) = v117;
v119 = operator new(0xD0uLL);
v120 = *(v5 + 86);
v121 = v119;
v122 = *(v5 + 58);
v123 = *(v5 + 39);
v124 = *(v5 + 51);
PlayerPuppet::PlayerPuppet(v119, v5, *(v5 + 41), *(v5 + 45), *(v5 + 46));
*(v5 + 47) = v121;
v125 = operator new(0x28uLL);
v126 = *(v5 + 89);
v127 = v125;
PlayerBindKeeper::PlayerBindKeeper();
*(v5 + 62) = v127;
v128 = operator new(0x70uLL);
v129 = *(v5 + 46);
v130 = v128;
v131 = *(v5 + 89);
v132 = *(v5 + 44);
v133 = *(*(v5 + 76) + 96LL);
PlayerCarryKeeper::PlayerCarryKeeper();
*(v5 + 63) = v130;
v134 = operator new(0x38uLL);
v135 = *(v5 + 39);
v136 = *(v5 + 43);
v137 = v134;
PlayerEquipmentUser::PlayerEquipmentUser();
*(v5 + 64) = v137;
v138 = operator new(0x198uLL);
PlayerSeCtrl::PlayerSeCtrl(v138, v5, *(v5 + 45), *(v5 + 41), *(v5 + 44), *(*(*(v5 + 43) + 16LL) + 152LL), *(v5 + 75));
*(v5 + 88) = v138;
v139 = operator new(0xD0uLL);
v140 = *(v5 + 41);
v141 = *(v5 + 78);
v142 = *(v5 + 39);
v143 = v139;
v144 = (*(*v5 + 240LL))(v5);
v145 = *(v5 + 46);
if ( v145 )
v146 = v145 + 16;
else
v146 = 0LL;
PlayerHackKeeper::PlayerHackKeeper(v143, v5, v140, v141, v142, v144, *(v5 + 51), *(v5 + 44), v146);
*(v5 + 65) = v143;
PlayerHackKeeper::createHackModel(v143, v4);
v147 = operator new(0x40uLL);
v148 = *(v5 + 46);
v149 = *(v5 + 44);
v150 = *(v5 + 65);
v151 = v147;
PlayerFormSensorCollisionArranger::PlayerFormSensorCollisionArranger();
*(v5 + 66) = v151;
v152 = *(v5 + 43);
v153 = PlayerModelHolder::findModelActor(*(v5 + 43), "Normal");
v155 = al::getSubActor(v153, &unk_71018B28A6, v154);
v157 = al::tryGetSubActor(v155, &unk_71018D11AD, v156);
v158 = PlayerModelHolder::findModelActor(v152, "Normal2D");
v160 = al::getSubActor(v158, &unk_71018D11C0, v159);
v161 = operator new(0x20uLL);
PlayerCapManHeroEyesControl::PlayerCapManHeroEyesControl(v161, &unk_71018D11D7, v157, v160);
*(v5 + 54) = v161;
v162 = operator new(0x28uLL);
v163 = *(v5 + 75);
v164 = v162;
PlayerJudgeAirForceCount::PlayerJudgeAirForceCount();
*(v5 + 120) = v164;
v165 = operator new(0x38uLL);
v166 = *(v5 + 39);
v167 = *(v5 + 44);
v168 = *(v5 + 53);
v169 = v165;
v170 = v112;
PlayerJudgeCapCatchPop::PlayerJudgeCapCatchPop();
*(v5 + 122) = v169;
v171 = operator new(0x20uLL);
PlayerJudgeDeadWipeStart::PlayerJudgeDeadWipeStart(v171, v5, *(v5 + 38));
*(v5 + 123) = v171;
v172 = operator new(0x48uLL);
v173 = *(v5 + 38);
v174 = *(v5 + 44);
v175 = *(v5 + 63);
v176 = *(v5 + 58);
v177 = v172;
PlayerJudgeDirectRolling::PlayerJudgeDirectRolling();
*(v5 + 124) = v177;
v178 = operator new(0x18uLL);
*(v5 + 46);
PlayerJudgeEnableStandUp::PlayerJudgeEnableStandUp();
*(v5 + 125) = v178;
v179 = operator new(0x28uLL);
v180 = *(v5 + 38);
v181 = v179;
PlayerJudgeForceSlopeSlide::PlayerJudgeForceSlopeSlide();
*(v5 + 127) = v181;
v182 = operator new(0x18uLL);
PlayerJudgeForceRolling::PlayerJudgeForceRolling();
*(v5 + 128) = v182;
v183 = operator new(0x70uLL);
v184 = *(v5 + 38);
v185 = *(v5 + 44);
v186 = *(v5 + 63);
v187 = v183;
v188 = *(v5 + 75);
PlayerJudgeGrabCeil::PlayerJudgeGrabCeil();
*(v5 + 129) = v187;
v189 = operator new(0x48uLL);
v190 = *(v5 + 48);
v191 = *(v5 + 58);
v192 = v189;
PlayerJudgeInWater::PlayerJudgeInWater(v189, v5, *(v5 + 38));
*(v5 + 130) = v192;
v193 = operator new(0x48uLL);
v194 = *(v5 + 48);
v195 = *(v5 + 58);
v196 = v193;
PlayerJudgeInWater::PlayerJudgeInWater(v193, v5, *(v5 + 38));
*(v5 + 131) = v196;
v197 = operator new(0x48uLL);
v198 = *(v5 + 48);
v199 = v197;
PlayerJudgeInWater::PlayerJudgeInWater(v197, v5, *(v5 + 38));
*(v5 + 132) = v199;
v200 = operator new(0x48uLL);
v201 = *(v5 + 48);
v202 = *(v5 + 58);
v203 = v200;
PlayerJudgeInWater::PlayerJudgeInWater(v200, v5, *(v5 + 38));
*(v5 + 133) = v203;
v204 = operator new(0x28uLL);
v205 = *(v5 + 48);
v206 = v204;
PlayerJudgeInvalidateInputFall::PlayerJudgeInvalidateInputFall();
*(v5 + 134) = v206;
v207 = operator new(0x38uLL);
v208 = *(v5 + 38);
v209 = *(v5 + 65);
v210 = *(v5 + 62);
v211 = *(v5 + 44);
v212 = v207;
PlayerJudgeLongFall::PlayerJudgeLongFall();
*(v5 + 135) = v212;
v213 = operator new(0x90uLL);
v214 = *(v5 + 44);
v215 = *(v5 + 63);
v216 = *(v5 + 75);
v217 = v213;
v218 = *(v5 + 38);
v219 = *(v5 + 40);
PlayerJudgePoleClimb::PlayerJudgePoleClimb(v213);
*(v5 + 147) = v217;
v220 = operator new(0x60uLL);
PlayerJudgePreInputCapThrow::PlayerJudgePreInputCapThrow(v220, *(v5 + 38), *(v5 + 39), *(v5 + 63), *(v5 + 41));
*(v5 + 149) = v220;
v221 = operator new(0x20uLL);
PlayerJudgePreInputHackAction::PlayerJudgePreInputHackAction(v221, *(v5 + 38), *(v5 + 39));
*(v5 + 150) = v221;
v222 = operator new(0x30uLL);
v223 = *(v5 + 41);
v224 = *(v5 + 39);
v225 = v222;
HackCapJudgePreInputHoveringJump::HackCapJudgePreInputHoveringJump();
*(v5 + 151) = v225;
v226 = operator new(0x18uLL);
v227 = *(v5 + 68);
v228 = v226;
PlayerJudgeSandSink::PlayerJudgeSandSink();
*(v5 + 138) = v228;
v229 = operator new(0x38uLL);
v230 = *(v5 + 38);
v231 = *(v5 + 44);
v232 = v229;
PlayerJudgeSlopeSlide::PlayerJudgeSlopeSlide();
*(v5 + 146) = v232;
v233 = operator new(0x28uLL);
v234 = *(v5 + 38);
v235 = *(v5 + 44);
v236 = v233;
*(v5 + 46);
PlayerJudgeStartHipDrop::PlayerJudgeStartHipDrop();
*(v5 + 140) = v236;
v237 = operator new(0x20uLL);
v238 = *(v5 + 48);
v239 = *(v5 + 44);
v240 = v237;
PlayerJudgeStartRise::PlayerJudgeStartRise();
*(v5 + 141) = v240;
v241 = operator new(0x38uLL);
v242 = *(v5 + 38);
v243 = *(v5 + 44);
v244 = *(v5 + 63);
v245 = v241;
PlayerJudgeStartRolling::PlayerJudgeStartRolling();
*(v5 + 142) = v245;
v246 = operator new(0x20uLL);
PlayerJudgeStartSquat::PlayerJudgeStartSquat(v246, *(v5 + 39), *(v5 + 58), *(v5 + 63));
*(v5 + 144) = v246;
v247 = operator new(0x88uLL);
v248 = *(v5 + 44);
v249 = *(v5 + 63);
v250 = *(v5 + 75);
v251 = v247;
v252 = *(v5 + 38);
v253 = *(v5 + 40);
v254 = *(v5 + 40);
PlayerJudgeWallCatch::PlayerJudgeWallCatch(v247, v5);
*(v5 + 154) = v251;
v255 = operator new(0xA8uLL);
v256 = *(v5 + 38);
v257 = *(v5 + 44);
v258 = *(v5 + 63);
v259 = *(v5 + 75);
v260 = v255;
v261 = *(v5 + 58);
PlayerJudgeWallCatchInputDir::PlayerJudgeWallCatchInputDir(v255, v5);
*(v5 + 155) = v260;
v262 = operator new(0x28uLL);
v263 = *(v5 + 38);
v264 = *(v5 + 40);
v265 = v262;
PlayerJudgeWallHitDown::PlayerJudgeWallHitDown();
*(v5 + 156) = v265;
v266 = operator new(0x30uLL);
v267 = *(v5 + 38);
v268 = *(v5 + 58);
v269 = *(v5 + 40);
v270 = v266;
PlayerJudgeWallHitDownForceRun::PlayerJudgeWallHitDownForceRun();
*(v5 + 157) = v270;
v271 = operator new(0x28uLL);
v272 = *(v5 + 38);
v273 = *(v5 + 40);
v274 = v271;
PlayerJudgeWallHitDownRolling::PlayerJudgeWallHitDownRolling();
*(v5 + 158) = v274;
v275 = operator new(0x68uLL);
v276 = *(v5 + 44);
v277 = *(v5 + 61);
v278 = *(v5 + 40);
v279 = v275;
v280 = *(v5 + 40);
v281 = *(v5 + 61);
PlayerJudgeWallKeep::PlayerJudgeWallKeep(v275, v5, *(v5 + 38), *(v5 + 39));
*(v5 + 159) = v279;
v282 = operator new(0x28uLL);
v283 = *(v5 + 39);
v284 = v282;
PlayerJudgeCameraSubjective::PlayerJudgeCameraSubjective();
*(v5 + 121) = v284;
v285 = operator new(0x110uLL);
PlayerSpinCapAttack::PlayerSpinCapAttack(v285, *(v5 + 41), *(v5 + 38), *(v5 + 40), *(v5 + 39), v112, *(v5 + 149));
*(v5 + 69) = v285;
v286 = operator new(0x20uLL);
v287 = *(v5 + 44);
v288 = *(v5 + 45);
v289 = *(v5 + 63);
v290 = v286;
v291 = operator new(0x28uLL);
v292 = *(v5 + 38);
v293 = v291;
PlayerJudgeDiveInWater::PlayerJudgeDiveInWater();
PlayerActionDiveInWater::PlayerActionDiveInWater(v290, v288, v287, v289, v293);
*(v5 + 70) = v290;
v294 = operator new(0x18uLL);
v295 = *(v5 + 135);
v296 = *(v5 + 40);
v297 = v294;
PlayerJudgeForceLand::PlayerJudgeForceLand();
*(v5 + 126) = v297;
v298 = operator new(0x28uLL);
v299 = *(v5 + 130);
v300 = *(v5 + 133);
v301 = v298;
PlayerJudgeOutInWater::PlayerJudgeOutInWater();
*(v5 + 136) = v301;
v302 = operator new(0x28uLL);
v303 = *(v5 + 38);
v304 = *(v5 + 127);
v305 = v302;
PlayerJudgePreInputJump::PlayerJudgePreInputJump();
v306 = *(v5 + 47);
*(v5 + 148) = v305;
*(v306 + 88) = v305;
*(*(v5 + 65) + 24LL) = *(v5 + 148);
*(*(v5 + 65) + 32LL) = *(v5 + 150);
v307 = operator new(0x20uLL);
PlayerJudgeStartWaterSurfaceRun::PlayerJudgeStartWaterSurfaceRun(v307, v5, *(v5 + 49), *(v5 + 58));
*(v5 + 145) = v307;
v308 = operator new(0x30uLL);
v309 = *(v5 + 38);
v310 = v308;
PlayerJudgeSpeedCheckFall::PlayerJudgeSpeedCheckFall();
*(v5 + 139) = v310;
v311 = operator new(0x30uLL);
v312 = *(v5 + 38);
v313 = *(v5 + 58);
v314 = *(v5 + 126);
v315 = v311;
PlayerJudgeStartRun::PlayerJudgeStartRun();
*(v5 + 143) = v315;
al::initNerve(v5, off_7101E24A00, 0x1D, v316);
v317 = operator new(0xE8uLL);
v530 = v99;
PlayerStateWait::PlayerStateWait(
v317,
v5,
*(v5 + 38),
v99,
*(v5 + 44),
*(v5 + 76),
*(v5 + 49),
v100,
*(v5 + 126),
*(v5 + 45),
*(v5 + 40),
*(v5 + 54),
*(*(v5 + 76) + 104LL),
*(*(v5 + 76) + 120LL),
v525,
v527);
*(v5 + 91) = v317;
v318 = operator new(0x78uLL);
PlayerStateSandSink::PlayerStateSandSink(
v318,
v5,
*(v5 + 38),
*(v5 + 39),
*(v5 + 40),
*(v5 + 46),
*(v5 + 45),
*(v5 + 143),
*(v5 + 148));
*(v5 + 107) = v318;
v319 = operator new(0x38uLL);
ActorStateSandGeyser::ActorStateSandGeyser(v319, v5);
*(v5 + 108) = v319;
v320 = operator new(0xB0uLL);
v321 = *(*(v5 + 76) + 80LL);
PlayerStateSpinCap::PlayerStateSpinCap(
v320,
v5,
*(v5 + 38),
*(v5 + 39),
*(v5 + 58),
*(v5 + 49),
*(v5 + 46),
*(v5 + 40),
*(v5 + 69),
*(v5 + 45));
*(v5 + 96) = v320;
v322 = operator new(0x78uLL);
PlayerStateSquat::PlayerStateSquat(
v322,
v5,
*(v5 + 38),
*(v5 + 45),
*(v5 + 39),
v99,
*(v5 + 44),
*(v5 + 40),
*(v5 + 144),
*(v5 + 143),
*(v5 + 125),
v323);
*(v5 + 92) = v322;
v324 = operator new(0x78uLL);
LOBYTE(v325) = v535;
PlayerStateRunHakoniwa2D3D::PlayerStateRunHakoniwa2D3D(
v324,
v5,
*(v5 + 38),
v533,
*(v5 + 39),
v99,
*(v5 + 49),
*(v5 + 58),
*(v5 + 60),
*(v5 + 40),
*(v5 + 45),
*(v5 + 71),
*(*(v5 + 76) + 104LL),
v325,
v326);
*(v5 + 93) = v324;
v327 = operator new(0x50uLL);
v328 = *(v5 + 38);
v329 = *(v5 + 45);
v330 = v327;
PlayerStateSlope::PlayerStateSlope();
*(v5 + 94) = v330;
v331 = operator new(0xB8uLL);
PlayerStateRolling::PlayerStateRolling(
v331,
v5,
*(v5 + 38),
*(v5 + 39),
v99,
*(v5 + 40),
*(v5 + 45),
*(v5 + 71),
*(v5 + 142),
*(v5 + 125),
*(v5 + 148),
*(v5 + 149),
*(v5 + 128),
*(v5 + 56),
*(v5 + 88),
v332);
*(v5 + 95) = v331;
v333 = operator new(0x100uLL);
v334 = *(v5 + 44);
v335 = *(v5 + 38);
v336 = *(v5 + 39);
v337 = v333;
v338 = *(v5 + 67);
v339 = operator new(0x18uLL);
v340 = v339;
PlayerJudgeCapCatch::PlayerJudgeCapCatch(v339, v5, v170);
v341 = *(v5 + 58);
v342 = *(v5 + 76);
v343 = *(v5 + 45);
v344 = *(v5 + 46);
v345 = *(v5 + 55);
v346 = *(v5 + 70);
v347 = *(v5 + 40);
v348 = *(v5 + 41);
v349 = operator new(0x30uLL);
HackCapJudgeHoldHoveringJump::HackCapJudgeHoldHoveringJump(v349, v5, v344, v348, *(v5 + 39), *(v5 + 38));
LOBYTE(v528) = v535;
PlayerStateJump::PlayerStateJump(
v337,
v5,
v335,
v334,
v533,
v336,
v338,
v340,
v341,
v342,
v344,
v347,
v345,
v343,
v346,
v348,
v349,
v528,
v529,
v342);
*(v5 + 97) = v337;
v350 = operator new(0x48uLL);
v351 = *(v5 + 38);
v352 = *(v5 + 45);
v353 = *(v5 + 41);
v354 = v350;
PlayerStateCapCatchPop::PlayerStateCapCatchPop();
*(v5 + 98) = v354;
v355 = operator new(0x58uLL);
PlayerStateWallAir::PlayerStateWallAir(
v355,
v5,
*(v5 + 38),
*(v5 + 39),
*(v5 + 40),
*(v5 + 46),
*(v5 + 159),
*(v5 + 148),
*(v5 + 45),
*(v5 + 61));
*(v5 + 99) = v355;
v356 = operator new(0xB8uLL);
v357 = *(v5 + 38);
v358 = *(v5 + 39);
v359 = (*(*v5 + 248LL))(v5);
v360 = *(v5 + 46);
if ( v360 )
v361 = v360 + 8;
else
v361 = 0;
PlayerStateWallCatch::PlayerStateWallCatch(
v356,
v5,
v357,
v358,
v359,
v361,
*(v5 + 43),
*(v5 + 48),
*(v5 + 45),
*(v5 + 40),
*(v5 + 148),
*(*(v5 + 76) + 88LL));
*(v5 + 100) = v356;
v362 = operator new(0xC8uLL);
v363 = *(v5 + 43);
v364 = *(v5 + 38);
v365 = *(v5 + 39);
v366 = *(v5 + 40);
v367 = v362;
v368 = (*(*v5 + 248LL))(v5);
v369 = *(*(v5 + 76) + 88LL);
PlayerStateGrabCeil::PlayerStateGrabCeil(v367, v5, v364, v365, v363, v366, v368, *(v5 + 45), *(v5 + 148), *(v5 + 89));
*(v5 + 101) = v367;
v370 = operator new(0xC0uLL);
v371 = *(v5 + 40);
v372 = *(v5 + 38);
v373 = *(v5 + 39);
v374 = *(v5 + 43);
v375 = v370;
v376 = (*(*v5 + 248LL))(v5);
PlayerStatePoleClimb::PlayerStatePoleClimb(
v375,
v5,
v372,
v373,
v371,
v374,
v376,
*(v5 + 45),
*(v5 + 61),
*(*(v5 + 76) + 96LL),
*(v5 + 148),
*(v5 + 70),
v524);
*(v5 + 102) = v375;
v377 = operator new(0x60uLL);
v378 = *(v5 + 38);
v379 = *(v5 + 40);
v380 = *(v5 + 45);
v381 = v377;
PlayerStateHipDrop::PlayerStateHipDrop();
*(v5 + 103) = v381;
v382 = operator new(0x50uLL);
v383 = *(v5 + 38);
v384 = *(v5 + 70);
v385 = *(v5 + 45);
v386 = v382;
PlayerStateHeadSliding::PlayerStateHeadSliding();
*(v5 + 104) = v386;
v387 = operator new(0x58uLL);
PlayerStateLongJump::PlayerStateLongJump(
v387,
v5,
*(v5 + 38),
*(v5 + 39),
v530,
*(v5 + 40),
*(v5 + 45),
*(v5 + 56),
*(v5 + 70));
*(v5 + 105) = v387;
v388 = operator new(0x80uLL);
PlayerStateFallHakoniwa::PlayerStateFallHakoniwa(
v388,
v5,
*(v5 + 38),
v530,
*(v5 + 39),
*(v5 + 40),
*(v5 + 48),
v533,
*(v5 + 45));
*(v5 + 106) = v388;
v389 = operator new(0x38uLL);
v390 = *(v5 + 38);
v391 = *(v5 + 45);
v392 = v389;
PlayerStateRise::PlayerStateRise();
*(v5 + 109) = v392;
v393 = operator new(0x118uLL);
PlayerStateSwim::PlayerStateSwim(
v393,
v5,
*(v5 + 38),
v530,
*(v5 + 39),
*(v5 + 40),
*(v5 + 63),
*(v5 + 43),
*(v5 + 75),
*(v5 + 45),
*(v5 + 69),
*(v5 + 49),
*(v5 + 71),
*(*(v5 + 76) + 112LL),
v526);
*(v5 + 110) = v393;
v394 = operator new(0x68uLL);
v395 = *(v5 + 38);
v396 = *(v5 + 45);
v397 = *(v5 + 40);
v398 = v394;
PlayerStateDamageLife::PlayerStateDamageLife();
*(v5 + 111) = v398;
v399 = operator new(0x70uLL);
PlayerStateDamageSwim::PlayerStateDamageSwim(
v399,
v5,
*(v5 + 38),
v530,
*(v5 + 39),
*(v5 + 40),
*(v5 + 45),
*(v5 + 49),
*(v5 + 71),
*(v5 + 130));
*(v5 + 112) = v399;
v400 = operator new(0x68uLL);
v401 = *(v5 + 38);
v402 = *(v5 + 45);
v403 = *(v5 + 139);
v404 = v400;
PlayerStateDamageFire::PlayerStateDamageFire();
*(v5 + 113) = v404;
v405 = operator new(0x60uLL);
v406 = *(v5 + 45);
v407 = v405;
PlayerStatePress::PlayerStatePress();
*(v5 + 114) = v407;
v408 = operator new(0x40uLL);
v409 = *(v5 + 38);
v410 = *(v5 + 47);
v411 = *(v5 + 40);
v412 = v408;
PlayerStateBind::PlayerStateBind();
*(v5 + 115) = v412;
v413 = operator new(0xD0uLL);
v414 = *(v5 + 65);
v415 = *(v5 + 44);
v416 = *(v5 + 41);
v417 = v413;
PlayerStateHack::PlayerStateHack();
*(v5 + 116) = v417;
v418 = operator new(0x60uLL);
v419 = *(v5 + 38);
v420 = *(v5 + 40);
v421 = *(v5 + 45);
v422 = v418;
PlayerStateEndHack::PlayerStateEndHack();
*(v5 + 117) = v422;
v423 = operator new(0x60uLL);
PlayerStateCameraSubjective::PlayerStateCameraSubjective(
v423,
v5,
*(*(v5 + 121) + 32LL),
*(v5 + 44),
*(v5 + 63),
*(v5 + 45),
*(v5 + 38),
v530,
*(v5 + 39));
*(v5 + 118) = v423;
v424 = operator new(0x40uLL);
v425 = *(v5 + 38);
v426 = *(v5 + 78);
v427 = *(v5 + 45);
v428 = *(v5 + 46);
v429 = PlayerModelHolder::findModelActor(*(v5 + 43), "Normal2D");
PlayerStateAbyss::PlayerStateAbyss(v424, v5, v425, v426, v428, v427, v429);
v430 = *(v5 + 91);
*(v5 + 119) = v424;
al::initNerveState(v5, v430, off_7101E24A08, &unk_71018C059E);
al::initNerveState(v5, *(v5 + 92), off_7101E24A10, &unk_71018D0EB1);
al::initNerveState(v5, *(v5 + 93), off_7101E24A18, &unk_71018AEB3F);
al::initNerveState(v5, *(v5 + 94), off_7101E24A20, &unk_71018D0EBE);
al::initNerveState(v5, *(v5 + 95), off_7101E24A28, &unk_71018D0ECB);
al::initNerveState(v5, *(v5 + 96), off_7101E24A30, &unk_71018D0EDB);
al::initNerveState(v5, *(v5 + 97), off_7101E24A38, &unk_71018B0EDD);
al::initNerveState(v5, *(v5 + 98), off_7101E24A40, &unk_71018D0EEB);
al::initNerveState(v5, *(v5 + 99), off_7101E24A48, &unk_71018D0F0D);
al::initNerveState(v5, *(v5 + 100), off_7101E24A50, &unk_71018D0F1F);
al::initNerveState(v5, *(v5 + 101), off_7101E24A58, &unk_71018D0F2F);
al::initNerveState(v5, *(v5 + 102), off_7101E24A60, &unk_71018D0F45);
al::initNerveState(v5, *(v5 + 103), off_7101E24A68, &unk_71018AF296);
al::initNerveState(v5, *(v5 + 104), off_7101E24A70, &unk_71018D0F5B);
al::initNerveState(v5, *(v5 + 105), off_7101E24A78, &unk_71018D0F7A);
al::initNerveState(v5, *(v5 + 106), off_7101E24A00, &unk_71018AC8BA);
al::initNerveState(v5, *(v5 + 107), off_7101E24A80, &unk_71018D0F84);
al::initNerveState(v5, *(v5 + 108), off_7101E24A88, "砂の間欠泉");
al::initNerveState(v5, *(v5 + 109), off_7101E24A90, &unk_71018D0F8E);
al::initNerveState(v5, *(v5 + 110), off_7101E24A98, &unk_71018D0F9E);
al::initNerveState(v5, *(v5 + 111), off_7101E24AA0, "ダメージ");
al::initNerveState(v5, *(v5 + 112), off_7101E24AA8, &unk_71018D0FA5);
al::initNerveState(v5, *(v5 + 113), off_7101E24AB0, &unk_71018D0FC1);
al::initNerveState(v5, *(v5 + 114), off_7101E24AB8, &unk_71018D0FD7);
al::initNerveState(v5, *(v5 + 116), off_7101E24AC0, &unk_71018AD4BD);
al::initNerveState(v5, *(v5 + 117), off_7101E24AC8, &unk_71018D0FDE);
al::initNerveState(v5, *(v5 + 115), off_7101E24AD0, &unk_71018D0FEB);
al::initNerveState(v5, *(v5 + 118), off_7101E24AD8, &unk_71018D0FF8);
al::initNerveState(v5, *(v5 + 119), off_7101E24AE0, &unk_71018D1008);
*(*(v5 + 64) + 48LL) = *(v5 + 95);
v431 = operator new(0x1CuLL);
PlayerOxygen::PlayerOxygen(v431);
v432 = *(v5 + 38);
*(v5 + 50) = v431;
v433 = (*(*v432 + 4112LL))();
v434 = (*(**(v5 + 38) + 4104LL))();
LODWORD(v428) = (*(**(v5 + 38) + 4120LL))();
v435 = (*(**(v5 + 38) + 4128LL))();
PlayerOxygen::setup(v431, v433, v434, v428, v435);
PlayerOxygen::reset(*(v5 + 50));
v436 = operator new(0x48uLL);
v437 = *(v5 + 48);
v438 = *(v5 + 58);
PlayerJudgeInWater::PlayerJudgeInWater(v436, v5, *(v5 + 38));
v439 = operator new(0x38uLL);
v440 = *(v5 + 38);
v441 = *(v5 + 46);
v442 = v439;
PlayerCounterIceWater::PlayerCounterIceWater();
*(v5 + 59) = v442;
v443 = operator new(0x88uLL);
v444 = PlayerModelHolder::findModelActor(*(v5 + 43), "Normal");
PlayerStainControl::PlayerStainControl(v443, v5, v444, *(v5 + 44), *(v5 + 41), *(v5 + 71));
*(v5 + 82) = v443;
v445 = operator new(0x50uLL);
v446 = *(v5 + 51);
v447 = *(v5 + 62);
v448 = *(v5 + 39);
v449 = v445;
v450 = *(v5 + 65);
v451 = *(v5 + 91);
v452 = *(v5 + 110);
PlayerJudgeRecoveryLifeFast::PlayerJudgeRecoveryLifeFast(v445, v5);
*(v5 + 137) = v449;
v453 = operator new(0x168uLL);
PlayerInfo::PlayerInfo(v453);
v454 = *(v5 + 44);
*(v5 + 37) = v453;
*v453 = v454;
*(v453 + 1) = *(v5 + 50);
*(v453 + 4) = *(v5 + 62);
*(*(v5 + 37) + 40LL) = *(v5 + 51);
*(*(v5 + 37) + 48LL) = *(v5 + 52);
*(*(v5 + 37) + 56LL) = *(v5 + 64);
*(*(v5 + 37) + 64LL) = *(v5 + 41);
*(*(v5 + 37) + 72LL) = *(v5 + 86);
*(*(v5 + 37) + 128LL) = *(v5 + 66);
*(*(v5 + 37) + 24LL) = *(v5 + 45);
*(*(v5 + 37) + 136LL) = *(v5 + 39);
*(*(v5 + 37) + 152LL) = *(v5 + 43);
v455 = *(v5 + 46);
if ( v455 )
v456 = v455 + 8;
else
v456 = 0LL;
*(*(v5 + 37) + 144LL) = v456;
*(*(v5 + 37) + 160LL) = *(v5 + 65);
*(*(v5 + 37) + 168LL) = *(v5 + 54);
*(*(v5 + 37) + 80LL) = *(v5 + 63);
*(*(v5 + 37) + 88LL) = *(v5 + 76);
*(*(v5 + 37) + 96LL) = *(v5 + 59);
*(*(v5 + 37) + 104LL) = *(v5 + 82);
*(*(v5 + 37) + 112LL) = *(v5 + 83);
*(*(v5 + 37) + 120LL) = *(v5 + 89);
*(*(v5 + 37) + 176LL) = *(v5 + 78);
*(*(v5 + 37) + 184LL) = v532;
v457 = *(v5 + 37);
v458 = operator new(0x20uLL);
v459 = *(v5 + 130);
v460 = *(v5 + 49);
v461 = v458;
PlayerJudgeCameraInWater::PlayerJudgeCameraInWater();
*(v457 + 192) = v461;
v462 = *(v5 + 37);
v463 = operator new(0x10uLL);
PlayerJudgeActiveCameraSubjective::PlayerJudgeActiveCameraSubjective(v463, *(v5 + 118));
*(v462 + 264) = v463;
v464 = operator new(0x48uLL);
v465 = *(v5 + 44);
v466 = *(v5 + 65);
v467 = *(v5 + 63);
v468 = v464;
v469 = *(v5 + 38);
v470 = *(v5 + 91);
PlayerJudgeTalkGround::PlayerJudgeTalkGround(v464);
*(*(v5 + 37) + 200LL) = v468;
v471 = operator new(0x20uLL);
PlayerJudgeTalkSwim::PlayerJudgeTalkSwim(v471, *(v5 + 65), *(v5 + 63), *(v5 + 110));
*(*(v5 + 37) + 208LL) = v471;
v472 = operator new(0x10uLL);
PlayerJudgeDead::PlayerJudgeDead(v472, v5);
*(*(v5 + 37) + 216LL) = v472;
*(*(v5 + 37) + 224LL) = *(v5 + 123);
v473 = *(v5 + 37);
v474 = operator new(0x18uLL);
PlayerJudgeDrawForward::PlayerJudgeDrawForward(v474, v5, *(v5 + 123));
*(v473 + 232) = v474;
v475 = *(v5 + 37);
v476 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
*(v475 + 240) = v476;
v477 = *(v5 + 37);
v478 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
*(v477 + 248) = v478;
v479 = *(v5 + 37);
v480 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
*(v479 + 256) = v480;
v481 = *(v5 + 37);
v482 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
*(v481 + 272) = v482;
v483 = *(v5 + 37);
v484 = operator new(0x18uLL);
v485 = *(v5 + 39);
v486 = v484;
v487 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
PlayerJudgeFailureCameraSubjective::PlayerJudgeFailureCameraSubjective(v486, v485, v487);
*(v483 + 280) = v486;
v488 = *(v5 + 37);
v489 = operator new(0x18uLL);
v490 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
PlayerJudgeSafetyPointRecovery::PlayerJudgeSafetyPointRecovery(v489, v490, *(v5 + 119));
*(v488 + 288) = v489;
v491 = *(v5 + 37);
v492 = operator new(0x18uLL);
v493 = operator new(0x18uLL);
PlayerJudgeSameNerve::PlayerJudgeSameNerve();
PlayerJudgeStatusPoleClimb::PlayerJudgeStatusPoleClimb(v492, v493, *(v5 + 102));
*(v491 + 296) = v492;
v494 = *(v5 + 37);
v495 = operator new(0x10uLL);
PlayerJudgePlaySwitchOnAreaWaitAnim::PlayerJudgePlaySwitchOnAreaWaitAnim(v495, *(v5 + 91));
*(v494 + 304) = v495;
v496 = *(v5 + 37);
v497 = operator new(0x10uLL);
PlayerJudgeSleep::PlayerJudgeSleep(v497, *(v5 + 91));
*(v496 + 312) = v497;
v498 = *(v5 + 37);
v499 = operator new(0x10uLL);
PlayerJudgeEnableGuideArrow::PlayerJudgeEnableGuideArrow(v499, *(v5 + 47));
*(v498 + 320) = v499;
v500 = *(v5 + 37);
v501 = operator new(0x10uLL);
PlayerJudgeEnablePeachAmiibo::PlayerJudgeEnablePeachAmiibo(v501, *(v5 + 113));
*(v500 + 328) = v501;
v502 = *(v5 + 37);
v503 = operator new(0x30uLL);
v504 = *(v5 + 130);
v505 = *(v5 + 49);
v506 = *(v5 + 100);
v507 = v503;
v508 = *(v5 + 102);
PlayerJudgeEnablePlacementBalloon::PlayerJudgeEnablePlacementBalloon();
*(v502 + 336) = v507;
v509 = *(v5 + 37);
v510 = operator new(0x48uLL);
v511 = *(v5 + 62);
v512 = *(v5 + 39);
v513 = *(v5 + 65);
v514 = v510;
v515 = *(v5 + 91);
v516 = *(v5 + 110);
PlayerJudgeEnableBalloonGuideArrow::PlayerJudgeEnableBalloonGuideArrow(v510);
*(v509 + 344) = v514;
*(*(v5 + 37) + 352LL) = v535;
CapFunction::putOnCapPlayer(*(v5 + 41), *(v5 + 45), v517);
PlayerActorHakoniwa::syncSensorAndCollision(v5);
(*(*v5 + 32LL))(v5);
rs::resetCollision(*(v5 + 46));
v518 = operator new(0x130uLL);
v520 = al::getLayoutInitInfo(v531, v519);
GaugeAir::GaugeAir(v518, &unk_71018D1012, v520);
v521 = *(v5 + 37);
*(v5 + 84) = v518;
*(v521 + 16) = v518;
v522 = operator new(0x20uLL);
WaterSurfaceShadow::WaterSurfaceShadow(v522, v531, "WaterSurfaceShadow");
*(v5 + 85) = v522;
*(v522 + 24) = 1061158912;
*(v522 + 16) = 4503599628523634688LL;
return WaterSurfaceShadow::setScale(v522, 0.5);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment