|
|
|
@ -1707,7 +1707,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (LeftPressed()) { |
|
|
|
|
if (LeftPressed()||BackPressed()) { |
|
|
|
|
BATTLE_STATE=BattleState::SELECT_ACTION; |
|
|
|
|
} |
|
|
|
|
if (ACTIONKEYPRESSED||RightPressed()) { |
|
|
|
@ -1723,7 +1723,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (DownPressed()||UpPressed()||LeftPressed()&&POWER_GRADE_CURSOR[-CURRENT_TURN-1]==0) { |
|
|
|
|
if (DownPressed()||UpPressed()||LeftPressed()&&POWER_GRADE_CURSOR[-CURRENT_TURN-1]==0||BackPressed()) { |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (BATTLE_MOVELIST_DISPLAY.size()>1) { |
|
|
|
|
if (POWER_SELECTION_CURSOR[-CURRENT_TURN-1]==0) { |
|
|
|
@ -1833,7 +1833,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
ent->obj->highlighted=true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (UpPressed()||BackPressed()) { |
|
|
|
|
if (BATTLE_SELECTION_CURSOR==0) { //Power was selected, so go back to the powers menu.
|
|
|
|
|
BATTLE_STATE=BattleState::GRADE_SELECT; |
|
|
|
|
} else
|
|
|
|
@ -1952,8 +1952,8 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
escapeDown: |
|
|
|
|
if (ACTIONKEYPRESSED) { |
|
|
|
|
if (SELECTED_MOVE_SQUARE.x==0&&SELECTED_MOVE_SQUARE.y==0) { |
|
|
|
|
if (ACTIONKEYPRESSED||BackPressed()) { |
|
|
|
|
if (SELECTED_MOVE_SQUARE.x==0&&SELECTED_MOVE_SQUARE.y==0||BackPressed()) { |
|
|
|
|
BATTLE_STATE=BattleState::SELECT_ACTION; |
|
|
|
|
} else { |
|
|
|
|
BATTLE_ENCOUNTER->playerPos[-CURRENT_TURN-1]=(BATTLE_ENCOUNTER->playerPos[-CURRENT_TURN-1]/32+SELECTED_MOVE_SQUARE)*32; |
|
|
|
@ -1963,7 +1963,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
}break; |
|
|
|
|
case BattleState::ITEM_SELECT:{ |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)) { |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)||BackPressed()) { |
|
|
|
|
BATTLE_STATE=BattleState::SELECT_ACTION; |
|
|
|
|
} else { |
|
|
|
|
HandleInventoryNavigation(); |
|
|
|
@ -2041,7 +2041,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
}break; |
|
|
|
|
case GameState::OVERWORLD_MENU:{ |
|
|
|
|
if (LeftPressed()) { |
|
|
|
|
if (LeftPressed()||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::GAME_WORLD; |
|
|
|
|
} |
|
|
|
|
if (DownPressed()) { |
|
|
|
@ -2140,7 +2140,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (UpPressed()||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
|
OVERWORLD_POWER_SELECTION_MEMBER=-1; |
|
|
|
|
} |
|
|
|
@ -2179,7 +2179,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (LeftPressed()) { |
|
|
|
|
if (LeftPressed()||BackPressed()) { |
|
|
|
|
if (PARTY_MEMBER_COUNT==1) { |
|
|
|
|
OVERWORLD_POWER_SELECTION_MEMBER=-1; |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
@ -2198,7 +2198,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (DownPressed()||UpPressed()||LeftPressed()&&OVERWORLD_POWER_GRADE_CURSOR==0) { |
|
|
|
|
if (DownPressed()||UpPressed()||LeftPressed()&&OVERWORLD_POWER_GRADE_CURSOR==0||BackPressed()) { |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (BATTLE_MOVELIST_DISPLAY.size()>1) { |
|
|
|
|
if (OVERWORLD_POWER_SELECTION_CURSOR[OVERWORLD_POWER_SELECTION_MEMBER]==0) { |
|
|
|
@ -2265,7 +2265,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
PARTY_MEMBER_OBJ[OVERWORLD_TARGET_SELECTION]->highlighted=true; |
|
|
|
|
} |
|
|
|
|
if (UpPressed()){ |
|
|
|
|
if (UpPressed()||BackPressed()){ |
|
|
|
|
if (OVERWORLD_ITEM_BEING_USED) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_ITEMS_MENU; |
|
|
|
|
} else { |
|
|
|
@ -2359,7 +2359,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
}break; |
|
|
|
|
case GameState::OVERWORLD_ITEMS_MENU:{ |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)) { |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
|
} else { |
|
|
|
|
HandleInventoryNavigation(); |
|
|
|
@ -2400,7 +2400,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (UpPressed()||BackPressed()) { |
|
|
|
|
OVERWORLD_POWER_SELECTION_MEMBER=-1; |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
|
} |
|
|
|
@ -2585,7 +2585,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
KEY_LASTPRESSED=NONE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (UpPressed()) { |
|
|
|
|
if (UpPressed()||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
|
} |
|
|
|
|
if (ACTIONKEYPRESSED) { |
|
|
|
@ -2603,7 +2603,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
if (DownPressed()) { |
|
|
|
|
EQUIP_MENU_SLOT=(EquipSlot::Equip)((EQUIP_MENU_SLOT+1)%3); |
|
|
|
|
} |
|
|
|
|
if (LeftPressed()) { |
|
|
|
|
if (LeftPressed()||BackPressed()) { |
|
|
|
|
if (PARTY_MEMBER_COUNT==1) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_MENU; |
|
|
|
|
} else { |
|
|
|
@ -2645,7 +2645,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
EQUIP_ITEM_MENU_OFFSET=0; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
if (LeftPressed()) { |
|
|
|
|
if (LeftPressed()||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::OVERWORLD_EQUIP_MENU; |
|
|
|
|
} |
|
|
|
|
if (ACTIONKEYPRESSED) { |
|
|
|
@ -2666,8 +2666,8 @@ void SeasonI::keyUpdates() { |
|
|
|
|
}break; |
|
|
|
|
case GameState::SHOPKEEPER_MENU:{ |
|
|
|
|
CursorControl(SHOP_MENU_CURSOR,SHOP_ITEMS.size()+1); |
|
|
|
|
if (ACTIONKEYPRESSED) { |
|
|
|
|
if (SHOP_MENU_CURSOR==SHOP_ITEMS.size()) { |
|
|
|
|
if (ACTIONKEYPRESSED||BackPressed()) { |
|
|
|
|
if (SHOP_MENU_CURSOR==SHOP_ITEMS.size()||BackPressed()) { |
|
|
|
|
if (SHOPKEEPER_INTERACTING_WITH!=nullptr) { |
|
|
|
|
GAME_STATE=GameState::GAME_WORLD; |
|
|
|
|
SHOPKEEPER_INTERACTING_WITH->ShoppingCompleted(); |
|
|
|
@ -2684,7 +2684,7 @@ void SeasonI::keyUpdates() { |
|
|
|
|
} |
|
|
|
|
}break; |
|
|
|
|
case GameState::SHOPKEEPER_SELL_MENU:{ |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)) { |
|
|
|
|
if (LeftPressed()&&!(ITEM_SELECTION_CURSOR&1)||BackPressed()) { |
|
|
|
|
GAME_STATE=GameState::GAME_WORLD; |
|
|
|
|
SHOPKEEPER_INTERACTING_WITH->ShoppingCompleted(); |
|
|
|
|
} else { |
|
|
|
@ -2914,8 +2914,10 @@ void SeasonI::drawGame(){ |
|
|
|
|
DrawDialogBox({4,4},{(int)(WIDTH-8),(int)(HEIGHT/2)},Pixel(70, 33, 105,220),Pixel(62, 54, 69,220),Pixel(185, 148, 255,220)); |
|
|
|
|
int nameWidth=GetTextSizeProp(member->obj->name).x/2; |
|
|
|
|
DrawStringPropDecal({(float)(WIDTH-12-nameWidth),4},member->obj->name,WHITE,{0.5,1}); |
|
|
|
|
DrawRotatedDecal({(float)(WIDTH-nameWidth-16),7},SPRITES["cursor.png"],M_PI,{(float)SPRITES["cursor.png"]->sprite->width/2,(float)SPRITES["cursor.png"]->sprite->height/2},{(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F,(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F}); |
|
|
|
|
DrawRotatedDecal({(float)(WIDTH-8),7},SPRITES["cursor.png"],0,{(float)SPRITES["cursor.png"]->sprite->width/2,(float)SPRITES["cursor.png"]->sprite->height/2},{(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F,(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F}); |
|
|
|
|
if (PARTY_MEMBER_COUNT>1) { |
|
|
|
|
DrawRotatedDecal({(float)(WIDTH-nameWidth-16),7},SPRITES["cursor.png"],M_PI,{(float)SPRITES["cursor.png"]->sprite->width/2,(float)SPRITES["cursor.png"]->sprite->height/2},{(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F,(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F}); |
|
|
|
|
DrawRotatedDecal({(float)(WIDTH-8),7},SPRITES["cursor.png"],0,{(float)SPRITES["cursor.png"]->sprite->width/2,(float)SPRITES["cursor.png"]->sprite->height/2},{(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F,(sinf(frameCount/10.F*M_PI)>0)?0.5F:0.25F}); |
|
|
|
|
} |
|
|
|
|
vi2d drawPos={8,8}; |
|
|
|
|
DrawStringPropDecal(drawPos,member->obj->name); |
|
|
|
|
drawPos.y+=12; |
|
|
|
@ -4082,6 +4084,9 @@ bool SeasonI::LeftPressed(){ |
|
|
|
|
bool SeasonI::RightPressed(){ |
|
|
|
|
return GetKey(D).bPressed||GetKey(RIGHT).bPressed||GetKey(NP6).bPressed||MOUSE_PRESSED_DOWN&&GetMouseX()<=128&&GetMouseX()>=96&&GetMouseY()>=HEIGHT-128||KeyRepeat(RIGHT); |
|
|
|
|
} |
|
|
|
|
bool SeasonI::BackPressed(){ |
|
|
|
|
return GetKey(BACK).bPressed||GetKey(ESCAPE).bPressed||GetKey(X).bPressed||GetKey(CTRL).bPressed||GetKey(DEL).bPressed||GetKey(END).bPressed||GetKey(NP_DECIMAL).bPressed||GetKey(NP_SUB).bPressed||GetKey(MINUS).bPressed||GetKey(PAUSE).bPressed||GetKey(TAB).bPressed; |
|
|
|
|
} |
|
|
|
|
bool SeasonI::UpHeld(){ |
|
|
|
|
return GetKey(W).bHeld||GetKey(UP).bHeld||GetKey(NP8).bHeld||MOUSE_DOWN&&GetMouseY()<=HEIGHT-128+32&&GetMouseY()>=HEIGHT-128&&GetMouseX()<=HEIGHT-128; |
|
|
|
|
} |
|
|
|
@ -4094,6 +4099,9 @@ bool SeasonI::LeftHeld(){ |
|
|
|
|
bool SeasonI::RightHeld(){ |
|
|
|
|
return GetKey(D).bHeld||GetKey(RIGHT).bHeld||GetKey(NP6).bHeld||MOUSE_DOWN&&GetMouseX()<=128&&GetMouseX()>=96&&GetMouseY()>=HEIGHT-128; |
|
|
|
|
} |
|
|
|
|
bool SeasonI::BackHeld(){ |
|
|
|
|
return GetKey(BACK).bHeld||GetKey(ESCAPE).bHeld||GetKey(X).bHeld||GetKey(CTRL).bHeld||GetKey(DEL).bHeld||GetKey(END).bHeld||GetKey(NP_DECIMAL).bHeld||GetKey(NP_SUB).bHeld||GetKey(MINUS).bHeld||GetKey(PAUSE).bHeld||GetKey(TAB).bHeld; |
|
|
|
|
} |
|
|
|
|
bool SeasonI::UpReleased(){ |
|
|
|
|
return GetKey(W).bReleased||GetKey(UP).bReleased||GetKey(NP8).bReleased||MOUSE_RELEASED&&GetMouseY()<=HEIGHT-128+32&&GetMouseY()>=HEIGHT-128&&GetMouseX()<=HEIGHT-128; |
|
|
|
|
} |
|
|
|
@ -4106,6 +4114,9 @@ bool SeasonI::LeftReleased(){ |
|
|
|
|
bool SeasonI::RightReleased(){ |
|
|
|
|
return GetKey(D).bReleased||GetKey(RIGHT).bReleased||GetKey(NP6).bReleased||MOUSE_RELEASED&&GetMouseX()<=128&&GetMouseX()>=96&&GetMouseY()>=HEIGHT-128; |
|
|
|
|
} |
|
|
|
|
bool SeasonI::BackReleased(){ |
|
|
|
|
return GetKey(BACK).bReleased||GetKey(ESCAPE).bReleased||GetKey(X).bReleased||GetKey(CTRL).bReleased||GetKey(DEL).bReleased||GetKey(END).bReleased||GetKey(NP_DECIMAL).bReleased||GetKey(NP_SUB).bReleased||GetKey(MINUS).bReleased||GetKey(PAUSE).bReleased||GetKey(TAB).bReleased; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
bool SeasonI::PlayerCanMove(){ |
|
|
|
|
return GAME_STATE==GameState::GAME_WORLD&&BATTLE_ENCOUNTER==nullptr&&!IsTextEntryEnabled()&&!messageBoxVisible&&PARTY_MEMBER_OBJ[0]!=nullptr&&CurrentCutscene==nullptr; |
|
|
|
@ -5291,7 +5302,7 @@ void SeasonI::GetAnyKeyPress(olc::Key keypress){ |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
ANYKEYPRESSED=true; |
|
|
|
|
if (!UpPressed()&&!DownPressed()&&!LeftPressed()&&!RightPressed()) { |
|
|
|
|
if (!UpPressed()&&!DownPressed()&&!LeftPressed()&&!RightPressed()&&!BackPressed()) { |
|
|
|
|
ACTIONKEYPRESSED=true; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|