Replace launchtemplate and launchtask in battle anims (#2640)

* replace launchtemplate with createsprite using fix_launchtemplate.py

* tidy up script

* fix comment handing in fix_launchtemplate.py

* fix double comma after sprite template

* remove py script

* convert launchtask -> createvisualtask

* fix launchtask->createvisualtask issue

* fix ANIM_PAL ORs

* remove launchtemplate, launchtask macros

* fix pal macros in z moves

* fix bloom doom

* add F_PAL_ALL_BUT_DEF

* remove all ANIM_PAL_ usages

* devestating drake fix

* convert launchsoundtask and setblends

* Reworked CFRU macro PR

---------

Co-authored-by: ghoulslash <pokevoyager0@gmail.com>
Co-authored-by: Eduardo Quezada <eduardo602002@gmail.com>
This commit is contained in:
ghoulslash 2023-05-27 17:32:53 -04:00 committed by GitHub
parent d0e6ea7612
commit a929ae8b48
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 4731 additions and 4803 deletions

View File

@ -332,57 +332,3 @@
createvisualtask AnimTask_IsDoubleBattle, 0 createvisualtask AnimTask_IsDoubleBattle, 0
jumprettrue \ptr jumprettrue \ptr
.endm .endm
@ keep CFRU macros cause I'm lazy. todo: update to createsprite and createvisualtask, respectively
.macro launchtemplate launchtemplatePtr launchtemplatePriority launchtemplateArgsNo launchtemplatearg0 launchtemplatearg1 launchtemplatearg2 launchtemplatearg3 launchtemplatearg4 launchtemplatearg5 launchtemplatearg6 launchtemplatearg7 launchtemplatearg8
.byte 0x2
.word \launchtemplatePtr
.byte \launchtemplatePriority
.byte \launchtemplateArgsNo
.hword \launchtemplatearg0
.hword \launchtemplatearg1
.hword \launchtemplatearg2
.hword \launchtemplatearg3
.hword \launchtemplatearg4
.hword \launchtemplatearg5
.hword \launchtemplatearg6
.hword \launchtemplatearg7
.hword \launchtemplatearg8
.endm
.macro launchtask launchtaskPtr launchtaskPriority launchtaskArgsNo launchtaskarg0 launchtaskarg1 launchtaskarg2 launchtaskarg3 launchtaskarg4 launchtaskarg5 launchtaskarg6 launchtaskarg7 launchtaskarg8
.byte 0x3
.word \launchtaskPtr
.byte \launchtaskPriority
.byte \launchtaskArgsNo
.hword \launchtaskarg0
.hword \launchtaskarg1
.hword \launchtaskarg2
.hword \launchtaskarg3
.hword \launchtaskarg4
.hword \launchtaskarg5
.hword \launchtaskarg6
.hword \launchtaskarg7
.hword \launchtaskarg8
.endm
.macro setblends setblends_value
.byte 0xC
.hword \setblends_value
.endm
.macro launchsoundtask launchsoundtaskPtr launchsoundtaskArgsNo launchsoundtaskarg0 launchsoundtaskarg1 launchsoundtaskarg2 launchsoundtaskarg3 launchsoundtaskarg4 launchsoundtaskarg5 launchsoundtaskarg6 launchsoundtaskarg7 launchsoundtaskarg8
.byte 0x1F
.word \launchsoundtaskPtr
.byte \launchsoundtaskArgsNo
.hword \launchsoundtaskarg0
.hword \launchsoundtaskarg1
.hword \launchsoundtaskarg2
.hword \launchsoundtaskarg3
.hword \launchsoundtaskarg4
.hword \launchsoundtaskarg5
.hword \launchsoundtaskarg6
.hword \launchsoundtaskarg7
.hword \launchsoundtaskarg8
.endm

File diff suppressed because it is too large Load Diff

View File

@ -594,21 +594,6 @@
#define ANIM_WEATHER_HAIL 4 #define ANIM_WEATHER_HAIL 4
#define ANIM_WEATHER_SNOW 5 #define ANIM_WEATHER_SNOW 5
// mon pal blend
#define ANIM_PAL_BG 0x1
#define ANIM_PAL_ATK 0x2
#define ANIM_PAL_DEF 0x4
#define ANIM_PAL_ATK_PARTNER 0x8
#define ANIM_PAL_DEF_PARTNER 0x10
#define ANIM_PAL_ALL 0x1f
#define ANIM_PAL_BG_4 0x20
#define ANIM_PAL_BG_5 0x40
#define ANIM_PAL_ALL_BATTLERS 0x780
#define ANIM_PAL_PLAYER1 0x80
#define ANIM_PAL_PLAYER2 0x100
#define ANIM_PAL_OPPONENT1 0x200
#define ANIM_PAL_OPPONENT2 0x400
// horseshoe/fist frames // horseshoe/fist frames
#define ANIM_RIGHT_FIST 0 #define ANIM_RIGHT_FIST 0
#define ANIM_LEFT_FIST 2 #define ANIM_LEFT_FIST 2
@ -626,19 +611,18 @@
// Flags given to various functions to indicate which palettes to consider. // Flags given to various functions to indicate which palettes to consider.
// Handled by UnpackSelectedBattlePalettes // Handled by UnpackSelectedBattlePalettes
#define F_PAL_BG (1 << 0) #define F_PAL_BG (1 << 0)
#define F_PAL_ATTACKER (1 << 1) #define F_PAL_ATTACKER (1 << 1)
#define F_PAL_TARGET (1 << 2) #define F_PAL_TARGET (1 << 2)
#define F_PAL_ATK_PARTNER (1 << 3) #define F_PAL_ATK_PARTNER (1 << 3)
#define F_PAL_DEF_PARTNER (1 << 4) #define F_PAL_DEF_PARTNER (1 << 4)
#define F_PAL_ANIM_1 (1 << 5) // Palette set for GetBattleAnimBg1Data/GetBgDataForTransform. Only used (ineffectually?) by Aromatherapy. #define F_PAL_ANIM_1 (1 << 5) // Palette set for GetBattleAnimBg1Data/GetBgDataForTransform. Only used (ineffectually?) by Aromatherapy.
#define F_PAL_ANIM_2 (1 << 6) // Palette set for GetBattleAnimBgData/GetBgDataForTransform. Unused. #define F_PAL_ANIM_2 (1 << 6) // Palette set for GetBattleAnimBgData/GetBgDataForTransform. Unused.
#define F_PAL_ATK_SIDE (F_PAL_ATTACKER | F_PAL_ATK_PARTNER) #define F_PAL_ATK_SIDE (F_PAL_ATTACKER | F_PAL_ATK_PARTNER)
#define F_PAL_DEF_SIDE (F_PAL_TARGET | F_PAL_DEF_PARTNER) #define F_PAL_DEF_SIDE (F_PAL_TARGET | F_PAL_DEF_PARTNER)
#define F_PAL_BATTLERS (F_PAL_ATK_SIDE | F_PAL_DEF_SIDE) #define F_PAL_BATTLERS (F_PAL_ATK_SIDE | F_PAL_DEF_SIDE)
// The below are only used by AnimTask_BlendBattleAnimPal to get battler sprite palettes by position rather than by role. #define F_PAL_ADJACENT (F_PAL_DEF_SIDE | F_PAL_ATK_PARTNER)
// It's redundant with F_PAL_BATTLERS, because they're only ever used together to refer to all the battlers at once. #define F_PAL_ALL_BUT_DEF (F_PAL_ATK_SIDE | F_PAL_DEF_PARTNER)
#define F_PAL_BATTLERS_2 (1 << 7 | 1 << 8 | 1 << 9 | 1 << 10) #define F_PAL_ALL_BUT_ATK_PARTNER (F_PAL_ATTACKER | F_PAL_DEF_SIDE)
#endif // GUARD_CONSTANTS_BATTLE_ANIM_H #endif // GUARD_CONSTANTS_BATTLE_ANIM_H