home
·
contact
·
privacy
projects
/
plomrogue
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Server: Refactoring of initialization of empty maps.
[plomrogue]
/
src
/
server
/
field_of_view.c
diff --git
a/src/server/field_of_view.c
b/src/server/field_of_view.c
index 34bfa138eb06c1b5f641f0ff386d78d0f7e9d3d6..d6b3a8d1278124c6de9694823a416cb1c24b2663 100644
(file)
--- a/
src/server/field_of_view.c
+++ b/
src/server/field_of_view.c
@@
-13,7
+13,7
@@
#include "../common/rexit.h" /* exit_trouble() */
#include "../common/try_malloc.h" /* try_malloc() */
#include "../common/yx_uint8.h" /* yx_uint8 */
#include "../common/rexit.h" /* exit_trouble() */
#include "../common/try_malloc.h" /* try_malloc() */
#include "../common/yx_uint8.h" /* yx_uint8 */
-#include "map.h" /* mv_yx_in_dir_legal() */
+#include "map.h" /* mv_yx_in_dir_legal()
, init_empty_map()
*/
#include "things.h" /* Thing, ThingInMemory, add_thing_to_memory_map() */
#include "world.h" /* world */
#include "things.h" /* Thing, ThingInMemory, add_thing_to_memory_map() */
#include "world.h" /* world */
@@
-75,11
+75,6
@@
static void eval_position(uint16_t dist, uint16_t hex_i, char * fov_map,
struct yx_uint8 * test_pos,
struct shadow_angle ** shadows);
struct yx_uint8 * test_pos,
struct shadow_angle ** shadows);
-/* Update "t"'s .mem_map memory with what's in its current FOV, remove from its
- * .t_mem all memorized things in FOV and add inanimiate things in FOV to it.
- */
-static void update_map_memory(struct Thing * t, uint32_t map_size);
-
static uint32_t correct_angle(int32_t angle)
static uint32_t correct_angle(int32_t angle)
@@
-267,15
+262,14
@@
static void eval_position(uint16_t dist, uint16_t hex_i, char * fov_map,
-
static void update_map_memory(struct Thing * t_eye, uint32_t map_siz
e)
+
extern void update_map_memory(struct Thing * t_ey
e)
{
if (!t_eye->mem_map)
{
{
if (!t_eye->mem_map)
{
- t_eye->mem_map = try_malloc(map_size, __func__);
- memset(t_eye->mem_map, ' ', map_size);
+ init_empty_map(&(t_eye->mem_map));
}
uint32_t i;
}
uint32_t i;
- for (i = 0; i <
map_size
; i++)
+ for (i = 0; i <
(uint32_t) (world.map.length * world.map.length)
; i++)
{
if (' ' == t_eye->mem_map[i] && t_eye->fov_map[i] == 'v')
{
{
if (' ' == t_eye->mem_map[i] && t_eye->fov_map[i] == 'v')
{
@@
-352,5
+346,4
@@
extern void build_fov_map(struct Thing * t)
}
mv_yx_in_dir_legal(0, NULL);
free_angles(shadows);
}
mv_yx_in_dir_legal(0, NULL);
free_angles(shadows);
- update_map_memory(t, map_size);
}
}