diff --git a/bin/back b/bin/back index 625f3ee..9f1104d 100755 Binary files a/bin/back and b/bin/back differ diff --git a/obj/display.o b/obj/display.o index 43f99e7..289b4d1 100644 Binary files a/obj/display.o and b/obj/display.o differ diff --git a/obj/entities.o b/obj/entities.o index de4e199..e27ade8 100644 Binary files a/obj/entities.o and b/obj/entities.o differ diff --git a/obj/generation.o b/obj/generation.o index ce3a592..59613cc 100644 Binary files a/obj/generation.o and b/obj/generation.o differ diff --git a/src/display.c b/src/display.c index 01e269d..7ab907c 100644 --- a/src/display.c +++ b/src/display.c @@ -222,6 +222,7 @@ void gl_drawData(unsigned int shaderProg) { gl_drawInteger(shaderProg, njumps, 0.0f, 0.80f, 0.04f, 255, 255, 128, 0.005f, 1); - gl_printf(shaderProg, -0.95f, 0.9f, 0.05f, 0.005f, 255-player_hp/4, player_hp/4, 0, "HP %d", player_hp); + gl_printf(shaderProg, -0.95f, 0.9f, 0.04f, 0.004f, 255-player_hp/4, player_hp/4, 0, "HP %d", player_hp); + gl_printf(shaderProg, -0.95f, 0.8f, 0.04f, 0.004f, 255, 255, 0, "coins %d", coins); //gl_drawInteger(shaderProg, player_hp, -0.95f, 0.9f, 0.05f, 255-player_hp/4, player_hp/4, 0, 0.005f, 1); } \ No newline at end of file diff --git a/src/entities.c b/src/entities.c index ae620d5..8b44598 100644 --- a/src/entities.c +++ b/src/entities.c @@ -106,7 +106,7 @@ void moving_xyz_line(double x, double y, double z, double w, double h, double d, ret->x += (ent->metai1)*ent->metad4*dtime; } ret->y += (ent->metai2)*ent->metad5*dtime; - printf("%lf, %lf | %lf\n", ent->metad2, ret->y, ent->metad8); + //printf("%lf, %lf | %lf\n", ent->metad2, ret->y, ent->metad8); if(absf(ent->metad2 - ret->y) > ent->metad8) { //printf("-y-\n"); ent->metai2 *= (-1); @@ -134,6 +134,15 @@ void detectHit(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret) { } } +void money(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret) { + coins += *hp; + player_hp -= (*dmg); + if(*dmg != 0) { + fade_dmg = 255; + } + *hp = 0; +} + void translatePlayer(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret) { double dx = ent->metad4*(cos((double)(ent->metai1*(sim_time+(double)dtime)/ent->metai2 + ent->metai3*3.14159/180.0))-cos((double)(ent->metai1*sim_time/ent->metai2 + ent->metai3*3.14159/180.0))); double dy = ent->metad5*(cos((double)(ent->metai1*(sim_time+(double)dtime)/ent->metai2 + ent->metai3*3.14159/180.0))-cos((double)(ent->metai1*sim_time/ent->metai2 + ent->metai3*3.14159/180.0))); diff --git a/src/entities.h b/src/entities.h index b262df0..0d6b797 100644 --- a/src/entities.h +++ b/src/entities.h @@ -15,6 +15,7 @@ void moving_xyz_line(double x, double y, double z, double w, double h, double d, void go_to_player(double x, double y, double z, double w, double h, double d, double hz_angle, double vt_angle, float dtime, entity* ent, cube_0* ret); void detectHit(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret); +void money(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret); void explodeOnHit(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret); void translatePlayer(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret); void translatePlayerLine(float dtime, int* hp, int* dmg, entity* ent, cube_0* ret); diff --git a/src/generation.c b/src/generation.c index 4ff6d06..0880ff9 100644 --- a/src/generation.c +++ b/src/generation.c @@ -39,8 +39,8 @@ void init_ent_generator(int n) { hashtbl_entities[0].id = 0; hashtbl_entities[0].name = "Coin"; // 0 = default - hashtbl_entities[0].updatePos = &speen2; - hashtbl_entities[0].onHit = &detectHit; + hashtbl_entities[0].updatePos = &speen; + hashtbl_entities[0].onHit = &money; hashtbl_entities[0].onDeath = NULL; hashtbl_entities[1].id = 1; diff --git a/templates/room_5 b/templates/room_5 index f17cc4d..618edcb 100644 --- a/templates/room_5 +++ b/templates/room_5 @@ -11,6 +11,7 @@ Entities: [-15.0, 4.0, -15.0, 4.0, 1.0, 4.0, 0.0, 0.0, 192, 128, 192, 10, 0, 4, 0.0, 5.0, 0.0, 2, 1, 0] [-5.0, 9.0, -15.0, 4.0, 1.0, 4.0, 0.0, 0.0, 192, 128, 192, 10, 0, 5, 5.0, 0.0, 0.0, 6.0, 0.0, 0.0] [0.0, 10.0, -5.0, 4.0, 1.0, 4.0, 0.0, 0.0, 192, 128, 192, 10, 0, 4, 0.0, 0.0, 5.0, 2, 1, 35] +[0.0, 15.0, 0.0, 0.5, 0.5, 0.5, 0.0, 0.0, 255, 255, 0, 5, 0, 0] Weight : 50 diff --git a/templates/room_6 b/templates/room_6 index 10433f0..21f9c9a 100644 --- a/templates/room_6 +++ b/templates/room_6 @@ -11,6 +11,7 @@ Entities: [-2.0, 4.1, -2.0, 4.0, 1.0, 4.0, 0.0, 0.0, 32, 128, 192, 10, 0, 5, 0.0, 4.0, 0.0, 0.0, 5.5, 0.0] [-6.0, 8.1, -2.0, 4.0, 1.0, 4.0, 0.0, 0.0, 32, 128, 192, 10, 0, 5, 0.0, 4.0, 0.0, 0.0, 6.0, 0.0] [6.0, 12.1, -2.0, 4.0, 1.0, 4.0, 0.0, 0.0, 32, 128, 192, 10, 0, 5, 0.0, 4.0, 0.0, 0.0, 6.5, 0.0] +[0.0, 20.0, 0.0, 0.5, 0.5, 0.5, 0.0, 0.0, 255, 255, 0, 10, 0, 0] Weight : 50