]> 4ch.mooo.com Git - 16.git/blob - src/lib/scroll.h
new file: 16.c
[16.git] / src / lib / scroll.h
1 #ifndef SCROLL_H\r
2 #define SCROLL_H\r
3
4 typedef struct {
5         bitmap_t *data;
6         word tileHeight;
7         word tileWidth;
8         unsigned int rows;
9         unsigned int cols;
10 } tiles_t;
11
12
13 typedef struct {
14         byte    *data;
15         tiles_t *tiles;
16         int width;
17         int height;
18 } map_t;
19
20
21 typedef struct {
22         map_t *map;
23         page_t *page;
24         int tx; //appears to be the top left tile position on the viewable screen map
25         int ty; //appears to be the top left tile position on the viewable screen map
26         word dxThresh; //????
27         word dyThresh; //????
28 } map_view_t;
29
30 //TODO: make this into actor_t
31 struct {
32         int x; //player exact position on the viewable map
33         int y; //player exact position on the viewable map
34         int tx; //player tile position on the viewable map
35         int ty; //player tile position on the viewable map
36         int triggerx; //player's trigger box tile position on the viewable map
37         int triggery; //player's trigger box tile position on the viewable map
38         int hp; //hitpoints of the player
39 } player;
40
41
42 map_t allocMap(int w, int h);
43 void initMap(map_t *map);
44 void mapScrollRight(map_view_t *mv, byte offset, short lp);
45 void mapScrollLeft(map_view_t *mv, byte offest, short lp);
46 void mapScrollUp(map_view_t *mv, byte offset, short lp);
47 void mapScrollDown(map_view_t *mv, byte offset, short lp);
48 void mapGoTo(map_view_t *mv, int tx, int ty);
49 void mapDrawTile(tiles_t *t, word i, page_t *page, word x, word y);
50 void mapDrawRow(map_view_t *mv, int tx, int ty, word y, word poopoffset);
51 void mapDrawCol(map_view_t *mv, int tx, int ty, word x, word poopoffset);
52 void mapDrawWRow(map_view_t *mv, int tx, int ty, word y);
53 void mapDrawWCol(map_view_t *mv, int tx, int ty, word x);
54 void animatePlayer(map_view_t *src, map_view_t *dest, /*map_view_t *top, */short d1, short d2, int x, int y, int ls, int lp, bitmap_t *bmp);
55
56 #define TILEWH 16
57 #define QUADWH (TILEWH/4)
58 #define SPEED 4
59
60 //place holder definitions
61 #define MAPX 200
62 #define MAPY 150
63 #define TRIGGX 10
64 #define TRIGGY 9
65 //#define SWAP(a, b) tmp=a; a=b; b=tmp;
66 #endif\r