dy 83 modules/games/gui_sokoban.c static void sokoban_undo_add(int dx, int dy, int box) { dy 90 modules/games/gui_sokoban.c value |= (((dy<0)?1:0)<<1)|1; dy 107 modules/games/gui_sokoban.c int dx=0, dy=0, value; dy 114 modules/games/gui_sokoban.c if (value&1) dy=1; else dx=1; dy 115 modules/games/gui_sokoban.c if (value&2) {dy=-dy; dx=-dx;} dy 119 modules/games/gui_sokoban.c field[yPl+dy][xPl+dx]=(field[yPl+dy][xPl+dx]==MARKER_BOX_PLACE)?MARKER_PLACE:MARKER_EMPTY; dy 122 modules/games/gui_sokoban.c xPl-=dx; yPl-=dy; dy 130 modules/games/gui_sokoban.c int dx=0, dy=0, value; dy 134 modules/games/gui_sokoban.c if (value&1) dy=1; else dx=1; dy 135 modules/games/gui_sokoban.c if (value&2) {dy=-dy; dx=-dx;} dy 138 modules/games/gui_sokoban.c xPl+=dx; yPl+=dy; dy 141 modules/games/gui_sokoban.c field[yPl+dy][xPl+dx]=(field[yPl+dy][xPl+dx]==MARKER_PLACE)?MARKER_BOX_PLACE:MARKER_BOX; dy 245 modules/games/gui_sokoban.c static int sokoban_move(int dx, int dy) { dy 246 modules/games/gui_sokoban.c switch (field[yPl+dy][xPl+dx]) { dy 252 modules/games/gui_sokoban.c if (field[yPl+dy*2][xPl+dx*2]==MARKER_WALL || field[yPl+dy*2][xPl+dx*2]==MARKER_BOX || field[yPl+dy*2][xPl+dx*2]==MARKER_BOX_PLACE) dy 260 modules/games/gui_sokoban.c xPl+=dx; yPl+=dy; dy 263 modules/games/gui_sokoban.c field[yPl+dy][xPl+dx]=(field[yPl+dy][xPl+dx]==MARKER_PLACE)?MARKER_BOX_PLACE:MARKER_BOX; dy 264 modules/games/gui_sokoban.c sokoban_undo_add(dx, dy, 1); dy 266 modules/games/gui_sokoban.c sokoban_undo_add(dx, dy, 0); dy 484 modules/games/gui_tetris.c static int checkCollision(StcGame *game, int dx, int dy) dy 489 modules/games/gui_tetris.c newy = game->fallingBlock.y + dy;