author | ecalot
<ecalot> 2005-03-05 09:55:35 UTC |
committer | ecalot
<ecalot> 2005-03-05 09:55:35 UTC |
parent | 6c798cb774577d00db421b60e052a0ff89c6b4ee |
FP/src/include/room.h | +82 | -83 |
FP/src/ker/room.c | +4 | -4 |
diff --git a/FP/src/include/room.h b/FP/src/include/room.h index 17d1b3b..1a804a6 100644 --- a/FP/src/include/room.h +++ b/FP/src/include/room.h @@ -49,236 +49,235 @@ void roomKidChangedFloor(tRoom* room, tObject* kid); #define drawAllLeft(x,y,left,tile) \ /* Gate/left */\ if (isIn(left,TILES_DOOR)) {\ - e(15,(x-1)*TILE_W+0,y*TILE_H+2);\ - drawGate((x-1)*TILE_W+0,y*TILE_H-TILE_H+3,gateGetFrame(left));\ + e(15,(x)*TILE_W+0,y*TILE_H+2);\ + drawGate((x)*TILE_W+0,y*TILE_H-TILE_H+3,gateGetFrame(left));\ }\ /* normal/left */\ if (isIn(left,TILES_FLOOR)) \ - e(10,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(10,(x)*TILE_W+0,y*TILE_H+2);\ /* loose moving/left */\ if (isIn(left,TILES_LOOSEMOVING)) \ - drawLoose((x-1)*TILE_W+0,y*TILE_H+2,looseGetFrame(left),layTritop);\ + drawLoose((x)*TILE_W+0,y*TILE_H+2,looseGetFrame(left),layTritop);\ /* exit_left/left */\ if (isIn(left,TILE_EXIT_RIGHT)) \ - e(7,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(7,(x)*TILE_W+0,y*TILE_H+2);\ /* pillar/left */\ if (isIn(left,TILES_PILLAR)) \ - e(44,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(44,(x)*TILE_W+0,y*TILE_H+2);\ /* pillar_big_up/left */\ if (isIn(left,TILE_BP_BOTTOM)) \ - e(83,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(83,(x)*TILE_W+0,y*TILE_H+2);\ if (isIn(left,TILE_BP_TOP)) \ - e(85,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(85,(x)*TILE_W+0,y*TILE_H+3);\ /* pressable/left */\ if (isIn(left,TILES_RAISE_PRESSED)) \ - e(10,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(10,(x)*TILE_W+0,y*TILE_H+2);\ if (isIn(left,TILES_RAISE_UNPRESSED)) \ - e(10,(x-1)*TILE_W+0,y*TILE_H+1);\ + e(10,(x)*TILE_W+0,y*TILE_H+1);\ if (isIn(left,TILES_DROP_PRESSED)) \ - e(10,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(10,(x)*TILE_W+0,y*TILE_H+3);\ if (isIn(left,TILES_DROP_UNPRESSED)) \ - e(10,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(10,(x)*TILE_W+0,y*TILE_H+2);\ /* debris/left */\ if (isIn(left,TILES_BROKENTILE)) \ - e(49,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(49,(x)*TILE_W+0,y*TILE_H+2);\ /* spikes/left */\ if (isIn(left,TILES_SPIKES)) {\ - e(107,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(107,(x)*TILE_W+0,y*TILE_H+2);\ drawSpike((x-2)*TILE_W+0,y*TILE_H,spikeGetFrame(left),layRight);\ }\ /* skeleton/left */\ if (isIn(left,TILES_SKELETON)) \ - e(81,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(81,(x)*TILE_W+0,y*TILE_H+2);\ /* sword/left */\ if (isIn(left,TILES_SWORD)) \ - drawSword((x-1)*TILE_W-15,y*TILE_H-4);\ + drawSword((x)*TILE_W-15,y*TILE_H-4);\ /* potion base/left */\ if (isIn(left,TILES_SMALLPOTION))\ - drawPotionSmallBase((x-1)*TILE_W-15,y*TILE_H-4);\ + drawPotionSmallBase((x)*TILE_W-15,y*TILE_H-4);\ if ((isIn(left,TILES_BIGPOTION))) \ - drawPotionBigBase((x-1)*TILE_W-15,y*TILE_H-4);\ + drawPotionBigBase((x)*TILE_W-15,y*TILE_H-4);\ /* potion animation/left */\ if (isIn(left,TILES_REDPOTION))\ - drawPotionRedBubbles((x-1)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION));\ + drawPotionRedBubbles((x)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION));\ if (isIn(left,TILES_GREENPOTION))\ - drawPotionGreenBubbles((x-1)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION));\ + drawPotionGreenBubbles((x)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION));\ if (isIn(left,TILES_BLUEPOTION))\ - drawPotionBlueBubbles((x-1)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION)); + drawPotionBlueBubbles((x)*TILE_W+3-15,y*TILE_H-15,isIn(left,TILES_BIGPOTION)); #define drawAllTile(x,y,left,tile) \ /* Wall/left */\ if ((!isIn(tile,TILES_WALL))&&(isIn(left,TILES_WALL))) \ - e(63,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(63,(x)*TILE_W+0,y*TILE_H+2);\ /* torch/this */\ if (isIn(tile,TILES_TORCH)) { /* animation */\ - drawTorchFire((x-1)*TILE_W+11+TILE_W,y*TILE_H-39); \ + drawTorchFire((x)*TILE_W+11+TILE_W,y*TILE_H-39); \ /* base */\ - e(56,(x-1)*TILE_W+3+TILE_W,y*TILE_H-24);\ + e(56,(x)*TILE_W+3+TILE_W,y*TILE_H-24);\ }\ /* chopper/this */\ if (isIn(tile,TILE_CHOPPER)) \ - drawChopper((x-1)*TILE_W+0,y*TILE_H,chopperGetFrame(tile),layCBack);\ + drawChopper((x)*TILE_W+0,y*TILE_H,chopperGetFrame(tile),layCBack);\ /* empty_bricks/this */\ if (isIn(tile,TILES_BRICKE1)) \ - e(52,(x-1)*TILE_W+TILE_W+0,y*TILE_H-18);\ + e(52,(x)*TILE_W+TILE_W+0,y*TILE_H-18);\ if (isIn(tile,TILES_BRICKE2)) \ - e(53,(x-1)*TILE_W+TILE_W+0,y*TILE_H-18);\ + e(53,(x)*TILE_W+TILE_W+0,y*TILE_H-18);\ if (isIn(tile,TILES_WINDOW)) \ - e(54,(x-1)*TILE_W+TILE_W+0,y*TILE_H-18);\ + e(54,(x)*TILE_W+TILE_W+0,y*TILE_H-18);\ /* floor_bricks/this */\ if (isIn(tile,TILES_BRICKF1)) \ - e(12,(x-1)*TILE_W+TILE_W+0,y*TILE_H-18);\ + e(12,(x)*TILE_W+TILE_W+0,y*TILE_H-18);\ if (isIn(tile,TILES_BRICKF2)) \ - e(13,(x-1)*TILE_W+TILE_W+0,y*TILE_H-18);\ + e(13,(x)*TILE_W+TILE_W+0,y*TILE_H-18);\ /* gate/this */\ if (isIn(tile,TILES_DOOR)) \ - e(14,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(14,(x)*TILE_W+0,y*TILE_H+0);\ /* gate_frame/this */\ if (isIn(tile,TILES_GATEFRAME)) \ - e(17,(x-1)*TILE_W+24,y*TILE_H+0);\ + e(17,(x)*TILE_W+24,y*TILE_H+0);\ /* normal/this */\ if (isIn(tile,TILES_FLOOR)) \ - e(9,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(9,(x)*TILE_W+0,y*TILE_H+0);\ /* loose moving/this */\ if (isIn(tile,TILES_LOOSEMOVING)) \ - drawLoose((x-1)*TILE_W+0,y*TILE_H+0,looseGetFrame(tile),layTribot);\ + drawLoose((x)*TILE_W+0,y*TILE_H+0,looseGetFrame(tile),layTribot);\ /* exit_left/this */\ if (isIn(tile,TILE_EXIT_RIGHT)) \ - e(5,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(5,(x)*TILE_W+0,y*TILE_H+0);\ if (isIn(tile,TILE_EXIT_LEFT)) {\ - e(9,(x-1)*TILE_W+0,y*TILE_H+0);\ - drawExit(x*TILE_W+8,(y-1)*TILE_H-1,gateGetFrame(tile));\ + e(9,(x)*TILE_W+0,y*TILE_H+0);\ + drawExit((x)*TILE_W+TILE_W+8,y*TILE_H-TILE_H-1,gateGetFrame(tile));\ }\ /* pillar/this */\ if (isIn(tile,TILES_PILLAR)) \ - e(43,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(43,(x)*TILE_W+0,y*TILE_H+0);\ /* big_pillar/this */\ if (isIn(tile,TILE_BP_BOTTOM)) \ - e(82,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(82,(x)*TILE_W+0,y*TILE_H+0);\ if (isIn(tile,TILE_BP_TOP)) \ - e(87,(x-1)*TILE_W+8,y*TILE_H+3);\ + e(87,(x)*TILE_W+8,y*TILE_H+3);\ /* pressable/this */\ /* TODO: use boolean algebra to simplify this */\ if (isIn(tile,TILES_RAISE_UNPRESSED)&&isIn(left,TILES_WALKABLE)&&(!isIn(left,TILES_RAISE)))\ - e(57,(x-1)*TILE_W+0,y*TILE_H);\ + e(57,(x)*TILE_W+0,y*TILE_H);\ if ((isIn(tile,TILES_RAISE)&&((!isIn(tile,TILES_UNPRESSED))||(!isIn(left,TILES_WALKABLE))||isIn(left,TILES_RAISE)))&&(isIn(tile,TILES_UNPRESSED))) \ - e(58,(x-1)*TILE_W+0,y*TILE_H);\ + e(58,(x)*TILE_W+0,y*TILE_H);\ if (((isIn(tile,TILES_RAISE)&&((!isIn(tile,TILES_UNPRESSED))||(!isIn(left,TILES_WALKABLE))||isIn(left,TILES_RAISE)))&&(!isIn(tile,TILES_UNPRESSED)))||isIn(tile,TILES_DROP_UNPRESSED))\ - e(58,(x-1)*TILE_W+0,y*TILE_H+1);\ + e(58,(x)*TILE_W+0,y*TILE_H+1);\ if (isIn(tile,TILES_DROP_PRESSED)) \ - e(58,(x-1)*TILE_W+0,y*TILE_H+2);\ + e(58,(x)*TILE_W+0,y*TILE_H+2);\ /* debris/this */\ if (isIn(tile,TILES_BROKENTILE)) \ - e(48,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(48,(x)*TILE_W+0,y*TILE_H+0);\ /* spikes/this */\ if (isIn(tile,TILES_SPIKES)) {\ - e(101,(x-1)*TILE_W+0,y*TILE_H+0);\ - drawSpike((x-1)*TILE_W+0,y*TILE_H,spikeGetFrame(tile),layBack);\ + e(101,(x)*TILE_W+0,y*TILE_H+0);\ + drawSpike((x)*TILE_W+0,y*TILE_H,spikeGetFrame(tile),layBack);\ }\ /* skeleton/this */\ if (isIn(tile,TILES_SKELETON)) \ - e(80,(x-1)*TILE_W+0,y*TILE_H+0); + e(80,(x)*TILE_W+0,y*TILE_H+0); #define drawAllBack(x,y,left,tile,right,dleft) \ /* loose moving */\ if (isIn(tile,TILES_LOOSEMOVING)) \ - drawLoose((x-1)*TILE_W+0,y*TILE_H+3,looseGetFrame(tile),layBase);\ + drawLoose((x)*TILE_W+0,y*TILE_H+3,looseGetFrame(tile),layBase);\ /* normal */\ if (isIn(tile,TILES_PRESSABLE)) \ /* TODO: drop has resource 59 for unpressed/raise 47? checkgame */\ - e(59,(x-1)*TILE_W+0,y*TILE_H+(isIn(tile,TILES_UNPRESSED)?3:4));\ + e(59,(x)*TILE_W+0,y*TILE_H+(isIn(tile,TILES_UNPRESSED)?3:4));\ if (isIn(tile,TILES_WALKABLE)&&(!isIn(tile,TILES_LOOSEMOVING))&&(!isIn(tile,TILES_PRESSABLE)))\ - e(11,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(11,(x)*TILE_W+0,y*TILE_H+3);\ /* wall */\ /* there are 4 cases */\ if (wallCase(WALL_LOC_WWW))\ - e(65,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(65,(x)*TILE_W+0,y*TILE_H+3);\ if (wallCase(WALL_LOC_SWW))\ - e(71,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(71,(x)*TILE_W+0,y*TILE_H+3);\ if (wallCase(WALL_LOC_WWS))\ - e(67,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(67,(x)*TILE_W+0,y*TILE_H+3);\ if (wallCase(WALL_LOC_SWS))\ - e(69,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(69,(x)*TILE_W+0,y*TILE_H+3);\ /* empty */\ /* tile, dleft*/\ \ /* gate_frame/this */\ if (isIn(tile,TILES_SPACE)&&isIn(tile,TILES_GATEFRAME)) \ - e(42,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(42,(x)*TILE_W+0,y*TILE_H+3);\ /* gate/left */\ if (isIn(tile,TILES_SPACE)&&isIn(dleft,TILES_DOOR)) \ - e(16,(x-1)*TILE_W+0,y*TILE_H+3);\ - /* drawGateTop(x*TILE_W+0,(y-1)*TILE_H+3,gateGetFrame(tile));*/\ + e(16,(x)*TILE_W+0,y*TILE_H+3);\ /* big_pillar/left */\ if (isIn(tile,TILES_SPACE)&&isIn(dleft,TILE_BP_TOP)) \ - e(86,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(86,(x)*TILE_W+0,y*TILE_H+3);\ /* pillar/left */\ if (isIn(tile,TILES_SPACE)&&isIn(dleft,TILES_PILLAR)) \ - e(45,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(45,(x)*TILE_W+0,y*TILE_H+3);\ /* wall/left */\ if (isIn(tile,TILES_SPACE)&&isIn(dleft,TILES_WALL)) \ - e(64,(x-1)*TILE_W+0,y*TILE_H+3);\ + e(64,(x)*TILE_W+0,y*TILE_H+3);\ \ /* upper objects */\ if (isIn(tile,TILE_EXIT_LEFT)) \ - e(6,(x-1)*TILE_W+0+TILE_W,y*TILE_H-TILE_H+3);\ + e(6,(x)*TILE_W+0+TILE_W,y*TILE_H-TILE_H+3);\ if (isIn(tile,TILE_EXIT_RIGHT)) \ - e(8,(x-1)*TILE_W+0+TILE_W,y*TILE_H-TILE_H+3); + e(8,(x)*TILE_W+0+TILE_W,y*TILE_H-TILE_H+3); #define drawAllFore(x,y,left,tile,right) \ /* pillar */\ if (isIn(tile,TILES_PILLAR)) \ - e(46,x*TILE_W-24,y*TILE_H+0);\ + e(46,(x)*TILE_W+TILE_W-24,y*TILE_H+0);\ /* big pillar */\ if (isIn(tile,TILE_BP_BOTTOM)) \ - e(84,x*TILE_W-24,y*TILE_H+0);\ + e(84,(x)*TILE_W+TILE_W-24,y*TILE_H+0);\ /* wall */\ /* there are 4 cases */\ if (wallCase(WALL_LOC_WWW))\ - e(66,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(66,(x)*TILE_W+0,y*TILE_H+0);\ if (wallCase(WALL_LOC_SWW))\ - e(72,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(72,(x)*TILE_W+0,y*TILE_H+0);\ if (wallCase(WALL_LOC_WWS))\ - e(68,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(68,(x)*TILE_W+0,y*TILE_H+0);\ if (wallCase(WALL_LOC_SWS))\ - e(70,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(70,(x)*TILE_W+0,y*TILE_H+0);\ \ /* the seed generation algorithm */\ /* Upper row */\ if (wallGetInfo(WALL_TABLE_LINE1_DARKER))\ - e(75,(x-1)*TILE_W+0,y*TILE_H-39);\ + e(75,(x)*TILE_W+0,y*TILE_H-39);\ if (wallGetInfo(WALL_TABLE_LINE1_LEFT_DOWN))\ - e(77,(x-1)*TILE_W+0,y*TILE_H-39);\ + e(77,(x)*TILE_W+0,y*TILE_H-39);\ if (wallGetInfo(WALL_TABLE_LINE1_RIGHT_DOWN))\ - e(79,(x-1)*TILE_W+24,y*TILE_H-39);\ + e(79,(x)*TILE_W+24,y*TILE_H-39);\ if (wallGetInfo(WALL_TABLE_LINE1_RIGHT_UP))\ - e(78,(x-1)*TILE_W+24,y*TILE_H-49);\ + e(78,(x)*TILE_W+24,y*TILE_H-49);\ if (wallGetInfo(WALL_TABLE_LINE1_LEFT_UP))\ - e(76,(x-1)*TILE_W+0,y*TILE_H-54);\ + e(76,(x)*TILE_W+0,y*TILE_H-54);\ /* Second row */\ if (isIn(tile,TILES_WALL))\ - e(74-wallGetInfo(WALL_TABLE_LINE2_SEP),(x-1)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET),y*TILE_H-18);\ + e(74-wallGetInfo(WALL_TABLE_LINE2_SEP),(x)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET),y*TILE_H-18);\ if (wallGetInfo(WALL_TABLE_LINE2_LEFT_DOWN))\ - e(77,(x-1)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)+5,y*TILE_H-39+21);\ + e(77,(x)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)+5,y*TILE_H-39+21);\ if (wallGetInfo(WALL_TABLE_LINE2_RIGHT_DOWN))\ - e(79,(x-1)*TILE_W+24+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)-32+5,y*TILE_H-39+21);\ + e(79,(x)*TILE_W+24+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)-32+5,y*TILE_H-39+21);\ if (wallGetInfo(WALL_TABLE_LINE2_RIGHT_UP))\ - e(78,(x-1)*TILE_W+24+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)-32+5,y*TILE_H-49+21);\ + e(78,(x)*TILE_W+24+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)-32+5,y*TILE_H-49+21);\ if (wallGetInfo(WALL_TABLE_LINE2_LEFT_UP))\ - e(76,(x-1)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)+5,y*TILE_H-54+21);\ + e(76,(x)*TILE_W+7+wallGetInfo(WALL_TABLE_LINE2_OFFSET)+5,y*TILE_H-54+21);\ /* Third row TODO: send to BottomTile */\ if (isIn(tile,TILES_WALL))\ - e(74-wallGetInfo(WALL_TABLE_LINE3_SEP),(x-1)*TILE_W+3+wallGetInfo(WALL_TABLE_LINE3_OFFSET),y*TILE_H+3);\ + e(74-wallGetInfo(WALL_TABLE_LINE3_SEP),(x)*TILE_W+3+wallGetInfo(WALL_TABLE_LINE3_OFFSET),y*TILE_H+3);\ if (wallGetInfo(WALL_TABLE_LINE3_LEFT_UP))\ - e(76,(x-1)*TILE_W+5+wallGetInfo(WALL_TABLE_LINE3_OFFSET)+5,y*TILE_H-55+21*2);\ + e(76,(x)*TILE_W+5+wallGetInfo(WALL_TABLE_LINE3_OFFSET)+5,y*TILE_H-55+21*2);\ \ /* debris/this foreground layer */\ if (isIn(tile,TILES_BROKENTILE)) \ - e(51,(x-1)*TILE_W+0,y*TILE_H+0);\ + e(51,(x)*TILE_W+0,y*TILE_H+0);\ /* spikes/this foreground layer */\ if (isIn(tile,TILES_SPIKES)) \ - drawSpike((x-1)*TILE_W+0,y*TILE_H+0,spikeGetFrame(tile),layFore);\ + drawSpike((x)*TILE_W+0,y*TILE_H+0,spikeGetFrame(tile),layFore);\ #endif diff --git a/FP/src/ker/room.c b/FP/src/ker/room.c index cb37fe2..6410792 100644 --- a/FP/src/ker/room.c +++ b/FP/src/ker/room.c @@ -289,8 +289,8 @@ void drawChopper(int x, int y, int frame, tChopperLayer layer) { void drawBackPanel(tRoom* room,int x, int y) { tTile tile=roomGetTile(room,x,y); tTile left=roomGetTile(room,x-1,y); - drawAllLeft(x,y,left,tile); - drawAllTile(x,y,left,tile); + drawAllLeft(x-1,y,left,tile); + drawAllTile(x-1,y,left,tile); } /* bottom panel block at background */ @@ -300,7 +300,7 @@ void drawBackBottomTile(tRoom* room,int x, int y) { tTile right=roomGetTile(room,x+1,y); tTile dleft=roomGetTile(room,x-1,(y==3)?3:(y+1)); int cases=wallGetCase(left,tile,right); - drawAllBack(x,y,left,tile,right,dleft) \ + drawAllBack(x-1,y,left,tile,right,dleft); } /* main panel block */ @@ -311,7 +311,7 @@ void drawForePanel(tRoom* room,int x, int y) { tTile tile=roomGetTile(room,x,y); tTile right=roomGetTile(room,x+1,y); int cases=wallGetCase(left,tile,right); - drawAllFore(x,y,left,tile,right); + drawAllFore(x-1,y,left,tile,right); } /*