From 037d9a4f5da68a35cb4c03019967285e6c3d5178 Mon Sep 17 00:00:00 2001 From: stpohle Date: Sun, 30 Jan 2005 16:53:37 +0000 Subject: [PATCH] bug on irix in function ai_bombpoints fixed --- src/single.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/single.c b/src/single.c index 0195890..53c2666 100644 --- a/src/single.c +++ b/src/single.c @@ -1,4 +1,4 @@ -/* $Id: single.c,v 1.82 2004/12/26 04:19:20 stpohle Exp $ */ +/* $Id: single.c,v 1.83 2005/01/30 16:53:37 stpohle Exp $ */ /* single player */ #include "basic.h" @@ -265,18 +265,20 @@ ai_bombpoints (_point pos, int range) for (r = 0; (r < range - && (map.field[p.x][p.y].type == FT_nothing - || map.field[p.x][p.y].type == FT_tunnel)); r++) { + && (p.x >= 0 && p.x < map.size.x && p.y >= 0 && p.y < map.size.y) + && (map.field[p.x][p.y].type == FT_nothing || map.field[p.x][p.y].type == FT_tunnel)); r++) { p.x += dir_change[d].x; p.y += dir_change[d].y; } - if (map.field[p.x][p.y].type != FT_nothing && map.field[p.x][p.y].type != FT_tunnel + if ((p.x >= 0 && p.x < map.size.x && p.y >= 0 && p.y < map.size.y) + && map.field[p.x][p.y].type != FT_nothing && map.field[p.x][p.y].type != FT_tunnel && (map.field[p.x][p.y].type != FT_block || map.field[p.x][p.y].type == FT_shoe || map.field[p.x][p.y].type == FT_bomb || map.field[p.x][p.y].type == FT_fire)) points++; - if (map.field[p.x][p.y].type == FT_shoe || map.field[p.x][p.y].type == FT_bomb || - map.field[p.x][p.y].type == FT_fire) + if ((p.x >= 0 && p.x < map.size.x && p.y >= 0 && p.y < map.size.y) + && (map.field[p.x][p.y].type == FT_shoe || map.field[p.x][p.y].type == FT_bomb || + map.field[p.x][p.y].type == FT_fire)) points += 2; } }