Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- pad=pad_trigger(); /* shared */
- /* old movement code */
- if(pad&PAD_A){
- // swap block at current cursor position
- r=0;
- game_swapTile();
- }
- if(pad&PAD_B){
- // mark block/change mark at current position
- r=0;
- game_markTile();
- }
- // now handle anything that can be held
- pad = pad_state(0);
- if(pad&PAD_LEFT && !(frameCount&3)){
- if(cursorX>0) --cursorX;
- if(pad&PAD_A){ r=1; game_swapTile(); }
- //if(pad&PAD_B){ r=1; game_markTile(); }
- }
- if(pad&PAD_RIGHT && !(frameCount&3)){
- if(cursorX<(puzzleW-1)) ++cursorX;
- if(pad&PAD_A){ r=1; game_swapTile(); }
- //if(pad&PAD_B){ r=1; game_markTile(); }
- }
- if(pad&PAD_UP && !(frameCount&3)){
- if(cursorY>0) --cursorY;
- if(pad&PAD_A){ r=1; game_swapTile(); }
- //if(pad&PAD_B){ r=1; game_markTile(); }
- }
- if(pad&PAD_DOWN && !(frameCount&3)){
- if(cursorY<(puzzleH-1)) ++cursorY;
- if(pad&PAD_A){ r=1; game_swapTile(); }
- //if(pad&PAD_B){ r=1; game_markTile(); }
- }
- /* new movement code */
- if(pad&PAD_UP){ h=0; if(cursorY>0) --cursorY; }
- if(pad&PAD_DOWN){ h=0; if(cursorY<(puzzleH-1)) ++cursorY; }
- if(pad&PAD_LEFT){ h=0; if(cursorX>0) --cursorX; }
- if(pad&PAD_RIGHT){ h=0; if(cursorX<(puzzleW-1)) ++cursorX; }
- // A button: swap block at current cursor position
- if(pad&PAD_A){
- r=0;
- game_swapTile();
- }
- // B button: mark block/change mark at current position
- if(pad&PAD_B){
- r=0;
- game_markTile();
- }
- // relying on HOLD_TIME feels like a temporary solution...
- #define HOLD_TIME 3
- // movement/input code (hold button(s))
- pad = pad_state(0);
- if(pad&PAD_UP){
- if(h<HOLD_TIME){ ++h; }
- else{
- if(cursorY>0){ --cursorY; h=0; }
- }
- }
- if(pad&PAD_DOWN){
- if(h<HOLD_TIME){ ++h; }
- else{
- if(cursorY<(puzzleH-1)){ ++cursorY; h=0; }
- }
- }
- if(pad&PAD_LEFT){
- if(h<HOLD_TIME){ ++h; }
- else{
- if(cursorX>0){ --cursorX; h=0; }
- }
- }
- if(pad&PAD_RIGHT){
- if(h<HOLD_TIME){ ++h; }
- else{
- if(cursorX<(puzzleW-1)){ ++cursorX; h=0; }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement