OSDN Git Service

Revert "Merge branch 'master' of git.osdn.net:/gitroot/hengband/hengband"
[hengband/hengband.git] / src / report.c
index d00b720..ad5d1da 100644 (file)
@@ -1,11 +1,11 @@
-/*!
+/*!
  * @file report.c
- * @brief ¥¹¥³¥¢¥µ¡¼¥ÐžÁ÷µ¡Ç½¤Î¼ÂÁõ
+ * @brief スコアサーバ転送機能の実装
  * @date 2014/07/14
  * @author Hengband Team
  */
 
-#define _GNU_SOURCE /*!< Ì¤»ÈÍÑ*/
+#define _GNU_SOURCE /*!< 未使用*/
 #include "angband.h"
 
 #ifdef WORLD_SCORE
 /*
  * internet resource value
  */
-#define HTTP_PROXY ""                   /*!< ¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥­¥·URL / Default proxy url */
-#define HTTP_PROXY_PORT 0               /*!< ¥Ç¥Õ¥©¥ë¥È¤Î¥×¥í¥­¥·¥Ý¡¼¥È / Default proxy port */
-#define HTTP_TIMEOUT    20              /*!< ¥Ç¥Õ¥©¥ë¥È¤Î¥¿¥¤¥à¥¢¥¦¥È»þ´Ö(ÉÃ) / Timeout length (second) */
-#define SCORE_SERVER "hengband.osdn.jp" /*!< ¥Ç¥Õ¥©¥ë¥È¤Î¥¹¥³¥¢¥µ¡¼¥ÐURL / Default score server url */
-#define SCORE_PORT 80                   /*!< ¥Ç¥Õ¥©¥ë¥È¤Î¥¹¥³¥¢¥µ¡¼¥Ð¥Ý¡¼¥È / Default score server port */
+#define HTTP_PROXY ""                   /*!< ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®ã\83\97ã\83­ã\82­ã\82·URL / Default proxy url */
+#define HTTP_PROXY_PORT 0               /*!< デフォルトのプロキシポート / Default proxy port */
+#define HTTP_TIMEOUT    20              /*!< デフォルトのタイムアウト時間(秒) / Timeout length (second) */
+#define SCORE_SERVER "hengband.osdn.jp" /*!< デフォルトのスコアサーバURL / Default score server url */
+#define SCORE_PORT 80                   /*!< デフォルトのスコアサーバポート / Default score server port */
 
 #ifdef JP
-#define SCORE_PATH "http://hengband.osdn.jp/score/register_score.php" /*!< ¥¹¥³¥¢³«¼¨URL */
+#define SCORE_PATH "http://hengband.osdn.jp/score/register_score.php" /*!< スコア開示URL */
 #else
-#define SCORE_PATH "http://moon.kmc.gr.jp/hengband/hengscore-en/score.cgi" /*!< ¥¹¥³¥¢³«¼¨URL */
+#define SCORE_PATH "http://moon.kmc.gr.jp/hengband/hengscore-en/score.cgi" /*!< スコア開示URL */
 #endif
 
 /* for debug */
 #if 0
-#define SCORE_PATH "http://moon.kmc.gr.jp/hengband/scoretest/score.cgi" /*!< ¥¹¥³¥¢³«¼¨URL */
+#define SCORE_PATH "http://moon.kmc.gr.jp/hengband/scoretest/score.cgi" /*!< スコア開示URL */
 #endif
 
 /*
@@ -60,11 +60,11 @@ typedef struct {
        char *data;
 } BUF;
 
-#define        BUFSIZE (65536) /*!< ¥¹¥³¥¢¥µ¡¼¥ÐžÁ÷¥Ð¥Ã¥Õ¥¡¥µ¥¤¥º */
+#define        BUFSIZE (65536) /*!< ã\82¹ã\82³ã\82¢ã\82µã\83¼ã\83\90転é\80\81ã\83\90ã\83\83ã\83\95ã\82¡ã\82µã\82¤ã\82º */
 
 /*!
- * @brief Å¾Á÷ÍѥХåե¡¤Î³ÎÊÝ
- * @return ³ÎÊݤ·¤¿¥Ð¥Ã¥Õ¥¡¤Î»²¾È¥Ý¥¤¥ó¥¿
+ * @brief 転送用バッファの確保
+ * @return ç¢ºä¿\9dã\81\97ã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\81®å\8f\82ç\85§ã\83\9dã\82¤ã\83³ã\82¿
  */
 static BUF* buf_new(void)
 {
@@ -84,8 +84,8 @@ static BUF* buf_new(void)
 }
 
 /*!
- * @brief Å¾Á÷ÍѥХåե¡¤Î²òÊü
- * @param b ²òÊü¤¹¤ë¥Ð¥Ã¥Õ¥¡¤Î»²¾È¥Ý¥¤¥ó¥¿
+ * @brief 転送用バッファの解放
+ * @param b è§£æ\94¾ã\81\99ã\82\8bã\83\90ã\83\83ã\83\95ã\82¡ã\81®å\8f\82ç\85§ã\83\9dã\82¤ã\83³ã\82¿
  */
 static void buf_delete(BUF *b)
 {
@@ -94,13 +94,13 @@ static void buf_delete(BUF *b)
 }
 
 /*!
- * @brief Å¾Á÷ÍѥХåե¡¤Ë¥Ç¡¼¥¿¤òÄɲ乤ë
- * @param buf ÄɲÃÀè¥Ð¥Ã¥Õ¥¡¤Î»²¾È¥Ý¥¤¥ó¥¿
- * @param data Äɲøµ¥Ç¡¼¥¿
- * @param size Äɲåµ¥¤¥º
- * @return Äɲøå¤Î¥Ð¥Ã¥Õ¥¡ÍÆÎÌ
+ * @brief 転送用バッファにデータを追加する
+ * @param buf è¿½å\8a å\85\88ã\83\90ã\83\83ã\83\95ã\82¡ã\81®å\8f\82ç\85§ã\83\9dã\82¤ã\83³ã\82¿
+ * @param data è¿½å\8a å\85\83ã\83\87ã\83¼ã\82¿
+ * @param size è¿½å\8a ã\82µã\82¤ã\82º
+ * @return 追加後のバッファ容量
  */
