animatePlayer(pip, player, pn, 1);
mapScrollRight(pip, player, 0, pn);
mapScrollRight(pip, player, 1, pn);
-// mapScrollRight(pip, player, 2, pn);
+ ScrollRight(pip, player, 2, pn);
+ ScrollRight(pip, player, 3, pn);
if(!pageflipflop) modexShowPage(pip[1].page);
player[pn].q++;
} else { player[pn].q = 1; player[pn].d = 2; player[pn].tx++; }
animatePlayer(pip, player, pn, 1);
mapScrollLeft(pip, player, 0, pn);
mapScrollLeft(pip, player, 1, pn);
-// mapScrollLeft(pip, player, 2, pn);
+ ScrollLeft(pip, player, 2, pn);
+ ScrollLeft(pip, player, 3, pn);
if(!pageflipflop) modexShowPage(pip[1].page);
player[pn].q++;
} else { player[pn].q = 1; player[pn].d = 2; player[pn].tx--; }
animatePlayer(pip, player, pn, 1);
mapScrollDown(pip, player, 0, pn);
mapScrollDown(pip, player, 1, pn);
-// mapScrollDown(pip, player, 2, pn);
+ ScrollDown(pip, player, 2, pn);
+ ScrollDown(pip, player, 3, pn);
if(!pageflipflop) modexShowPage(pip[1].page);
player[pn].q++;
} else { player[pn].q = 1; player[pn].d = 2; player[pn].ty++; }
animatePlayer(pip, player, pn, 1);
mapScrollUp(pip, player, 0, pn);
mapScrollUp(pip, player, 1, pn);
-// mapScrollUp(pip, player, 2, pn);
+ ScrollUp(pip, player, 2, pn);
+ ScrollUp(pip, player, 3, pn);
if(!pageflipflop) modexShowPage(pip[1].page);
player[pn].q++;
} else { player[pn].q = 1; player[pn].d = 2; player[pn].ty--; }
{
word x, y; /* coordinate for drawing */
- /* increment the pixel position and update the page */
+ /* decrement the pixel position and update the page */
mv[id].page->dx -= player[plid].speed;
/* check to see if this changes the tile */
{
word x, y; /* coordinate for drawing */
- /* increment the pixel position and update the page */
+ /* decrement the pixel position and update the page */
mv[id].page->dy -= player[plid].speed;
/* check to see if this changes the tile */
//}
}
+
+//TODO finish this wwww
+void near ScrollRight(map_view_t *mv, player_t *player, word id, word plid)
+{
+ /* increment the pixel position and update the page */
+ mv[0].video->page[id].dx += player[plid].speed;
+
+ /* check to see if this changes the tile */
+ if(mv[0].video->page[id].dx >= mv[id].dxThresh )
+ {
+ /* Snap the origin forward */
+ mv[0].video->page[id].data += 4;
+ mv[0].video->page[id].dx = mv[0].map->tiles->tileWidth;
+ }
+}
+
+
+void near ScrollLeft(map_view_t *mv, player_t *player, word id, word plid)
+{
+ /* decrement the pixel position and update the page */
+ mv[0].video->page[id].dx -= player[plid].speed;
+
+ /* check to see if this changes the tile */
+ if(mv[0].video->page[id].dx == 0)
+ {
+ /* Snap the origin backward */
+ mv[0].video->page[id].data -= 4;
+ mv[0].video->page[id].dx = mv[0].map->tiles->tileWidth;
+ }
+}
+
+void near ScrollUp(map_view_t *mv, player_t *player, word id, word plid)
+{
+ /* decrement the pixel position and update the page */
+ mv[0].video->page[id].dy -= player[plid].speed;
+
+ /* check to see if this changes the tile */
+ if(mv[0].video->page[id].dy == 0)
+ {
+ /* Snap the origin backward */
+ mv[0].video->page[id].data -= 4;
+ mv[0].video->page[id].dy = mv[0].map->tiles->tileWidth;
+ }
+}
+
+void near ScrollDown(map_view_t *mv, player_t *player, word id, word plid)
+{
+ /* increment the pixel position and update the page */
+ mv[0].video->page[id].dy += player[plid].speed;
+
+ /* check to see if this changes the tile */
+ if(mv[0].video->page[id].dy >= mv[id].dxThresh )
+ {
+ /* Snap the origin forward */
+ mv[0].video->page[id].data += 4;
+ mv[0].video->page[id].dy = mv[0].map->tiles->tileWidth;
+ }
+}
+
sword chkmap(map_t *map, word q)
{
// bitmap_t bp;
#define FRAME2 modexClearRegion(pip[1].page, x, y, 24, 32, 1+dire);
#define FRAME3 modexClearRegion(pip[1].page, x, y, 24, 32, dire);
#define FRAME4 modexClearRegion(pip[1].page, x, y, 24, 32, 1+dire);
-#endif
- modexCopyPageRegion(pip[1].page, pip[0].page, x-4, y-4, x-4, y-4, 28, 40);
+ #endif
+ if(pageflipflop)
+ modexCopyPageRegion(pip[pip->video->p].page,
+ pip[!(pip->video->p)].page, x-4, y-4, x-4, y-4, 28, 40);
+ else modexCopyPageRegion(pip[1].page, pip[0].page, x-4, y-4, x-4, y-4, 28, 40);
//modexCopyPageRegion(pip[2].page, pip[1].page, 16, 16, 16, 16, (14*8)+4, 8+4);
if(2>ls && ls>=1) { FRAME1 }else
if(3>ls && ls>=2) { FRAME2 }else