OSDN Git Service

[Refactor] #38997 clear_cave() のプレイヤー初期化処理を関数外に掃き出し。 / Player position initialization...
authordeskull <deskull@users.sourceforge.jp>
Sun, 22 Dec 2019 04:41:41 +0000 (13:41 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Sun, 22 Dec 2019 04:41:41 +0000 (13:41 +0900)
src/floor-generate.c
src/floor-save.c
src/load.c

index 1c7a3fa..d57612f 100644 (file)
@@ -1383,9 +1383,6 @@ void clear_cave(floor_type *floor_ptr)
                }
        }
 
-       /* Mega-Hack -- no player yet */
-       p_ptr->x = p_ptr->y = 0;
-
        /* Set the base level */
        floor_ptr->base_level = floor_ptr->dun_level;
 
@@ -1417,6 +1414,9 @@ void generate_floor(floor_type *floor_ptr)
 
                clear_cave(floor_ptr);
 
+               /* Mega-Hack -- no player yet */
+               p_ptr->x = p_ptr->y = 0;
+
                if (floor_ptr->inside_arena)
                {
                        generate_challenge_arena(floor_ptr, p_ptr);
index 485d619..06e3c4d 100644 (file)
@@ -351,6 +351,10 @@ static void build_dead_end(floor_type *floor_ptr)
 
        clear_cave(floor_ptr);
 
+       /* Mega-Hack -- no player yet */
+       p_ptr->x = p_ptr->y = 0;
+
+
        /* Fill the arrays of floors and walls in the good proportions */
        set_floor_and_wall(0);
 
index 07aa177..745bd76 100644 (file)
@@ -3002,6 +3002,9 @@ static errr rd_saved_floor(saved_floor_type *sf_ptr)
 
        clear_cave(p_ptr->current_floor_ptr);
 
+       /* Mega-Hack -- no player yet */
+       p_ptr->x = p_ptr->y = 0;
+
        /*** Basic info ***/
 
        /* Dungeon floor specific info follows */