Jump item, erase tile system, improved transfer.sh
Made cp verbose
This commit is contained in:
parent
2caf479d42
commit
682f4fb49f
Binary file not shown.
After Width: | Height: | Size: 145 B |
38
levels.lua
38
levels.lua
|
@ -42,6 +42,44 @@ levels = {[[
|
|||
-00000000000000000000000000-
|
||||
----------------------------
|
||||
]],
|
||||
[[
|
||||
----------------------------
|
||||
-00000000000000000000000000-
|
||||
-00000000000000000000000000-
|
||||
000......................00-
|
||||
-........................00-
|
||||
-........................00-
|
||||
000......................00-
|
||||
-00......................00-
|
||||
-00.....0...0.000.000....00-
|
||||
-00.....0...0..0..0.0....00-
|
||||
-00.....0.0.0..0..000....00-
|
||||
-00.....0.0.0..0..0......00-
|
||||
-00......0.0..000.0....vv00-
|
||||
-00....................vv00-
|
||||
-00000000000000000000000000-
|
||||
-00000000000000000000000000-
|
||||
----------------------------
|
||||
]],
|
||||
[[
|
||||
----------------------------
|
||||
-00000000000000000000000000-
|
||||
-00000000000000000000000000-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00......................00-
|
||||
-00000000000000000000000000-
|
||||
-00000000000000000000000000-
|
||||
----------------------------
|
||||
]],
|
||||
}
|
||||
|
||||
to_write = ""
|
||||
|
|
BIN
platform.g3a
BIN
platform.g3a
Binary file not shown.
19
src/draw.c
19
src/draw.c
|
@ -19,12 +19,13 @@ void draw_player(int old_x, int old_y, int x, int y)
|
|||
}
|
||||
}
|
||||
|
||||
void draw_level(char level[])
|
||||
void draw_level(char level[], char upgrades[])
|
||||
{
|
||||
dclear(BG_COLOR);
|
||||
extern image_t img_ground; //ground texture, 16x16
|
||||
extern image_t img_spike; //spike texture, 16x16
|
||||
extern image_t img_elevator; //elevator texture, 16x16
|
||||
extern image_t img_jitem; //jump item texture, 16x16
|
||||
unsigned int i = 0;
|
||||
unsigned int x = 0;
|
||||
unsigned int y = 0;
|
||||
|
@ -41,6 +42,10 @@ void draw_level(char level[])
|
|||
case '^':
|
||||
dimage(x * 2 + DRAW_OFFSET_X, y * 2 + DRAW_OFFSET_Y, &img_elevator);
|
||||
break;
|
||||
case 'j':
|
||||
if (!upgrades[0])
|
||||
dimage(x*2 + DRAW_OFFSET_X, y*2 + DRAW_OFFSET_Y, &img_jitem);
|
||||
else level[i] = '.';
|
||||
}
|
||||
x += 8;
|
||||
if (x == 8*LEVEL_WIDTH)
|
||||
|
@ -51,3 +56,15 @@ void draw_level(char level[])
|
|||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
void erase_tile(int x, int y, char level[])
|
||||
{
|
||||
x = (int)(x/8);
|
||||
y = (int)(y/8);
|
||||
level[x + y * 28] = '.';
|
||||
x *= 16;
|
||||
y *= 16;
|
||||
drect(x + DRAW_OFFSET_X, y + DRAW_OFFSET_Y,
|
||||
x + 15 + DRAW_OFFSET_X,
|
||||
y + 15 + DRAW_OFFSET_Y, BG_COLOR);
|
||||
}
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
void draw_player(int old_x, int old_y, int x, int y);
|
||||
void draw_level(char level[]);
|
||||
void draw_level(char level[], char upgrades[]);
|
||||
void erase_tile(int x, int y, char level[]);
|
||||
|
|
14
src/main.c
14
src/main.c
|
@ -29,7 +29,7 @@ int main(void)
|
|||
int level_id = 1;
|
||||
//start upgrades (mostly bools)
|
||||
char upgrades[] = {
|
||||
1 //can jump
|
||||
0 //can jump
|
||||
};
|
||||
//end upgrades
|
||||
char jump_pressed = 0; //avoid holding jump
|
||||
|
@ -44,7 +44,7 @@ int main(void)
|
|||
int start_y = 9*8 + 2;
|
||||
int old_x, old_y;
|
||||
set_level(level_id, level);
|
||||
draw_level(level);
|
||||
draw_level(level, upgrades);
|
||||
player_x = start_x;
|
||||
player_y = start_y;
|
||||
old_x = player_x + 1; //offset to draw it on first cycle
|
||||
|
@ -126,7 +126,7 @@ int main(void)
|
|||
player_x = 207;
|
||||
set_start_pos(&start_x, &start_y, player_x, player_y);
|
||||
set_level(level_id, level);
|
||||
draw_level(level);
|
||||
draw_level(level, upgrades);
|
||||
reset_old_pos(&old_x, &old_y);
|
||||
}
|
||||
else if (player_x >= 208)
|
||||
|
@ -135,8 +135,14 @@ int main(void)
|
|||
player_x = 12;
|
||||
set_start_pos(&start_x, &start_y, player_x, player_y);
|
||||
set_level(level_id, level);
|
||||
draw_level(level);
|
||||
draw_level(level, upgrades);
|
||||
reset_old_pos(&old_x, &old_y);
|
||||
}
|
||||
//item get
|
||||
if (collide(player_x, player_y, level, 'j'))
|
||||
{
|
||||
UG_CAN_JUMP = 1;
|
||||
erase_tile(player_x, player_y, level);
|
||||
}
|
||||
//exit
|
||||
if (keydown(KEY_EXIT)) return 0;
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
#/bin/#!/usr/bin/env bash
|
||||
echo cp
|
||||
cp platform.g3a /media/user/disk/
|
||||
cp platform.g3a /media/user/disk/ -v
|
||||
echo done
|
||||
|
|
Loading…
Reference in New Issue