diff --git a/.gitignore b/.gitignore index ec9b4d0..bc4c687 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ # Build files /build-fx /build-cg +/build-cg-push /*.g1a /*.g3a diff --git a/assets-cg/levels/lv2.txt b/assets-cg/levels/lv2.txt index 7236835..975ef99 100644 --- a/assets-cg/levels/lv2.txt +++ b/assets-cg/levels/lv2.txt @@ -20,7 +20,7 @@ wave: 12s 1*fire_slime/4 1*bat/2 4*slime/1 delay: 8s # "Boss" wave #1 -wave: 12s 1*albinos_bat/6 2*fire_slime/4 4*bat/2 8*slime/1 +wave: 12s 1*albinos_bat/6 2*fire_slime/4 4*bat/2 8*slime/1 1*water_slime/8 delay: 10s item: scepter2 @@ -28,11 +28,13 @@ wave: 12s 4*fire_slime/4 4*bat/2 wave: 8s 1*albinos_bat/6 item: potion_hp delay: 5s -wave: 18s 12*bat/2 12*slime/1 +wave: 18s 12*bat/2 6*slime/1 2*water_slime/8 delay: 8s # "Boss" wave #2 wave: 2s 4*fire_slime/4 4*bat/2 4*slime/1 delay: 4s wave: 1s 2*albinos_bat/6 -wave: 20s 40*slime/1 + +wave: 8s 4*water_slime/8 2*chemical_slime/10 +wave: 20s 20*slime/1 10*fire_slime/4 4*water_slime/8 2*chemical_slime/10 diff --git a/src/enemies.c b/src/enemies.c index 849fe12..692893f 100644 --- a/src/enemies.c +++ b/src/enemies.c @@ -54,7 +54,7 @@ static enemy_t const bat_2 = { .stats_growth = { .HP=10, .ATK=3, .MAG=2, .DEF=1 }, .shadow_size = 4, - .xp = 6, + .xp = 8, .z = fix(0.75), .ai_data_size = sizeof(struct bat_ai), }; @@ -74,7 +74,7 @@ static enemy_t const fire_slime_4 = { .stats_growth = { .HP=8, .ATK=4, .MAG=4, .DEF=2 }, .shadow_size = 4, - .xp = 14, + .xp = 22, .z = 0, .ai_data_size = 0, }; @@ -94,7 +94,7 @@ static enemy_t const albinos_bat_6 = { .stats_growth = { .HP=10, .ATK=3, .MAG=2, .DEF=1 }, .shadow_size = 4, - .xp = 20, + .xp = 40, .z = fix(0.5), .ai_data_size = sizeof(struct bat_ai), }; @@ -113,7 +113,7 @@ static enemy_t const gunslinger_8 = { .stats_growth = { .HP=12, .ATK=4, .MAG=1, .DEF=1 }, .shadow_size = 4, - .xp = 30, + .xp = 60, .z = fix(0.25), .ai_data_size = 0, }; @@ -133,7 +133,7 @@ static enemy_t const water_slime_8 = { .stats_growth = { .HP=8, .ATK=4, .MAG=4, .DEF=2 }, .shadow_size = 4, - .xp = 24, + .xp = 32, .z = 0, .ai_data_size = 0, }; @@ -153,7 +153,7 @@ static enemy_t const chemical_slime_10 = { .stats_growth = { .HP=8, .ATK=2, .MAG=6, .DEF=2 }, .shadow_size = 4, - .xp = 41, + .xp = 71, .z = 0, .ai_data_size = 0, }; diff --git a/src/game.c b/src/game.c index de620e2..c5b2b04 100644 --- a/src/game.c +++ b/src/game.c @@ -360,8 +360,10 @@ void game_remove_dead_entities(game_t *g) bool anim_finished = !v || (v->anim.frame == NULL); if(f && f->HP == 0 && f->enemy != NULL && anim_finished) { - /* Give XP points to player */ - bool lvup = player_add_xp(g->player, f->enemy->id->xp); + /* Give XP points to player based on combo */ + int mult_percent = 100 + min(g->combo, 100); + int xp = f->enemy->id->xp * mult_percent / 100; + bool lvup = player_add_xp(g->player, xp); if(lvup) { g->hud_xp_anim.frame = anims_hud_xp_Explode.start[0];