From f26a86bcc78c1946f55b6a399039e3bd8fb5dd16 Mon Sep 17 00:00:00 2001 From: jacopo grandi Date: Mon, 22 Feb 2021 20:18:25 +0100 Subject: fix maxrange and testing --- gst/info.c | 7 ++++--- gst/units.c | 6 ++---- 2 files changed, 6 insertions(+), 7 deletions(-) (limited to 'gst') diff --git a/gst/info.c b/gst/info.c index 2329baf..0eaecb3 100644 --- a/gst/info.c +++ b/gst/info.c @@ -240,13 +240,14 @@ float info_unit_get_range(infos *info, info_unit *u, int w) { float info_unit_get_maxrange(infos *info, info_unit *u) { int lc = u->levels[LEVEL_CHASSIS]; - float sum = 0; + float max = 0; for(int i=0; ichassis[u->chassis].slot_weapon[lc]; i++) { if (u->weapons[i] != -1) { - sum += info_unit_get_range(info, u, i); + float range = info_unit_get_range(info, u, i); + if (range > max) { max = range; } } } - return sum; + return max; } float info_unit_get_charge_per_shot (infos *info, info_unit *u, int w) { diff --git a/gst/units.c b/gst/units.c index 409f9b1..89c9489 100644 --- a/gst/units.c +++ b/gst/units.c @@ -64,7 +64,6 @@ void unit_remove (army *ar, map *m, unit *u) { ar->uslen--; ar->grid[xytoi(m, tx, ty)] = u; ar->grid[xytoi(m, ux, uy)] = NULL; - printf("ar->uslen: %d\n", ar->uslen); } void unit_dead (army *ar, map *m, unit *u) { @@ -76,7 +75,6 @@ void unit_search (infos *info, army *ar, map *m, unit *u, { for (int f=0; f<32; t[f] = NULL, f++); int mult[4][2] = { {1, 1},{1,-1},{-1,-1},{-1,1} }, x, y, dx, dy, tmp; - *t = NULL; for (int r=1; rgridpos[0] - (*t)->gridpos[0], u->gridpos[1] - (*t)->gridpos[1] - }; float mag = vec2_mag(diff); - if (mag > range) *t = NULL; + }; float mag = vec2_mag2(diff); + if (mag > range*range) *t = NULL; } }}} } -- cgit v1.2.3-54-g00ecf