diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2015-01-10 17:21:56 -0800 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2015-01-23 01:44:26 -0800 |
commit | c482e420bcf447073ffe3ff8a106a0561e0baadd (patch) | |
tree | fe338f43ad3cb6fb292d50b06a58958c894a806f /src/char/int_storage.cpp | |
parent | 35b95e24ea1915acf0ef13047209f76bce6d9b7b (diff) | |
download | tmwa-c482e420bcf447073ffe3ff8a106a0561e0baadd.tar.gz tmwa-c482e420bcf447073ffe3ff8a106a0561e0baadd.tar.bz2 tmwa-c482e420bcf447073ffe3ff8a106a0561e0baadd.tar.xz tmwa-c482e420bcf447073ffe3ff8a106a0561e0baadd.zip |
Use generated config for char
Diffstat (limited to 'src/char/int_storage.cpp')
-rw-r--r-- | src/char/int_storage.cpp | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/src/char/int_storage.cpp b/src/char/int_storage.cpp index 0c76678..32af231 100644 --- a/src/char/int_storage.cpp +++ b/src/char/int_storage.cpp @@ -42,18 +42,16 @@ #include "../wire/packets.hpp" +#include "globals.hpp" +#include "inter_conf.hpp" + #include "../poison.hpp" namespace tmwa { -// ファイル名のデフォルト -// inter_config_read()で再設定される -AString storage_txt = "save/storage.txt"_s; - -static -Map<AccountId, Storage> storage_db; - +namespace char_ +{ // 倉庫データを文字列に変換 static AString storage_tostr(Storage *p) @@ -92,6 +90,7 @@ AString storage_tostr(Storage *p) return AString(); return AString(str); } +} // namespace char_ // 文字列を倉庫データに変換 static @@ -118,6 +117,8 @@ bool impl_extract(XString str, Storage *p) return true; } +namespace char_ +{ // アカウントから倉庫データインデックスを得る(新規倉庫追加可能) Borrowed<Storage> account2storage(AccountId account_id) { @@ -132,10 +133,10 @@ void inter_storage_init(void) { int c = 0; - io::ReadFile in(storage_txt); + io::ReadFile in(inter_conf.storage_txt); if (!in.is_open()) { - PRINTF("cant't read : %s\n"_fmt, storage_txt); + PRINTF("cant't read : %s\n"_fmt, inter_conf.storage_txt); return; } @@ -150,7 +151,7 @@ void inter_storage_init(void) else { PRINTF("int_storage: broken data [%s] line %d\n"_fmt, - storage_txt, c); + inter_conf.storage_txt, c); } c++; } @@ -168,12 +169,12 @@ void inter_storage_save_sub(Storage *data, io::WriteFile& fp) // 倉庫データを書き込む int inter_storage_save(void) { - io::WriteLock fp(storage_txt); + io::WriteLock fp(inter_conf.storage_txt); if (!fp.is_open()) { PRINTF("int_storage: cant write [%s] !!! data is lost !!!\n"_fmt, - storage_txt); + inter_conf.storage_txt); return 1; } for (auto& pair : storage_db) @@ -270,4 +271,5 @@ RecvResult inter_storage_parse_frommap(Session *ms, uint16_t packet_id) } return rv; } +} // namespace char_ } // namespace tmwa |