summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/db.c12
-rw-r--r--src/common/lock.c12
-rw-r--r--src/common/mmo.h16
-rw-r--r--src/common/nullpo.c14
-rw-r--r--src/common/nullpo.h136
-rw-r--r--src/common/timer.c10
-rw-r--r--src/common/version.h16
7 files changed, 108 insertions, 108 deletions
diff --git a/src/common/db.c b/src/common/db.c
index 7a4fa70..07b08c8 100644
--- a/src/common/db.c
+++ b/src/common/db.c
@@ -211,7 +211,7 @@ static void db_rebalance (struct dbn *p, struct dbn **root)
{
p->color = RED;
while (p != *root && p->parent->color == RED)
- { // root�͕K�����Őe�͐Ԃ��̂Őe�̐e�͕K�����݂���
+ { // rootは必ず黒で親は赤いので親の親は必ず存在する
if (p->parent == p->parent->parent->left)
{
struct dbn *y = p->parent->parent->right;
@@ -276,7 +276,7 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root)
x = y->right;
}
if (y != z)
- { // ���E���������܂��Ă����� y��z�̈ʒu�Ɏ����Ă���z�𕂂�����
+ { // 左右が両方埋まっていた時 yをzの位置に持ってきてzを浮かせる
z->left->parent = y;
y->left = z->left;
if (y != z->right)
@@ -305,7 +305,7 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root)
y = z;
}
else
- { // �ǂ��炩�󂢂Ă����ꍇ x��z�̈ʒu�Ɏ����Ă���z�𕂂�����
+ { // どちらか空いていた場合 xをzの位置に持ってきてzを浮かせる
x_parent = y->parent;
if (x)
x->parent = y->parent;
@@ -316,9 +316,9 @@ static void db_rebalance_erase (struct dbn *z, struct dbn **root)
else
z->parent->right = x;
}
- // �����܂ŐF�̈ړ��̏����Ēʏ��2���؂Ɠ���
+ // ここまで色の移動の除いて通常の2分木と同じ
if (y->color != RED)
- { // �Ԃ������镪�ɂ͉e������
+ { // 赤が消える分には影響無し
while (x != *root && (x == NULL || x->color == BLACK))
if (x == x_parent->left)
{
@@ -498,7 +498,7 @@ void db_foreach (struct dbt *table, int (*func) (void *, void *, va_list),
...)
{
int i, sp;
- // red-black tree�Ȃ̂�64��stack�������2^32�ƒm�[�h�܂ő��v
+ // red-black treeなので64個stackがあれば2^32個ノードまで大丈夫
struct dbn *p, *pn, *stack[64];
va_list ap;
diff --git a/src/common/lock.c b/src/common/lock.c
index 7409baf..bed657f 100644
--- a/src/common/lock.c
+++ b/src/common/lock.c
@@ -4,17 +4,17 @@
#include "lock.h"
#include "socket.h"
-// �������݃t�@�C���̕ی쏈��
-// �i�������݂��I���܂ŁA���t�@�C����ۊǂ��Ă����j
+// 書き込みファイルの保護処理
+// (書き込みが終わるまで、旧ファイルを保管しておく)
-// �V�����t�@�C���̏������݊J�n
+// 新しいファイルの書き込み開始
FILE *lock_fopen (const char *filename, int *info)
{
char newfile[512];
FILE *fp;
int no = getpid ();
- // ���S�ȃt�@�C�����𓾂�i�蔲���j
+ // 安全なファイル名を得る(手抜き)
do
{
sprintf (newfile, "%s_%d.tmp", filename, no++);
@@ -24,7 +24,7 @@ FILE *lock_fopen (const char *filename, int *info)
return fopen_ (newfile, "w");
}
-// ���t�@�C�����폜���V�t�@�C�������l�[��
+// 旧ファイルを削除&新ファイルをリネーム
int lock_fclose (FILE * fp, const char *filename, int *info)
{
int ret = 0;
@@ -34,7 +34,7 @@ int lock_fclose (FILE * fp, const char *filename, int *info)
ret = fclose_ (fp);
sprintf (newfile, "%s_%d.tmp", filename, *info);
remove (filename);
- // ���̃^�C�~���O�ŗ�����ƍň��B
+ // このタイミングで落ちると最悪。
rename (newfile, filename);
return ret;
}
diff --git a/src/common/mmo.h b/src/common/mmo.h
index 11d37b1..279bf4a 100644
--- a/src/common/mmo.h
+++ b/src/common/mmo.h
@@ -8,9 +8,9 @@
#include "utils.h" // LCCWIN32
#ifdef CYGWIN
-#define RETCODE "\r\n" // (CR/LF�FWindows�n)
+#define RETCODE "\r\n" // (CR/LF:Windows系)
#else
-#define RETCODE "\n" // (LF�FUnix�n�j
+#define RETCODE "\n" // (LF:Unix系)
#endif
#define FIFOSIZE_SERVERLINK 256*1024
@@ -278,13 +278,13 @@ struct square
enum
{
- GBI_EXP = 1, // �M���h��EXP
- GBI_GUILDLV = 2, // �M���h��Lv
- GBI_SKILLPOINT = 3, // �M���h�̃X�L���|�C���g
- GBI_SKILLLV = 4, // �M���h�X�L��Lv
+ GBI_EXP = 1, // ギルドのEXP
+ GBI_GUILDLV = 2, // ギルドのLv
+ GBI_SKILLPOINT = 3, // ギルドのスキルポイント
+ GBI_SKILLLV = 4, // ギルドスキルLv
- GMI_POSITION = 0, // �����o�[�̖�E�ύX
- GMI_EXP = 1, // �����o�[��EXP
+ GMI_POSITION = 0, // メンバーの役職変更
+ GMI_EXP = 1, // メンバーのEXP
};
diff --git a/src/common/nullpo.c b/src/common/nullpo.c
index daeca9f..3205293 100644
--- a/src/common/nullpo.c
+++ b/src/common/nullpo.c
@@ -2,13 +2,13 @@
#include <stdarg.h>
#include <string.h>
#include "nullpo.h"
-// #include "logs.h" // �z�΂��Ă݂�
+// #include "logs.h" // 布石してみる
static void nullpo_info_core (const char *file, int line, const char *func,
const char *fmt, va_list ap);
/*======================================
- * Null�`�F�b�N �y�� ���o��
+ * Nullチェック 及び 情報出力
*--------------------------------------
*/
int nullpo_chk_f (const char *file, int line, const char *func,
@@ -36,7 +36,7 @@ int nullpo_chk (const char *file, int line, const char *func,
}
/*======================================
- * nullpo���o��(�O���ďo���������b�p)
+ * nullpo情報出力(外部呼出し向けラッパ)
*--------------------------------------
*/
void nullpo_info_f (const char *file, int line, const char *func,
@@ -55,7 +55,7 @@ void nullpo_info (const char *file, int line, const char *func)
}
/*======================================
- * nullpo���o��(Main)
+ * nullpo情報出力(Main)
*--------------------------------------
*/
static void nullpo_info_core (const char *file, int line, const char *func,
@@ -74,13 +74,13 @@ static void nullpo_info_core (const char *file, int line, const char *func,
{
vprintf (fmt, ap);
- // �Ō�ɉ��s�������m�F
+ // 最後に改行したか確認
if (fmt[strlen (fmt) - 1] != '\n')
printf ("\n");
}
}
printf ("--- end nullpo info ----------------------------------------\n");
- // �������nullpo���O���t�@�C���ɏ����o������
- // �܂Ƃ߂Ē�o�ł���ȂƎv���Ă�����B
+ // ここらでnullpoログをファイルに書き出せたら
+ // まとめて提出できるなと思っていたり。
}
diff --git a/src/common/nullpo.h b/src/common/nullpo.h
index bac92cd..baeacdc 100644
--- a/src/common/nullpo.h
+++ b/src/common/nullpo.h
@@ -2,8 +2,8 @@
#define _NULLPO_H_
#define NULLPO_CHECK 1
- // �S�̂̃X�C�b�`��錾���Ă���w�b�_�������
- // �����Ɉړ����Ă����������
+ // 全体のスイッチを宣言しているヘッダがあれば
+ // そこに移動していただけると
#if __STDC_VERSION__ < 199901L
# if __GNUC__ >= 2
@@ -24,52 +24,52 @@
*----------------------------------------------------------------------------
*/
/*======================================
- * Null�`�F�b�N �y�� ���o�͌� return
- *�E�W�J�����if�Ƃ�return�����o��̂�
- * ��s�P�̂Ŏg���Ă��������B
- *�Enullpo_ret(x = func());
- * �̂悤�Ȏg�p�@���z�肵�Ă��܂��B
+ * Nullチェック 及び 情報出力後 return
+ *・展開するとifとかreturn等が出るので
+ * 一行単体で使ってください。
+ *・nullpo_ret(x = func());
+ * のような使用法も想定しています。
*--------------------------------------
* nullpo_ret(t)
- * �߂�l 0�Œ�
- * [����]
- * t �`�F�b�N�Ώ�
+ * 戻り値 0固定
+ * [引数]
+ * t チェック対象
*--------------------------------------
* nullpo_retv(t)
- * �߂�l �Ȃ�
- * [����]
- * t �`�F�b�N�Ώ�
+ * 戻り値 なし
+ * [引数]
+ * t チェック対象
*--------------------------------------
* nullpo_retr(ret, t)
- * �߂�l �w��
- * [����]
+ * 戻り値 指定
+ * [引数]
* ret return(ret);
- * t �`�F�b�N�Ώ�
+ * t チェック対象
*--------------------------------------
* nullpo_ret_f(t, fmt, ...)
- * �ڍ׏��o�͗p
- * �߂�l 0
- * [����]
- * t �`�F�b�N�Ώ�
- * fmt ... vprintf�ɓn�����
- * ���l��֌W�ϐ��̏����o���Ȃǂ�
+ * 詳細情報出力用
+ * 戻り値 0
+ * [引数]
+ * t チェック対象
+ * fmt ... vprintfに渡される
+ * 備考や関係変数の書き出しなどに
*--------------------------------------
* nullpo_retv_f(t, fmt, ...)
- * �ڍ׏��o�͗p
- * �߂�l �Ȃ�
- * [����]
- * t �`�F�b�N�Ώ�
- * fmt ... vprintf�ɓn�����
- * ���l��֌W�ϐ��̏����o���Ȃǂ�
+ * 詳細情報出力用
+ * 戻り値 なし
+ * [引数]
+ * t チェック対象
+ * fmt ... vprintfに渡される
+ * 備考や関係変数の書き出しなどに
*--------------------------------------
* nullpo_retr_f(ret, t, fmt, ...)
- * �ڍ׏��o�͗p
- * �߂�l �w��
- * [����]
+ * 詳細情報出力用
+ * 戻り値 指定
+ * [引数]
* ret return(ret);
- * t �`�F�b�N�Ώ�
- * fmt ... vprintf�ɓn�����
- * ���l��֌W�ϐ��̏����o���Ȃǂ�
+ * t チェック対象
+ * fmt ... vprintfに渡される
+ * 備考や関係変数の書き出しなどに
*--------------------------------------
*/
@@ -84,9 +84,9 @@
#define nullpo_retr(ret, t) \
if (nullpo_chk(NLP_MARK, (void *)(t))) {return(ret);}
-// �•ψ����}�N���Ɋւ�������R���p�C��
+// 可変引数マクロに関する条件コンパイル
#if __STDC_VERSION__ >= 199901L
-/* C99�ɑΉ� */
+/* C99に対応 */
#define nullpo_ret_f(t, fmt, ...) \
if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), __VA_ARGS__)) {return(0);}
@@ -97,7 +97,7 @@
if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), __VA_ARGS__)) {return(ret);}
#elif __GNUC__ >= 2
-/* GCC�p */
+/* GCC用 */
#define nullpo_ret_f(t, fmt, args...) \
if (nullpo_chk_f(NLP_MARK, (void *)(t), (fmt), ## args)) {return(0);}
@@ -109,7 +109,7 @@
#else
-/* ���̑��̏ꍇ�E�E�E orz */
+/* その他の場合・・・ orz */
#endif
@@ -117,28 +117,28 @@
/* No Nullpo check */
// if((t)){;}
-// �ǂ����@���v���‚��Ȃ������̂ŁE�E�E����̍�ł��B
-// �ꉞ���[�j���O�͏o�Ȃ��͂�
+// 良い方法が思いつかなかったので・・・苦肉の策です。
+// 一応ワーニングは出ないはず
#define nullpo_ret(t) if((t)){;}
#define nullpo_retv(t) if((t)){;}
#define nullpo_retr(ret, t) if((t)){;}
-// �•ψ����}�N���Ɋւ�������R���p�C��
+// 可変引数マクロに関する条件コンパイル
#if __STDC_VERSION__ >= 199901L
-/* C99�ɑΉ� */
+/* C99に対応 */
#define nullpo_ret_f(t, fmt, ...) if((t)){;}
#define nullpo_retv_f(t, fmt, ...) if((t)){;}
#define nullpo_retr_f(ret, t, fmt, ...) if((t)){;}
#elif __GNUC__ >= 2
-/* GCC�p */
+/* GCC用 */
#define nullpo_ret_f(t, fmt, args...) if((t)){;}
#define nullpo_retv_f(t, fmt, args...) if((t)){;}
#define nullpo_retr_f(ret, t, fmt, args...) if((t)){;}
#else
-/* ���̑��̏ꍇ�E�E�E orz */
+/* その他の場合・・・ orz */
#endif
#endif /* NULLPO_CHECK */
@@ -149,14 +149,14 @@
*/
/*======================================
* nullpo_chk
- * Null�`�F�b�N �y�� ���o��
- * [����]
+ * Nullチェック 及び 情報出力
+ * [引数]
* file __FILE__
* line __LINE__
- * func __func__ (�֐���)
- * �����ɂ� NLP_MARK ���g���Ƃ悢
- * target �`�F�b�N�Ώ�
- * [�Ԃ�l]
+ * func __func__ (関数名)
+ * これらには NLP_MARK を使うとよい
+ * target チェック対象
+ * [返り値]
* 0 OK
* 1 NULL
*--------------------------------------
@@ -166,16 +166,16 @@ int nullpo_chk (const char *file, int line, const char *func,
/*======================================
* nullpo_chk_f
- * Null�`�F�b�N �y�� �ڍׂȏ��o��
- * [����]
+ * Nullチェック 及び 詳細な情報出力
+ * [引数]
* file __FILE__
* line __LINE__
- * func __func__ (�֐���)
- * �����ɂ� NLP_MARK ���g���Ƃ悢
- * target �`�F�b�N�Ώ�
- * fmt ... vprintf�ɓn�����
- * ���l��֌W�ϐ��̏����o���Ȃǂ�
- * [�Ԃ�l]
+ * func __func__ (関数名)
+ * これらには NLP_MARK を使うとよい
+ * target チェック対象
+ * fmt ... vprintfに渡される
+ * 備考や関係変数の書き出しなどに
+ * [返り値]
* 0 OK
* 1 NULL
*--------------------------------------
@@ -186,26 +186,26 @@ int nullpo_chk_f (const char *file, int line, const char *func,
/*======================================
* nullpo_info
- * nullpo���o��
- * [����]
+ * nullpo情報出力
+ * [引数]
* file __FILE__
* line __LINE__
- * func __func__ (�֐���)
- * �����ɂ� NLP_MARK ���g���Ƃ悢
+ * func __func__ (関数名)
+ * これらには NLP_MARK を使うとよい
*--------------------------------------
*/
void nullpo_info (const char *file, int line, const char *func);
/*======================================
* nullpo_info_f
- * nullpo�ڍ׏��o��
- * [����]
+ * nullpo詳細情報出力
+ * [引数]
* file __FILE__
* line __LINE__
- * func __func__ (�֐���)
- * �����ɂ� NLP_MARK ���g���Ƃ悢
- * fmt ... vprintf�ɓn�����
- * ���l��֌W�ϐ��̏����o���Ȃǂ�
+ * func __func__ (関数名)
+ * これらには NLP_MARK を使うとよい
+ * fmt ... vprintfに渡される
+ * 備考や関係変数の書き出しなどに
*--------------------------------------
*/
void nullpo_info_f (const char *file, int line, const char *func,
diff --git a/src/common/timer.c b/src/common/timer.c
index d9552fe..fca6f42 100644
--- a/src/common/timer.c
+++ b/src/common/timer.c
@@ -253,7 +253,7 @@ int delete_timer (int id, int (*func) (int, unsigned int, int, int))
search_timer_func_list (func));
return -2;
}
- // ���̂���������ɂ܂�����
+ // そのうち消えるにまかせる
timer_data[id].func = NULL;
timer_data[id].type = TIMER_ONCE_AUTODEL;
timer_data[id].tick -= 60 * 60 * 1000;
@@ -298,10 +298,10 @@ int do_timer (unsigned int tick)
{
if (DIFF_TICK (timer_data[i].tick, tick) < -1000)
{
- // 1�b�ȏ�̑啝�Ȓx�����������Ă���̂ŁA
- // timer�����^�C�~���O�����ݒl�Ƃ��鎖��
- // �Ăяo�����^�C�~���O(������tick)���΂ŏ������Ă�
- // timer�֐��̎��񏈗��^�C�~���O��x�点��
+ // 1秒以上の大幅な遅延が発生しているので、
+ // timer処理タイミングを現在値とする事で
+ // 呼び出し時タイミング(引数のtick)相対で処理してる
+ // timer関数の次回処理タイミングを遅らせる
timer_data[i].func (i, tick, timer_data[i].id,
timer_data[i].data);
}
diff --git a/src/common/version.h b/src/common/version.h
index 60c9fca..cd9808e 100644
--- a/src/common/version.h
+++ b/src/common/version.h
@@ -14,14 +14,14 @@
#define ATHENA_SERVER_INTER 4 // inter server
#define ATHENA_SERVER_MAP 8 // map server
-// ATHENA_MOD_VERSION�̓p�b�`�ԍ��ł��B
-// ����͖����ɕς��Ȃ��Ă��C����������ς�����x�̈����ŁB
-// �i����A�b�v���[�h�̓x�ɕύX����̂��ʓ|�Ǝv���邵�A��������
-// �@���̍��ڂ��Q�Ƃ���l�����邩�ǂ����ŋ^�₾����B�j
-// ���̒��x�̈����Ȃ̂ŁA�T�[�o�[�ɖ₢���킹�鑤���A�����܂Ŗڈ����x�̈�����
-// ����܂�M�p���Ȃ����ƁB
-// �Isnapshot�̎���A�傫�ȕύX���������ꍇ�͐ݒ肵�Ăق����ł��B
-// C����̎d�l��A�ŏ���0��t�����8�i���ɂȂ�̂ŊԈႦ�Ȃ��ʼn������B
+// ATHENA_MOD_VERSIONはパッチ番号です。
+// これは無理に変えなくても気が向いたら変える程度の扱いで。
+// (毎回アップロードの度に変更するのも面倒と思われるし、そもそも
+//  この項目を参照する人がいるかどうかで疑問だから。)
+// その程度の扱いなので、サーバーに問い合わせる側も、あくまで目安程度の扱いで
+// あんまり信用しないこと。
+// 鯖snapshotの時や、大きな変更があった場合は設定してほしいです。
+// C言語の仕様上、最初に0を付けると8進数になるので間違えないで下さい。
#define ATHENA_MOD_VERSION 1052 // mod version (patch No.)
#endif