mirror of https://github.com/zeldaret/tp.git
Kytag00 / Vrbox2 work, some cphase / kankyo doc (#1886)
* kytag00 work * d_a_vrbox2 close to done * rename cPhase enum values * some enums from noclip / kankyo doc * remove asm * use macro * uncomment ok-check.yml
This commit is contained in:
parent
7fd7d0c1f3
commit
114582643f
|
@ -37,47 +37,47 @@ jobs:
|
|||
run: |
|
||||
./tp progress -f JSON > progress-${{ github.run_id }}.json
|
||||
./tp upload-progress progress-${{ github.run_id }}.json -b https://progress.deco.mp/ -p twilightprincess -v gcn_usa
|
||||
# - name: Get changed .c, .cpp, .inc files
|
||||
# if: github.event_name != 'pull_request'
|
||||
# id: changed-files-specific
|
||||
# uses: tj-actions/changed-files@v36
|
||||
# with:
|
||||
# files: |
|
||||
# **/*.{c,cpp,inc}
|
||||
# - name: Update Issue(s)
|
||||
# if: github.event_name != 'pull_request' && steps.changed-files-specific.outputs.any_changed == 'true'
|
||||
# run: |
|
||||
# # Install libclang-16-dev for FunctionChecker
|
||||
# wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
# sudo add-apt-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-16 main"
|
||||
# sudo apt update
|
||||
# sudo apt install -y libclang-16-dev
|
||||
- name: Get changed .c, .cpp, .inc files
|
||||
if: github.event_name != 'pull_request'
|
||||
id: changed-files-specific
|
||||
uses: tj-actions/changed-files@v36
|
||||
with:
|
||||
files: |
|
||||
**/*.{c,cpp,inc}
|
||||
- name: Update Issue(s)
|
||||
if: github.event_name != 'pull_request' && steps.changed-files-specific.outputs.any_changed == 'true'
|
||||
run: |
|
||||
# Install libclang-16-dev for FunctionChecker
|
||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
||||
sudo add-apt-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-16 main"
|
||||
sudo apt update
|
||||
sudo apt install -y libclang-16-dev
|
||||
|
||||
# FILENAMES="${{ steps.changed-files-specific.outputs.all_changed_files }}"
|
||||
# CMD="./tp github-update-issues --personal-access-token ${{ secrets.PAT_TOKEN }} --debug --owner ${{ env.GITHUB_ORG }} --repo ${{ env.GITHUB_REPO }} --state-file ${{ env.STATE_FILE }}"
|
||||
FILENAMES="${{ steps.changed-files-specific.outputs.all_changed_files }}"
|
||||
CMD="./tp github-update-issues --personal-access-token ${{ secrets.PAT_TOKEN }} --debug --owner ${{ env.GITHUB_ORG }} --repo ${{ env.GITHUB_REPO }} --state-file ${{ env.STATE_FILE }}"
|
||||
|
||||
# IFS=' ' read -ra FILE_ARRAY <<< "$FILENAMES"
|
||||
# INC_FOUND=false
|
||||
IFS=' ' read -ra FILE_ARRAY <<< "$FILENAMES"
|
||||
INC_FOUND=false
|
||||
|
||||
# # Remove any .inc files from the array
|
||||
# for index in "${!FILE_ARRAY[@]}"; do
|
||||
# if [[ "${FILE_ARRAY[index]}" == *.inc ]]; then
|
||||
# unset 'FILE_ARRAY[index]'
|
||||
# INC_FOUND=true
|
||||
# fi
|
||||
# done
|
||||
# Remove any .inc files from the array
|
||||
for index in "${!FILE_ARRAY[@]}"; do
|
||||
if [[ "${FILE_ARRAY[index]}" == *.inc ]]; then
|
||||
unset 'FILE_ARRAY[index]'
|
||||
INC_FOUND=true
|
||||
fi
|
||||
done
|
||||
|
||||
# # If any .inc files were found,
|
||||
# # We will add "src/d/a/d_a_alink.cpp" to the array once
|
||||
# # if it's not already there
|
||||
# if $INC_FOUND && ! [[ " ${FILE_ARRAY[@]} " =~ " src/d/a/d_a_alink.cpp " ]]; then
|
||||
# FILE_ARRAY+=("src/d/a/d_a_alink.cpp")
|
||||
# fi
|
||||
# If any .inc files were found,
|
||||
# We will add "src/d/a/d_a_alink.cpp" to the array once
|
||||
# if it's not already there
|
||||
if $INC_FOUND && ! [[ " ${FILE_ARRAY[@]} " =~ " src/d/a/d_a_alink.cpp " ]]; then
|
||||
FILE_ARRAY+=("src/d/a/d_a_alink.cpp")
|
||||
fi
|
||||
|
||||
# for FILE in "${FILE_ARRAY[@]}"; do
|
||||
# AUTHOR=$(git log -1 --pretty=format:'%an' -- $FILE)
|
||||
# CMD="$CMD --filename $FILE --author $AUTHOR"
|
||||
# done
|
||||
for FILE in "${FILE_ARRAY[@]}"; do
|
||||
AUTHOR=$(git log -1 --pretty=format:'%an' -- $FILE)
|
||||
CMD="$CMD --filename $FILE --author $AUTHOR"
|
||||
done
|
||||
|
||||
# # Update the status and assignees for every issue identified
|
||||
# $CMD
|
||||
# Update the status and assignees for every issue identified
|
||||
$CMD
|
|
@ -1,20 +0,0 @@
|
|||
lbl_80499A1C:
|
||||
/* 80499A1C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80499A20 7C 08 02 A6 */ mflr r0
|
||||
/* 80499A24 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80499A28 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80499A2C 7C 7F 1B 79 */ or. r31, r3, r3
|
||||
/* 80499A30 41 82 00 1C */ beq lbl_80499A4C
|
||||
/* 80499A34 3C A0 80 4A */ lis r5, __vt__12J3DFrameCtrl@ha /* 0x80499B68@ha */
|
||||
/* 80499A38 38 05 9B 68 */ addi r0, r5, __vt__12J3DFrameCtrl@l /* 0x80499B68@l */
|
||||
/* 80499A3C 90 1F 00 00 */ stw r0, 0(r31)
|
||||
/* 80499A40 7C 80 07 35 */ extsh. r0, r4
|
||||
/* 80499A44 40 81 00 08 */ ble lbl_80499A4C
|
||||
/* 80499A48 4B E3 52 F5 */ bl __dl__FPv
|
||||
lbl_80499A4C:
|
||||
/* 80499A4C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80499A50 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80499A54 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80499A58 7C 08 03 A6 */ mtlr r0
|
||||
/* 80499A5C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80499A60 4E 80 00 20 */ blr
|
|
@ -1,45 +0,0 @@
|
|||
lbl_80499978:
|
||||
/* 80499978 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8049997C 7C 08 02 A6 */ mflr r0
|
||||
/* 80499980 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80499984 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80499988 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 8049998C 7C 7E 1B 78 */ mr r30, r3
|
||||
/* 80499990 80 03 04 A0 */ lwz r0, 0x4a0(r3)
|
||||
/* 80499994 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
|
||||
/* 80499998 40 82 00 40 */ bne lbl_804999D8
|
||||
/* 8049999C 7F C0 F3 79 */ or. r0, r30, r30
|
||||
/* 804999A0 41 82 00 2C */ beq lbl_804999CC
|
||||
/* 804999A4 7C 1F 03 78 */ mr r31, r0
|
||||
/* 804999A8 4B B7 F1 BD */ bl __ct__10fopAc_ac_cFv
|
||||
/* 804999AC 3C 60 80 4A */ lis r3, __vt__12J3DFrameCtrl@ha /* 0x80499B68@ha */
|
||||
/* 804999B0 38 03 9B 68 */ addi r0, r3, __vt__12J3DFrameCtrl@l /* 0x80499B68@l */
|
||||
/* 804999B4 94 1F 05 80 */ stwu r0, 0x580(r31)
|
||||
/* 804999B8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 804999BC 38 80 00 00 */ li r4, 0
|
||||
/* 804999C0 4B E8 EA 3D */ bl init__12J3DFrameCtrlFs
|
||||
/* 804999C4 38 00 00 00 */ li r0, 0
|
||||
/* 804999C8 90 1F 00 14 */ stw r0, 0x14(r31)
|
||||
lbl_804999CC:
|
||||
/* 804999CC 80 1E 04 A0 */ lwz r0, 0x4a0(r30)
|
||||
/* 804999D0 60 00 00 08 */ ori r0, r0, 8
|
||||
/* 804999D4 90 1E 04 A0 */ stw r0, 0x4a0(r30)
|
||||
lbl_804999D8:
|
||||
/* 804999D8 3B E0 00 04 */ li r31, 4
|
||||
/* 804999DC 7F C3 F3 78 */ mr r3, r30
|
||||
/* 804999E0 3C 80 80 4A */ lis r4, daVrbox2_solidHeapCB__FP10fopAc_ac_c@ha /* 0x8049983C@ha */
|
||||
/* 804999E4 38 84 98 3C */ addi r4, r4, daVrbox2_solidHeapCB__FP10fopAc_ac_c@l /* 0x8049983C@l */
|
||||
/* 804999E8 3C A0 80 00 */ lis r5, 0x8000 /* 0x80004340@ha */
|
||||
/* 804999EC 38 A5 43 40 */ addi r5, r5, 0x4340 /* 0x80004340@l */
|
||||
/* 804999F0 4B B8 0A C1 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl
|
||||
/* 804999F4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
||||
/* 804999F8 40 82 00 08 */ bne lbl_80499A00
|
||||
/* 804999FC 3B E0 00 05 */ li r31, 5
|
||||
lbl_80499A00:
|
||||
/* 80499A00 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80499A04 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80499A08 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 80499A0C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80499A10 7C 08 03 A6 */ mtlr r0
|
||||
/* 80499A14 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80499A18 4E 80 00 20 */ blr
|
|
@ -1,19 +0,0 @@
|
|||
lbl_804997E8:
|
||||
/* 804997E8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 804997EC 7C 08 02 A6 */ mflr r0
|
||||
/* 804997F0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 804997F4 3C 80 80 43 */ lis r4, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 804997F8 38 84 CA 54 */ addi r4, r4, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 804997FC C0 24 12 44 */ lfs f1, 0x1244(r4)
|
||||
/* 80499800 3C 80 80 4A */ lis r4, lit_3837@ha /* 0x80499A7C@ha */
|
||||
/* 80499804 C0 04 9A 7C */ lfs f0, lit_3837@l(r4) /* 0x80499A7C@l */
|
||||
/* 80499808 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8049980C 40 81 00 0C */ ble lbl_80499818
|
||||
/* 80499810 38 63 05 80 */ addi r3, r3, 0x580
|
||||
/* 80499814 4B B7 3C 15 */ bl play__14mDoExt_baseAnmFv
|
||||
lbl_80499818:
|
||||
/* 80499818 38 60 00 01 */ li r3, 1
|
||||
/* 8049981C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80499820 7C 08 03 A6 */ mtlr r0
|
||||
/* 80499824 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80499828 4E 80 00 20 */ blr
|
|
@ -1,84 +0,0 @@
|
|||
lbl_8049983C:
|
||||
/* 8049983C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80499840 7C 08 02 A6 */ mflr r0
|
||||
/* 80499844 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80499848 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8049984C 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 80499850 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80499854 3C 60 80 4A */ lis r3, d_a_vrbox2__stringBase0@ha /* 0x80499AC4@ha */
|
||||
/* 80499858 38 63 9A C4 */ addi r3, r3, d_a_vrbox2__stringBase0@l /* 0x80499AC4@l */
|
||||
/* 8049985C 38 63 00 17 */ addi r3, r3, 0x17
|
||||
/* 80499860 4B B9 5B D5 */ bl dComIfG_getStageRes__FPCc
|
||||
/* 80499864 3C 80 00 08 */ lis r4, 8
|
||||
/* 80499868 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020202@ha */
|
||||
/* 8049986C 38 A5 02 02 */ addi r5, r5, 0x0202 /* 0x11020202@l */
|
||||
/* 80499870 4B B7 B3 E5 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
||||
/* 80499874 90 7F 05 6C */ stw r3, 0x56c(r31)
|
||||
/* 80499878 3C 60 80 4A */ lis r3, d_a_vrbox2__stringBase0@ha /* 0x80499AC4@ha */
|
||||
/* 8049987C 38 63 9A C4 */ addi r3, r3, d_a_vrbox2__stringBase0@l /* 0x80499AC4@l */
|
||||
/* 80499880 38 63 00 26 */ addi r3, r3, 0x26
|
||||
/* 80499884 4B B9 5B B1 */ bl dComIfG_getStageRes__FPCc
|
||||
/* 80499888 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 8049988C 41 82 00 78 */ beq lbl_80499904
|
||||
/* 80499890 3C 80 00 08 */ lis r4, 8
|
||||
/* 80499894 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020202@ha */
|
||||
/* 80499898 38 A5 02 02 */ addi r5, r5, 0x0202 /* 0x11020202@l */
|
||||
/* 8049989C 4B B7 B3 B9 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
||||
/* 804998A0 90 7F 05 74 */ stw r3, 0x574(r31)
|
||||
/* 804998A4 7F C3 F3 78 */ mr r3, r30
|
||||
/* 804998A8 3C 80 00 08 */ lis r4, 8
|
||||
/* 804998AC 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020202@ha */
|
||||
/* 804998B0 38 A5 02 02 */ addi r5, r5, 0x0202 /* 0x11020202@l */
|
||||
/* 804998B4 4B B7 B3 A1 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
||||
/* 804998B8 90 7F 05 78 */ stw r3, 0x578(r31)
|
||||
/* 804998BC 3C 60 80 4A */ lis r3, d_a_vrbox2__stringBase0@ha /* 0x80499AC4@ha */
|
||||
/* 804998C0 38 63 9A C4 */ addi r3, r3, d_a_vrbox2__stringBase0@l /* 0x80499AC4@l */
|
||||
/* 804998C4 38 63 00 34 */ addi r3, r3, 0x34
|
||||
/* 804998C8 4B B9 5B 6D */ bl dComIfG_getStageRes__FPCc
|
||||
/* 804998CC 7C 65 1B 78 */ mr r5, r3
|
||||
/* 804998D0 38 7F 05 80 */ addi r3, r31, 0x580
|
||||
/* 804998D4 38 9E 00 58 */ addi r4, r30, 0x58
|
||||
/* 804998D8 38 C0 00 01 */ li r6, 1
|
||||
/* 804998DC 38 E0 00 02 */ li r7, 2
|
||||
/* 804998E0 3D 00 80 4A */ lis r8, lit_3627@ha /* 0x80499A6C@ha */
|
||||
/* 804998E4 C0 28 9A 6C */ lfs f1, lit_3627@l(r8) /* 0x80499A6C@l */
|
||||
/* 804998E8 39 00 00 00 */ li r8, 0
|
||||
/* 804998EC 39 20 FF FF */ li r9, -1
|
||||
/* 804998F0 4B B7 3D 4D */ bl init__13mDoExt_btkAnmFP16J3DMaterialTableP19J3DAnmTextureSRTKeyiifss
|
||||
/* 804998F4 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 804998F8 40 82 00 0C */ bne lbl_80499904
|
||||
/* 804998FC 38 60 00 00 */ li r3, 0
|
||||
/* 80499900 48 00 00 60 */ b lbl_80499960
|
||||
lbl_80499904:
|
||||
/* 80499904 3C 60 80 4A */ lis r3, d_a_vrbox2__stringBase0@ha /* 0x80499AC4@ha */
|
||||
/* 80499908 38 63 9A C4 */ addi r3, r3, d_a_vrbox2__stringBase0@l /* 0x80499AC4@l */
|
||||
/* 8049990C 38 63 00 42 */ addi r3, r3, 0x42
|
||||
/* 80499910 4B B9 5B 25 */ bl dComIfG_getStageRes__FPCc
|
||||
/* 80499914 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80499918 41 82 00 18 */ beq lbl_80499930
|
||||
/* 8049991C 3C 80 00 08 */ lis r4, 8
|
||||
/* 80499920 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020202@ha */
|
||||
/* 80499924 38 A5 02 02 */ addi r5, r5, 0x0202 /* 0x11020202@l */
|
||||
/* 80499928 4B B7 B3 2D */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl
|
||||
/* 8049992C 90 7F 05 98 */ stw r3, 0x598(r31)
|
||||
lbl_80499930:
|
||||
/* 80499930 38 60 00 00 */ li r3, 0
|
||||
/* 80499934 80 1F 05 6C */ lwz r0, 0x56c(r31)
|
||||
/* 80499938 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8049993C 41 82 00 20 */ beq lbl_8049995C
|
||||
/* 80499940 80 1F 05 74 */ lwz r0, 0x574(r31)
|
||||
/* 80499944 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80499948 41 82 00 14 */ beq lbl_8049995C
|
||||
/* 8049994C 80 1F 05 78 */ lwz r0, 0x578(r31)
|
||||
/* 80499950 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80499954 41 82 00 08 */ beq lbl_8049995C
|
||||
/* 80499958 38 60 00 01 */ li r3, 1
|
||||
lbl_8049995C:
|
||||
/* 8049995C 54 63 06 3E */ clrlwi r3, r3, 0x18
|
||||
lbl_80499960:
|
||||
/* 80499960 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80499964 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 80499968 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8049996C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80499970 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80499974 4E 80 00 20 */ blr
|
|
@ -1,19 +0,0 @@
|
|||
lbl_8046C774:
|
||||
/* 8046C774 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8046C778 7C 08 02 A6 */ mflr r0
|
||||
/* 8046C77C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8046C780 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8046C784 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8046C788 4B FF F2 55 */ bl wether_tag_reset__FP13kytag00_class
|
||||
/* 8046C78C 7F E3 FB 78 */ mr r3, r31
|
||||
/* 8046C790 4B FF F6 29 */ bl wether_tag_efect_reset__FP13kytag00_class
|
||||
/* 8046C794 38 00 00 00 */ li r0, 0
|
||||
/* 8046C798 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046C79C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046C7A0 90 03 0E B8 */ stw r0, 0xeb8(r3)
|
||||
/* 8046C7A4 38 60 00 01 */ li r3, 1
|
||||
/* 8046C7A8 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8046C7AC 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8046C7B0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8046C7B4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8046C7B8 4E 80 00 20 */ blr
|
|
@ -1,10 +0,0 @@
|
|||
lbl_8046C660:
|
||||
/* 8046C660 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8046C664 7C 08 02 A6 */ mflr r0
|
||||
/* 8046C668 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8046C66C 4B FF F8 4D */ bl wether_tag_efect_move__FP13kytag00_class
|
||||
/* 8046C670 38 60 00 01 */ li r3, 1
|
||||
/* 8046C674 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8046C678 7C 08 03 A6 */ mtlr r0
|
||||
/* 8046C67C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8046C680 4E 80 00 20 */ blr
|
|
@ -1,6 +0,0 @@
|
|||
lbl_8046BDA4:
|
||||
/* 8046BDA4 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BDA8 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BDAC 80 03 12 9C */ lwz r0, 0x129c(r3)
|
||||
/* 8046BDB0 90 03 0E 80 */ stw r0, 0xe80(r3)
|
||||
/* 8046BDB4 4E 80 00 20 */ blr
|
|
@ -1,19 +0,0 @@
|
|||
lbl_8046BD60:
|
||||
/* 8046BD60 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8046BD64 3C 60 80 47 */ lis r3, lit_3918@ha /* 0x8046C9B8@ha */
|
||||
/* 8046BD68 C0 43 C9 B8 */ lfs f2, lit_3918@l(r3) /* 0x8046C9B8@l */
|
||||
/* 8046BD6C EC 01 00 72 */ fmuls f0, f1, f1
|
||||
/* 8046BD70 EC 01 00 32 */ fmuls f0, f1, f0
|
||||
/* 8046BD74 EC 02 00 32 */ fmuls f0, f2, f0
|
||||
/* 8046BD78 FC 00 00 1E */ fctiwz f0, f0
|
||||
/* 8046BD7C D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 8046BD80 80 81 00 0C */ lwz r4, 0xc(r1)
|
||||
/* 8046BD84 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BD88 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BD8C 80 03 12 9C */ lwz r0, 0x129c(r3)
|
||||
/* 8046BD90 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 8046BD94 40 81 00 08 */ ble lbl_8046BD9C
|
||||
/* 8046BD98 90 83 0E 80 */ stw r4, 0xe80(r3)
|
||||
lbl_8046BD9C:
|
||||
/* 8046BD9C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8046BDA0 4E 80 00 20 */ blr
|
|
@ -1,75 +0,0 @@
|
|||
lbl_8046BDB8:
|
||||
/* 8046BDB8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8046BDBC 7C 08 02 A6 */ mflr r0
|
||||
/* 8046BDC0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8046BDC4 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8046BDC8 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8046BDCC 38 80 00 00 */ li r4, 0
|
||||
/* 8046BDD0 98 83 05 6C */ stb r4, 0x56c(r3)
|
||||
/* 8046BDD4 88 03 05 70 */ lbz r0, 0x570(r3)
|
||||
/* 8046BDD8 28 00 00 12 */ cmplwi r0, 0x12
|
||||
/* 8046BDDC 41 81 00 C8 */ bgt lbl_8046BEA4
|
||||
/* 8046BDE0 3C 60 80 47 */ lis r3, lit_3957@ha /* 0x8046C9E0@ha */
|
||||
/* 8046BDE4 38 63 C9 E0 */ addi r3, r3, lit_3957@l /* 0x8046C9E0@l */
|
||||
/* 8046BDE8 54 00 10 3A */ slwi r0, r0, 2
|
||||
/* 8046BDEC 7C 03 00 2E */ lwzx r0, r3, r0
|
||||
/* 8046BDF0 7C 09 03 A6 */ mtctr r0
|
||||
/* 8046BDF4 4E 80 04 20 */ bctr
|
||||
lbl_8046BDF8:
|
||||
/* 8046BDF8 4B FF FF AD */ bl raincnt_cut__Fv
|
||||
/* 8046BDFC 48 00 00 A8 */ b lbl_8046BEA4
|
||||
lbl_8046BE00:
|
||||
/* 8046BE00 38 00 00 00 */ li r0, 0
|
||||
/* 8046BE04 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE08 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BE0C 90 03 0E 8C */ stw r0, 0xe8c(r3)
|
||||
/* 8046BE10 90 03 0E B8 */ stw r0, 0xeb8(r3)
|
||||
/* 8046BE14 48 00 00 90 */ b lbl_8046BEA4
|
||||
lbl_8046BE18:
|
||||
/* 8046BE18 38 00 00 00 */ li r0, 0
|
||||
/* 8046BE1C 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE20 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BE24 90 03 0E AC */ stw r0, 0xeac(r3)
|
||||
/* 8046BE28 98 03 0E A9 */ stb r0, 0xea9(r3)
|
||||
/* 8046BE2C 48 00 00 78 */ b lbl_8046BEA4
|
||||
lbl_8046BE30:
|
||||
/* 8046BE30 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE34 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BE38 80 03 0E D8 */ lwz r0, 0xed8(r3)
|
||||
/* 8046BE3C 2C 00 00 02 */ cmpwi r0, 2
|
||||
/* 8046BE40 40 82 00 0C */ bne lbl_8046BE4C
|
||||
/* 8046BE44 38 00 00 00 */ li r0, 0
|
||||
/* 8046BE48 90 03 0E D8 */ stw r0, 0xed8(r3)
|
||||
lbl_8046BE4C:
|
||||
/* 8046BE4C 88 1F 05 70 */ lbz r0, 0x570(r31)
|
||||
/* 8046BE50 28 00 00 08 */ cmplwi r0, 8
|
||||
/* 8046BE54 41 82 00 0C */ beq lbl_8046BE60
|
||||
/* 8046BE58 28 00 00 09 */ cmplwi r0, 9
|
||||
/* 8046BE5C 40 82 00 08 */ bne lbl_8046BE64
|
||||
lbl_8046BE60:
|
||||
/* 8046BE60 4B FF FF 45 */ bl raincnt_cut__Fv
|
||||
lbl_8046BE64:
|
||||
/* 8046BE64 88 1F 05 70 */ lbz r0, 0x570(r31)
|
||||
/* 8046BE68 28 00 00 09 */ cmplwi r0, 9
|
||||
/* 8046BE6C 40 82 00 38 */ bne lbl_8046BEA4
|
||||
/* 8046BE70 38 00 00 00 */ li r0, 0
|
||||
/* 8046BE74 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE78 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BE7C 90 03 0E B8 */ stw r0, 0xeb8(r3)
|
||||
/* 8046BE80 48 00 00 24 */ b lbl_8046BEA4
|
||||
lbl_8046BE84:
|
||||
/* 8046BE84 38 00 00 00 */ li r0, 0
|
||||
/* 8046BE88 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE8C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BE90 90 03 0E B8 */ stw r0, 0xeb8(r3)
|
||||
/* 8046BE94 48 00 00 10 */ b lbl_8046BEA4
|
||||
lbl_8046BE98:
|
||||
/* 8046BE98 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046BE9C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046BEA0 90 83 10 48 */ stw r4, 0x1048(r3)
|
||||
lbl_8046BEA4:
|
||||
/* 8046BEA4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8046BEA8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8046BEAC 7C 08 03 A6 */ mtlr r0
|
||||
/* 8046BEB0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8046BEB4 4E 80 00 20 */ blr
|
|
@ -1,14 +0,0 @@
|
|||
lbl_8046B9DC:
|
||||
/* 8046B9DC 38 00 00 00 */ li r0, 0
|
||||
/* 8046B9E0 98 03 05 6D */ stb r0, 0x56d(r3)
|
||||
/* 8046B9E4 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */
|
||||
/* 8046B9E8 38 83 CA 54 */ addi r4, r3, g_env_light@l /* 0x8042CA54@l */
|
||||
/* 8046B9EC 88 04 12 C8 */ lbz r0, 0x12c8(r4)
|
||||
/* 8046B9F0 98 04 12 C4 */ stb r0, 0x12c4(r4)
|
||||
/* 8046B9F4 98 04 12 C5 */ stb r0, 0x12c5(r4)
|
||||
/* 8046B9F8 3C 60 80 47 */ lis r3, lit_3798@ha /* 0x8046C980@ha */
|
||||
/* 8046B9FC C0 03 C9 80 */ lfs f0, lit_3798@l(r3) /* 0x8046C980@l */
|
||||
/* 8046BA00 D0 04 11 E0 */ stfs f0, 0x11e0(r4)
|
||||
/* 8046BA04 38 00 00 01 */ li r0, 1
|
||||
/* 8046BA08 98 04 12 CE */ stb r0, 0x12ce(r4)
|
||||
/* 8046BA0C 4E 80 00 20 */ blr
|
|
@ -588,6 +588,14 @@ private:
|
|||
|
||||
class J3DFrameCtrl {
|
||||
public:
|
||||
enum Attribute_e {
|
||||
LOOP_ONCE_e,
|
||||
LOOP_ONCE_RESET_e,
|
||||
LOOP_REPEAT_e,
|
||||
LOOP_MIRROR_ONCE_e,
|
||||
LOOP_MIRROR_REPEAT_e,
|
||||
};
|
||||
|
||||
J3DFrameCtrl() { this->init(0); }
|
||||
void init(s16);
|
||||
BOOL checkPass(f32);
|
||||
|
|
|
@ -5,13 +5,12 @@
|
|||
typedef int (*cPhs__Handler)(void*);
|
||||
|
||||
enum cPhs__Step {
|
||||
/* 0x0 */ cPhs_ZERO_e,
|
||||
/* 0x1 */ cPhs_ONE_e, // next?
|
||||
/* 0x2 */ cPhs_TWO_e, // ready?
|
||||
/* 0x3 */ cPhs_UNK3_e,
|
||||
/* 0x0 */ cPhs_INIT_e,
|
||||
/* 0x1 */ cPhs_LOADING_e,
|
||||
/* 0x2 */ cPhs_NEXT_e,
|
||||
/* 0x3 */ cPhs_UNK3_e, // appears to be an alternate error code, unsure how it differs
|
||||
/* 0x4 */ cPhs_COMPLEATE_e,
|
||||
/* 0x5 */ cPhs_ERROR_e,
|
||||
/* 0x6 */ cPhs_NEXT_e,
|
||||
};
|
||||
|
||||
typedef struct request_of_phase_process_class {
|
||||
|
|
|
@ -16,12 +16,12 @@ struct stage_vrboxcol_info_class {
|
|||
|
||||
// Virt
|
||||
struct stage_vrbox_info_class {
|
||||
/* 0x00 */ GXColor field_0x0;
|
||||
/* 0x04 */ GXColor field_0x4;
|
||||
/* 0x08 */ color_RGB_class field_0x8;
|
||||
/* 0x0B */ color_RGB_class field_0xb;
|
||||
/* 0x0E */ color_RGB_class field_0xe;
|
||||
/* 0x11 */ color_RGB_class field_0x11;
|
||||
/* 0x00 */ color_RGB_class field_0x0;
|
||||
/* 0x03 */ color_RGB_class field_0x3;
|
||||
/* 0x06 */ color_RGB_class field_0x6;
|
||||
/* 0x09 */ GXColor field_0x9;
|
||||
/* 0x0D */ GXColor field_0xd;
|
||||
/* 0x11 */ GXColor field_0x11;
|
||||
}; // Size: 0x15
|
||||
|
||||
class stage_tresure_class {
|
||||
|
@ -86,7 +86,13 @@ struct stage_scls_info_dummy_class {
|
|||
|
||||
struct stage_pure_lightvec_info_class {
|
||||
// LGT
|
||||
/* 0x00 */ u8 field_0x0[0x1E - 0x0];
|
||||
/* 0x00 */ Vec m_position;
|
||||
/* 0x0C */ f32 m_radius;
|
||||
/* 0x10 */ f32 m_directionX;
|
||||
/* 0x14 */ f32 m_directionY;
|
||||
/* 0x18 */ f32 m_spotCutoff;
|
||||
/* 0x1C */ u8 field_0x1c;
|
||||
/* 0x1D */ u8 field_0x1d;
|
||||
/* 0x1E */ u8 field_0x1e;
|
||||
/* 0x1F */ u8 field_0x1f;
|
||||
}; // Size: 0x20
|
||||
|
@ -99,27 +105,28 @@ struct stage_pselect_info_class {
|
|||
|
||||
struct stage_plight_info_class {
|
||||
// LGHT
|
||||
};
|
||||
/* 0x00 */ Vec m_position;
|
||||
/* 0x0C */ f32 m_radius;
|
||||
/* 0x10 */ u8 field_0x10[0x18 - 0x10];
|
||||
/* 0x18 */ GXColor m_color;
|
||||
}; // Size: 0x1C
|
||||
|
||||
// PALE
|
||||
struct stage_palette_info_class {
|
||||
/* 0x00 */ color_RGB_class mActor_C0;
|
||||
/* 0x03 */ color_RGB_class mActor_K0;
|
||||
/* 0x06 */ color_RGB_class mBG0_C0;
|
||||
/* 0x09 */ color_RGB_class mBG0_K0;
|
||||
/* 0x0C */ color_RGB_class mBG1_C0;
|
||||
/* 0x0F */ color_RGB_class mBG1_K0;
|
||||
/* 0x12 */ color_RGB_class mBG2_C0;
|
||||
/* 0x15 */ color_RGB_class mBG2_K0;
|
||||
/* 0x18 */ color_RGB_class mBG3_C0;
|
||||
/* 0x1B */ color_RGB_class mBG3_K0;
|
||||
/* 0x1E */ color_RGB_class mFog;
|
||||
/* 0x21 */ u8 mVirtIdx;
|
||||
/* 0x22 */ u8 field_0x22;
|
||||
/* 0x23 */ u8 field_0x23;
|
||||
/* 0x00 */ color_RGB_class mActorAmbColor;
|
||||
/* 0x03 */ color_RGB_class mBgAmbColor[4];
|
||||
/* 0x0F */ color_RGB_class mPlightColor[6];
|
||||
/* 0x21 */ color_RGB_class mFogColor;
|
||||
/* 0x24 */ f32 mFogStartZ;
|
||||
/* 0x28 */ f32 mFogEndZ;
|
||||
/* 0x2C */ u8 field_0x2c[8];
|
||||
/* 0x2C */ u8 mVirtIdx;
|
||||
/* 0x2D */ u8 mTerrainLightInfluence;
|
||||
/* 0x2E */ u8 mCloudShadowDensity;
|
||||
/* 0x2F */ u8 field_0x2f;
|
||||
/* 0x30 */ u8 mBloomTblIdx;
|
||||
/* 0x31 */ u8 mBgAmbColor1A;
|
||||
/* 0x32 */ u8 mBgAmbColor2A;
|
||||
/* 0x33 */ u8 mBgAmbColor3A;
|
||||
}; // Size: 0x34
|
||||
|
||||
struct stage_map_info_class {
|
||||
|
@ -134,7 +141,7 @@ struct stage_map_info_dummy_class {
|
|||
};
|
||||
|
||||
struct stage_envr_info_class {
|
||||
/* 0x0 */ u8 field_0x0[0x41];
|
||||
/* 0x0 */ u8 m_pselectID[65];
|
||||
}; // Size: 0x41
|
||||
|
||||
struct stage_camera2_data_class {
|
||||
|
@ -295,13 +302,13 @@ struct dStage_Lbnk_c {
|
|||
// LBNK
|
||||
};
|
||||
|
||||
struct dStage_Elst_c {
|
||||
struct unkData {
|
||||
u8 field_0x0[15];
|
||||
};
|
||||
struct dStage_Elst_data {
|
||||
/* 0x0 */ u8 m_layerTable[15];
|
||||
};
|
||||
|
||||
/* 0x0 */ int field_0x0;
|
||||
/* 0x4 */ unkData* field_0x4;
|
||||
struct dStage_Elst_c {
|
||||
/* 0x0 */ int m_entryNum;
|
||||
/* 0x4 */ dStage_Elst_data* m_entries;
|
||||
};
|
||||
|
||||
struct dStage_MemoryConfig_data {
|
||||
|
|
|
@ -398,17 +398,14 @@ public:
|
|||
/* 0x1094 */ cXyz mMoonPos;
|
||||
/* 0x10A0 */ cXyz field_0x10a0;
|
||||
/* 0x10AC */ GXFogAdjTable mXFogTbl;
|
||||
/* 0x10C0 */ GXColorS10 mSkyColor;
|
||||
/* 0x10C8 */ GXColorS10 mUpperCloudColor;
|
||||
/* 0x10D0 */ GXColorS10 mUnderCloudColor;
|
||||
/* 0x10D8 */ GXColorS10 mUnderCloudShadowColor;
|
||||
/* 0x10E0 */ GXColorS10 mCloudOuterHazeColor;
|
||||
/* 0x10E8 */ GXColorS10 mCloudInnerHazeColor;
|
||||
/* 0x10C0 */ GXColorS10 mVrSkyCol;
|
||||
/* 0x10C8 */ GXColorS10 mVrkumoCol;
|
||||
/* 0x10D0 */ GXColorS10 mVrShitaGumoCol;
|
||||
/* 0x10D8 */ GXColorS10 mVrShitaUneiCol;
|
||||
/* 0x10E0 */ GXColorS10 mVrKasumiCol;
|
||||
/* 0x10E8 */ GXColorS10 mVrOkuKasumiCol;
|
||||
/* 0x10F0 */ GXColorS10 field_0x10f0;
|
||||
/* 0x10F8 */ s16 field_0x10f8;
|
||||
/* 0x10FA */ s16 field_0x10fa;
|
||||
/* 0x10FC */ s16 field_0x10fc;
|
||||
/* 0x10FE */ s16 field_0x10fe;
|
||||
/* 0x10F8 */ GXColorS10 field_0x10f8;
|
||||
/* 0x1100 */ GXColorS10 mActorAmbience;
|
||||
/* 0x1108 */ GXColorS10 mTerrainAmbienceBG0;
|
||||
/* 0x1110 */ GXColorS10 mTerrainAmbienceBG1;
|
||||
|
@ -496,7 +493,7 @@ public:
|
|||
/* 0x12C3 */ u8 mColPatCurr;
|
||||
/* 0x12C4 */ u8 mColpatPrevGather;
|
||||
/* 0x12C5 */ u8 mColpatCurrGather;
|
||||
/* 0x12C6 */ s8 mNowRoom;
|
||||
/* 0x12C6 */ u8 mEnvrIdxPrev;
|
||||
/* 0x12C7 */ u8 mEnvrIdxCurr;
|
||||
/* 0x12C8 */ u8 mColpatWeather;
|
||||
/* 0x12C9 */ u8 mDiceWeatherMode;
|
||||
|
@ -528,7 +525,7 @@ public:
|
|||
/* 0x12FB */ u8 field_0x12fb;
|
||||
/* 0x12FC */ s8 field_0x12fc;
|
||||
/* 0x12FD */ u8 mDarktimeWeek;
|
||||
/* 0x12FE */ u8 field_0x12fe;
|
||||
/* 0x12FE */ u8 mPondSeason;
|
||||
/* 0x1300 */ s16 field_0x1300;
|
||||
/* 0x1302 */ s16 field_0x1302;
|
||||
/* 0x1304 */ f32 mWaterSurfaceShineRate;
|
||||
|
@ -547,6 +544,24 @@ inline dScnKy_env_light_c* i_dKy_getEnvlight() {
|
|||
return &g_env_light;
|
||||
}
|
||||
|
||||
enum dKy_dice_wether_mode {
|
||||
DICE_MODE_SUNNY_e,
|
||||
DICE_MODE_CLOUDY_e,
|
||||
DICE_MODE_RAIN_LIGHT_e,
|
||||
DICE_MODE_RAIN_HEAVY_e,
|
||||
DICE_MODE_THUNDER_LIGHT_e,
|
||||
DICE_MODE_THUNDER_HEAVY_e,
|
||||
DICE_MODE_UNK6_e,
|
||||
DICE_MODE_DONE_e = 0xFF,
|
||||
};
|
||||
|
||||
enum dKy_dice_wether_state {
|
||||
DICE_STATE_RESET_e,
|
||||
DICE_STATE_INIT_e,
|
||||
DICE_STATE_EXEC_e,
|
||||
DICE_STATE_NEXT_e,
|
||||
};
|
||||
|
||||
u8 dKy_darkworld_stage_check(char const*, int);
|
||||
BOOL dKy_withwarp_capture_check();
|
||||
bool dKy_darkworld_check();
|
||||
|
|
|
@ -45,8 +45,8 @@ public:
|
|||
/* 0x40 */ u8* mpResMoon_A_A03;
|
||||
/* 0x44 */ u32 field_0x44[5];
|
||||
/* 0x58 */ int field_0x58;
|
||||
/* 0x5C */ f32 field_0x5c;
|
||||
/* 0x60 */ f32 field_0x60;
|
||||
/* 0x5C */ f32 mVisibility;
|
||||
/* 0x60 */ f32 mSunAlpha;
|
||||
/* 0x64 */ f32 field_0x64;
|
||||
/* 0x68 */ f32 field_0x68;
|
||||
/* 0x6C */ f32 field_0x6c;
|
||||
|
@ -70,7 +70,7 @@ public:
|
|||
/* 0x8C */ f32 field_0x8c;
|
||||
/* 0x90 */ f32 field_0x90;
|
||||
/* 0x94 */ f32 field_0x94;
|
||||
/* 0x98 */ f32 field_0x98;
|
||||
/* 0x98 */ f32 mDistFalloff;
|
||||
/* 0x9C */ u8 field_0x9c[2];
|
||||
/* 0x9E */ bool mDrawLenzInSky;
|
||||
}; // Size: 0xA0
|
||||
|
|
|
@ -115,6 +115,10 @@ inline void mDoAud_heartGaugeOn() {
|
|||
Z2AudioMgr::getInterface()->mStatusMgr.heartGaugeOn();
|
||||
}
|
||||
|
||||
inline void mDoAud_setSnowPower(s8 i_power) {
|
||||
g_mEnvSeMgr.setSnowPower(i_power);
|
||||
}
|
||||
|
||||
inline void mDoAud_setFogWipeWidth(f32 i_width) {
|
||||
g_mEnvSeMgr.setFogWipeWidth(i_width);
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef D_A_VRBOX2_H
|
||||
#define D_A_VRBOX2_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
#endif /* D_A_VRBOX2_H */
|
||||
|
|
|
@ -1,6 +1,24 @@
|
|||
#ifndef D_A_KYTAG00_H
|
||||
#define D_A_KYTAG00_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class kytag00_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x568 */ u8 field_0x568[0x56C - 0x568];
|
||||
/* 0x56C */ u8 field_0x56c;
|
||||
/* 0x56D */ u8 field_0x56d;
|
||||
/* 0x56E */ u8 field_0x56e;
|
||||
/* 0x56F */ u8 field_0x56f;
|
||||
/* 0x570 */ u8 field_0x570;
|
||||
/* 0x571 */ u8 field_0x571;
|
||||
/* 0x572 */ u8 field_0x572;
|
||||
/* 0x573 */ u8 field_0x573[0x578 - 0x573];
|
||||
/* 0x578 */ int field_0x578;
|
||||
/* 0x57C */ int field_0x57c;
|
||||
/* 0x580 */ f32 field_0x580;
|
||||
/* 0x584 */ f32 field_0x584;
|
||||
/* 0x588 */ f32 field_0x588;
|
||||
};
|
||||
|
||||
#endif /* D_A_KYTAG00_H */
|
||||
|
|
|
@ -17,14 +17,14 @@ extern "C" static void cPhs_Next__FP30request_of_phase_process_class();
|
|||
/* 80266624-80266630 000C+00 s=1 e=2 z=0 None .text
|
||||
* cPhs_Reset__FP30request_of_phase_process_class */
|
||||
void cPhs_Reset(request_of_phase_process_class* pPhase) {
|
||||
pPhase->id = cPhs_ZERO_e;
|
||||
pPhase->id = cPhs_INIT_e;
|
||||
}
|
||||
|
||||
/* 80266630-80266640 0010+00 s=0 e=3 z=0 None .text
|
||||
* cPhs_Set__FP30request_of_phase_process_classPPFPv_i */
|
||||
void cPhs_Set(request_of_phase_process_class* pPhase, cPhs__Handler* pHandlerTable) {
|
||||
pPhase->mpHandlerTable = pHandlerTable;
|
||||
pPhase->id = cPhs_ZERO_e;
|
||||
pPhase->id = cPhs_INIT_e;
|
||||
}
|
||||
|
||||
/* 80266640-80266668 0028+00 s=1 e=0 z=0 None .text
|
||||
|
@ -53,7 +53,7 @@ int cPhs_Next(request_of_phase_process_class* pPhase) {
|
|||
if (handler == NULL || handler == NULL) {
|
||||
return cPhs_Compleate(pPhase);
|
||||
} else {
|
||||
return cPhs_ONE_e;
|
||||
return cPhs_LOADING_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -69,10 +69,10 @@ int cPhs_Do(request_of_phase_process_class* pPhase, void* pUserData) {
|
|||
int newStep = pPhase->mpHandlerTable[pPhase->id](pUserData);
|
||||
|
||||
switch (newStep) {
|
||||
case cPhs_ONE_e:
|
||||
case cPhs_LOADING_e:
|
||||
return cPhs_Next(pPhase);
|
||||
case cPhs_TWO_e:
|
||||
return cPhs_Next(pPhase) == cPhs_ONE_e ? cPhs_TWO_e : cPhs_COMPLEATE_e;
|
||||
case cPhs_NEXT_e:
|
||||
return cPhs_Next(pPhase) == cPhs_LOADING_e ? cPhs_NEXT_e : cPhs_COMPLEATE_e;
|
||||
case cPhs_COMPLEATE_e:
|
||||
return cPhs_Compleate(pPhase);
|
||||
case cPhs_UNK3_e:
|
||||
|
|
|
@ -854,7 +854,7 @@ int daBg_c::draw() {
|
|||
s16 var_r0;
|
||||
s16 var_r3;
|
||||
s16 var_r5;
|
||||
switch (g_env_light.field_0x12fe) {
|
||||
switch (g_env_light.mPondSeason) {
|
||||
case 2:
|
||||
var_r5 = -3;
|
||||
var_r0 = 0;
|
||||
|
|
|
@ -66,10 +66,10 @@ static int daVrbox_Draw(vrbox_class* i_this) {
|
|||
/* 804986B8-80498850 000218 0198+00 1/1 0/0 0/0 .text daVrbox_color_set__FP11vrbox_class
|
||||
*/
|
||||
static int daVrbox_color_set(vrbox_class* i_this) {
|
||||
if ((g_env_light.mCloudOuterHazeColor.r + g_env_light.mCloudOuterHazeColor.g +
|
||||
g_env_light.mCloudOuterHazeColor.b + g_env_light.mSkyColor.r + g_env_light.mSkyColor.g +
|
||||
g_env_light.mSkyColor.b + g_env_light.mUpperCloudColor.r + g_env_light.mUpperCloudColor.g +
|
||||
g_env_light.mUpperCloudColor.b) == 0)
|
||||
if ((g_env_light.mVrKasumiCol.r + g_env_light.mVrKasumiCol.g +
|
||||
g_env_light.mVrKasumiCol.b + g_env_light.mVrSkyCol.r + g_env_light.mVrSkyCol.g +
|
||||
g_env_light.mVrSkyCol.b + g_env_light.mVrkumoCol.r + g_env_light.mVrkumoCol.g +
|
||||
g_env_light.mVrkumoCol.b) == 0)
|
||||
{
|
||||
g_env_light.mVrboxInvisible = true;
|
||||
return 1;
|
||||
|
@ -85,9 +85,9 @@ static int daVrbox_color_set(vrbox_class* i_this) {
|
|||
material_0->setCullMode(0);
|
||||
material_0->change();
|
||||
|
||||
color.r = g_env_light.mSkyColor.r;
|
||||
color.g = g_env_light.mSkyColor.g;
|
||||
color.b = g_env_light.mSkyColor.b;
|
||||
color.r = g_env_light.mVrSkyCol.r;
|
||||
color.g = g_env_light.mVrSkyCol.g;
|
||||
color.b = g_env_light.mVrSkyCol.b;
|
||||
color.a = 255;
|
||||
material_0->setTevColor(0, &color);
|
||||
}
|
||||
|
@ -97,10 +97,10 @@ static int daVrbox_color_set(vrbox_class* i_this) {
|
|||
material_1->setCullMode(0);
|
||||
material_1->change();
|
||||
|
||||
color.r = g_env_light.mCloudInnerHazeColor.r;
|
||||
color.g = g_env_light.mCloudInnerHazeColor.g;
|
||||
color.b = g_env_light.mCloudInnerHazeColor.b;
|
||||
color.a = g_env_light.mCloudInnerHazeColor.a;
|
||||
color.r = g_env_light.mVrOkuKasumiCol.r;
|
||||
color.g = g_env_light.mVrOkuKasumiCol.g;
|
||||
color.b = g_env_light.mVrOkuKasumiCol.b;
|
||||
color.a = g_env_light.mVrOkuKasumiCol.a;
|
||||
material_1->setTevColor(0, &color);
|
||||
}
|
||||
|
||||
|
|
|
@ -4,54 +4,29 @@
|
|||
//
|
||||
|
||||
#include "rel/d/a/d_a_vrbox2/d_a_vrbox2.h"
|
||||
#include "JSystem/J3DGraphBase/J3DMaterial.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "d/kankyo/d_kankyo_rain.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct vrbox2_class {};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CE38 */ void scaleM(f32, f32, f32);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct J3DAnmTextureSRTKey {};
|
||||
|
||||
struct J3DMaterialTable {
|
||||
/* 8032F7B4 */ void removeTexMtxAnimator(J3DAnmTextureSRTKey*);
|
||||
};
|
||||
|
||||
struct mDoExt_btkAnm {
|
||||
/* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16);
|
||||
/* 8000D6D8 */ void entry(J3DMaterialTable*, f32);
|
||||
};
|
||||
|
||||
struct mDoExt_baseAnm {
|
||||
/* 8000D428 */ void play();
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct dStage_roomControl_c {
|
||||
/* 80024384 */ void getStatusRoomDt(int);
|
||||
};
|
||||
|
||||
struct cXyz {};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct J3DModel {};
|
||||
|
||||
struct J3DFrameCtrl {
|
||||
/* 803283FC */ void init(s16);
|
||||
/* 80499A1C */ ~J3DFrameCtrl();
|
||||
class vrbox2_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x568 */ u8 field_0x568[0x56C - 0x568];
|
||||
/* 0x56C */ J3DModel* mpKumoModel;
|
||||
/* 0x570 */ u8 field_0x570[0x574 - 0x570];
|
||||
/* 0x574 */ J3DModel* model2;
|
||||
/* 0x578 */ J3DModel* model2_und;
|
||||
/* 0x57C */ u8 field_0x57C[0x580 - 0x57C];
|
||||
/* 0x580 */ mDoExt_btkAnm mSunBtk;
|
||||
/* 0x598 */ J3DModel* mpKasumimModel;
|
||||
/* 0x59C */ u8 field_0x59C[0x5A0 - 0x59C];
|
||||
};
|
||||
|
||||
//
|
||||
|
@ -99,25 +74,18 @@ extern "C" void cLib_targetAngleX__FPC4cXyzPC4cXyz();
|
|||
extern "C" void __dl__FPv();
|
||||
extern "C" void init__12J3DFrameCtrlFs();
|
||||
extern "C" void removeTexMtxAnimator__16J3DMaterialTableFP19J3DAnmTextureSRTKey();
|
||||
extern "C" void PSMTXCopy();
|
||||
extern "C" void PSMTXTrans();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void strcmp();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" extern u8 j3dSys[284];
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
static int daVrbox2_color_set(vrbox2_class* param_0);
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80499A6C-80499A70 000000 0004+00 4/4 0/0 0/0 .rodata @3627 */
|
||||
SECTION_RODATA static f32 const lit_3627 = 1.0f;
|
||||
|
@ -133,6 +101,16 @@ SECTION_RODATA static u8 const lit_3628[4] = {
|
|||
COMPILER_STRIP_GATE(0x80499A70, &lit_3628);
|
||||
|
||||
/* 80498A78-80498ACC 000078 0054+00 1/1 0/0 0/0 .text texScrollCheck__FRf */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
static void texScrollCheck(f32& param_0) {
|
||||
while (param_0 < 0.0f)
|
||||
param_0 += 1.0f;
|
||||
|
||||
while (param_0 > 1.0f)
|
||||
param_0 -= 1.0f;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
@ -141,6 +119,7 @@ static asm void texScrollCheck(f32& param_0) {
|
|||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/texScrollCheck__FRf.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80499A74-80499A78 000008 0004+00 0/1 0/0 0/0 .rodata @3835 */
|
||||
|
@ -232,17 +211,178 @@ SECTION_DEAD static char const* const stringBase_80499ACC = "F_SP127";
|
|||
#pragma pop
|
||||
|
||||
/* 80499B78-80499B7C 000000 0002+02 1/1 0/0 0/0 .bss mangZ$3688 */
|
||||
static u8 mangZ[2 + 2 /* padding */];
|
||||
static s16 mangZ;
|
||||
|
||||
/* 80498ACC-804990DC 0000CC 0610+00 1/0 0/0 0/0 .text daVrbox2_Draw__FP12vrbox2_class */
|
||||
// reg alloc
|
||||
#ifdef NONMATCHING
|
||||
static int daVrbox2_Draw(vrbox2_class* i_this) {
|
||||
cXyz sp14;
|
||||
cXyz sp8;
|
||||
|
||||
camera_class* camera_p = dComIfGp_getCamera(0);
|
||||
dKankyo_sunlenz_Packet* lenz_p = g_env_light.mpSunLenzPacket;
|
||||
J3DModel* kumo_model_p = i_this->mpKumoModel;
|
||||
J3DModel* sun_model_p = i_this->model2;
|
||||
J3DModel* sun2_model_p = i_this->model2_und;
|
||||
J3DModel* kasumim_model_p = i_this->mpKasumimModel;
|
||||
dKankyo_sun_Packet* sun_p = g_env_light.mpSunPacket;
|
||||
|
||||
f32 var_f31 = 0.0f;
|
||||
dStage_FileList_dt_c* filelist_p = NULL;
|
||||
dKy_GxFog_set();
|
||||
|
||||
// these casts look like fake matches, but this ptr is used as both J3DModel and J3DModelData?
|
||||
for (int i = ((J3DModelData*)kumo_model_p)->getMaterialNum() - 1; i >= 0; i--) {
|
||||
J3DMaterial* material_p = ((J3DModelData*)kumo_model_p)->getMaterialNodePointer(i);
|
||||
|
||||
J3DFogInfo* fogInfo_p;
|
||||
if (material_p != NULL) {
|
||||
fogInfo_p = material_p->getFog()->getFogInfo();
|
||||
}
|
||||
|
||||
fogInfo_p->field_0x0 = 2;
|
||||
}
|
||||
|
||||
// these casts look like fake matches, but this ptr is used as both J3DModel and J3DModelData?
|
||||
for (int i = ((J3DModelData*)sun_model_p)->getMaterialNum() - 1; i >= 0; i--) {
|
||||
J3DMaterial* material_p = ((J3DModelData*)sun_model_p)->getMaterialNodePointer(i);
|
||||
|
||||
J3DFogInfo* fogInfo_p;
|
||||
if (material_p != NULL) {
|
||||
fogInfo_p = material_p->getFog()->getFogInfo();
|
||||
}
|
||||
|
||||
fogInfo_p->field_0x0 = 2;
|
||||
}
|
||||
|
||||
// these casts look like fake matches, but this ptr is used as both J3DModel and J3DModelData?
|
||||
for (int i = ((J3DModelData*)kasumim_model_p)->getMaterialNum() - 1; i >= 0; i--) {
|
||||
J3DMaterial* material_p = ((J3DModelData*)kasumim_model_p)->getMaterialNodePointer(i);
|
||||
|
||||
J3DFogInfo* fogInfo_p;
|
||||
if (material_p != NULL) {
|
||||
fogInfo_p = material_p->getFog()->getFogInfo();
|
||||
}
|
||||
|
||||
fogInfo_p->field_0x0 = 2;
|
||||
}
|
||||
|
||||
if ((g_env_light.mVrKasumiCol.r + g_env_light.mVrKasumiCol.g +
|
||||
g_env_light.mVrKasumiCol.b + g_env_light.mVrSkyCol.r + g_env_light.mVrSkyCol.g +
|
||||
g_env_light.mVrSkyCol.b + g_env_light.mVrkumoCol.r + g_env_light.mVrkumoCol.g +
|
||||
g_env_light.mVrkumoCol.b) == 0)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
i_this->mSunBtk.entry(i_this->model2->getModelData());
|
||||
daVrbox2_color_set(i_this);
|
||||
|
||||
if (dComIfGp_roomControl_getStayNo() >= 0) {
|
||||
s32 stayNo = dComIfGp_roomControl_getStayNo();
|
||||
filelist_p = dComIfGp_roomControl_getStatusRoomDt(stayNo)->mRoomDt.getFileListInfo();
|
||||
}
|
||||
|
||||
if (filelist_p != NULL) {
|
||||
var_f31 = dStage_FileList_dt_SeaLevel(filelist_p);
|
||||
}
|
||||
|
||||
if (dComIfGd_getView() != NULL) {
|
||||
var_f31 = (dComIfGd_getInvViewMtx()[1][3] - var_f31) * 0.09f;
|
||||
} else {
|
||||
var_f31 = 0.0f;
|
||||
}
|
||||
|
||||
dComIfGd_setListSky();
|
||||
mDoMtx_stack_c::transS(dComIfGd_getInvViewMtx()[0][3], dComIfGd_getInvViewMtx()[1][3] - var_f31,
|
||||
dComIfGd_getInvViewMtx()[2][3]);
|
||||
kasumim_model_p->i_setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(kasumim_model_p);
|
||||
|
||||
mDoMtx_stack_c::transS(dComIfGd_getInvViewMtx()[0][3], dComIfGd_getInvViewMtx()[1][3] - var_f31,
|
||||
dComIfGd_getInvViewMtx()[2][3]);
|
||||
kumo_model_p->i_setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(kumo_model_p);
|
||||
|
||||
if (dStage_stagInfo_GetArg0(i_dComIfGp_getStage()->getStagInfo()) != 0 && sun_model_p != NULL &&
|
||||
sun_p != NULL && sun_p->mSunAlpha > 0.0f)
|
||||
{
|
||||
sp14 = sun_p->mPos[0];
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "F_SP102") == 0) {
|
||||
dKyr_get_vectle_calc(&camera_p->mLookat.mEye, &g_env_light.mSunPos, &sp8);
|
||||
sp14.x = camera_p->mLookat.mEye.x + (8000.0f * sp8.x);
|
||||
sp14.y = camera_p->mLookat.mEye.y + (8000.0f * sp8.y);
|
||||
sp14.z = camera_p->mLookat.mEye.z + (8000.0f * sp8.z);
|
||||
}
|
||||
|
||||
s16 temp_r19 = cLib_targetAngleX(&camera_p->mLookat.mEye, &sp14);
|
||||
s16 temp_r18 = cLib_targetAngleY(&camera_p->mLookat.mEye, &sp14);
|
||||
mDoMtx_stack_c::transS(sp14.x, sp14.y, sp14.z);
|
||||
mDoMtx_stack_c::YrotM((s16)temp_r18);
|
||||
mDoMtx_stack_c::XrotM(0x7FFF - temp_r19);
|
||||
|
||||
f32 scale;
|
||||
if (g_env_light.mDaytime < 255.0f) {
|
||||
f32 temp_f4 = 1.0f - lenz_p->mDistFalloff;
|
||||
scale = 1.0f;
|
||||
|
||||
if (sun_p->mVisibility > 0.0f) {
|
||||
scale = 1.0f + (sun_p->mVisibility * (0.4f * (temp_f4 * temp_f4)));
|
||||
}
|
||||
} else {
|
||||
f32 var_f1;
|
||||
if (g_env_light.mDaytime < 270.0f) {
|
||||
var_f1 = dKy_get_parcent(270.0f, 240.0f, g_env_light.mDaytime);
|
||||
} else {
|
||||
var_f1 = 1.0f;
|
||||
}
|
||||
|
||||
scale = 1.0f + (0.2f * var_f1);
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::scaleM(scale, scale, scale);
|
||||
sun_model_p->i_setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(sun_model_p);
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "F_SP127") == 0) {
|
||||
sp14 = sun_p->mPos[0];
|
||||
sp14.y = 300.0f - (sp14.y * 0.85f);
|
||||
|
||||
s16 temp_r19_2 = cLib_targetAngleX(&camera_p->mLookat.mEye, &sp14);
|
||||
s16 temp_r18_2 = cLib_targetAngleY(&camera_p->mLookat.mEye, &sp14);
|
||||
mDoMtx_stack_c::transS(sp14.x, sp14.y, sp14.z);
|
||||
mDoMtx_stack_c::YrotM((s16)temp_r18_2);
|
||||
mDoMtx_stack_c::XrotM(0x7FFF - temp_r19_2);
|
||||
mDoMtx_stack_c::ZrotM(mangZ);
|
||||
|
||||
mDoMtx_stack_c::scaleM(scale, scale + 0.15f, scale);
|
||||
mDoMtx_stack_c::ZrotM(-mangZ);
|
||||
sun2_model_p->i_setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mDoExt_modelUpdateDL(sun2_model_p);
|
||||
mangZ += (s16)(483.0f + cM_rndF(100.0f));
|
||||
}
|
||||
}
|
||||
|
||||
dComIfGd_setList();
|
||||
|
||||
if (sun_model_p != NULL) {
|
||||
i_this->mSunBtk.remove(i_this->model2->getModelData());
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daVrbox2_Draw(vrbox2_class* param_0) {
|
||||
static asm int daVrbox2_Draw(vrbox2_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/daVrbox2_Draw__FP12vrbox2_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80499AA4-80499AA8 000038 0004+00 0/1 0/0 0/0 .rodata @4069 */
|
||||
|
@ -308,106 +448,277 @@ SECTION_DEAD static char const* const stringBase_80499AD4 = "R_SP30";
|
|||
#pragma pop
|
||||
|
||||
/* 804990DC-804997E8 0006DC 070C+00 1/1 0/0 0/0 .text daVrbox2_color_set__FP12vrbox2_class */
|
||||
// one small weird block and some regalloc at the end
|
||||
#ifdef NONMATCHING
|
||||
static int daVrbox2_color_set(vrbox2_class* i_this) {
|
||||
dKankyo_sun_Packet* sun_p = g_env_light.mpSunPacket;
|
||||
|
||||
if ((g_env_light.mVrKasumiCol.r + g_env_light.mVrKasumiCol.g +
|
||||
g_env_light.mVrKasumiCol.b + g_env_light.mVrSkyCol.r + g_env_light.mVrSkyCol.g +
|
||||
g_env_light.mVrSkyCol.b + g_env_light.mVrkumoCol.r + g_env_light.mVrkumoCol.g +
|
||||
g_env_light.mVrkumoCol.b) == 0)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
camera_class* camera_p = dComIfGp_getCamera(0);
|
||||
|
||||
cXyz cam_eye;
|
||||
cXyz cam_center;
|
||||
cXyz camFwdXZ;
|
||||
cXyz wind_vec;
|
||||
|
||||
cXyz* windVec_p = dKyw_get_wind_vec();
|
||||
f32 wind_pow = dKyw_get_wind_pow();
|
||||
|
||||
wind_vec = *windVec_p;
|
||||
|
||||
dStage_stagInfo_GetSTType(i_dComIfGp_getStage()->getStagInfo());
|
||||
|
||||
cam_eye = camera_p->mLookat.mEye;
|
||||
cam_center = camera_p->mLookat.mCenter;
|
||||
cam_eye.y = 0.0f;
|
||||
cam_center.y = 0.0f;
|
||||
|
||||
dKyr_get_vectle_calc(&cam_eye, &cam_center, &camFwdXZ);
|
||||
f32 temp_f30 =
|
||||
cM3d_VectorProduct2d(0.0f, 0.0f, -wind_vec.x, -wind_vec.z, camFwdXZ.x, camFwdXZ.z) *
|
||||
0.0005f;
|
||||
f32 var_f29 = temp_f30 * wind_pow;
|
||||
|
||||
if (strcmp(dComIfGp_getStartStageName(), "R_SP30") == 0) {
|
||||
dKyw_get_wind_vec();
|
||||
var_f29 = temp_f30 * (wind_pow + 0.3f);
|
||||
}
|
||||
|
||||
J3DModelData* modelData = i_this->mpKumoModel->getModelData();
|
||||
J3DMaterial* material_0 = modelData->getMaterialNodePointer(0);
|
||||
if (material_0 != NULL) {
|
||||
material_0->setCullMode(0);
|
||||
|
||||
if (material_0->getTexMtx(0) != NULL) {
|
||||
J3DTexMtxInfo& mtx_info = material_0->getTexMtx(0)->getTexMtxInfo();
|
||||
mtx_info.mSRT.mTranslationX += var_f29;
|
||||
texScrollCheck(mtx_info.mSRT.mTranslationX);
|
||||
}
|
||||
|
||||
if (material_0->getTexMtx(1) != NULL) {
|
||||
J3DTexMtxInfo& mtx_info = material_0->getTexMtx(1)->getTexMtxInfo();
|
||||
mtx_info.mSRT.mTranslationX += var_f29 * 1.75f;
|
||||
texScrollCheck(mtx_info.mSRT.mTranslationX);
|
||||
}
|
||||
}
|
||||
|
||||
J3DMaterial* material_1 = modelData->getMaterialNodePointer(1);
|
||||
if (material_1 != NULL) {
|
||||
material_1->setCullMode(0);
|
||||
|
||||
if (material_1->getTexMtx(0) != NULL) {
|
||||
J3DTexMtxInfo& mtx_info = material_1->getTexMtx(0)->getTexMtxInfo();
|
||||
mtx_info.mSRT.mTranslationX += var_f29 * 4.4f;
|
||||
texScrollCheck(mtx_info.mSRT.mTranslationX);
|
||||
}
|
||||
|
||||
if (material_1->getTexMtx(1) != NULL) {
|
||||
J3DTexMtxInfo& mtx_info = material_1->getTexMtx(1)->getTexMtxInfo();
|
||||
mtx_info.mSRT.mTranslationX += var_f29 * 2.2f;
|
||||
texScrollCheck(mtx_info.mSRT.mTranslationX);
|
||||
}
|
||||
}
|
||||
|
||||
modelData = i_this->mpKumoModel->getModelData();
|
||||
J3DGXColor k_color;
|
||||
J3DGXColorS10 color;
|
||||
|
||||
J3DMaterial* kumo_material0 = modelData->getMaterialNodePointer(0);
|
||||
if (kumo_material0 != NULL) {
|
||||
kumo_material0->setCullMode(0);
|
||||
kumo_material0->change();
|
||||
|
||||
k_color.r = g_env_light.mVrShitaGumoCol.r;
|
||||
k_color.g = g_env_light.mVrShitaGumoCol.g;
|
||||
k_color.b = g_env_light.mVrShitaGumoCol.b;
|
||||
k_color.a = g_env_light.mVrkumoCol.a;
|
||||
kumo_material0->setTevKColor(0, &k_color);
|
||||
|
||||
color.r = g_env_light.mVrShitaUneiCol.r;
|
||||
color.g = g_env_light.mVrShitaUneiCol.g;
|
||||
color.b = g_env_light.mVrShitaUneiCol.b;
|
||||
color.a = (u8)g_env_light.mVrkumoCol.a;
|
||||
kumo_material0->setTevColor(0, &color);
|
||||
}
|
||||
|
||||
J3DMaterial* kumo_material1 = modelData->getMaterialNodePointer(1);
|
||||
if (kumo_material1 != NULL) {
|
||||
kumo_material1->setCullMode(0);
|
||||
kumo_material1->change();
|
||||
|
||||
k_color.r = g_env_light.mVrShitaGumoCol.r;
|
||||
k_color.g = g_env_light.mVrShitaGumoCol.g;
|
||||
k_color.b = g_env_light.mVrShitaGumoCol.b;
|
||||
k_color.a = g_env_light.mVrkumoCol.a;
|
||||
kumo_material1->setTevKColor(0, &k_color);
|
||||
|
||||
color.r = g_env_light.mVrShitaUneiCol.r;
|
||||
color.g = g_env_light.mVrShitaUneiCol.g;
|
||||
color.b = g_env_light.mVrShitaUneiCol.b;
|
||||
color.a = g_env_light.mVrkumoCol.a;
|
||||
kumo_material1->setTevColor(0, &color);
|
||||
}
|
||||
|
||||
modelData = i_this->mpKasumimModel->getModelData();
|
||||
J3DMaterial* kasumim_material0 = modelData->getMaterialNodePointer(0);
|
||||
if (kasumim_material0 != NULL) {
|
||||
kasumim_material0->setCullMode(0);
|
||||
kasumim_material0->change();
|
||||
|
||||
color.r = g_env_light.mVrKasumiCol.r;
|
||||
color.g = g_env_light.mVrKasumiCol.g;
|
||||
color.b = g_env_light.mVrKasumiCol.b;
|
||||
color.a = g_env_light.mVrKasumiCol.a;
|
||||
kasumim_material0->setTevColor(0, &color);
|
||||
}
|
||||
|
||||
if (sun_p != NULL) {
|
||||
J3DModelData* modelData = i_this->model2->getModelData();
|
||||
for (int i = 0; i < 3; i++) {
|
||||
J3DMaterial* material_p = modelData->getMaterialNodePointer(i);
|
||||
|
||||
if (material_p != NULL) {
|
||||
material_p->setCullMode(0);
|
||||
material_p->change();
|
||||
|
||||
color.r = sun_p->mColor.r;
|
||||
color.g = sun_p->mColor.g;
|
||||
color.b = sun_p->mColor.b;
|
||||
|
||||
k_color.r = sun_p->field_0x74.r;
|
||||
k_color.g = sun_p->field_0x74.g;
|
||||
k_color.b = sun_p->field_0x74.b;
|
||||
k_color.a = sun_p->field_0x74.a;
|
||||
|
||||
if (i == 1) {
|
||||
if (g_env_light.mDaytime > 255.0f || g_env_light.mDaytime < 97.5f) {
|
||||
cLib_addCalc(&sun_p->field_0x64, 1.0f, 0.2f, 0.1f, 0.0001f);
|
||||
} else {
|
||||
cLib_addCalc(&sun_p->field_0x64, 0.0f, 0.2f, 0.1f, 0.0001f);
|
||||
}
|
||||
|
||||
int alpha = sun_p->field_0x64 * 255.0f * sun_p->mSunAlpha;
|
||||
color.a = alpha;
|
||||
k_color.a = alpha;
|
||||
} else if (i == 2) {
|
||||
int alpha = sun_p->mSunAlpha * 255.0f * (1.0f - sun_p->field_0x64);
|
||||
color.a = alpha;
|
||||
k_color.a = alpha;
|
||||
} else {
|
||||
int alpha = sun_p->mSunAlpha * 255.0f;
|
||||
color.a = alpha;
|
||||
k_color.a = alpha;
|
||||
}
|
||||
|
||||
material_p->setTevColor(0, &color);
|
||||
material_p->setTevKColor(0, &k_color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daVrbox2_color_set(vrbox2_class* param_0) {
|
||||
static asm int daVrbox2_color_set(vrbox2_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/daVrbox2_color_set__FP12vrbox2_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 804997E8-8049982C 000DE8 0044+00 1/0 0/0 0/0 .text daVrbox2_Execute__FP12vrbox2_class
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daVrbox2_Execute(vrbox2_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/daVrbox2_Execute__FP12vrbox2_class.s"
|
||||
static int daVrbox2_Execute(vrbox2_class* i_this) {
|
||||
if (g_env_light.mDaytime > FLOAT_LABEL(lit_3837)) {
|
||||
i_this->mSunBtk.play();
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8049982C-80499834 000E2C 0008+00 1/0 0/0 0/0 .text daVrbox2_IsDelete__FP12vrbox2_class
|
||||
*/
|
||||
static bool daVrbox2_IsDelete(vrbox2_class* param_0) {
|
||||
return true;
|
||||
static int daVrbox2_IsDelete(vrbox2_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80499834-8049983C 000E34 0008+00 1/0 0/0 0/0 .text daVrbox2_Delete__FP12vrbox2_class
|
||||
*/
|
||||
static bool daVrbox2_Delete(vrbox2_class* param_0) {
|
||||
return true;
|
||||
static int daVrbox2_Delete(vrbox2_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80499AC4-80499AC4 000058 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80499ADB = "vrbox_kumo.bmd";
|
||||
SECTION_DEAD static char const* const stringBase_80499AEA = "vrbox_sun.bmd";
|
||||
SECTION_DEAD static char const* const stringBase_80499AF8 = "vrbox_sun.btk";
|
||||
SECTION_DEAD static char const* const stringBase_80499B06 = "vrbox_kasumiM.bmd";
|
||||
#pragma pop
|
||||
|
||||
/* 8049983C-80499978 000E3C 013C+00 1/1 0/0 0/0 .text daVrbox2_solidHeapCB__FP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daVrbox2_solidHeapCB(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/daVrbox2_solidHeapCB__FP10fopAc_ac_c.s"
|
||||
static int daVrbox2_solidHeapCB(fopAc_ac_c* i_this) {
|
||||
vrbox2_class* a_this = (vrbox2_class*)i_this;
|
||||
|
||||
a_this->mpKumoModel = mDoExt_J3DModel__create(
|
||||
(J3DModelData*)dComIfG_getStageRes("vrbox_kumo.bmd"), 0x80000, 0x11020202);
|
||||
|
||||
J3DModelData* sun_modelData = (J3DModelData*)dComIfG_getStageRes("vrbox_sun.bmd");
|
||||
if (sun_modelData != NULL) {
|
||||
a_this->model2 = mDoExt_J3DModel__create(sun_modelData, 0x80000, 0x11020202);
|
||||
a_this->model2_und = mDoExt_J3DModel__create(sun_modelData, 0x80000, 0x11020202);
|
||||
|
||||
J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getStageRes("vrbox_sun.btk");
|
||||
if (!a_this->mSunBtk.init(sun_modelData, pbtk, TRUE, J3DFrameCtrl::LOOP_REPEAT_e, FLOAT_LABEL(lit_3627), 0, -1)) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
J3DModelData* kasumi_modelData = (J3DModelData*)dComIfG_getStageRes("vrbox_kasumiM.bmd");
|
||||
if (kasumi_modelData != NULL) {
|
||||
a_this->mpKasumimModel = mDoExt_J3DModel__create(kasumi_modelData, 0x80000, 0x11020202);
|
||||
}
|
||||
|
||||
return a_this->mpKumoModel != NULL && a_this->model2 != NULL && a_this->model2_und != NULL;
|
||||
}
|
||||
|
||||
/* 80499978-80499A1C 000F78 00A4+00 1/0 0/0 0/0 .text daVrbox2_Create__FP10fopAc_ac_c */
|
||||
static int daVrbox2_Create(fopAc_ac_c* i_this) {
|
||||
fopAcM_SetupActor(i_this, vrbox2_class);
|
||||
vrbox2_class* a_this = (vrbox2_class*)i_this;
|
||||
|
||||
int phase = cPhs_COMPLEATE_e;
|
||||
if (!fopAcM_entrySolidHeap(a_this, daVrbox2_solidHeapCB, 0x80004340)) {
|
||||
phase = cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
return phase;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80499B18-80499B38 -00001 0020+00 1/0 0/0 0/0 .data l_daVrbox2_Method */
|
||||
SECTION_DATA static void* l_daVrbox2_Method[8] = {
|
||||
(void*)daVrbox2_Create__FP10fopAc_ac_c,
|
||||
(void*)daVrbox2_Delete__FP12vrbox2_class,
|
||||
(void*)daVrbox2_Execute__FP12vrbox2_class,
|
||||
(void*)daVrbox2_IsDelete__FP12vrbox2_class,
|
||||
(void*)daVrbox2_Draw__FP12vrbox2_class,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
static actor_method_class l_daVrbox2_Method = {
|
||||
(process_method_func)daVrbox2_Create, (process_method_func)daVrbox2_Delete,
|
||||
(process_method_func)daVrbox2_Execute, (process_method_func)daVrbox2_IsDelete,
|
||||
(process_method_func)daVrbox2_Draw,
|
||||
};
|
||||
|
||||
/* 80499B38-80499B68 -00001 0030+00 0/0 0/0 1/0 .data g_profile_VRBOX2 */
|
||||
SECTION_DATA extern void* g_profile_VRBOX2[12] = {
|
||||
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
|
||||
(void*)0x02DB0000, (void*)&g_fpcLf_Method,
|
||||
(void*)0x000005A0, (void*)NULL,
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x00040000, (void*)&l_daVrbox2_Method,
|
||||
(void*)0x00044000, (void*)NULL,
|
||||
extern actor_process_profile_definition g_profile_VRBOX2 = {
|
||||
-3,
|
||||
7,
|
||||
-3,
|
||||
PROC_VRBOX2,
|
||||
&g_fpcLf_Method.mBase,
|
||||
sizeof(vrbox2_class),
|
||||
0,
|
||||
0,
|
||||
&g_fopAc_Method.base,
|
||||
4,
|
||||
&l_daVrbox2_Method,
|
||||
0x44000,
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
||||
/* 80499B68-80499B74 000050 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */
|
||||
SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__12J3DFrameCtrlFv,
|
||||
};
|
||||
|
||||
/* 80499978-80499A1C 000F78 00A4+00 1/0 0/0 0/0 .text daVrbox2_Create__FP10fopAc_ac_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daVrbox2_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/daVrbox2_Create__FP10fopAc_ac_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80499A1C-80499A64 00101C 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J3DFrameCtrl::~J3DFrameCtrl() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_vrbox2/d_a_vrbox2/__dt__12J3DFrameCtrlFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80499AC4-80499AC4 000058 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
|
|
@ -4,22 +4,11 @@
|
|||
//
|
||||
|
||||
#include "rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct kytag00_class {};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct dSv_info_c {
|
||||
/* 80035360 */ void isSwitch(int, int) const;
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
@ -36,7 +25,6 @@ extern "C" static void daKytag00_Execute__FP13kytag00_class();
|
|||
extern "C" static bool daKytag00_IsDelete__FP13kytag00_class();
|
||||
extern "C" static void daKytag00_Delete__FP13kytag00_class();
|
||||
extern "C" static void daKytag00_Create__FP10fopAc_ac_c();
|
||||
extern "C" extern void* g_profile_KYTAG00[12];
|
||||
|
||||
//
|
||||
// External References:
|
||||
|
@ -46,18 +34,10 @@ extern "C" void __ct__10fopAc_ac_cFv();
|
|||
extern "C" void isSwitch__10dSv_info_cCFii();
|
||||
extern "C" void cLib_addCalc__FPfffff();
|
||||
extern "C" void setSnowPower__10Z2EnvSeMgrFSc();
|
||||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" extern u8 g_mEnvSeMgr[780];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
|
@ -106,25 +86,48 @@ COMPILER_STRIP_GATE(0x8046C998, &lit_3801);
|
|||
#pragma pop
|
||||
|
||||
/* 8046B718-8046B9DC 000078 02C4+00 2/2 0/0 0/0 .text get_check_pos__FP13kytag00_class */
|
||||
// reg r31/r30 swap
|
||||
#ifdef NONMATCHING
|
||||
static cXyz get_check_pos(kytag00_class* i_this) {
|
||||
camera_class* camera_p = dComIfGp_getCamera(0);
|
||||
fopAc_ac_c* player_p = dComIfGp_getPlayer(0);
|
||||
cXyz ret;
|
||||
|
||||
if (player_p != NULL) {
|
||||
f32 temp_f = i_this->current.pos.abs(camera_p->mLookat.mEye);
|
||||
f32 temp_f2 = i_this->current.pos.abs(player_p->current.pos);
|
||||
|
||||
ret = player_p->current.pos;
|
||||
if (i_dComIfGp_event_runCheck() && temp_f < temp_f2) {
|
||||
ret = camera_p->mLookat.mEye;
|
||||
}
|
||||
} else {
|
||||
ret.set(0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void get_check_pos(kytag00_class* param_0) {
|
||||
static asm cXyz get_check_pos(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/get_check_pos__FP13kytag00_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8046B9DC-8046BA10 00033C 0034+00 2/2 0/0 0/0 .text wether_tag_reset__FP13kytag00_class
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void wether_tag_reset(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/wether_tag_reset__FP13kytag00_class.s"
|
||||
static void wether_tag_reset(kytag00_class* i_this) {
|
||||
i_this->field_0x56d = 0;
|
||||
|
||||
g_env_light.mColpatPrevGather = g_env_light.mColpatWeather;
|
||||
g_env_light.mColpatCurrGather = g_env_light.mColpatWeather;
|
||||
g_env_light.mColPatBlendGather = FLOAT_LABEL(lit_3798);
|
||||
g_env_light.mColPatModeGather = 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046C9A0-8046C9A4 000020 0004+00 0/3 0/0 0/0 .rodata @3906 */
|
||||
|
@ -166,6 +169,102 @@ COMPILER_STRIP_GATE(0x8046C9B0, &lit_3911);
|
|||
|
||||
/* 8046BA10-8046BD60 000370 0350+00 1/1 0/0 0/0 .text wether_tag_move__FP13kytag00_class
|
||||
*/
|
||||
// regswaps, but should be equivalent
|
||||
#ifdef NONMATCHING
|
||||
static void wether_tag_move(kytag00_class* i_this) {
|
||||
cXyz spC;
|
||||
cXyz check_pos = get_check_pos(i_this);
|
||||
|
||||
f32 temp_f31 = i_this->field_0x57c * 100.0f;
|
||||
|
||||
spC.x = check_pos.x;
|
||||
spC.y = i_this->current.pos.y;
|
||||
spC.z = check_pos.z;
|
||||
f32 var_f1 = i_this->current.pos.abs(spC);
|
||||
|
||||
if (var_f1 < i_this->field_0x584 && check_pos.y >= i_this->current.pos.y - temp_f31 &&
|
||||
check_pos.y < temp_f31 + (i_this->current.pos.y + (5000.0f * i_this->mScale.y)) &&
|
||||
i_this->field_0x588 > 0.0f)
|
||||
{
|
||||
f32 var_f9 = 1.0f;
|
||||
f32 var_f8 = 1.0f;
|
||||
|
||||
f32 temp_f10 = i_this->field_0x584 - i_this->field_0x580;
|
||||
if (0.0f != temp_f10) {
|
||||
var_f9 = (i_this->field_0x584 - var_f1) / temp_f10;
|
||||
if (var_f9 > var_f8) {
|
||||
var_f9 = var_f8;
|
||||
}
|
||||
}
|
||||
|
||||
if (check_pos.y <= i_this->current.pos.y) {
|
||||
if (0.0f != temp_f31) {
|
||||
f32 var_f2 = (i_this->current.pos.y - check_pos.y) / temp_f31;
|
||||
if (var_f2 < 0.0f) {
|
||||
var_f2 = 0.0f;
|
||||
}
|
||||
var_f8 = 1.0f - var_f2;
|
||||
}
|
||||
} else if (0.0f != temp_f31) {
|
||||
f32 var_f2_2 =
|
||||
(check_pos.y - (i_this->current.pos.y + (5000.0f * i_this->mScale.y))) / temp_f31;
|
||||
if (var_f2_2 < 0.0f) {
|
||||
var_f2_2 = 0.0f;
|
||||
}
|
||||
var_f8 = 1.0f - var_f2_2;
|
||||
}
|
||||
|
||||
var_f9 *= (var_f8 * i_this->field_0x588);
|
||||
if (g_env_light.mEnvrIdxPrev == g_env_light.mEnvrIdxCurr) {
|
||||
i_this->field_0x56d = 1;
|
||||
|
||||
switch (i_this->field_0x56f) {
|
||||
case 0:
|
||||
g_env_light.mColpatPrevGather = g_env_light.mColpatWeather;
|
||||
g_env_light.mColpatCurrGather = 0;
|
||||
g_env_light.mColPatBlendGather = var_f9;
|
||||
g_env_light.mColPatModeGather = 1;
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
case 5:
|
||||
case 6:
|
||||
case 7:
|
||||
case 8:
|
||||
case 9:
|
||||
case 10:
|
||||
case 11:
|
||||
case 12:
|
||||
case 13:
|
||||
case 14:
|
||||
case 15:
|
||||
if (var_f9 > 0.5f) {
|
||||
g_env_light.mColpatPrevGather = g_env_light.mColpatWeather;
|
||||
g_env_light.mColpatCurrGather = i_this->field_0x56f;
|
||||
g_env_light.mColPatBlendGather = var_f9;
|
||||
if (var_f9 >= 1.0f) {
|
||||
g_env_light.mColpatPrevGather = i_this->field_0x56f;
|
||||
}
|
||||
} else {
|
||||
g_env_light.mColpatPrevGather = i_this->field_0x56f;
|
||||
g_env_light.mColpatCurrGather = g_env_light.mColpatWeather;
|
||||
g_env_light.mColPatBlendGather = 1.0f - var_f9;
|
||||
}
|
||||
|
||||
g_env_light.mColPatModeGather = 1;
|
||||
break;
|
||||
default:
|
||||
i_this->field_0x56d = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else if (i_this->field_0x56d != 0) {
|
||||
wether_tag_reset(i_this);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
@ -174,65 +273,70 @@ static asm void wether_tag_move(kytag00_class* param_0) {
|
|||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/wether_tag_move__FP13kytag00_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046C9B8-8046C9BC 000038 0004+00 1/1 0/0 0/0 .rodata @3918 */
|
||||
SECTION_RODATA static f32 const lit_3918 = 250.0f;
|
||||
COMPILER_STRIP_GATE(0x8046C9B8, &lit_3918);
|
||||
#endif
|
||||
|
||||
/* 8046BD60-8046BDA4 0006C0 0044+00 1/1 0/0 0/0 .text raincnt_set__Ff */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void raincnt_set(f32 param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/raincnt_set__Ff.s"
|
||||
static void raincnt_set(f32 param_0) {
|
||||
int cnt = param_0 * param_0 * param_0 * 250.0f;
|
||||
if (cnt > g_env_light.mRainCountOrig) {
|
||||
g_env_light.mRainCount = cnt;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8046BDA4-8046BDB8 000704 0014+00 1/1 0/0 0/0 .text raincnt_cut__Fv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void raincnt_cut() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/raincnt_cut__Fv.s"
|
||||
static void raincnt_cut() {
|
||||
g_env_light.mRainCount = g_env_light.mRainCountOrig;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046C9E0-8046CA2C -00001 004C+00 1/1 0/0 0/0 .data @3957 */
|
||||
SECTION_DATA static void* lit_3957[19] = {
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xEC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x40),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x48),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x60),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x78),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x78),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x78),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x60),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xE0),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0x48),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
(void*)(((char*)wether_tag_efect_reset__FP13kytag00_class) + 0xCC),
|
||||
};
|
||||
|
||||
/* 8046BDB8-8046BEB8 000718 0100+00 3/2 0/0 0/0 .text wether_tag_efect_reset__FP13kytag00_class */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void wether_tag_efect_reset(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/wether_tag_efect_reset__FP13kytag00_class.s"
|
||||
static void wether_tag_efect_reset(kytag00_class* i_this) {
|
||||
i_this->field_0x56c = 0;
|
||||
|
||||
switch (i_this->field_0x570) {
|
||||
case 1:
|
||||
raincnt_cut();
|
||||
break;
|
||||
case 2:
|
||||
case 16:
|
||||
g_env_light.mSnowCount = 0;
|
||||
g_env_light.mMoyaCount = 0;
|
||||
break;
|
||||
case 3:
|
||||
case 14:
|
||||
g_env_light.mHousiCount = 0;
|
||||
g_env_light.field_0xea9 = 0;
|
||||
break;
|
||||
case 4:
|
||||
case 5:
|
||||
case 6:
|
||||
if (g_env_light.mThunderEff.mMode == 2) {
|
||||
g_env_light.mThunderEff.mMode = 0;
|
||||
}
|
||||
|
||||
if (i_this->field_0x570 == 8 || i_this->field_0x570 == 9) {
|
||||
raincnt_cut();
|
||||
}
|
||||
|
||||
if (i_this->field_0x570 == 9) {
|
||||
g_env_light.mMoyaCount = 0;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
case 8:
|
||||
case 9:
|
||||
case 10:
|
||||
case 11:
|
||||
case 12:
|
||||
case 13:
|
||||
case 17:
|
||||
case 18:
|
||||
g_env_light.mMoyaCount = 0;
|
||||
break;
|
||||
case 15:
|
||||
g_env_light.field_0x1048 = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046CA2C-8046CA78 -00001 004C+00 1/1 0/0 0/0 .data @4108 */
|
||||
|
@ -259,6 +363,193 @@ SECTION_DATA static void* lit_4108[19] = {
|
|||
};
|
||||
|
||||
/* 8046BEB8-8046C660 000818 07A8+00 3/2 0/0 0/0 .text wether_tag_efect_move__FP13kytag00_class */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
static void wether_tag_efect_move(kytag00_class* i_this) {
|
||||
cXyz spC;
|
||||
cXyz check_pos = get_check_pos(i_this);
|
||||
|
||||
f32 temp_f31 = i_this->field_0x57c * 100.0f;
|
||||
|
||||
spC.x = check_pos.x;
|
||||
spC.y = i_this->current.pos.y;
|
||||
spC.z = check_pos.z;
|
||||
f32 var_f1 = i_this->current.pos.abs(spC);
|
||||
|
||||
if (var_f1 < i_this->field_0x584 && check_pos.y >= i_this->current.pos.y - temp_f31 &&
|
||||
check_pos.y < temp_f31 + (i_this->current.pos.y + (5000.0f * i_this->mScale.y)) &&
|
||||
i_this->field_0x588 > 0.0f)
|
||||
{
|
||||
f32 var_f9 = 1.0f;
|
||||
f32 var_f8 = 1.0f;
|
||||
|
||||
i_this->field_0x56c = 1;
|
||||
|
||||
f32 temp_f10 = i_this->field_0x584 - i_this->field_0x580;
|
||||
if (0.0f != temp_f10) {
|
||||
var_f9 = (i_this->field_0x584 - var_f1) / temp_f10;
|
||||
if (var_f9 > var_f8) {
|
||||
var_f9 = var_f8;
|
||||
}
|
||||
}
|
||||
|
||||
if (check_pos.y <= i_this->current.pos.y) {
|
||||
if (0.0f != temp_f31) {
|
||||
f32 var_f2 = (i_this->current.pos.y - check_pos.y) / temp_f31;
|
||||
if (var_f2 < 0.0f) {
|
||||
var_f2 = 0.0f;
|
||||
}
|
||||
var_f8 = 1.0f - var_f2;
|
||||
}
|
||||
} else if (0.0f != temp_f31) {
|
||||
f32 var_f2_2 =
|
||||
(check_pos.y - (i_this->current.pos.y + (5000.0f * i_this->mScale.y))) / temp_f31;
|
||||
if (var_f2_2 < 0.0f) {
|
||||
var_f2_2 = 0.0f;
|
||||
}
|
||||
var_f8 = 1.0f - var_f2_2;
|
||||
}
|
||||
|
||||
var_f9 *= (var_f8 * i_this->field_0x588);
|
||||
|
||||
switch (i_this->field_0x570) {
|
||||
case 1:
|
||||
raincnt_set(var_f9);
|
||||
break;
|
||||
case 2:
|
||||
if (i_this->orig.roomNo == dComIfGp_roomControl_getStayNo()) {
|
||||
g_env_light.field_0xe92 = false;
|
||||
|
||||
if (g_env_light.mSnowCount < (int)(var_f9 * 500.0f)) {
|
||||
g_env_light.mSnowCount += (int)(var_f9 * 500.0f * 0.05f);
|
||||
|
||||
if (g_env_light.mSnowCount > (int)(var_f9 * 500.0f)) {
|
||||
g_env_light.mSnowCount = (int)(var_f9 * 500.0f);
|
||||
}
|
||||
}
|
||||
|
||||
g_env_light.mMoyaMode = 0;
|
||||
if (g_env_light.mMoyaCount < (int)(var_f9 * 50.0f)) {
|
||||
g_env_light.mMoyaCount += (int)(var_f9 * 50.0f * 0.05f);
|
||||
|
||||
if (g_env_light.mMoyaCount > (int)(var_f9 * 50.0f)) {
|
||||
g_env_light.mMoyaCount = (int)(var_f9 * 50.0f);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
g_env_light.mSnowCount = 0;
|
||||
g_env_light.mMoyaCount = 0;
|
||||
}
|
||||
|
||||
mDoAud_setSnowPower(var_f9 * 63.0f);
|
||||
break;
|
||||
case 3:
|
||||
case 14:
|
||||
g_env_light.field_0xea9 = 0;
|
||||
|
||||
if (i_this->orig.roomNo == dComIfGp_roomControl_getStayNo()) {
|
||||
g_env_light.mHousiCount = var_f9 * 300.0f;
|
||||
} else {
|
||||
g_env_light.mHousiCount = 0;
|
||||
}
|
||||
|
||||
if (i_this->field_0x570 == 14) {
|
||||
g_env_light.field_0xea9 = 1;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (g_env_light.mThunderEff.mMode == 0) {
|
||||
g_env_light.mThunderEff.mMode = 2;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (g_env_light.mThunderEff.mMode == 0) {
|
||||
g_env_light.mThunderEff.mMode = 2;
|
||||
}
|
||||
|
||||
raincnt_set(var_f9);
|
||||
break;
|
||||
case 6:
|
||||
g_env_light.mMoyaMode = 1;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
raincnt_set(var_f9);
|
||||
|
||||
if (g_env_light.mThunderEff.mMode == 0) {
|
||||
g_env_light.mThunderEff.mMode = 2;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
g_env_light.mMoyaMode = 0;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 8:
|
||||
g_env_light.mMoyaMode = 1;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 9:
|
||||
g_env_light.mMoyaMode = 2;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 10:
|
||||
g_env_light.mMoyaMode = 3;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 11:
|
||||
g_env_light.mMoyaMode = 50;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f * g_env_light.field_0xf40;
|
||||
break;
|
||||
case 12:
|
||||
g_env_light.mMoyaMode = 5;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 13:
|
||||
g_env_light.mMoyaMode = 6;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 15:
|
||||
g_env_light.field_0x1048 = var_f9 * 100.0f;
|
||||
break;
|
||||
case 16:
|
||||
if (i_this->orig.roomNo == dComIfGp_roomControl_getStayNo()) {
|
||||
g_env_light.field_0xe92 = true;
|
||||
|
||||
if (g_env_light.mSnowCount < (int)(var_f9 * 500.0f)) {
|
||||
g_env_light.mSnowCount += (int)(var_f9 * 500.0f * 0.05f);
|
||||
|
||||
if (g_env_light.mSnowCount > (int)(var_f9 * 500.0f)) {
|
||||
g_env_light.mSnowCount = (int)(var_f9 * 500.0f);
|
||||
}
|
||||
}
|
||||
|
||||
g_env_light.mMoyaMode = 0;
|
||||
if (g_env_light.mMoyaCount < (int)(var_f9 * 50.0f)) {
|
||||
g_env_light.mMoyaCount += (int)(var_f9 * 50.0f * 0.05f);
|
||||
|
||||
if (g_env_light.mMoyaCount > (int)(var_f9 * 50.0f)) {
|
||||
g_env_light.mMoyaCount = (int)(var_f9 * 50.0f);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
g_env_light.mSnowCount = 0;
|
||||
g_env_light.mMoyaCount = 0;
|
||||
}
|
||||
|
||||
mDoAud_setSnowPower(var_f9 * 127.0f);
|
||||
break;
|
||||
case 17:
|
||||
g_env_light.mMoyaMode = 8;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
case 18:
|
||||
g_env_light.mMoyaMode = 9;
|
||||
g_env_light.mMoyaCount = var_f9 * 50.0f;
|
||||
break;
|
||||
}
|
||||
} else if (i_this->field_0x56c != 0) {
|
||||
wether_tag_efect_reset(i_this);
|
||||
}
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
|
@ -267,17 +558,14 @@ static asm void wether_tag_efect_move(kytag00_class* param_0) {
|
|||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/wether_tag_efect_move__FP13kytag00_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8046C660-8046C684 000FC0 0024+00 1/0 0/0 0/0 .text daKytag00_Draw__FP13kytag00_class
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daKytag00_Draw(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/daKytag00_Draw__FP13kytag00_class.s"
|
||||
static int daKytag00_Draw(kytag00_class* i_this) {
|
||||
wether_tag_efect_move(i_this);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046C9BC-8046C9C0 00003C 0004+00 0/0 0/0 0/0 .rodata @4101 */
|
||||
|
@ -344,60 +632,143 @@ COMPILER_STRIP_GATE(0x8046C9DC, &lit_4147);
|
|||
#pragma pop
|
||||
|
||||
/* 8046C684-8046C76C 000FE4 00E8+00 1/0 0/0 0/0 .text daKytag00_Execute__FP13kytag00_class */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
static int daKytag00_Execute(kytag00_class* i_this) {
|
||||
BOOL var_r30 = true;
|
||||
|
||||
if (i_this->field_0x571 != 0xFF) {
|
||||
s32 room_no = dComIfGp_roomControl_getStayNo();
|
||||
if (dComIfGs_isSwitch(i_this->field_0x571, room_no)) {
|
||||
var_r30 = 0;
|
||||
}
|
||||
} else if (i_this->field_0x572 != 0xFF) {
|
||||
s32 room_no = dComIfGp_roomControl_getStayNo();
|
||||
if (!dComIfGs_isSwitch(i_this->field_0x572, room_no)) {
|
||||
var_r30 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (var_r30 == TRUE) {
|
||||
cLib_addCalc(&i_this->field_0x588, 1.0f, 0.1f, 0.01f, 0.0001f);
|
||||
} else {
|
||||
cLib_addCalc(&i_this->field_0x588, 0.0f, 0.1f, 0.01f, 0.0001f);
|
||||
}
|
||||
|
||||
wether_tag_move(i_this);
|
||||
return 1;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daKytag00_Execute(kytag00_class* param_0) {
|
||||
static asm int daKytag00_Execute(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/daKytag00_Execute__FP13kytag00_class.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* 8046C76C-8046C774 0010CC 0008+00 1/0 0/0 0/0 .text daKytag00_IsDelete__FP13kytag00_class */
|
||||
static bool daKytag00_IsDelete(kytag00_class* param_0) {
|
||||
return true;
|
||||
static int daKytag00_IsDelete(kytag00_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 8046C774-8046C7BC 0010D4 0048+00 1/0 0/0 0/0 .text daKytag00_Delete__FP13kytag00_class
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daKytag00_Delete(kytag00_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/daKytag00_Delete__FP13kytag00_class.s"
|
||||
static int daKytag00_Delete(kytag00_class* i_this) {
|
||||
wether_tag_reset(i_this);
|
||||
wether_tag_efect_reset(i_this);
|
||||
g_env_light.mMoyaCount = 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8046C7BC-8046C978 00111C 01BC+00 1/0 0/0 0/0 .text daKytag00_Create__FP10fopAc_ac_c */
|
||||
// matches with literals
|
||||
#ifdef NONMATCHING
|
||||
static int daKytag00_Create(fopAc_ac_c* i_this) {
|
||||
fopAcM_SetupActor(i_this, kytag00_class);
|
||||
kytag00_class* a_this = (kytag00_class*)i_this;
|
||||
|
||||
a_this->field_0x56e = 0;
|
||||
a_this->field_0x56f = fopAcM_GetParam(a_this) & 0xFF;
|
||||
a_this->field_0x570 = (fopAcM_GetParam(a_this) >> 8) & 0xFF;
|
||||
a_this->field_0x578 = (fopAcM_GetParam(a_this) >> 0x10) & 0xFF;
|
||||
a_this->field_0x57c = (fopAcM_GetParam(a_this) >> 0x18) & 0xFF;
|
||||
a_this->field_0x571 = a_this->current.angle.x & 0xFF;
|
||||
a_this->field_0x572 = (a_this->current.angle.x >> 8) & 0xFF;
|
||||
|
||||
BOOL var_r30 = true;
|
||||
|
||||
if (a_this->field_0x571 != 0xFF) {
|
||||
s32 room_no = dComIfGp_roomControl_getStayNo();
|
||||
if (dComIfGs_isSwitch(a_this->field_0x571, room_no)) {
|
||||
var_r30 = 0;
|
||||
}
|
||||
} else if (a_this->field_0x572 != 0xFF) {
|
||||
s32 room_no = dComIfGp_roomControl_getStayNo();
|
||||
if (!dComIfGs_isSwitch(a_this->field_0x572, room_no)) {
|
||||
var_r30 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if (var_r30 == TRUE) {
|
||||
a_this->field_0x588 = 1.0f;
|
||||
} else {
|
||||
a_this->field_0x588 = 0.0f;
|
||||
}
|
||||
|
||||
if (a_this->field_0x578 == 0xFF) {
|
||||
a_this->field_0x578 = 10;
|
||||
}
|
||||
|
||||
if (a_this->field_0x57c == 0xFF) {
|
||||
a_this->field_0x57c = 10;
|
||||
}
|
||||
|
||||
a_this->field_0x580 = a_this->mScale.x * 5000.0f;
|
||||
a_this->field_0x584 = a_this->mScale.x * 5000.0f + a_this->field_0x578 * 100.0f;
|
||||
a_this->field_0x56c = 0;
|
||||
a_this->field_0x56d = 0;
|
||||
g_env_light.mMoyaCount = 0;
|
||||
|
||||
wether_tag_efect_move(a_this);
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daKytag00_Create(fopAc_ac_c* param_0) {
|
||||
static asm int daKytag00_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/kytag/d_a_kytag00/d_a_kytag00/daKytag00_Create__FP10fopAc_ac_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
#endif
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8046CA78-8046CA98 -00001 0020+00 1/0 0/0 0/0 .data l_daKytag00_Method */
|
||||
SECTION_DATA static void* l_daKytag00_Method[8] = {
|
||||
(void*)daKytag00_Create__FP10fopAc_ac_c,
|
||||
(void*)daKytag00_Delete__FP13kytag00_class,
|
||||
(void*)daKytag00_Execute__FP13kytag00_class,
|
||||
(void*)daKytag00_IsDelete__FP13kytag00_class,
|
||||
(void*)daKytag00_Draw__FP13kytag00_class,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
static actor_method_class l_daKytag00_Method = {
|
||||
(process_method_func)daKytag00_Create, (process_method_func)daKytag00_Delete,
|
||||
(process_method_func)daKytag00_Execute, (process_method_func)daKytag00_IsDelete,
|
||||
(process_method_func)daKytag00_Draw,
|
||||
};
|
||||
|
||||
/* 8046CA98-8046CAC8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_KYTAG00 */
|
||||
SECTION_DATA extern void* g_profile_KYTAG00[12] = {
|
||||
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
|
||||
(void*)0x02AA0000, (void*)&g_fpcLf_Method,
|
||||
(void*)0x0000058C, (void*)NULL,
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x005E0000, (void*)&l_daKytag00_Method,
|
||||
(void*)0x00044000, (void*)NULL,
|
||||
extern actor_process_profile_definition g_profile_KYTAG00 = {
|
||||
-3,
|
||||
7,
|
||||
-3,
|
||||
PROC_KYTAG00,
|
||||
&g_fpcLf_Method.mBase,
|
||||
sizeof(kytag00_class),
|
||||
0,
|
||||
0,
|
||||
&g_fopAc_Method.base,
|
||||
94,
|
||||
&l_daKytag00_Method,
|
||||
0x44000,
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
|
|
@ -28,7 +28,7 @@ static void dice_wether_execute(u8 i_weatherMode, f32 i_weatherTime, f32 i_curre
|
|||
dScnKy_env_light_c* env_light = i_dKy_getEnvlight();
|
||||
env_light->mDiceWeatherMode = i_weatherMode;
|
||||
|
||||
if (env_light->mDiceWeatherMode != 0xFF) {
|
||||
if (env_light->mDiceWeatherMode != DICE_MODE_DONE_e) {
|
||||
env_light->mDiceWeatherTime =
|
||||
i_currentTime + i_weatherTime + cM_rndF(i_weatherTime) + cM_rndF(i_weatherTime);
|
||||
|
||||
|
@ -38,7 +38,7 @@ static void dice_wether_execute(u8 i_weatherMode, f32 i_weatherTime, f32 i_curre
|
|||
|
||||
env_light->mDiceWeatherCounter++;
|
||||
} else {
|
||||
env_light->mDiceWeatherMode = 0;
|
||||
env_light->mDiceWeatherMode = DICE_MODE_SUNNY_e;
|
||||
env_light->mDiceWeatherState++;
|
||||
}
|
||||
}
|
||||
|
@ -105,17 +105,17 @@ static void dKy_event_proc() {
|
|||
f32 current_time = dComIfGs_getTime();
|
||||
|
||||
switch (env_light->mDiceWeatherState) {
|
||||
case 0:
|
||||
case DICE_STATE_RESET_e:
|
||||
if (current_time > env_light->mDiceWeatherChangeTime &&
|
||||
current_time - env_light->mDiceWeatherChangeTime < 15.0f)
|
||||
{
|
||||
env_light->mDiceWeatherState = 1;
|
||||
env_light->mDiceWeatherState = DICE_STATE_INIT_e;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
case DICE_STATE_INIT_e:
|
||||
u8 table_no = cM_rndF(12.99f);
|
||||
if (table_no >= 8) {
|
||||
env_light->mDiceWeatherState = 3;
|
||||
env_light->mDiceWeatherState = DICE_STATE_NEXT_e;
|
||||
} else {
|
||||
env_light->mDiceWeatherCurrPattern = S_wether_table[table_no];
|
||||
env_light->mDiceWeatherCounter = 0;
|
||||
|
@ -152,7 +152,7 @@ static void dKy_event_proc() {
|
|||
env_light->mDiceWeatherState++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
case DICE_STATE_EXEC_e:
|
||||
if (current_time > env_light->mDiceWeatherTime &&
|
||||
current_time - env_light->mDiceWeatherTime < 180.0f)
|
||||
{
|
||||
|
@ -185,7 +185,7 @@ static void dKy_event_proc() {
|
|||
}
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
case DICE_STATE_NEXT_e:
|
||||
u8 time_table_no = cM_rndF(7.99f);
|
||||
env_light->mDiceWeatherChangeTime = current_time + S_time_table[time_table_no];
|
||||
|
||||
|
@ -193,19 +193,19 @@ static void dKy_event_proc() {
|
|||
env_light->mDiceWeatherChangeTime -= 360.0f;
|
||||
}
|
||||
|
||||
env_light->mDiceWeatherState = 0;
|
||||
env_light->mDiceWeatherState = DICE_STATE_RESET_e;
|
||||
break;
|
||||
}
|
||||
|
||||
if (g_env_light.field_0x130b == 1) {
|
||||
env_light->mDiceWeatherMode = 6;
|
||||
env_light->mDiceWeatherMode = DICE_MODE_UNK6_e;
|
||||
}
|
||||
|
||||
if (g_env_light.mColPatMode == 0 && g_env_light.mColPatModeGather == 0) {
|
||||
u8 weather_colpat;
|
||||
|
||||
switch (env_light->mDiceWeatherMode) {
|
||||
case 0:
|
||||
case DICE_MODE_SUNNY_e:
|
||||
weather_colpat = 0;
|
||||
if (g_env_light.mThunderEff.mMode == 1) {
|
||||
g_env_light.mThunderEff.mMode = 0;
|
||||
|
@ -213,12 +213,12 @@ static void dKy_event_proc() {
|
|||
|
||||
dice_rain_minus();
|
||||
break;
|
||||
case 1:
|
||||
case DICE_MODE_CLOUDY_e:
|
||||
g_env_light.mThunderEff.mMode = 0;
|
||||
weather_colpat = 1;
|
||||
dice_rain_minus();
|
||||
break;
|
||||
case 2:
|
||||
case DICE_MODE_RAIN_LIGHT_e:
|
||||
weather_colpat = 1;
|
||||
if (env_light->mRainCount < 40) {
|
||||
env_light->mRainCount++;
|
||||
|
@ -228,21 +228,21 @@ static void dKy_event_proc() {
|
|||
dKyw_rain_set(env_light->mRainCount);
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
case DICE_MODE_THUNDER_HEAVY_e:
|
||||
g_env_light.mThunderEff.mMode = 1;
|
||||
case 3:
|
||||
case DICE_MODE_RAIN_HEAVY_e:
|
||||
weather_colpat = 2;
|
||||
if (env_light->mRainCount < 250) {
|
||||
env_light->mRainCount++;
|
||||
dKyw_rain_set(env_light->mRainCount);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
case DICE_MODE_THUNDER_LIGHT_e:
|
||||
weather_colpat = 1;
|
||||
g_env_light.mThunderEff.mMode = 1;
|
||||
dice_rain_minus();
|
||||
break;
|
||||
case 6:
|
||||
case DICE_MODE_UNK6_e:
|
||||
weather_colpat = 0;
|
||||
if (g_env_light.mThunderEff.mMode == 1) {
|
||||
g_env_light.mThunderEff.mMode = 0;
|
||||
|
|
|
@ -37,7 +37,7 @@ static void fish_set(fopAc_ac_c* i_this, fish_data_s* data) {
|
|||
}
|
||||
u32 param = data->param;
|
||||
pos = data->pos;
|
||||
if ((param == 1u) && envLight->field_0x12fe != 2) {
|
||||
if ((param == 1u) && envLight->mPondSeason != 2) {
|
||||
param = 2;
|
||||
}
|
||||
param |= data->field_0x10 << 8;
|
||||
|
@ -145,9 +145,9 @@ static int daNpc_Fish_Create(fopAc_ac_c* i_this) {
|
|||
} else {
|
||||
dScnKy_env_light_c* envLight = i_dKy_getEnvlight();
|
||||
s32 param = 0;
|
||||
if (envLight->field_0x12fe == 2) {
|
||||
if (envLight->mPondSeason == 2) {
|
||||
param = 160;
|
||||
} else if (envLight->field_0x12fe == 3) {
|
||||
} else if (envLight->mPondSeason == 3) {
|
||||
param = 64;
|
||||
}
|
||||
if (param != 0) {
|
||||
|
@ -156,7 +156,7 @@ static int daNpc_Fish_Create(fopAc_ac_c* i_this) {
|
|||
NULL, -1);
|
||||
}
|
||||
}
|
||||
if (g_env_light.field_0x12fe == 2) {
|
||||
if (g_env_light.mPondSeason == 2) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
pos.set(cM_rndFX(700.0f) + -2936.0f, 0.0f, cM_rndFX(700.0f) + -7865.0f);
|
||||
csXyz angle(0, 0, -1);
|
||||
|
|
|
@ -1121,11 +1121,11 @@ static int daTagTWGate_Create(fopAc_ac_c* i_actor) {
|
|||
inline daTagTWGate_c::~daTagTWGate_c() {
|
||||
dComIfG_resDelete(&mPhaseZevArc, l_zevParamTbl[mType].mArcName);
|
||||
|
||||
if (mPhaseMdRes.id != cPhs_ZERO_e) {
|
||||
if (mPhaseMdRes.id != cPhs_INIT_e) {
|
||||
dComIfG_resDelete(&mPhaseMdRes, "TWGate_Md");
|
||||
}
|
||||
|
||||
if (mPhasePyRes.id != cPhs_ZERO_e) {
|
||||
if (mPhasePyRes.id != cPhs_INIT_e) {
|
||||
dComIfG_resDelete(&mPhasePyRes, mIsWolf ? "TWGate_Wf" : "TWGate_Lk");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ int daTagMagne_c::create() {
|
|||
fopAcM_SetupActor(this, daTagMagne_c);
|
||||
|
||||
if (mTagMagne != NULL && mTagMagne->current.roomNo != current.roomNo) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
if (!Create()) {
|
||||
|
|
|
@ -886,7 +886,7 @@ static BOOL cDyl_Initialized;
|
|||
/* 800185C0-80018688 012F00 00C8+00 1/1 1/1 0/0 .text cDyl_LinkASync__Fs */
|
||||
int cDyl_LinkASync(s16 i_ProfName) {
|
||||
if (cDyl_Initialized == false) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
if (i_ProfName >= ARRAY_SIZE(DMC)) {
|
||||
|
@ -905,7 +905,7 @@ int cDyl_LinkASync(s16 i_ProfName) {
|
|||
return cPhs_ERROR_e;
|
||||
}
|
||||
} else {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -985,7 +985,7 @@ int cDylPhs::Link(request_of_phase_process_class* i_phase, s16 param_1) {
|
|||
(request_of_phase_process_fn)cDylPhs::phase_03
|
||||
};
|
||||
|
||||
if (i_phase->id == cPhs_TWO_e) {
|
||||
if (i_phase->id == cPhs_NEXT_e) {
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
|
@ -997,9 +997,9 @@ int cDylPhs::Link(request_of_phase_process_class* i_phase, s16 param_1) {
|
|||
int cDylPhs::Unlink(request_of_phase_process_class* i_phase, s16 i_ProfName) {
|
||||
int ret;
|
||||
|
||||
if (i_phase->id == cPhs_TWO_e) {
|
||||
if (i_phase->id == cPhs_NEXT_e) {
|
||||
ret = cDyl_Unlink(i_ProfName);
|
||||
i_phase->id = cPhs_ZERO_e;
|
||||
i_phase->id = cPhs_INIT_e;
|
||||
} else {
|
||||
ret = 0;
|
||||
}
|
||||
|
|
|
@ -12656,19 +12656,19 @@ int daAlink_c::create() {
|
|||
mAttentionInfo.mFlags = -1;
|
||||
|
||||
if (!i_dComIfGp_getEventManager().dataLoaded()) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
setArcName(i_checkWolf());
|
||||
setOriginalHeap(&field_0x0638, 0xA2800);
|
||||
if (dComIfG_resLoad(&mPhaseReq, mArcName, field_0x0638) != cPhs_COMPLEATE_e) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
setShieldArcName();
|
||||
setOriginalHeap(&field_0x0648, 0x7000);
|
||||
if (dComIfG_resLoad(&mShieldPhaseReq, mShieldArcName, field_0x0648) != cPhs_COMPLEATE_e) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
if (!fopAcM_entrySolidHeap(this, daAlink_createHeap, 0xC003E930)) {
|
||||
|
@ -12708,7 +12708,7 @@ int daAlink_c::create() {
|
|||
!fopAcIt_Judge((fopAcIt_JudgeFunc)daAlink_searchLightBall, NULL)) ||
|
||||
(horseStart && i_dComIfGp_getHorseActor() == NULL))
|
||||
{
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
if (var_r24) {
|
||||
|
|
|
@ -1697,7 +1697,7 @@ int daNpcT_c::loadRes(s8 const* resNoList, char const** resNameList) {
|
|||
}
|
||||
}
|
||||
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
|
||||
/* 801484AC-8014852C 142DEC 0080+00 0/0 0/0 58/58 .text deleteRes__8daNpcT_cFPCScPPCc */
|
||||
|
|
|
@ -1026,7 +1026,7 @@ int dComIfG_play_c::getLayerNo_common_common(const char* i_stageName, int i_room
|
|||
|
||||
// Stage is Fishing Pond or Hena's Hut
|
||||
else if (!strcmp(i_stageName, "F_SP127") || !strcmp(i_stageName, "R_SP127")) {
|
||||
switch (g_env_light.field_0x12fe) {
|
||||
switch (g_env_light.mPondSeason) {
|
||||
case 1:
|
||||
o_layer = 0;
|
||||
break;
|
||||
|
@ -1270,7 +1270,7 @@ static int phase_1(char* i_arcName) {
|
|||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
|
||||
/* 8002CE38-8002CEB4 027778 007C+00 1/0 0/0 0/0 .text phase_2__FPc */
|
||||
|
@ -1296,7 +1296,7 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* i_arcNa
|
|||
static int (*l_method[3])(void*) = {(int (*)(void*))phase_1, (int (*)(void*))phase_2,
|
||||
(int (*)(void*))phase_3};
|
||||
|
||||
if (i_phase->id == cPhs_TWO_e) {
|
||||
if (i_phase->id == cPhs_NEXT_e) {
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
|
@ -1333,7 +1333,7 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* i_resNa
|
|||
static int (*l_method[3])(void*) = {(int (*)(void*))phase_01, (int (*)(void*))phase_02,
|
||||
(int (*)(void*))phase_03};
|
||||
|
||||
if (i_phase->id == cPhs_TWO_e) {
|
||||
if (i_phase->id == cPhs_NEXT_e) {
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
|
@ -1344,12 +1344,12 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* i_resNa
|
|||
/* 8002D008-8002D06C 027948 0064+00 1/1 10/10 540/540 .text
|
||||
* dComIfG_resDelete__FP30request_of_phase_process_classPCc */
|
||||
int dComIfG_resDelete(request_of_phase_process_class* i_phase, char const* i_resName) {
|
||||
if (i_phase->id != cPhs_TWO_e) {
|
||||
if (i_phase->id != cPhs_NEXT_e) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
dComIfG_deleteObjectResMain(i_resName);
|
||||
i_phase->id = cPhs_ZERO_e;
|
||||
i_phase->id = cPhs_INIT_e;
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -2184,7 +2184,7 @@ void dComIfGs_setWarpMarkFlag(u8) {}
|
|||
/* 8002F314-8002F328 029C54 0014+00 0/0 0/0 1/1 .text __ct__19dComIfG_resLoader_cFv */
|
||||
dComIfG_resLoader_c::dComIfG_resLoader_c() {
|
||||
field_0x0 = NULL;
|
||||
field_0x4.id = cPhs_ZERO_e;
|
||||
field_0x4.id = cPhs_INIT_e;
|
||||
field_0xc = 0;
|
||||
}
|
||||
|
||||
|
@ -2193,7 +2193,7 @@ dComIfG_resLoader_c::~dComIfG_resLoader_c() {
|
|||
if (field_0x0 != NULL) {
|
||||
for (int i = field_0xc; i >= 0; i--) {
|
||||
dComIfG_resDelete(&field_0x4, field_0x0[i]);
|
||||
field_0x4.id = cPhs_TWO_e;
|
||||
field_0x4.id = cPhs_NEXT_e;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2206,8 +2206,8 @@ int dComIfG_resLoader_c::load(char const** i_resNameTbl, JKRHeap* i_heap) {
|
|||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
if (field_0x0[field_0xc + 1][0] != 0) {
|
||||
field_0xc++;
|
||||
field_0x4.id = cPhs_ZERO_e;
|
||||
phase_state = cPhs_ZERO_e;
|
||||
field_0x4.id = cPhs_INIT_e;
|
||||
phase_state = cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -2809,11 +2809,11 @@ static void layerTableLoader(void* i_data, dStage_dt_c* stageDt, int roomNo) {
|
|||
dStage_dt_c_decode(i_data, stageDt, l_layerFuncTableA, ARRAY_SIZE(l_layerFuncTableA));
|
||||
|
||||
dStage_Elst_c* elst = i_dComIfGp_getStage()->getElst();
|
||||
if (elst != NULL && newRoomNo >= 0 && elst->field_0x0 > newRoomNo) {
|
||||
dStage_Elst_c::unkData* d = elst->field_0x4;
|
||||
if (elst != NULL && newRoomNo >= 0 && elst->m_entryNum > newRoomNo) {
|
||||
dStage_Elst_data* d = elst->m_entries;
|
||||
int layer = dComIfG_play_c::getLayerNo(0);
|
||||
dStage_setLayerTagName(l_envLayerFuncTable, ARRAY_SIZE(l_envLayerFuncTable),
|
||||
d[newRoomNo].field_0x0[layer]);
|
||||
d[newRoomNo].m_layerTable[layer]);
|
||||
dStage_dt_c_decode(i_data, stageDt, l_envLayerFuncTable, ARRAY_SIZE(l_envLayerFuncTable));
|
||||
} else {
|
||||
dStage_setLayerTagName(l_envLayerFuncTable, ARRAY_SIZE(l_envLayerFuncTable), 0);
|
||||
|
|
|
@ -1594,7 +1594,7 @@ static void envcolor_init() {
|
|||
g_env_light.mpSchedule = dKyd_schejule_getp();
|
||||
}
|
||||
|
||||
g_env_light.mNowRoom = dComIfGp_roomControl_getStayNo();
|
||||
g_env_light.mEnvrIdxPrev = dComIfGp_roomControl_getStayNo();
|
||||
g_env_light.mEnvrIdxCurr = dComIfGp_roomControl_getStayNo();
|
||||
g_env_light.mColPatBlend = 1.0f;
|
||||
g_env_light.field_0x12b0 = 0;
|
||||
|
@ -1729,7 +1729,7 @@ void dKy_clear_game_init() {
|
|||
g_env_light.mDarkDaytime = 120.0f;
|
||||
|
||||
g_env_light.mDarktimeWeek = 0;
|
||||
g_env_light.field_0x12fe = 0;
|
||||
g_env_light.mPondSeason = 0;
|
||||
g_env_light.field_0x130a = 0;
|
||||
g_env_light.field_0x12cc = 0;
|
||||
g_env_light.field_0x130c = 0;
|
||||
|
@ -3668,7 +3668,7 @@ void dScnKy_env_light_c::drawKankyo() {
|
|||
setSunpos();
|
||||
SetBaseLight();
|
||||
setLight();
|
||||
dKy_setLight_nowroom(g_env_light.mNowRoom);
|
||||
dKy_setLight_nowroom(g_env_light.mEnvrIdxPrev);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
|
@ -4936,7 +4936,7 @@ u8 dKy_pol_sound_get(cBgS_PolyInfo const* p_poly) {
|
|||
}
|
||||
|
||||
int att0 = dComIfG_Bgsp().GetPolyAtt0(*p_poly);
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.field_0x12fe == 4 &&
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.mPondSeason == 4 &&
|
||||
att0 == 4)
|
||||
{
|
||||
att0 = 13;
|
||||
|
@ -4966,7 +4966,7 @@ u8 dKy_pol_argument_get(cBgS_PolyInfo const* p_poly) {
|
|||
}
|
||||
|
||||
int att0 = dComIfG_Bgsp().GetPolyAtt0(*p_poly);
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.field_0x12fe == 4 &&
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.mPondSeason == 4 &&
|
||||
att0 == 4)
|
||||
{
|
||||
att0 = 13;
|
||||
|
@ -4999,7 +4999,7 @@ asm u8 dKy_pol_eff_prim_get(cBgS_PolyInfo const* param_0, _GXColor* param_1) {
|
|||
}
|
||||
|
||||
int att0 = dComIfG_Bgsp().GetPolyAtt0(*p_poly);
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.field_0x12fe == 4 && att0 ==
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && g_env_light.mPondSeason == 4 && att0 ==
|
||||
4) { att0 = 13; } else if (!strcmp(dComIfGp_getStartStageName(), "D_MN05A") &&
|
||||
dComIfGs_isStageBossEnemy() && att0 == 11) { att0 = 7;
|
||||
}
|
||||
|
|
|
@ -248,307 +248,451 @@ static dKyd_lightSchejule l_time_attribute_boss[11] = {
|
|||
static stage_palette_info_class l_field_data[16] = {
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40,0x40},
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
{0x40, 0x40, 0x40},
|
||||
0x40,
|
||||
0x40,
|
||||
0x40,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
},
|
||||
};
|
||||
|
||||
|
|
|
@ -828,8 +828,8 @@ static void wether_move_sun() {
|
|||
g_env_light.mpSunPacket->field_0x28 = 0;
|
||||
g_env_light.mpSunPacket->field_0x29 = 0;
|
||||
f32 tmp0 = FLOAT_LABEL(lit_4378);
|
||||
g_env_light.mpSunPacket->field_0x5c = tmp0;
|
||||
g_env_light.mpSunPacket->field_0x60 = tmp0;
|
||||
g_env_light.mpSunPacket->mVisibility = tmp0;
|
||||
g_env_light.mpSunPacket->mSunAlpha = tmp0;
|
||||
g_env_light.mpSunPacket->field_0x64 = tmp0;
|
||||
g_env_light.mpSunPacket->field_0x68 = tmp0;
|
||||
|
||||
|
@ -854,7 +854,7 @@ static void wether_move_sun() {
|
|||
g_env_light.mpSunLenzPacket->field_0x8c = lit_4611;
|
||||
f32 tmp0_2 = FLOAT_LABEL(lit_4378);
|
||||
g_env_light.mpSunLenzPacket->field_0x90 = tmp0_2;
|
||||
g_env_light.mpSunLenzPacket->field_0x98 = tmp0_2;
|
||||
g_env_light.mpSunLenzPacket->mDistFalloff = tmp0_2;
|
||||
g_env_light.mpSunLenzPacket->mDrawLenzInSky = false;
|
||||
dKyr_sun_move();
|
||||
dKyr_lenzflare_move();
|
||||
|
@ -1149,7 +1149,7 @@ static void wether_move_housi() {
|
|||
g_env_light.mpHousiPacket->mpResTex = (u8*)dComIfG_getObjectRes("Always", 0x5E);
|
||||
} else {
|
||||
if (g_env_light.field_0xea9 == 2) {
|
||||
if (g_env_light.field_0x12fe == 3) {
|
||||
if (g_env_light.mPondSeason == 3) {
|
||||
g_env_light.mpHousiPacket->mpResTex =
|
||||
(u8*)dComIfG_getStageRes("momiji64s3tc.bti");
|
||||
} else {
|
||||
|
@ -1528,8 +1528,8 @@ void dKyw_wether_proc() {
|
|||
|
||||
// Stage is Fishing Pond
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") &&
|
||||
(g_env_light.field_0x12fe == 1 || g_env_light.field_0x12fe == 3)) {
|
||||
if (g_env_light.field_0x12fe == 1) {
|
||||
(g_env_light.mPondSeason == 1 || g_env_light.mPondSeason == 3)) {
|
||||
if (g_env_light.mPondSeason == 1) {
|
||||
g_env_light.mHousiCount = 35;
|
||||
} else {
|
||||
g_env_light.mHousiCount = 30;
|
||||
|
|
|
@ -588,10 +588,10 @@ void dScnPly_c::offReset() {
|
|||
/* 80259C70-80259CAC 2545B0 003C+00 1/0 0/0 0/0 .text phase_00__FP9dScnPly_c */
|
||||
static int phase_00(dScnPly_c* scn) {
|
||||
if (!scn->resetGame()) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
mDoGph_gInf_c::offBlure();
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -614,15 +614,15 @@ static int phase_01(dScnPly_c* scn) {
|
|||
mDoAud_setSceneName(dComIfGp_getStartStageName(), start_room, layer);
|
||||
|
||||
if (!mDoAud_load1stDynamicWave()) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
}
|
||||
|
||||
/* 80259D7C-80259D84 2546BC 0008+00 1/0 0/0 0/0 .text phase_0__FP9dScnPly_c */
|
||||
static int phase_0(dScnPly_c* param_0) {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
|
||||
/* 80259D84-8025A438 2546C4 06B4+00 1/0 0/0 0/0 .text phase_1__FP9dScnPly_c */
|
||||
|
@ -741,10 +741,10 @@ static int phase_1(dScnPly_c* scn) {
|
|||
// Stage: Fishing Pond, Room: Fishing Pond
|
||||
if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && dComIfGp_getStartStageRoomNo() == 0 &&
|
||||
dComIfGp_getStartStagePoint() == 2) {
|
||||
g_env_light.field_0x12fe++;
|
||||
g_env_light.mPondSeason++;
|
||||
|
||||
if (g_env_light.field_0x12fe > 4) {
|
||||
g_env_light.field_0x12fe = 1;
|
||||
if (g_env_light.mPondSeason > 4) {
|
||||
g_env_light.mPondSeason = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -757,19 +757,19 @@ static int phase_1(dScnPly_c* scn) {
|
|||
if (dComIfG_syncStageRes("Stg_00") < 0) {
|
||||
dComIfG_setStageRes("Stg_00", NULL);
|
||||
}
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
|
||||
/* 8025A438-8025A4F8 254D78 00C0+00 1/0 0/0 0/0 .text phase_1_0__FP9dScnPly_c */
|
||||
static int phase_1_0(dScnPly_c* param_0) {
|
||||
if (dComIfG_syncStageRes("Stg_00")) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
dStage_infoCreate();
|
||||
dComIfG_setObjectRes("Event", (u8)0, NULL);
|
||||
dComIfGp_setCameraParamFileName(0, camparamarc);
|
||||
dComIfG_setObjectRes("CamParam", (u8)0, NULL);
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -779,7 +779,7 @@ static int phase_1_0(dScnPly_c* param_0) {
|
|||
static int phase_2(dScnPly_c* scn) {
|
||||
int tmp = dComIfG_syncAllObjectRes();
|
||||
if (tmp >= 0 && tmp != 0) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
int layer = dComIfG_play_c::getLayerNo(0);
|
||||
stage_stag_info_class* stag_info = i_dComIfGp_getStage()->getStagInfo();
|
||||
|
@ -791,7 +791,7 @@ static int phase_2(dScnPly_c* scn) {
|
|||
|
||||
dComIfGp_particle_readScene(particle_no, &scn->sceneCommand);
|
||||
dMsgObject_readMessageGroup(&scn->field_0x1d0);
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
|
@ -807,11 +807,11 @@ static asm int phase_2(dScnPly_c* param_0) {
|
|||
/* 8025A5D4-8025A654 254F14 0080+00 1/0 0/0 0/0 .text phase_3__FP9dScnPly_c */
|
||||
static int phase_3(dScnPly_c* scn) {
|
||||
if ((scn->sceneCommand != NULL && !scn->sceneCommand->sync()) || mDoAud_check1stDynamicWave()) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else if (!scn->field_0x1d0 == NULL && !scn->field_0x1d0->sync()) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -940,7 +940,7 @@ static int phase_4(dScnPly_c* i_this) {
|
|||
}
|
||||
|
||||
resPreLoadTime0 = OSGetTime();
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
#else
|
||||
#pragma push
|
||||
|
|
|
@ -135,12 +135,12 @@ int fopOvlpReq_Handler(overlap_request_class* i_overlapReq) {
|
|||
int phase_state = cPhs_Do(&i_overlapReq->field_0x18, i_overlapReq);
|
||||
|
||||
switch (phase_state) {
|
||||
case cPhs_TWO_e:
|
||||
case cPhs_NEXT_e:
|
||||
return fopOvlpReq_Handler(i_overlapReq);
|
||||
case cPhs_ZERO_e:
|
||||
return cPhs_ZERO_e;
|
||||
case cPhs_ONE_e:
|
||||
return cPhs_ZERO_e;
|
||||
case cPhs_INIT_e:
|
||||
return cPhs_INIT_e;
|
||||
case cPhs_LOADING_e:
|
||||
return cPhs_INIT_e;
|
||||
case cPhs_COMPLEATE_e:
|
||||
return cPhs_COMPLEATE_e;
|
||||
case cPhs_UNK3_e:
|
||||
|
|
|
@ -13,9 +13,9 @@
|
|||
* fopScnRq_phase_ClearOverlap__FP19scene_request_class */
|
||||
static cPhs__Step fopScnRq_phase_ClearOverlap(scene_request_class* i_sceneReq) {
|
||||
if (fopOvlpM_ClearOfReq() == 1) {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
} else {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -29,9 +29,9 @@ static cPhs__Step fopScnRq_phase_Execute(scene_request_class* i_sceneReq) {
|
|||
* fopScnRq_phase_IsDoingOverlap__FP19scene_request_class */
|
||||
static cPhs__Step fopScnRq_phase_IsDoingOverlap(scene_request_class* i_sceneReq) {
|
||||
if (fopOvlpM_IsDoingReq() == 1) {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
} else {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -39,9 +39,9 @@ static cPhs__Step fopScnRq_phase_IsDoingOverlap(scene_request_class* i_sceneReq)
|
|||
* fopScnRq_phase_IsDoneOverlap__FP19scene_request_class */
|
||||
static cPhs__Step fopScnRq_phase_IsDoneOverlap(scene_request_class* i_sceneReq) {
|
||||
if (fopOvlpM_IsDone() == 1) {
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
} else {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -56,7 +56,7 @@ static cPhs__Step fopScnRq_phase_Done(scene_request_class* i_sceneReq) {
|
|||
fopScnPause_Disable((scene_class*)fpcEx_SearchByID(i_sceneReq->mCrtReq.mCreatingID));
|
||||
}
|
||||
l_fopScnRq_IsUsingOfOverlap = 0;
|
||||
return cPhs_TWO_e;
|
||||
return cPhs_NEXT_e;
|
||||
}
|
||||
|
||||
/* 8001EF24-8001EF6C 019864 0048+00 1/0 0/0 0/0 .text fopScnRq_Execute__FP19scene_request_class */
|
||||
|
|
|
@ -117,11 +117,11 @@ s32 fpcBs_SubCreate(base_process_class* i_proc) {
|
|||
fpcBs_DeleteAppend(i_proc);
|
||||
i_proc->mUnk2 = 2;
|
||||
return 2;
|
||||
case cPhs_ZERO_e:
|
||||
case cPhs_INIT_e:
|
||||
case 1:
|
||||
i_proc->mInitState = 1;
|
||||
i_proc->mUnk2 = 0;
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
case 3:
|
||||
i_proc->mUnk2 = 3;
|
||||
return 3;
|
||||
|
|
|
@ -36,7 +36,7 @@ void fpcNdRq_ToRequestQ(node_create_request* i_NdCtReq) {
|
|||
* fpcNdRq_phase_IsCreated__FP19node_create_request */
|
||||
s32 fpcNdRq_phase_IsCreated(node_create_request* i_NdCtReq) {
|
||||
if (fpcCtRq_IsCreatingByID(i_NdCtReq->mCreatingID) == TRUE) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
return fpcEx_IsExist(i_NdCtReq->mCreatingID) == TRUE ? 2 : 3;
|
||||
}
|
||||
|
@ -61,7 +61,7 @@ s32 fpcNdRq_phase_IsDeleteTiming(node_create_request* i_NdCtReq) {
|
|||
/* 8002290C-8002293C 0030+00 s=2 e=0 z=0 None .text
|
||||
* fpcNdRq_phase_IsDeleted__FP19node_create_request */
|
||||
s32 fpcNdRq_phase_IsDeleted(node_create_request* i_NdCtReq) {
|
||||
return fpcDt_IsComplete() == 0 ? cPhs_ZERO_e : 2;
|
||||
return fpcDt_IsComplete() == 0 ? cPhs_INIT_e : 2;
|
||||
}
|
||||
|
||||
/* 8002293C-80022990 0054+00 s=2 e=0 z=0 None .text fpcNdRq_phase_Delete__FP19node_create_request
|
||||
|
@ -69,7 +69,7 @@ s32 fpcNdRq_phase_IsDeleted(node_create_request* i_NdCtReq) {
|
|||
s32 fpcNdRq_phase_Delete(node_create_request* i_NdCtReq) {
|
||||
if (i_NdCtReq->mNodeProc.mpNodeProc != NULL) {
|
||||
if (fpcDt_Delete(&i_NdCtReq->mNodeProc.mpNodeProc->mBase) == 0) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
i_NdCtReq->mNodeProc.mpNodeProc = NULL;
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
s32 fpcSCtRq_phase_Load(standard_create_request_class* i_SCtReq) {
|
||||
switch (fpcLd_Load(i_SCtReq->mLoadID)) {
|
||||
case 0:
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
case 4:
|
||||
return 2;
|
||||
case 5:
|
||||
|
@ -49,7 +49,7 @@ s32 fpcSCtRq_phase_IsComplete(standard_create_request_class* i_SCtReq) {
|
|||
process_node_class* procNode = (process_node_class*)i_SCtReq->mBase.mpRes;
|
||||
if (fpcBs_Is_JustOfType(g_fpcNd_type, procNode->mBase.mSubType) == 1) {
|
||||
if (fpcLy_IsCreatingMesg(&procNode->mLayer) == 1) {
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
return 2;
|
||||
|
@ -61,7 +61,7 @@ s32 fpcSCtRq_phase_PostMethod(standard_create_request_class* i_SCtReq) {
|
|||
if (i_SCtReq->unk_0x58 != NULL &&
|
||||
i_SCtReq->unk_0x58(i_SCtReq->mBase.mpRes, i_SCtReq->unk_0x5C) == 0)
|
||||
{
|
||||
return cPhs_ZERO_e;
|
||||
return cPhs_INIT_e;
|
||||
} else {
|
||||
return 2;
|
||||
}
|
||||
|
@ -79,11 +79,11 @@ s32 fpcSCtRq_Handler(standard_create_request_class* i_SCtReq) {
|
|||
s32 phase_state = cPhs_Do(&i_SCtReq->unk_0x48, i_SCtReq);
|
||||
|
||||
switch (phase_state) {
|
||||
case cPhs_TWO_e:
|
||||
case cPhs_NEXT_e:
|
||||
return fpcSCtRq_Handler(i_SCtReq);
|
||||
case cPhs_COMPLEATE_e:
|
||||
return cPhs_COMPLEATE_e;
|
||||
case cPhs_ONE_e:
|
||||
case cPhs_LOADING_e:
|
||||
case cPhs_ERROR_e:
|
||||
default:
|
||||
return phase_state;
|
||||
|
|
Loading…
Reference in New Issue