<ClCompile Include="..\..\src\cmd\cmd-pet.c" />\r
<ClCompile Include="..\..\src\cmd\cmd-quaff.c" />\r
<ClCompile Include="..\..\src\cmd\cmd-read.c" />\r
+ <ClCompile Include="..\..\src\cmd\cmd-save.c" />\r
<ClCompile Include="..\..\src\cmd\cmd-smith.c" />\r
<ClCompile Include="..\..\src\cmd\cmd-spell.c" />\r
<ClCompile Include="..\..\src\cmd\cmd-usestaff.c" />\r
<ClInclude Include="..\..\src\cmd\cmd-pet.h" />\r
<ClInclude Include="..\..\src\cmd\cmd-quaff.h" />\r
<ClInclude Include="..\..\src\cmd\cmd-read.h" />\r
+ <ClInclude Include="..\..\src\cmd\cmd-save.h" />\r
<ClInclude Include="..\..\src\cmd\cmd-smith.h" />\r
<ClInclude Include="..\..\src\cmd\cmd-spell.h" />\r
<ClInclude Include="..\..\src\cmd\cmd-usestaff.h" />\r
<ClCompile Include="..\..\src\player\process-name.c">
<Filter>player</Filter>
</ClCompile>
+ <ClCompile Include="..\..\src\cmd\cmd-save.c">
+ <Filter>cmd</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\src\gamevalue.h" />
<ClInclude Include="..\..\src\player\process-name.h">
<Filter>player</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\cmd\cmd-save.h">
+ <Filter>cmd</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\src\wall.bmp" />
cmd/cmd-hissatsu.c cmd/cmd-hissatsu.h cmd/cmd-item.c cmd/cmd-item.h \
cmd/cmd-magiceat.c cmd/cmd-magiceat.h cmd/cmd-mane.c cmd/cmd-mane.h \
cmd/cmd-pet.c cmd/cmd-pet.h cmd/cmd-quaff.c cmd/cmd-quaff.h \
- cmd/cmd-read.c cmd/cmd-read.h cmd/cmd-smith.c cmd/cmd-smith.h \
- cmd/cmd-spell.c cmd/cmd-spell.h cmd/cmd-usestaff.c cmd/cmd-usestaff.h \
- cmd/cmd-zaprod.c cmd/cmd-zaprod.h cmd/cmd-zapwand.c cmd/cmd-zapwand.h \
+ cmd/cmd-read.c cmd/cmd-read.h cmd/cmd-save.c cmd/cmd-save.h \
+ cmd/cmd-smith.c cmd/cmd-smith.h cmd/cmd-spell.c cmd/cmd-spell.h \
+ cmd/cmd-usestaff.c cmd/cmd-usestaff.h cmd/cmd-zaprod.c cmd/cmd-zaprod.h \
+ cmd/cmd-zapwand.c cmd/cmd-zapwand.h \
\
combat/melee.h combat/melee1.c combat/shoot.c combat/shoot.h
#include "term.h"
#include "autopick.h"
#include "core.h"
+#include "cmd/cmd-save.h"
#include "mind.h"
#include "angband.h"
-#include "cmd-activate.h"
-#include "cmd-basic.h"
+#include "cmd/cmd-activate.h"
+#include "cmd/cmd-basic.h"
+#include "cmd/cmd-save.h"
#include "object-hook.h"
#include "sort.h"
#include "artifact.h"
#include "core.h"
#include "term.h"
-#include "cmd-dump.h"
+#include "cmd/cmd-dump.h"
+#include "cmd/cmd-save.h"
#include "chest.h"
#include "trap.h"
#include "dungeon.h"
--- /dev/null
+#include "signal-handlers.h"
+#include "cmd/cmd-save.h"
+#include "cmd/cmd-dump.h"
+#include "player-move.h"
+#include "core.h" // 暫定。後で消す.
+#include "save.h"
+#include "world.h"
+#include "monster-status.h" // 違和感。要調査.
+#include "term.h"
+
+/*!
+ * @brief セーブするコマンドのメインルーチン
+ * Save the game
+ * @param creature_ptr プレーヤーへの参照ポインタ
+ * @param is_autosave オートセーブ中の処理ならばTRUE
+ * @return なし
+ * @details
+ */
+void do_cmd_save_game(player_type *creature_ptr, int is_autosave)
+{
+ if (is_autosave)
+ {
+ msg_print(_("自動セーブ中", "Autosaving the game..."));
+ }
+ else
+ {
+ disturb(creature_ptr, TRUE, TRUE);
+ }
+
+ msg_print(NULL);
+ handle_stuff(creature_ptr);
+ prt(_("ゲームをセーブしています...", "Saving game..."), 0, 0);
+ Term_fresh();
+ (void)strcpy(creature_ptr->died_from, _("(セーブ)", "(saved)"));
+ signals_ignore_tstp();
+ if (save_player(creature_ptr))
+ {
+ prt(_("ゲームをセーブしています... 終了", "Saving game... done."), 0, 0);
+ }
+ else
+ {
+ prt(_("ゲームをセーブしています... 失敗!", "Saving game... failed!"), 0, 0);
+ }
+
+ signals_handle_tstp();
+ Term_fresh();
+ (void)strcpy(creature_ptr->died_from, _("(元気に生きている)", "(alive and well)"));
+ current_world_ptr->is_loading_now = FALSE;
+ update_creature(creature_ptr);
+ mproc_init(creature_ptr->current_floor_ptr);
+ current_world_ptr->is_loading_now = TRUE;
+}
+
+
+/*!
+ * @brief セーブ後にゲーム中断フラグを立てる/
+ * Save the game and exit
+ * @return なし
+ * @details
+ */
+void do_cmd_save_and_exit(player_type *creature_ptr)
+{
+ creature_ptr->playing = FALSE;
+ creature_ptr->leaving = TRUE;
+ exe_write_diary(creature_ptr, DIARY_GAMESTART, 0, _("----ゲーム中断----", "---- Save and Exit Game ----"));
+}
--- /dev/null
+#pragma once
+
+#include "angband.h"
+
+void do_cmd_save_game(player_type *creature_ptr, int is_autosave);
+void do_cmd_save_and_exit(player_type *player_ptr);
#include "cmd/cmd-mane.h"
#include "cmd/cmd-quaff.h"
#include "cmd/cmd-read.h"
+#include "cmd/cmd-save.h"
#include "cmd/cmd-smith.h"
#include "cmd/cmd-usestaff.h"
#include "cmd/cmd-zaprod.h"
#include "angband.h"
#include "term.h"
-#include "signal-handlers.h"
#include "uid-checker.h"
#include "files.h"
#include "core.h" // リファクタリングして後で消す
-#include "birth.h"
#include "character-dump.h"
-#include "cmd-dump.h"
#include "world.h"
-#include "player-move.h"
-#include "player-personality.h"
-#include "player-effects.h"
-#include "monster-status.h"
#include "view-mainwindow.h"
-#include "objectkind.h"
#include "autopick.h"
-#include "save.h"
#include "io/tokenizer.h"
#include "io/process-pref-file.h" // 暫定。依存性の向きがこれで良いか要確認.
/*!
- * @brief セーブするコマンドのメインルーチン
- * Save the game
- * @param creature_ptr プレーヤーへの参照ポインタ
- * @param is_autosave オートセーブ中の処理ならばTRUE
- * @return なし
- * @details
- */
-void do_cmd_save_game(player_type *creature_ptr, int is_autosave)
-{
- if (is_autosave)
- {
- msg_print(_("自動セーブ中", "Autosaving the game..."));
- }
- else
- {
- disturb(creature_ptr, TRUE, TRUE);
- }
-
- msg_print(NULL);
- handle_stuff(creature_ptr);
- prt(_("ゲームをセーブしています...", "Saving game..."), 0, 0);
- Term_fresh();
- (void)strcpy(creature_ptr->died_from, _("(セーブ)", "(saved)"));
- signals_ignore_tstp();
- if (save_player(creature_ptr))
- {
- prt(_("ゲームをセーブしています... 終了", "Saving game... done."), 0, 0);
- }
- else
- {
- prt(_("ゲームをセーブしています... 失敗!", "Saving game... failed!"), 0, 0);
- }
-
- signals_handle_tstp();
- Term_fresh();
- (void)strcpy(creature_ptr->died_from, _("(元気に生きている)", "(alive and well)"));
- current_world_ptr->is_loading_now = FALSE;
- update_creature(creature_ptr);
- mproc_init(creature_ptr->current_floor_ptr);
- current_world_ptr->is_loading_now = TRUE;
-}
-
-
-/*!
- * @brief セーブ後にゲーム中断フラグを立てる/
- * Save the game and exit
- * @return なし
- * @details
- */
-void do_cmd_save_and_exit(player_type *creature_ptr)
-{
- creature_ptr->playing = FALSE;
- creature_ptr->leaving = TRUE;
- exe_write_diary(creature_ptr, DIARY_GAMESTART, 0, _("----ゲーム中断----", "---- Save and Exit Game ----"));
-}
-
-
-/*!
* @brief ファイルからランダムに行を一つ取得する /
* Get a random line from a file
* @param file_name ファイル名
extern errr process_autopick_file(player_type *creature_ptr, concptr name);
extern errr process_histpref_file(player_type *creature_ptr, concptr name);
extern bool show_file(player_type *player_ptr, bool show_version, concptr name, concptr what, int line, BIT_FLAGS mode);
-extern void do_cmd_save_game(player_type *creature_ptr, int is_autosave);
-extern void do_cmd_save_and_exit(player_type *player_ptr);
extern errr get_rnd_line(concptr file_name, int entry, char *output);
void read_dead_file(char* buf, size_t buf_size);
#include "inet.h"
#include "chuukei.h"
-#include "cmd-dump.h"
+#include "cmd/cmd-dump.h"
+#include "cmd/cmd-save.h"
#include "view-mainwindow.h"
#include "floor.h"
#include "floor-events.h"
#include "monster-process.h"
#include "monster-status.h"
#include "monster-spell.h"
-#include "cmd-spell.h"
-#include "cmd-dump.h"
+#include "cmd/cmd-save.h"
+#include "cmd/cmd-spell.h"
+#include "cmd/cmd-dump.h"
#include "snipe.h"
#include "floor-save.h"
#include "files.h"
/*!
+ * todo cmd-save.h への依存あり。コールバックで何とかしたい
* @brief プレイヤー及びモンスターをレベルテレポートさせる /
* Teleport the player one level up or down (random when legal)
* @param creature_ptr プレーヤーへの参照ポインタ
#include "angband.h"
#include "util.h"
-#include "cmd-dump.h"
+#include "cmd/cmd-dump.h"
+#include "cmd/cmd-save.h"
#include "trap.h"
#include "player-damage.h"
#include "player-move.h"
take_hit(trapped_ptr, DAMAGE_NOESCAPE, dam, trap_name, -1);
}
+
/*!
* @brief ダーツ系トラップ(通常ダメージ)の判定とプレイヤーの被害処理
* @return ダーツが命中した場合TRUEを返す
}
}
+
/*!
-* @brief ダーツ系トラップ(通常ダメージ+状態異常)の判定とプレイヤーの被害処理
-* @param trap_message メッセージの補完文字列
-* @param resist 状態異常に抵抗する判定が出たならTRUE
-* @param set_status 状態異常を指定する関数ポインタ
-* @param turn_aux 状態異常の追加ターン量
-* @return なし
-*/
+ * @brief ダーツ系トラップ(通常ダメージ+状態異常)の判定とプレイヤーの被害処理
+ * @param trap_message メッセージの補完文字列
+ * @param resist 状態異常に抵抗する判定が出たならTRUE
+ * @param set_status 状態異常を指定する関数ポインタ
+ * @param turn_aux 状態異常の追加ターン量
+ * @return なし
+ */
static void hit_trap_set_abnormal_status_p(player_type *trapped_ptr, concptr trap_message, bool resist, bool(*set_status)(player_type *, IDX), IDX turn_aux)
{
msg_print(trap_message);
}
}
+
/*!
-* @brief プレイヤーへのトラップ作動処理メインルーチン /
-* Handle player hitting a real trap
-* @param break_trap 作動後のトラップ破壊が確定しているならばTRUE
-* @return なし
-*/
+ * todo cmd-save.h への依存あり。コールバックで何とかしたい
+ * @brief プレイヤーへのトラップ作動処理メインルーチン /
+ * Handle player hitting a real trap
+ * @param break_trap 作動後のトラップ破壊が確定しているならばTRUE
+ * @return なし
+ */
void hit_trap(player_type *trapped_ptr, bool break_trap)
{
int i, num, dam;
}
}
}
+
break;
}
#include "dungeon.h"
#include "cmd/cmd-dump.h"
#include "cmd/cmd-help.h"
+#include "cmd/cmd-save.h"
#include "util.h"
#include "birth.h"
#include "selfinfo.h"