-static int buf_append(BUF *buf, const char *data, size_t size)
+static int buf_append(BUF *buf, concptr data, size_t size)
 {
        while (buf->size + size > buf->max_size)
        {
@@ -121,12 +121,12 @@ static int buf_append(BUF *buf, const char *data, size_t size)
 }
 
 /*!
- * @brief Å¾Á÷ÍѥХåե¡¤Ë¥Õ¥©¡¼¥Þ¥Ã¥È»ØÄꤷ¤¿Ê¸»úÎó¥Ç¡¼¥¿¤òÄɲ乤ë
- * @param buf ÄɲÃÀè¥Ð¥Ã¥Õ¥¡¤Î»²¾È¥Ý¥¤¥ó¥¿
- * @param fmt Ê¸»úÎó¥Õ¥©¡¼¥Þ¥Ã¥È
- * @return Äɲøå¤Î¥Ð¥Ã¥Õ¥¡ÍÆÎÌ
+ * @brief 転送用バッファにフォーマット指定した文字列データを追加する
+ * @param buf è¿½å\8a å\85\88ã\83\90ã\83\83ã\83\95ã\82¡ã\81®å\8f\82ç\85§ã\83\9dã\82¤ã\83³ã\82¿
+ * @param fmt 文字列フォーマット
+ * @return 追加後のバッファ容量
  */
-static int buf_sprintf(BUF *buf, const char *fmt, ...)
+static int buf_sprintf(BUF *buf, concptr fmt, ...)
 {
        int             ret;
        char    tmpbuf[8192];
@@ -194,7 +194,7 @@ static int buf_write(BUF *buf, int fd)
        return buf->size;
 }
 
-static int buf_search(BUF *buf, const char *str)
+static int buf_search(BUF *buf, concptr str)
 {
        char *ret;
 
@@ -222,17 +222,17 @@ static BUF * buf_subbuf(BUF *buf, int pos1, size_t sz)
 #endif
 
 /*!
- * @brief HTTP¤Ë¤è¤ë¥À¥ó¥×ÆâÍÆÅÁÁ÷
- * @param sd ¥½¥±¥Ã¥ÈID
- * @param url ÅÁÁ÷ÀèURL
- * @param buf ÅÁÁ÷ÆâÍƥХåե¡
- * @return ¤Ê¤·
+ * @brief HTTPによるダンプ内容伝送
+ * @param sd ソケットID
+ * @param url 伝送先URL
+ * @param buf ä¼\9dé\80\81å\86\85容ã\83\90ã\83\83ã\83\95ã\82¡
+ * @return なし
  */
-static bool http_post(int sd, cptr url, BUF *buf)
+static bool http_post(int sd, concptr url, BUF *buf)
 {
        BUF *output;
        char response_buf[1024] = "";
-       const char *HTTP_RESPONSE_CODE_OK = "HTTP/1.1 200 OK";
+       concptr HTTP_RESPONSE_CODE_OK = "HTTP/1.1 200 OK";
 
        output = buf_new();
        buf_sprintf(output, "POST %s HTTP/1.0\r\n", url);
@@ -262,22 +262,22 @@ static bool http_post(int sd, cptr url, BUF *buf)
 }
 
 /*!
- * @brief ¥­¥ã¥é¥¯¥¿¥À¥ó¥×¤òºî¤Ã¤Æ BUF¤ËÊݸ
- * @param dumpbuf ÅÁÁ÷ÆâÍƥХåե¡
- * @return ¥¨¥é¡¼¥³¡¼¥É
+ * @brief キャラクタダンプを作って BUFに保存
+ * @param dumpbuf ä¼\9dé\80\81å\86\85容ã\83\90ã\83\83ã\83\95ã\82¡
+ * @return エラーコード
  */
 static errr make_dump(BUF* dumpbuf)
 {
        char            buf[1024];
        FILE *fff;
-       char file_name[1024];
+       GAME_TEXT file_name[1024];
 
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
        if (!fff)
        {
 #ifdef JP
-               msg_format("°ì»þ¥Õ¥¡¥¤¥ë %s ¤òºîÀ®¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡£", file_name);
+               msg_format("一時ファイル %s を作成できませんでした。", file_name);
 #else
                msg_format("Failed to create temporary file %s.", file_name);
 #endif
@@ -285,10 +285,8 @@ static errr make_dump(BUF* dumpbuf)
                return 1;
        }
 
-       /* °ìö°ì»þ¥Õ¥¡¥¤¥ë¤òºî¤ë¡£Ä̾ï¤Î¥À¥ó¥×½ÐÎϤȶ¦Ä̲½¤¹¤ë¤¿¤á¡£ */
+       /* 一旦一時ファイルを作る。通常のダンプ出力と共通化するため。 */
        (void)make_character_dump(fff);
-
-       /* Close the file */
        my_fclose(fff);
 
        /* Open for read */
@@ -298,11 +296,7 @@ static errr make_dump(BUF* dumpbuf)
        {
                (void)buf_sprintf(dumpbuf, "%s", buf);
        }
-
-       /* Close the file */
        my_fclose(fff);
-
-       /* Remove the file */
        fd_kill(file_name);
 
        /* Success */
@@ -310,24 +304,24 @@ static errr make_dump(BUF* dumpbuf)
 }
 
 /*!
- * @brief ¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×¤òºîÀ®¤¹¤ë/ Make screen dump to buffer
- * @return ºîÀ®¤·¤¿¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×¤Î»²¾È¥Ý¥¤¥ó¥¿
+ * @brief スクリーンダンプを作成する/ Make screen dump to buffer
+ * @return ä½\9cæ\88\90ã\81\97ã\81\9fã\82¹ã\82¯ã\83ªã\83¼ã\83³ã\83\80ã\83³ã\83\97ã\81®å\8f\82ç\85§ã\83\9dã\82¤ã\83³ã\82¿
  */
-cptr make_screen_dump(void)
+concptr make_screen_dump(void)
 {
        BUF *screen_buf;
        int y, x, i;
-       cptr ret;
+       concptr ret;
 
        TERM_COLOR a = 0, old_a = 0;
-       char c = ' ';
+       SYMBOL_CODE c = ' ';
 
-       static cptr html_head[] = {
+       static concptr html_head[] = {
                "<html>\n<body text=\"#ffffff\" bgcolor=\"#000000\">\n",
                "<pre>",
                0,
        };
-       static cptr html_foot[] = {
+       static concptr html_foot[] = {
                "</pre>\n",
                "</body>\n</html>\n",
                0,
@@ -351,10 +345,7 @@ cptr make_screen_dump(void)
                use_graphics = FALSE;
                reset_visuals();
 
-               /* Redraw everything */
                p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
-
-               /* Hack -- update */
                handle_stuff();
        }
 
@@ -372,7 +363,7 @@ cptr make_screen_dump(void)
                for (x = 0; x < wid - 1; x++)
                {
                        int rv, gv, bv;
-                       cptr cc = NULL;
+                       concptr cc = NULL;
                        /* Get the attr/char */
                        (void)(Term_what(x, y, &a, &c));
 
@@ -430,10 +421,7 @@ cptr make_screen_dump(void)
                use_graphics = TRUE;
                reset_visuals();
 
-               /* Redraw everything */
                p_ptr->redraw |= (PR_WIPE | PR_BASIC | PR_EXTRA | PR_MAP | PR_EQUIPPY);
-
-               /* Hack -- update */
                handle_stuff();
        }
 
@@ -441,8 +429,8 @@ cptr make_screen_dump(void)
 }
 
 /*!
- * @brief ¥¹¥³¥¢Å¾Á÷½èÍý¤Î¥á¥¤¥ó¥ë¡¼¥Á¥ó
- * @return ¥¨¥é¡¼¥³¡¼¥É
+ * @brief スコア転送処理のメインルーチン
+ * @return エラーコード
  */
 errr report_score(void)
 {
@@ -464,14 +452,14 @@ errr report_score(void)
        score = buf_new();
 
 #ifdef JP
-       sprintf(seikakutmp, "%s%s", ap_ptr->title, (ap_ptr->no ? "¤Î" : ""));
+       sprintf(seikakutmp, "%s%s", ap_ptr->title, (ap_ptr->no ? "" : ""));
 #else
        sprintf(seikakutmp, "%s ", ap_ptr->title);
 #endif
 
        buf_sprintf(score, "name: %s\n", p_ptr->name);
 #ifdef JP
-       buf_sprintf(score, "version: ÊѶòÈÚÅÜ %d.%d.%d\n",
+       buf_sprintf(score, "version: 変愚蛮怒 %d.%d.%d\n",
                    FAKE_VER_MAJOR-10, FAKE_VER_MINOR, FAKE_VER_PATCH);
 #else
        buf_sprintf(score, "version: Hengband %d.%d.%d\n",
@@ -479,11 +467,11 @@ errr report_score(void)
 #endif
        buf_sprintf(score, "score: %d\n", total_points());
        buf_sprintf(score, "level: %d\n", p_ptr->lev);
-       buf_sprintf(score, "depth: %d\n", dun_level);
+       buf_sprintf(score, "depth: %d\n", current_floor_ptr->dun_level);
        buf_sprintf(score, "maxlv: %d\n", p_ptr->max_plv);
        buf_sprintf(score, "maxdp: %d\n", max_dlv[DUNGEON_ANGBAND]);
        buf_sprintf(score, "au: %d\n", p_ptr->au);
-       buf_sprintf(score, "turns: %d\n", turn_real(turn));
+       buf_sprintf(score, "turns: %d\n", turn_real(current_world_ptr->game_turn));
        buf_sprintf(score, "sex: %d\n", p_ptr->psex);
        buf_sprintf(score, "race: %s\n", rp_ptr->title);
        buf_sprintf(score, "class: %s\n", cp_ptr->title);
@@ -528,13 +516,13 @@ errr report_score(void)
        {
                char buff[160];
 #ifdef JP
-               prt("ÀܳÃæ...", 0, 0);
+               prt("接続中...", 0, 0);
 #else
                prt("connecting...", 0, 0);
 #endif
                Term_fresh();
                
-               /* ¥×¥í¥­¥·¤òÀßÄꤹ¤ë */
+               /* プロキシを設定する */
                set_proxy(HTTP_PROXY, HTTP_PROXY_PORT);
 
                /* Connect to the score server */
@@ -543,7 +531,7 @@ errr report_score(void)
 
                if (sd < 0) {
 #ifdef JP
-                       sprintf(buff, "¥¹¥³¥¢¡¦¥µ¡¼¥Ð¤Ø¤ÎÀܳ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£(%s)", soc_err());
+                       sprintf(buff, "スコア・サーバへの接続に失敗しました。(%s)", soc_err());
 #else
                        sprintf(buff, "Failed to connect to the score server.(%s)", soc_err());
 #endif
@@ -551,7 +539,7 @@ errr report_score(void)
                        (void)inkey();
 
 #ifdef JP
-                       if (!get_check_strict("¤â¤¦°ìÅÙÀܳ¤ò»î¤ß¤Þ¤¹¤«? ", CHECK_NO_HISTORY))
+                       if (!get_check_strict("もう一度接続を試みますか? ", CHECK_NO_HISTORY))
 #else
                        if (!get_check_strict("Try again? ", CHECK_NO_HISTORY))
 #endif
@@ -564,7 +552,7 @@ errr report_score(void)
                }
 
 #ifdef JP
-               prt("¥¹¥³¥¢Á÷¿®Ãæ...", 0, 0);
+               prt("スコア送信中...", 0, 0);
 #else
                prt("Sending the score...", 0, 0);
 #endif
@@ -573,7 +561,7 @@ errr report_score(void)
                if (!http_post(sd, SCORE_PATH, score)) {
                        disconnect_server(sd);
 #ifdef JP
-                       sprintf(buff, "¥¹¥³¥¢¡¦¥µ¡¼¥Ð¤Ø¤ÎÁ÷¿®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£");
+                       sprintf(buff, "スコア・サーバへの送信に失敗しました。");
 #else
                        sprintf(buff, "Failed to send to the score server.");
 #endif
@@ -581,7 +569,7 @@ errr report_score(void)
                        (void)inkey();
 
 #ifdef JP
-                       if (!get_check_strict("¤â¤¦°ìÅÙÀܳ¤ò»î¤ß¤Þ¤¹¤«? ", CHECK_NO_HISTORY))
+                       if (!get_check_strict("もう一度接続を試みますか? ", CHECK_NO_HISTORY))
 #else
                        if (!get_check_strict("Try again? ", CHECK_NO_HISTORY))
 #endif