Ability name corrections.
This commit is contained in:
@@ -300,12 +300,12 @@ enum ability_e
|
|||||||
ABILITY_1_BEAK_BOMB = 0x1,
|
ABILITY_1_BEAK_BOMB = 0x1,
|
||||||
ABILITY_2_BEAK_BUSTER = 0x2,
|
ABILITY_2_BEAK_BUSTER = 0x2,
|
||||||
ABILITY_3_CAMERA_CONTROL = 0x3,
|
ABILITY_3_CAMERA_CONTROL = 0x3,
|
||||||
ABILITY_4_BEAR_PUNCH = 0x4,
|
ABILITY_4_CLAW_SWIPE = 0x4,
|
||||||
ABILITY_5_CLIMB = 0x5,
|
ABILITY_5_CLIMB = 0x5,
|
||||||
ABILITY_6_EGGS = 0x6,
|
ABILITY_6_EGGS = 0x6,
|
||||||
ABILITY_7_FLAP = 0x7,
|
ABILITY_7_FEATHERY_FLAP = 0x7,
|
||||||
ABILITY_8_FLIP = 0x8,
|
ABILITY_8_FLAP_FLIP = 0x8,
|
||||||
ABILITY_9_FLY = 0x9,
|
ABILITY_9_FLIGHT = 0x9,
|
||||||
ABILITY_A_HOLD_A_JUMP_HIGHER = 0xA,
|
ABILITY_A_HOLD_A_JUMP_HIGHER = 0xA,
|
||||||
ABILITY_B_RATATAT_RAP = 0xB,
|
ABILITY_B_RATATAT_RAP = 0xB,
|
||||||
ABILITY_C_ROLL = 0xC,
|
ABILITY_C_ROLL = 0xC,
|
||||||
|
@@ -19,5 +19,5 @@ lair_func_8038E0B0 = 0x8038E0B0;
|
|||||||
lair_func_8038E768 = 0x8038E768;
|
lair_func_8038E768 = 0x8038E768;
|
||||||
fight_func_803863F0 = 0x803863F0;
|
fight_func_803863F0 = 0x803863F0;
|
||||||
cutscene_func_8038C4E0 = 0x8038C4E0;
|
cutscene_func_8038C4E0 = 0x8038C4E0;
|
||||||
func_802DA498 = 0x802DA498;
|
learnedAllTutorialAbilities = 0x802DA498;
|
||||||
|
|
||||||
|
@@ -72,7 +72,7 @@ void chAttackTutorial_setState(Actor * this, s32 arg1){
|
|||||||
{
|
{
|
||||||
case 5:
|
case 5:
|
||||||
if(this->unk10_12 == 0){
|
if(this->unk10_12 == 0){
|
||||||
ability_unlock(ABILITY_4_BEAR_PUNCH);
|
ability_unlock(ABILITY_4_CLAW_SWIPE);
|
||||||
func_80311480(0xDFF, 0xE, this->unk1C, this->marker, func_80387288, func_80387258);
|
func_80311480(0xDFF, 0xE, this->unk1C, this->marker, func_80387288, func_80387258);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -102,7 +102,7 @@ void chAttackTutorial_setState(Actor * this, s32 arg1){
|
|||||||
}
|
}
|
||||||
|
|
||||||
int func_803874C4(void){
|
int func_803874C4(void){
|
||||||
return ability_isUnlocked(ABILITY_4_BEAR_PUNCH)
|
return ability_isUnlocked(ABILITY_4_CLAW_SWIPE)
|
||||||
&& ability_isUnlocked(ABILITY_C_ROLL)
|
&& ability_isUnlocked(ABILITY_C_ROLL)
|
||||||
&& ability_isUnlocked(ABILITY_B_RATATAT_RAP);
|
&& ability_isUnlocked(ABILITY_B_RATATAT_RAP);
|
||||||
}
|
}
|
||||||
@@ -123,7 +123,7 @@ void chAttackTutorial_update(Actor *this){
|
|||||||
this->unk1C_y = this->position_y;
|
this->unk1C_y = this->position_y;
|
||||||
this->unk1C_z = this->position_z;}
|
this->unk1C_z = this->position_z;}
|
||||||
}
|
}
|
||||||
this->unk10_12 = (ability_isUnlocked(ABILITY_C_ROLL))? 2 : (ability_isUnlocked(ABILITY_4_BEAR_PUNCH)? 1:0);
|
this->unk10_12 = (ability_isUnlocked(ABILITY_C_ROLL))? 2 : (ability_isUnlocked(ABILITY_4_CLAW_SWIPE)? 1:0);
|
||||||
this->initialized = 1;
|
this->initialized = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -206,7 +206,7 @@ void func_80387764(ActorMarker * marker){
|
|||||||
func_8028F94C(2, actor->unk1C);
|
func_8028F94C(2, actor->unk1C);
|
||||||
}
|
}
|
||||||
//L80387848
|
//L80387848
|
||||||
if(!mapSpecificFlags_get(3) && func_802DA498() && temp_a2){
|
if(!mapSpecificFlags_get(3) && learnedAllTutorialAbilities() && temp_a2){
|
||||||
mapSpecificFlags_set(3, 1);
|
mapSpecificFlags_set(3, 1);
|
||||||
sp34 = 0xE12;
|
sp34 = 0xE12;
|
||||||
}//L80387898
|
}//L80387898
|
||||||
|
@@ -43,7 +43,7 @@ SM2900Struct D_8038AFB4[8] = {
|
|||||||
{0xdfb, 0xdfe, 5, ABILITY_F_DIVE},
|
{0xdfb, 0xdfe, 5, ABILITY_F_DIVE},
|
||||||
{ -1, 0xe00, 6, ABILITY_B_RATATAT_RAP},
|
{ -1, 0xe00, 6, ABILITY_B_RATATAT_RAP},
|
||||||
{0xe04, 0xe06, 8, ABILITY_0_BARGE},
|
{0xe04, 0xe06, 8, ABILITY_0_BARGE},
|
||||||
{ -1, 0xdfa, 4, ABILITY_8_FLIP},
|
{ -1, 0xdfa, 4, ABILITY_8_FLAP_FLIP},
|
||||||
{0xe01, 0xe03, 7, ABILITY_5_CLIMB},
|
{0xe01, 0xe03, 7, ABILITY_5_CLIMB},
|
||||||
{0xe10, 0xe11, 0x11, -1},
|
{0xe10, 0xe11, 0x11, -1},
|
||||||
};
|
};
|
||||||
@@ -54,13 +54,13 @@ s32 D_8038AFE4 = 0;
|
|||||||
/* .code */
|
/* .code */
|
||||||
int func_80388D80(void){
|
int func_80388D80(void){
|
||||||
return ability_isUnlocked(ABILITY_F_DIVE)
|
return ability_isUnlocked(ABILITY_F_DIVE)
|
||||||
|| ability_isUnlocked(ABILITY_4_BEAR_PUNCH)
|
|| ability_isUnlocked(ABILITY_4_CLAW_SWIPE)
|
||||||
|| ability_isUnlocked(ABILITY_C_ROLL)
|
|| ability_isUnlocked(ABILITY_C_ROLL)
|
||||||
|| ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
|| ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
||||||
|| ability_isUnlocked(ABILITY_0_BARGE)
|
|| ability_isUnlocked(ABILITY_0_BARGE)
|
||||||
|| ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
|| ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
||||||
|| ability_isUnlocked(ABILITY_7_FLAP)
|
|| ability_isUnlocked(ABILITY_7_FEATHERY_FLAP)
|
||||||
|| ability_isUnlocked(ABILITY_8_FLIP)
|
|| ability_isUnlocked(ABILITY_8_FLAP_FLIP)
|
||||||
|| ability_isUnlocked(ABILITY_5_CLIMB);
|
|| ability_isUnlocked(ABILITY_5_CLIMB);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,7 +70,7 @@ void func_80388E48(void){
|
|||||||
ability_setHasUsed(ABILITY_1_BEAK_BOMB);
|
ability_setHasUsed(ABILITY_1_BEAK_BOMB);
|
||||||
ability_setHasUsed(ABILITY_2_BEAK_BUSTER);
|
ability_setHasUsed(ABILITY_2_BEAK_BUSTER);
|
||||||
ability_setHasUsed(ABILITY_3_CAMERA_CONTROL);
|
ability_setHasUsed(ABILITY_3_CAMERA_CONTROL);
|
||||||
ability_setHasUsed(ABILITY_4_BEAR_PUNCH);
|
ability_setHasUsed(ABILITY_4_CLAW_SWIPE);
|
||||||
ability_setHasUsed(ABILITY_5_CLIMB);
|
ability_setHasUsed(ABILITY_5_CLIMB);
|
||||||
ability_setHasUsed(ABILITY_B_RATATAT_RAP);
|
ability_setHasUsed(ABILITY_B_RATATAT_RAP);
|
||||||
ability_setHasUsed(ABILITY_C_ROLL);
|
ability_setHasUsed(ABILITY_C_ROLL);
|
||||||
@@ -79,13 +79,13 @@ void func_80388E48(void){
|
|||||||
|
|
||||||
void func_80388EB0(void){
|
void func_80388EB0(void){
|
||||||
ability_unlock(ABILITY_F_DIVE);
|
ability_unlock(ABILITY_F_DIVE);
|
||||||
ability_unlock(ABILITY_4_BEAR_PUNCH);
|
ability_unlock(ABILITY_4_CLAW_SWIPE);
|
||||||
ability_unlock(ABILITY_C_ROLL);
|
ability_unlock(ABILITY_C_ROLL);
|
||||||
ability_unlock(ABILITY_B_RATATAT_RAP);
|
ability_unlock(ABILITY_B_RATATAT_RAP);
|
||||||
ability_unlock(ABILITY_0_BARGE);
|
ability_unlock(ABILITY_0_BARGE);
|
||||||
ability_unlock(ABILITY_A_HOLD_A_JUMP_HIGHER);
|
ability_unlock(ABILITY_A_HOLD_A_JUMP_HIGHER);
|
||||||
ability_unlock(ABILITY_7_FLAP);
|
ability_unlock(ABILITY_7_FEATHERY_FLAP);
|
||||||
ability_unlock(ABILITY_8_FLIP);
|
ability_unlock(ABILITY_8_FLAP_FLIP);
|
||||||
ability_unlock(ABILITY_5_CLIMB);
|
ability_unlock(ABILITY_5_CLIMB);
|
||||||
func_80388E48();
|
func_80388E48();
|
||||||
mapSpecificFlags_set(3,1);
|
mapSpecificFlags_set(3,1);
|
||||||
@@ -190,7 +190,7 @@ void func_803892C8(ActorMarker *marker, enum asset_e text_id, s32 arg2){
|
|||||||
Actor *actor;
|
Actor *actor;
|
||||||
|
|
||||||
actor = marker_getActor(marker);
|
actor = marker_getActor(marker);
|
||||||
if(!mapSpecificFlags_get(3) && func_802DA498()){
|
if(!mapSpecificFlags_get(3) && learnedAllTutorialAbilities()){
|
||||||
mapSpecificFlags_set(3, 1);
|
mapSpecificFlags_set(3, 1);
|
||||||
func_80311480(0xe12, 0xe, actor->position, actor->marker, func_803892C8, NULL);
|
func_80311480(0xe12, 0xe, actor->position, actor->marker, func_803892C8, NULL);
|
||||||
}//L8038933C
|
}//L8038933C
|
||||||
@@ -311,7 +311,7 @@ void SM_func_80389610(Actor * this){
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 4://L80389848
|
case 4://L80389848
|
||||||
if( !ability_isUnlocked(ABILITY_4_BEAR_PUNCH)
|
if( !ability_isUnlocked(ABILITY_4_CLAW_SWIPE)
|
||||||
|| !ability_isUnlocked(ABILITY_C_ROLL)
|
|| !ability_isUnlocked(ABILITY_C_ROLL)
|
||||||
|| !ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
|| !ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
||||||
){//L803898D4
|
){//L803898D4
|
||||||
@@ -324,8 +324,8 @@ void SM_func_80389610(Actor * this){
|
|||||||
|
|
||||||
case 6://L803898A0
|
case 6://L803898A0
|
||||||
if( !ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
if( !ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
||||||
|| !ability_isUnlocked(ABILITY_7_FLAP)
|
|| !ability_isUnlocked(ABILITY_7_FEATHERY_FLAP)
|
||||||
|| !ability_isUnlocked(ABILITY_8_FLIP)
|
|| !ability_isUnlocked(ABILITY_8_FLAP_FLIP)
|
||||||
){//L803898D4
|
){//L803898D4
|
||||||
mapSpecificFlags_set(0xE, 1);
|
mapSpecificFlags_set(0xE, 1);
|
||||||
}
|
}
|
||||||
@@ -397,7 +397,7 @@ void func_803899B0(Actor * this){
|
|||||||
if(func_80388D80()){
|
if(func_80388D80()){
|
||||||
mapSpecificFlags_set(1,1);
|
mapSpecificFlags_set(1,1);
|
||||||
|
|
||||||
if(func_802DA498()){
|
if(learnedAllTutorialAbilities()){
|
||||||
mapSpecificFlags_set(3, 1);
|
mapSpecificFlags_set(3, 1);
|
||||||
mapSpecificFlags_set(2, 1);
|
mapSpecificFlags_set(2, 1);
|
||||||
mapSpecificFlags_set(0xC, 1);
|
mapSpecificFlags_set(0xC, 1);
|
||||||
|
@@ -36,7 +36,7 @@ void func_8038A4DC(Actor *this, s32 arg1){
|
|||||||
this->sm_4070.unk0 = 0;
|
this->sm_4070.unk0 = 0;
|
||||||
player_getPosition(this->velocity);
|
player_getPosition(this->velocity);
|
||||||
func_8028F918(0);
|
func_8028F918(0);
|
||||||
if(ability_isUnlocked(ABILITY_7_FLAP)){
|
if(ability_isUnlocked(ABILITY_7_FEATHERY_FLAP)){
|
||||||
mapSpecificFlags_set(9,1);
|
mapSpecificFlags_set(9,1);
|
||||||
}else if(ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)){//L8038A540
|
}else if(ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)){//L8038A540
|
||||||
mapSpecificFlags_set(8,1);
|
mapSpecificFlags_set(8,1);
|
||||||
@@ -94,7 +94,7 @@ void SM_func_8038A5D8(Actor *this){
|
|||||||
if(!func_803114B0()){
|
if(!func_803114B0()){
|
||||||
if(mapSpecificFlags_get(8)){
|
if(mapSpecificFlags_get(8)){
|
||||||
func_8038A460(this);
|
func_8038A460(this);
|
||||||
ability_unlock(ABILITY_7_FLAP);
|
ability_unlock(ABILITY_7_FEATHERY_FLAP);
|
||||||
func_80311480(0xdf7, 0xa, this->unk1C, this->marker, func_8038A488, NULL);
|
func_80311480(0xdf7, 0xa, this->unk1C, this->marker, func_8038A488, NULL);
|
||||||
this->sm_4070.unk0 = 0xe1b;
|
this->sm_4070.unk0 = 0xe1b;
|
||||||
mapSpecificFlags_set(8,0);
|
mapSpecificFlags_set(8,0);
|
||||||
@@ -102,7 +102,7 @@ void SM_func_8038A5D8(Actor *this){
|
|||||||
|
|
||||||
if(mapSpecificFlags_get(9)){
|
if(mapSpecificFlags_get(9)){
|
||||||
func_8038A460(this);
|
func_8038A460(this);
|
||||||
ability_unlock(ABILITY_8_FLIP);
|
ability_unlock(ABILITY_8_FLAP_FLIP);
|
||||||
func_80311480(0xdf8, 0xa, this->unk1C, this->marker, func_8038A488, NULL);
|
func_80311480(0xdf8, 0xa, this->unk1C, this->marker, func_8038A488, NULL);
|
||||||
this->sm_4070.unk0 = 0xe1c;
|
this->sm_4070.unk0 = 0xe1c;
|
||||||
mapSpecificFlags_set(9,0);
|
mapSpecificFlags_set(9,0);
|
||||||
@@ -112,7 +112,7 @@ void SM_func_8038A5D8(Actor *this){
|
|||||||
func_8038A460(this);
|
func_8038A460(this);
|
||||||
func_8028F94C(2, this->unk1C);
|
func_8028F94C(2, this->unk1C);
|
||||||
|
|
||||||
if(!mapSpecificFlags_get(3) && func_802DA498()){
|
if(!mapSpecificFlags_get(3) && learnedAllTutorialAbilities()){
|
||||||
mapSpecificFlags_set(3,1);
|
mapSpecificFlags_set(3,1);
|
||||||
temp_a0 = 0xe12;
|
temp_a0 = 0xe12;
|
||||||
}else{
|
}else{
|
||||||
|
@@ -266,7 +266,7 @@ void func_8024AF48(void){
|
|||||||
func_8024A880(0x9000);
|
func_8024A880(0x9000);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(func_802DA498())
|
if(learnedAllTutorialAbilities())
|
||||||
func_8024A9EC(0);
|
func_8024A9EC(0);
|
||||||
func_8024A880(0x6fff);
|
func_8024A880(0x6fff);
|
||||||
}
|
}
|
||||||
|
@@ -2,8 +2,8 @@
|
|||||||
#include "functions.h"
|
#include "functions.h"
|
||||||
#include "variables.h"
|
#include "variables.h"
|
||||||
|
|
||||||
s32 D_8037C3A0;
|
s32 learnedAbilities;
|
||||||
s32 D_8037C3A4;
|
s32 usedAbilities;
|
||||||
|
|
||||||
void ability_use(s32 arg0){
|
void ability_use(s32 arg0){
|
||||||
s32 sp2C;
|
s32 sp2C;
|
||||||
@@ -12,7 +12,7 @@ void ability_use(s32 arg0){
|
|||||||
sp2C = 0;
|
sp2C = 0;
|
||||||
sp28 = 1;
|
sp28 = 1;
|
||||||
|
|
||||||
if(D_8037C3A4 & (1 << arg0))
|
if(usedAbilities & (1 << arg0))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
switch(arg0){
|
switch(arg0){
|
||||||
@@ -53,7 +53,7 @@ void ability_use(s32 arg0){
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
D_8037C3A4 |= (1 << arg0);
|
usedAbilities |= (1 << arg0);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 0x8://L80295738 //fly
|
case 0x8://L80295738 //fly
|
||||||
@@ -69,49 +69,49 @@ void ability_use(s32 arg0){
|
|||||||
if(sp2C)
|
if(sp2C)
|
||||||
func_80311480(sp2C, 4, NULL, NULL, NULL, 0);
|
func_80311480(sp2C, 4, NULL, NULL, NULL, 0);
|
||||||
|
|
||||||
D_8037C3A4 |= (1 << arg0);
|
usedAbilities |= (1 << arg0);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ability_hasUsed(enum ability_e move){
|
int ability_hasUsed(enum ability_e move){
|
||||||
return (1 << move) & D_8037C3A4;
|
return (1 << move) & usedAbilities;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ability_setHasUsed(enum ability_e move){
|
void ability_setHasUsed(enum ability_e move){
|
||||||
D_8037C3A4 |= (1 << move);
|
usedAbilities |= (1 << move);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ability_hasLearned(enum ability_e move){
|
int ability_hasLearned(enum ability_e move){
|
||||||
return (1 << move) & D_8037C3A0;
|
return (1 << move) & learnedAbilities;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 ability_getAllLearned(void){
|
s32 ability_getAllLearned(void){
|
||||||
return D_8037C3A0;
|
return learnedAbilities;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ability_debug(void){}
|
void ability_debug(void){}
|
||||||
|
|
||||||
void ability_clearAll(void){
|
void ability_clearAll(void){
|
||||||
D_8037C3A0 = 0;
|
learnedAbilities = 0;
|
||||||
D_8037C3A4 = 0;
|
usedAbilities = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_80295818(s32 move, s32 val){
|
void ability_setLearned(s32 move, s32 val){
|
||||||
if(val){
|
if(val){
|
||||||
D_8037C3A0 |= (1 << move);
|
learnedAbilities |= (1 << move);
|
||||||
}else{
|
}else{
|
||||||
D_8037C3A0 &= ~(1 << move);
|
learnedAbilities &= ~(1 << move);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ability_setAllLearned(s32 val){
|
void ability_setAllLearned(s32 val){
|
||||||
D_8037C3A0 = val;
|
learnedAbilities = val;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ability_setAllUsed(s32 val){
|
void ability_setAllUsed(s32 val){
|
||||||
D_8037C3A4 = val;
|
usedAbilities = val;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ability_getSizeAndPtr(s32 *size, u8 **addr){
|
void ability_getSizeAndPtr(s32 *size, u8 **addr){
|
||||||
*size = 8;
|
*size = 8;
|
||||||
*addr = &D_8037C3A0;
|
*addr = &learnedAbilities;
|
||||||
}
|
}
|
||||||
|
@@ -723,7 +723,7 @@ void __baMarker_resolveCollision(Prop *other_prop){
|
|||||||
case MARKER_45_FLIGHT_PAD: //L8028CE3C
|
case MARKER_45_FLIGHT_PAD: //L8028CE3C
|
||||||
case MARKER_240_LAIR_SWITCH_FLIGHT_PAD: //L8028CE3C
|
case MARKER_240_LAIR_SWITCH_FLIGHT_PAD: //L8028CE3C
|
||||||
case MARKER_261_FIGHT_FLIGHT_PAD: //L8028CE3C
|
case MARKER_261_FIGHT_FLIGHT_PAD: //L8028CE3C
|
||||||
if(ability_isUnlocked(ABILITY_9_FLY)){
|
if(ability_isUnlocked(ABILITY_9_FLIGHT)){
|
||||||
miscflag_set(MISC_FLAG_1_ON_FLIGHT_PAD);
|
miscflag_set(MISC_FLAG_1_ON_FLIGHT_PAD);
|
||||||
}
|
}
|
||||||
else if(! func_80320454(0xD, 1)){
|
else if(! func_80320454(0xD, 1)){
|
||||||
|
@@ -92,7 +92,7 @@ void bsbshock_charge_update(void){
|
|||||||
func_80297970(0.0f);
|
func_80297970(0.0f);
|
||||||
}
|
}
|
||||||
else{//L802A6D18
|
else{//L802A6D18
|
||||||
if(should_flap())
|
if(should_feathery_flap())
|
||||||
sp2C = BS_BFLAP;
|
sp2C = BS_BFLAP;
|
||||||
|
|
||||||
if(should_beak_bust())
|
if(should_beak_bust())
|
||||||
@@ -174,7 +174,7 @@ void bsbshock_update(void){
|
|||||||
if(func_8028B424())
|
if(func_8028B424())
|
||||||
sp2C = BS_3D_FALL_TUMBLING;
|
sp2C = BS_3D_FALL_TUMBLING;
|
||||||
|
|
||||||
if(should_flap())
|
if(should_feathery_flap())
|
||||||
sp2C = BS_BFLAP;
|
sp2C = BS_BFLAP;
|
||||||
|
|
||||||
if(should_beak_bust())
|
if(should_beak_bust())
|
||||||
|
@@ -197,7 +197,7 @@ enum bs_e func_802ADCD4(enum bs_e arg0){
|
|||||||
if(should_shoot_egg())
|
if(should_shoot_egg())
|
||||||
func_80346C10(&arg0, -1, BS_9_EGG_HEAD, ITEM_D_EGGS, 0);
|
func_80346C10(&arg0, -1, BS_9_EGG_HEAD, ITEM_D_EGGS, 0);
|
||||||
|
|
||||||
if(should_flip())
|
if(should_flap_flip())
|
||||||
arg0 = BS_12_BFLIP;
|
arg0 = BS_12_BFLIP;
|
||||||
|
|
||||||
if(should_beak_barge())
|
if(should_beak_barge())
|
||||||
|
@@ -141,7 +141,7 @@ void bsjump_update(void){
|
|||||||
if(button_released(BUTTON_A))
|
if(button_released(BUTTON_A))
|
||||||
D_8037D4C2 = 0;
|
D_8037D4C2 = 0;
|
||||||
|
|
||||||
if(should_flap())
|
if(should_feathery_flap())
|
||||||
sp34 = BS_BFLAP;
|
sp34 = BS_BFLAP;
|
||||||
|
|
||||||
if(should_peck())
|
if(should_peck())
|
||||||
@@ -218,7 +218,7 @@ void bsjump_fall_update(void){
|
|||||||
if(func_8028B424())
|
if(func_8028B424())
|
||||||
sp2C = BS_3D_FALL_TUMBLING;
|
sp2C = BS_3D_FALL_TUMBLING;
|
||||||
|
|
||||||
if(should_flap() && miscflag_isFalse(MISC_FLAG_5_HAS_PECKED))
|
if(should_feathery_flap() && miscflag_isFalse(MISC_FLAG_5_HAS_PECKED))
|
||||||
sp2C = BS_BFLAP;
|
sp2C = BS_BFLAP;
|
||||||
|
|
||||||
if(should_peck())
|
if(should_peck())
|
||||||
@@ -412,7 +412,7 @@ void bsjump_tumble_update(void){
|
|||||||
pitch_setIdeal(pitch_getIdeal() + 20.0f);
|
pitch_setIdeal(pitch_getIdeal() + 20.0f);
|
||||||
}
|
}
|
||||||
if(func_8029E348(0)){
|
if(func_8029E348(0)){
|
||||||
if(should_flap())
|
if(should_feathery_flap())
|
||||||
sp1C = BS_BFLAP;
|
sp1C = BS_BFLAP;
|
||||||
|
|
||||||
if(should_peck())
|
if(should_peck())
|
||||||
|
@@ -400,7 +400,7 @@ void func_802C4C14(Actor *this){
|
|||||||
sp44 = 0.0f;
|
sp44 = 0.0f;
|
||||||
if(this->state == 4 && (sp84 == 0 || sp84 == 1))
|
if(this->state == 4 && (sp84 == 0 || sp84 == 1))
|
||||||
sp44 = 0.25f;
|
sp44 = 0.25f;
|
||||||
if(func_802DA498() && fileProgressFlag_get(FILEPROG_BD_ENTER_LAIR_CUTSCENE)){
|
if(learnedAllTutorialAbilities() && fileProgressFlag_get(FILEPROG_BD_ENTER_LAIR_CUTSCENE)){
|
||||||
timedFunc_set_2(sp44, (GenFunction_2)func_8031FB14, 0, 0);
|
timedFunc_set_2(sp44, (GenFunction_2)func_8031FB14, 0, 0);
|
||||||
}
|
}
|
||||||
else{//L802C5188
|
else{//L802C5188
|
||||||
|
@@ -36,7 +36,7 @@ struct_core2_52290 D_80367DC4[] = {
|
|||||||
{ASSET_B48_DIALOG_BEAKBUSTER_LEARN, ASSET_B4C_DIALOG_BEAKBUSTER_REFRESHER, 0x17, ABILITY_2_BEAK_BUSTER},
|
{ASSET_B48_DIALOG_BEAKBUSTER_LEARN, ASSET_B4C_DIALOG_BEAKBUSTER_REFRESHER, 0x17, ABILITY_2_BEAK_BUSTER},
|
||||||
{ASSET_B49_DIALOG_TALON_TROT_LEARN, ASSET_B4A_DIALOG_TALON_TROT_REFRESHER, 0x18, ABILITY_10_TALON_TROT},
|
{ASSET_B49_DIALOG_TALON_TROT_LEARN, ASSET_B4A_DIALOG_TALON_TROT_REFRESHER, 0x18, ABILITY_10_TALON_TROT},
|
||||||
{ASSET_A1F_DIALOG_SHOCKJUMP_LEARN, ASSET_A23_DIALOG_SHOCKJUMP_REFRESHER, 0x0C, ABILITY_D_SHOCK_JUMP},
|
{ASSET_A1F_DIALOG_SHOCKJUMP_LEARN, ASSET_A23_DIALOG_SHOCKJUMP_REFRESHER, 0x0C, ABILITY_D_SHOCK_JUMP},
|
||||||
{ASSET_A20_DIALOG_FLY_LEARN, ASSET_A22_DIALOG_FLY_REFRESHER, 0x0D, ABILITY_9_FLY},
|
{ASSET_A20_DIALOG_FLY_LEARN, ASSET_A22_DIALOG_FLY_REFRESHER, 0x0D, ABILITY_9_FLIGHT},
|
||||||
{ASSET_D35_DIALOG_WONDERWING_LEARN, ASSET_D36_DIALOG_WONDERWING_REFRESHER, 0x01, ABILITY_12_WONDERWING},
|
{ASSET_D35_DIALOG_WONDERWING_LEARN, ASSET_D36_DIALOG_WONDERWING_REFRESHER, 0x01, ABILITY_12_WONDERWING},
|
||||||
{ASSET_C88_DIALOG_LONGLEG_LEARN, ASSET_C89_DIALOG_LONGLEG_REFRESHER, 0x10, ABILITY_E_WADING_BOOTS},
|
{ASSET_C88_DIALOG_LONGLEG_LEARN, ASSET_C89_DIALOG_LONGLEG_REFRESHER, 0x10, ABILITY_E_WADING_BOOTS},
|
||||||
{ASSET_A84_DIALOG_TURBOTRAINERS_LEARN, ASSET_A85_DIALOG_TURBOTRAINERS_REFRESHER, 0x19, ABILITY_11_TURBO_TALON},
|
{ASSET_A84_DIALOG_TURBOTRAINERS_LEARN, ASSET_A85_DIALOG_TURBOTRAINERS_REFRESHER, 0x19, ABILITY_11_TURBO_TALON},
|
||||||
@@ -52,7 +52,7 @@ int func_802D9220(enum level_e level){
|
|||||||
&& ability_isUnlocked(ABILITY_10_TALON_TROT);
|
&& ability_isUnlocked(ABILITY_10_TALON_TROT);
|
||||||
case LEVEL_2_TREASURE_TROVE_COVE:
|
case LEVEL_2_TREASURE_TROVE_COVE:
|
||||||
return ability_isUnlocked(ABILITY_D_SHOCK_JUMP)
|
return ability_isUnlocked(ABILITY_D_SHOCK_JUMP)
|
||||||
&& ability_isUnlocked(ABILITY_9_FLY);
|
&& ability_isUnlocked(ABILITY_9_FLIGHT);
|
||||||
case LEVEL_3_CLANKERS_CAVERN:
|
case LEVEL_3_CLANKERS_CAVERN:
|
||||||
return ability_isUnlocked(ABILITY_12_WONDERWING);
|
return ability_isUnlocked(ABILITY_12_WONDERWING);
|
||||||
case LEVEL_4_BUBBLEGLOOP_SWAMP:
|
case LEVEL_4_BUBBLEGLOOP_SWAMP:
|
||||||
@@ -94,7 +94,7 @@ int func_802D93EC(void){
|
|||||||
&& ability_isUnlocked(ABILITY_2_BEAK_BUSTER)
|
&& ability_isUnlocked(ABILITY_2_BEAK_BUSTER)
|
||||||
&& ability_isUnlocked(ABILITY_10_TALON_TROT)
|
&& ability_isUnlocked(ABILITY_10_TALON_TROT)
|
||||||
&& ability_isUnlocked(ABILITY_D_SHOCK_JUMP)
|
&& ability_isUnlocked(ABILITY_D_SHOCK_JUMP)
|
||||||
&& ability_isUnlocked(ABILITY_9_FLY)
|
&& ability_isUnlocked(ABILITY_9_FLIGHT)
|
||||||
&& ability_isUnlocked(ABILITY_12_WONDERWING)
|
&& ability_isUnlocked(ABILITY_12_WONDERWING)
|
||||||
&& ability_isUnlocked(ABILITY_E_WADING_BOOTS)
|
&& ability_isUnlocked(ABILITY_E_WADING_BOOTS)
|
||||||
&& ability_isUnlocked(ABILITY_1_BEAK_BOMB)
|
&& ability_isUnlocked(ABILITY_1_BEAK_BOMB)
|
||||||
@@ -216,7 +216,7 @@ int func_802D997C(Actor *this){
|
|||||||
sp2C = D_80367DC4[this->unkF4_8-9].learn_text;
|
sp2C = D_80367DC4[this->unkF4_8-9].learn_text;
|
||||||
ability_unlock(D_80367DC4[this->unkF4_8-9].ability);
|
ability_unlock(D_80367DC4[this->unkF4_8-9].ability);
|
||||||
switch(D_80367DC4[this->unkF4_8-9].ability){
|
switch(D_80367DC4[this->unkF4_8-9].ability){
|
||||||
case ABILITY_9_FLY:
|
case ABILITY_9_FLIGHT:
|
||||||
case ABILITY_D_SHOCK_JUMP:
|
case ABILITY_D_SHOCK_JUMP:
|
||||||
func_8030E6A4(SFX_113_PAD_APPEARS, 0.9f, 32000);
|
func_8030E6A4(SFX_113_PAD_APPEARS, 0.9f, 32000);
|
||||||
break;
|
break;
|
||||||
@@ -440,15 +440,15 @@ void func_802D9D60(Actor *this){
|
|||||||
}//L802DA488
|
}//L802DA488
|
||||||
}
|
}
|
||||||
|
|
||||||
int func_802DA498(void){
|
int learnedAllTutorialAbilities(void){
|
||||||
return ability_isUnlocked(ABILITY_F_DIVE)
|
return ability_isUnlocked(ABILITY_F_DIVE)
|
||||||
&& ability_isUnlocked(ABILITY_4_BEAR_PUNCH)
|
&& ability_isUnlocked(ABILITY_4_CLAW_SWIPE)
|
||||||
&& ability_isUnlocked(ABILITY_C_ROLL)
|
&& ability_isUnlocked(ABILITY_C_ROLL)
|
||||||
&& ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
&& ability_isUnlocked(ABILITY_B_RATATAT_RAP)
|
||||||
&& ability_isUnlocked(ABILITY_0_BARGE)
|
&& ability_isUnlocked(ABILITY_0_BARGE)
|
||||||
&& ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
&& ability_isUnlocked(ABILITY_A_HOLD_A_JUMP_HIGHER)
|
||||||
&& ability_isUnlocked(ABILITY_7_FLAP)
|
&& ability_isUnlocked(ABILITY_7_FEATHERY_FLAP)
|
||||||
&& ability_isUnlocked(ABILITY_8_FLIP)
|
&& ability_isUnlocked(ABILITY_8_FLAP_FLIP)
|
||||||
&& ability_isUnlocked(ABILITY_5_CLIMB)
|
&& ability_isUnlocked(ABILITY_5_CLIMB)
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
@@ -752,7 +752,7 @@ void func_8029C748(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
enum bs_e func_8029C780(void){
|
enum bs_e func_8029C780(void){
|
||||||
if(button_held(BUTTON_Z) && can_flip())
|
if(button_held(BUTTON_Z) && can_flap_flip())
|
||||||
return BS_12_BFLIP;
|
return BS_12_BFLIP;
|
||||||
|
|
||||||
if(miscflag_isTrue(MISC_FLAG_2_ON_SPRING_PAD))
|
if(miscflag_isTrue(MISC_FLAG_2_ON_SPRING_PAD))
|
||||||
|
@@ -32,7 +32,7 @@ s32 can_control_camera(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
s32 can_claw(void){
|
s32 can_claw(void){
|
||||||
return ability_hasLearned(ABILITY_4_BEAR_PUNCH);
|
return ability_hasLearned(ABILITY_4_CLAW_SWIPE);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 can_climb(void){
|
s32 can_climb(void){
|
||||||
@@ -49,18 +49,18 @@ s32 can_egg(void){
|
|||||||
return ability_hasLearned(ABILITY_6_EGGS);
|
return ability_hasLearned(ABILITY_6_EGGS);
|
||||||
}
|
}
|
||||||
|
|
||||||
int can_flap(void){
|
int can_feathery_flap(void){
|
||||||
return miscflag_isFalse(MISC_FLAG_12_HAS_FLAPPED)
|
return miscflag_isFalse(MISC_FLAG_12_HAS_FLAPPED)
|
||||||
&& miscflag_isFalse(MISC_FLAG_5_HAS_PECKED)
|
&& miscflag_isFalse(MISC_FLAG_5_HAS_PECKED)
|
||||||
&& ability_hasLearned(ABILITY_7_FLAP);
|
&& ability_hasLearned(ABILITY_7_FEATHERY_FLAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 can_flip(void){
|
s32 can_flap_flip(void){
|
||||||
return ability_hasLearned(ABILITY_8_FLIP);
|
return ability_hasLearned(ABILITY_8_FLAP_FLIP);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 can_fly(void){
|
s32 can_fly(void){
|
||||||
return ability_hasLearned(ABILITY_9_FLY);
|
return ability_hasLearned(ABILITY_9_FLIGHT);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 can_control_jump_height(void){
|
s32 can_control_jump_height(void){
|
||||||
|
@@ -62,10 +62,10 @@ void func_802CA9D0(Actor *this){
|
|||||||
void func_802CAA44(Actor *this){
|
void func_802CAA44(Actor *this){
|
||||||
this->marker->propPtr->unk8_3 = TRUE;
|
this->marker->propPtr->unk8_3 = TRUE;
|
||||||
if(func_803203FC(UNKFLAGS1_8A_SANDCASTLE_FLIGHT_UNLOCKED)){
|
if(func_803203FC(UNKFLAGS1_8A_SANDCASTLE_FLIGHT_UNLOCKED)){
|
||||||
ability_unlock(ABILITY_9_FLY);
|
ability_unlock(ABILITY_9_FLIGHT);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(ability_isUnlocked(ABILITY_9_FLY)){
|
if(ability_isUnlocked(ABILITY_9_FLIGHT)){
|
||||||
actor_setOpacity(this, 0xff);
|
actor_setOpacity(this, 0xff);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@@ -675,7 +675,7 @@ bool func_8028F364(f32 position[3], f32 radius, f32 vert_range, enum actor_e act
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ability_unlock(enum ability_e uid){
|
void ability_unlock(enum ability_e uid){
|
||||||
func_80295818(uid, TRUE);
|
ability_setLearned(uid, TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void func_8028F3D8(f32 arg0[3], f32 arg1, void(*arg2)(ActorMarker *), ActorMarker *arg3){
|
void func_8028F3D8(f32 arg0[3], f32 arg1, void(*arg2)(ActorMarker *), ActorMarker *arg3){
|
||||||
|
@@ -30,7 +30,7 @@ void func_803634BC(void){
|
|||||||
|
|
||||||
void func_80363500(Actor *this){
|
void func_80363500(Actor *this){
|
||||||
if(!this->unk16C_4){
|
if(!this->unk16C_4){
|
||||||
if(!func_802DA498()){
|
if(!learnedAllTutorialAbilities()){
|
||||||
func_803634BC();
|
func_803634BC();
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -40,7 +40,7 @@ void func_80363500(Actor *this){
|
|||||||
this->unk16C_4 = 1;
|
this->unk16C_4 = 1;
|
||||||
}//L8036355C
|
}//L8036355C
|
||||||
|
|
||||||
if(func_802DA498()){
|
if(learnedAllTutorialAbilities()){
|
||||||
func_80363470();
|
func_80363470();
|
||||||
marker_despawn(this->marker);
|
marker_despawn(this->marker);
|
||||||
}
|
}
|
||||||
|
@@ -37,12 +37,12 @@ int should_shoot_egg(void){
|
|||||||
return button_pressed(BUTTON_C_UP) && can_egg();
|
return button_pressed(BUTTON_C_UP) && can_egg();
|
||||||
}
|
}
|
||||||
|
|
||||||
int should_flap(void){
|
int should_feathery_flap(void){
|
||||||
return button_pressed(BUTTON_A) && can_flap();
|
return button_pressed(BUTTON_A) && can_feathery_flap();
|
||||||
}
|
}
|
||||||
|
|
||||||
int should_flip(void){
|
int should_flap_flip(void){
|
||||||
return button_pressed(BUTTON_A) && can_flip();
|
return button_pressed(BUTTON_A) && can_flap_flip();
|
||||||
}
|
}
|
||||||
|
|
||||||
int should_peck(void){
|
int should_peck(void){
|
||||||
|
@@ -465,7 +465,7 @@ void func_80386D78(Actor *this) {
|
|||||||
if (!this->unk16C_4) {
|
if (!this->unk16C_4) {
|
||||||
this->unk16C_4 = TRUE;
|
this->unk16C_4 = TRUE;
|
||||||
if (func_803203FC(0x8A)) {
|
if (func_803203FC(0x8A)) {
|
||||||
ability_unlock(ABILITY_9_FLY);
|
ability_unlock(ABILITY_9_FLIGHT);
|
||||||
mapSpecificFlags_set(0, TRUE);
|
mapSpecificFlags_set(0, TRUE);
|
||||||
this->unk60 = 0.0f;
|
this->unk60 = 0.0f;
|
||||||
this->position[1] = this->unk1C[1];
|
this->position[1] = this->unk1C[1];
|
||||||
|
Reference in New Issue
Block a user