mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-09-10 08:54:51 +00:00
tfv: implement a limit break
This commit is contained in:
parent
c5fd0501d6
commit
a8619d1993
@ -3,12 +3,15 @@ Soon:
|
||||
--> Sprites for all enemies
|
||||
--> Randomize enemy you fight
|
||||
--> Different backgrounds based on location
|
||||
--> Print enemy attack name on screen
|
||||
--> Menu
|
||||
--> Magic
|
||||
--> Limit breaks
|
||||
--> Summons
|
||||
--> Limit break (move to end, only have item appear if breaking)
|
||||
--> Die if HP hits 0. On ground sprite
|
||||
--> Run away
|
||||
+ Enable getting back on spaceship (with animation)
|
||||
--> Fix weird glitch on damage printing
|
||||
--> Sound effects
|
||||
|
||||
+ Enable getting back on spaceship (with better animation)
|
||||
+ Better collision detection on Spaceship land
|
||||
+ Better collision detection/walk on+off in College Park
|
||||
+ Hook up art for all possible locations
|
||||
|
@ -642,6 +642,98 @@ static void magic_attack(int which) {
|
||||
|
||||
static void limit_break(int which) {
|
||||
|
||||
int ax=34,ay=20;
|
||||
int damage=100;
|
||||
int i;
|
||||
|
||||
while(ay>0) {
|
||||
|
||||
gr_copy_to_current(0xc00);
|
||||
|
||||
grsim_put_sprite(tfv_stand_left,ax,ay);
|
||||
grsim_put_sprite(tfv_led_sword,ax-5,ay);
|
||||
|
||||
grsim_put_sprite(enemies[enemy_type].sprite,enemy_x,20);
|
||||
|
||||
draw_battle_bottom(enemy_type);
|
||||
|
||||
page_flip();
|
||||
|
||||
ay-=1;
|
||||
|
||||
usleep(20000);
|
||||
}
|
||||
|
||||
ax=10;
|
||||
ay=0;
|
||||
|
||||
/* Falling */
|
||||
|
||||
while(ay<=20) {
|
||||
|
||||
gr_copy_to_current(0xc00);
|
||||
|
||||
grsim_put_sprite(enemies[enemy_type].sprite,enemy_x,20);
|
||||
|
||||
grsim_put_sprite(tfv_stand_left,ax,ay);
|
||||
grsim_put_sprite(tfv_led_sword,ax-5,ay);
|
||||
|
||||
draw_battle_bottom(enemy_type);
|
||||
|
||||
color_equals(13);
|
||||
vlin(0,ay,ax-5);
|
||||
|
||||
page_flip();
|
||||
|
||||
ay+=1;
|
||||
|
||||
usleep(100000);
|
||||
}
|
||||
|
||||
i=0;
|
||||
while(i<13) {
|
||||
|
||||
gr_copy_to_current(0xc00);
|
||||
|
||||
grsim_put_sprite(enemies[enemy_type].sprite,enemy_x,20);
|
||||
|
||||
grsim_put_sprite(tfv_stand_left,ax,ay);
|
||||
grsim_put_sprite(tfv_led_sword,ax-5,ay);
|
||||
|
||||
draw_battle_bottom(enemy_type);
|
||||
|
||||
color_equals(COLOR_LIGHTGREEN);
|
||||
vlin(ay,ay+i,ax-5);
|
||||
|
||||
page_flip();
|
||||
i++;
|
||||
|
||||
usleep(100000);
|
||||
}
|
||||
|
||||
ax=34;
|
||||
ay=20;
|
||||
|
||||
gr_copy_to_current(0xc00);
|
||||
|
||||
grsim_put_sprite(enemies[enemy_type].sprite,enemy_x,20);
|
||||
|
||||
grsim_put_sprite(tfv_stand_left,ax,ay);
|
||||
grsim_put_sprite(tfv_led_sword,ax-5,ay);
|
||||
|
||||
draw_battle_bottom(enemy_type);
|
||||
|
||||
color_equals(COLOR_LIGHTGREEN);
|
||||
vlin(20,33,5);
|
||||
|
||||
damage_enemy(damage);
|
||||
gr_put_num(2,10,damage);
|
||||
page_flip();
|
||||
|
||||
for(i=0;i<20;i++) {
|
||||
usleep(100000);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void summon(int which) {
|
||||
|
Loading…
Reference in New Issue
Block a user