diff options
author | Ben Longbons <b.r.longbons@gmail.com> | 2012-12-13 16:25:50 -0800 |
---|---|---|
committer | Ben Longbons <b.r.longbons@gmail.com> | 2012-12-14 16:18:22 -0800 |
commit | 069f39e8a1ebee3e4a4ce8302d0099842876782b (patch) | |
tree | 57d8de5f57d65878f8ef560e2884b9dee08e9323 /src/map/map.cpp | |
parent | f9563edf69f083287630f4b17db70d97524196d6 (diff) | |
download | tmwa-069f39e8a1ebee3e4a4ce8302d0099842876782b.tar.gz tmwa-069f39e8a1ebee3e4a4ce8302d0099842876782b.tar.bz2 tmwa-069f39e8a1ebee3e4a4ce8302d0099842876782b.tar.xz tmwa-069f39e8a1ebee3e4a4ce8302d0099842876782b.zip |
Some formatting fixes before I go insane
Also delete the French translation from ladmin.
Diffstat (limited to 'src/map/map.cpp')
-rw-r--r-- | src/map/map.cpp | 991 |
1 files changed, 494 insertions, 497 deletions
diff --git a/src/map/map.cpp b/src/map/map.cpp index c3d7233..a6b8b08 100644 --- a/src/map/map.cpp +++ b/src/map/map.cpp @@ -57,18 +57,18 @@ static struct block_list *bl_list[BL_LIST_MAX]; static int bl_list_count = 0; struct map_data map[MAX_MAP_PER_SERVER]; -int map_num = 0; +int map_num = 0; -int map_port = 0; +int map_port = 0; -int autosave_interval = DEFAULT_AUTOSAVE_INTERVAL; -int save_settings = 0xFFFF; -int night_flag = 0; // 0=day, 1=night [Yor] +int autosave_interval = DEFAULT_AUTOSAVE_INTERVAL; +int save_settings = 0xFFFF; +int night_flag = 0; // 0=day, 1=night [Yor] struct charid2nick { char nick[24]; - int req_id; + int req_id; }; char motd_txt[256] = "conf/motd.txt"; @@ -81,7 +81,7 @@ char wisp_server_name[24] = "Server"; // can be modified in char-server config * (char鯖から送られてくる) *------------------------------------------ */ -void map_setusers (int n) +void map_setusers(int n) { users = n; } @@ -90,7 +90,7 @@ void map_setusers (int n) * 全map鯖総計での接続数取得 (/wへの応答用) *------------------------------------------ */ -int map_getusers (void) +int map_getusers(void) { return users; } @@ -104,11 +104,11 @@ int map_getusers (void) * ロックされているときはバッファにためる *------------------------------------------ */ -int map_freeblock (void *bl) +int map_freeblock(void *bl) { if (block_free_lock == 0) { - free (bl); + free(bl); bl = NULL; } else @@ -116,8 +116,7 @@ int map_freeblock (void *bl) if (block_free_count >= block_free_max) { if (battle_config.error_log) - printf - ("map_freeblock: *WARNING* too many free block! %d %d\n", + printf("map_freeblock: *WARNING* too many free block! %d %d\n", block_free_count, block_free_lock); } else @@ -130,7 +129,7 @@ int map_freeblock (void *bl) * blockのfreeを一時的に禁止する *------------------------------------------ */ -int map_freeblock_lock (void) +int map_freeblock_lock(void) { return ++block_free_lock; } @@ -141,18 +140,18 @@ int map_freeblock_lock (void) * バッファにたまっていたblockを全部削除 *------------------------------------------ */ -int map_freeblock_unlock (void) +int map_freeblock_unlock(void) { if ((--block_free_lock) == 0) { - int i; + int i; // if(block_free_count>0) { // if(battle_config.error_log) // printf("map_freeblock_unlock: free %d object\n",block_free_count); // } for (i = 0; i < block_free_count; i++) { - free (block_free[i]); + free(block_free[i]); block_free[i] = NULL; } block_free_count = 0; @@ -160,7 +159,7 @@ int map_freeblock_unlock (void) else if (block_free_lock < 0) { if (battle_config.error_log) - printf ("map_freeblock_unlock: lock count < 0 !\n"); + printf("map_freeblock_unlock: lock count < 0 !\n"); } return block_free_lock; } @@ -182,16 +181,16 @@ static struct block_list bl_head; * 既にlink済みかの確認が無い。危険かも *------------------------------------------ */ -int map_addblock (struct block_list *bl) +int map_addblock(struct block_list *bl) { - int m, x, y; + int m, x, y; - nullpo_retr (0, bl); + nullpo_retr(0, bl); if (bl->prev != NULL) { if (battle_config.error_log) - printf ("map_addblock error : bl->prev!=NULL\n"); + printf("map_addblock error : bl->prev!=NULL\n"); return 0; } @@ -234,10 +233,10 @@ int map_addblock (struct block_list *bl) * prevがNULLの場合listに繋がってない *------------------------------------------ */ -int map_delblock (struct block_list *bl) +int map_delblock(struct block_list *bl) { - int b; - nullpo_retr (0, bl); + int b; + nullpo_retr(0, bl); // 既にblocklistから抜けている if (bl->prev == NULL) @@ -246,7 +245,7 @@ int map_delblock (struct block_list *bl) { // prevがNULLでnextがNULLでないのは有ってはならない if (battle_config.error_log) - printf ("map_delblock error : bl->next!=NULL\n"); + printf("map_delblock error : bl->next!=NULL\n"); } return 0; } @@ -288,9 +287,9 @@ int map_delblock (struct block_list *bl) * 周囲のPC人数を数える (現在未使用) *------------------------------------------ */ -int map_countnearpc (int m, int x, int y) +int map_countnearpc(int m, int x, int y) { - int bx, by, c = 0; + int bx, by, c = 0; struct block_list *bl = NULL; if (map[m].users == 0) @@ -320,12 +319,12 @@ int map_countnearpc (int m, int x, int y) * セル上のPCとMOBの数を数える (グランドクロス用) *------------------------------------------ */ -int map_count_oncell (int m, int x, int y) +int map_count_oncell(int m, int x, int y) { - int bx, by; + int bx, by; struct block_list *bl = NULL; - int i, c; - int count = 0; + int i, c; + int count = 0; if (x < 0 || y < 0 || (x >= map[m].xs) || (y >= map[m].ys)) return 1; @@ -357,17 +356,17 @@ int map_count_oncell (int m, int x, int y) * type!=0 ならその種類のみ *------------------------------------------ */ -void map_foreachinarea (void (*func) (struct block_list *, va_list), int m, +void map_foreachinarea(void(*func)(struct block_list *, va_list), int m, int x0, int y0, int x1, int y1, int type, ...) { - int bx, by; + int bx, by; struct block_list *bl = NULL; va_list ap = NULL; - int blockcount = bl_list_count, i, c; + int blockcount = bl_list_count, i, c; if (m < 0) return; - va_start (ap, type); + va_start(ap, type); if (x0 < 0) x0 = 0; if (y0 < 0) @@ -412,18 +411,18 @@ void map_foreachinarea (void (*func) (struct block_list *, va_list), int m, if (bl_list_count >= BL_LIST_MAX) { if (battle_config.error_log) - printf ("map_foreachinarea: *WARNING* block count too many!\n"); + printf("map_foreachinarea: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // メモリからの解放を禁止する + map_freeblock_lock(); // メモリからの解放を禁止する for (i = blockcount; i < bl_list_count; i++) if (bl_list[i]->prev) // 有効かどうかチェック - func (bl_list[i], ap); + func(bl_list[i], ap); - map_freeblock_unlock (); // 解放を許可する + map_freeblock_unlock(); // 解放を許可する - va_end (ap); + va_end(ap); bl_list_count = blockcount; } @@ -435,16 +434,16 @@ void map_foreachinarea (void (*func) (struct block_list *, va_list), int m, * dx,dyは-1,0,1のみとする(どんな値でもいいっぽい?) *------------------------------------------ */ -void map_foreachinmovearea (void (*func) (struct block_list *, va_list), int m, +void map_foreachinmovearea(void(*func)(struct block_list *, va_list), int m, int x0, int y0, int x1, int y1, int dx, int dy, int type, ...) { - int bx, by; + int bx, by; struct block_list *bl = NULL; va_list ap = NULL; - int blockcount = bl_list_count, i, c; + int blockcount = bl_list_count, i, c; - va_start (ap, type); + va_start(ap, type); if (dx == 0 || dy == 0) { // 矩形領域の場合 @@ -567,18 +566,18 @@ void map_foreachinmovearea (void (*func) (struct block_list *, va_list), int m, if (bl_list_count >= BL_LIST_MAX) { if (battle_config.error_log) - printf ("map_foreachinarea: *WARNING* block count too many!\n"); + printf("map_foreachinarea: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // メモリからの解放を禁止する + map_freeblock_lock(); // メモリからの解放を禁止する for (i = blockcount; i < bl_list_count; i++) if (bl_list[i]->prev) // 有効かどうかチェック - func (bl_list[i], ap); + func(bl_list[i], ap); - map_freeblock_unlock (); // 解放を許可する + map_freeblock_unlock(); // 解放を許可する - va_end (ap); + va_end(ap); bl_list_count = blockcount; } @@ -586,15 +585,15 @@ void map_foreachinmovearea (void (*func) (struct block_list *, va_list), int m, // which only checks the exact single x/y passed to it rather than an // area radius - may be more useful in some instances) // -void map_foreachincell (void (*func) (struct block_list *, va_list), int m, +void map_foreachincell(void(*func)(struct block_list *, va_list), int m, int x, int y, int type, ...) { - int bx, by; + int bx, by; struct block_list *bl = NULL; va_list ap = NULL; - int blockcount = bl_list_count, i, c; + int blockcount = bl_list_count, i, c; - va_start (ap, type); + va_start(ap, type); by = y / BLOCK_SIZE; bx = x / BLOCK_SIZE; @@ -626,18 +625,18 @@ void map_foreachincell (void (*func) (struct block_list *, va_list), int m, if (bl_list_count >= BL_LIST_MAX) { if (battle_config.error_log) - printf ("map_foreachincell: *WARNING* block count too many!\n"); + printf("map_foreachincell: *WARNING* block count too many!\n"); } - map_freeblock_lock (); // メモリからの解放を禁止する + map_freeblock_lock(); // メモリからの解放を禁止する for (i = blockcount; i < bl_list_count; i++) if (bl_list[i]->prev) // 有効かどうかチェック - func (bl_list[i], ap); + func(bl_list[i], ap); - map_freeblock_unlock (); // 解放を許可する + map_freeblock_unlock(); // 解放を許可する - va_end (ap); + va_end(ap); bl_list_count = blockcount; } @@ -648,12 +647,12 @@ void map_foreachincell (void (*func) (struct block_list *, va_list), int m, * bl->idもこの中で設定して問題無い? *------------------------------------------ */ -int map_addobject (struct block_list *bl) +int map_addobject(struct block_list *bl) { - int i; + int i; if (bl == NULL) { - printf ("map_addobject nullpo?\n"); + printf("map_addobject nullpo?\n"); return 0; } if (first_free_object_id < 2 || first_free_object_id >= MAX_FLOORITEM) @@ -664,36 +663,36 @@ int map_addobject (struct block_list *bl) if (i >= MAX_FLOORITEM) { if (battle_config.error_log) - printf ("no free object id\n"); + printf("no free object id\n"); return 0; } first_free_object_id = i; if (last_object_id < i) last_object_id = i; object[i] = bl; - numdb_insert (id_db, i, bl); + numdb_insert(id_db, i, bl); return i; } /*========================================== * 一時objectの解放 - * map_delobjectのfreeしないバージョン + * map_delobjectのfreeしないバージョン *------------------------------------------ */ -int map_delobjectnofree (int id, int type) +int map_delobjectnofree(int id, int type) { if (object[id] == NULL) return 0; if (object[id]->type != type) { - fprintf (stderr, "Incorrect type: expected %d, got %d\n", type, + fprintf(stderr, "Incorrect type: expected %d, got %d\n", type, object[id]->type); *((char *) 0) = 0; // break for backtrace } - map_delblock (object[id]); - numdb_erase (id_db, id); + map_delblock(object[id]); + numdb_erase(id_db, id); // map_freeblock(object[id]); object[id] = NULL; @@ -714,18 +713,18 @@ int map_delobjectnofree (int id, int type) * addとの対称性が無いのが気になる *------------------------------------------ */ -int map_delobject (int id, int type) +int map_delobject(int id, int type) { struct block_list *obj = object[id]; if (obj == NULL) return 0; - map_delobjectnofree (id, type); + map_delobjectnofree(id, type); if (obj->type == BL_PC) // [Fate] Not sure where else to put this... I'm not sure where delobject for PCs is called from - pc_cleanup ((struct map_session_data *) obj); + pc_cleanup((struct map_session_data *) obj); - map_freeblock (obj); + map_freeblock(obj); return 0; } @@ -735,14 +734,14 @@ int map_delobject (int id, int type) * *------------------------------------------ */ -void map_foreachobject (void (*func) (struct block_list *, va_list), int type, +void map_foreachobject(void(*func)(struct block_list *, va_list), int type, ...) { - int i; - int blockcount = bl_list_count; + int i; + int blockcount = bl_list_count; va_list ap = NULL; - va_start (ap, type); + va_start(ap, type); for (i = 2; i <= last_object_id; i++) { @@ -753,22 +752,22 @@ void map_foreachobject (void (*func) (struct block_list *, va_list), int type, if (bl_list_count >= BL_LIST_MAX) { if (battle_config.error_log) - printf ("map_foreachobject: too many block !\n"); + printf("map_foreachobject: too many block !\n"); } else bl_list[bl_list_count++] = object[i]; } } - map_freeblock_lock (); + map_freeblock_lock(); for (i = blockcount; i < bl_list_count; i++) if (bl_list[i]->prev || bl_list[i]->next) - func (bl_list[i], ap); + func(bl_list[i], ap); - map_freeblock_unlock (); + map_freeblock_unlock(); - va_end (ap); + va_end(ap); bl_list_count = blockcount; } @@ -782,7 +781,7 @@ void map_foreachobject (void (*func) (struct block_list *, va_list), int type, * map.h内で#defineしてある *------------------------------------------ */ -void map_clearflooritem_timer (timer_id tid, tick_t tick, custom_id_t id, custom_data_t data) +void map_clearflooritem_timer(timer_id tid, tick_t tick, custom_id_t id, custom_data_t data) { struct flooritem_data *fitem = NULL; @@ -791,13 +790,13 @@ void map_clearflooritem_timer (timer_id tid, tick_t tick, custom_id_t id, custom || (!data && fitem->cleartimer != tid)) { if (battle_config.error_log) - printf ("map_clearflooritem_timer : error\n"); + printf("map_clearflooritem_timer : error\n"); return; } if (data) - delete_timer (fitem->cleartimer, map_clearflooritem_timer); - clif_clearflooritem (fitem, 0); - map_delobject (fitem->bl.id, BL_ITEM); + delete_timer(fitem->cleartimer, map_clearflooritem_timer); + clif_clearflooritem(fitem, 0); + map_delobject(fitem->bl.id, BL_ITEM); } /*========================================== @@ -807,9 +806,9 @@ void map_clearflooritem_timer (timer_id tid, tick_t tick, custom_id_t id, custom * 現状range=1でアイテムドロップ用途のみ *------------------------------------------ */ -int map_searchrandfreecell (int m, int x, int y, int range) +int map_searchrandfreecell(int m, int x, int y, int range) { - int free_cell, i, j, c; + int free_cell, i, j, c; for (free_cell = 0, i = -range; i <= range; i++) { @@ -819,14 +818,14 @@ int map_searchrandfreecell (int m, int x, int y, int range) { if (j + x < 0 || j + x >= map[m].xs) continue; - if ((c = read_gat (m, j + x, i + y)) == 1 || c == 5) + if ((c = read_gat(m, j + x, i + y)) == 1 || c == 5) continue; free_cell++; } } if (free_cell == 0) return -1; - free_cell = MRAND (free_cell); + free_cell = MRAND(free_cell); for (i = -range; i <= range; i++) { if (i + y < 0 || i + y >= map[m].ys) @@ -835,7 +834,7 @@ int map_searchrandfreecell (int m, int x, int y, int range) { if (j + x < 0 || j + x >= map[m].xs) continue; - if ((c = read_gat (m, j + x, i + y)) == 1 || c == 5) + if ((c = read_gat(m, j + x, i + y)) == 1 || c == 5) continue; if (free_cell == 0) { @@ -857,21 +856,21 @@ int map_searchrandfreecell (int m, int x, int y, int range) * item_dataはamount以外をcopyする *------------------------------------------ */ -int map_addflooritem_any (struct item *item_data, int amount, int m, int x, +int map_addflooritem_any(struct item *item_data, int amount, int m, int x, int y, struct map_session_data **owners, int *owner_protection, int lifetime, int dispersal) { - int xy, r; + int xy, r; unsigned int tick; struct flooritem_data *fitem = NULL; - nullpo_retr (0, item_data); + nullpo_retr(0, item_data); - if ((xy = map_searchrandfreecell (m, x, y, dispersal)) < 0) + if ((xy = map_searchrandfreecell(m, x, y, dispersal)) < 0) return 0; - r = mt_random (); + r = mt_random(); - CREATE (fitem, struct flooritem_data, 1); + CREATE(fitem, struct flooritem_data, 1); fitem->bl.type = BL_ITEM; fitem->bl.prev = fitem->bl.next = NULL; fitem->bl.m = m; @@ -884,14 +883,14 @@ int map_addflooritem_any (struct item *item_data, int amount, int m, int x, fitem->third_get_id = 0; fitem->third_get_tick = 0; - fitem->bl.id = map_addobject (&fitem->bl); + fitem->bl.id = map_addobject(&fitem->bl); if (fitem->bl.id == 0) { - free (fitem); + free(fitem); return 0; } - tick = gettick (); + tick = gettick(); if (owners[0]) fitem->first_get_id = owners[0]->bl.id; @@ -905,27 +904,27 @@ int map_addflooritem_any (struct item *item_data, int amount, int m, int x, fitem->third_get_id = owners[2]->bl.id; fitem->third_get_tick = tick + owner_protection[2]; - memcpy (&fitem->item_data, item_data, sizeof (*item_data)); + memcpy(&fitem->item_data, item_data, sizeof(*item_data)); fitem->item_data.amount = amount; fitem->subx = (r & 3) * 3 + 3; fitem->suby = ((r >> 2) & 3) * 3 + 3; fitem->cleartimer = - add_timer (gettick () + lifetime, map_clearflooritem_timer, + add_timer(gettick() + lifetime, map_clearflooritem_timer, fitem->bl.id, 0); - map_addblock (&fitem->bl); - clif_dropflooritem (fitem); + map_addblock(&fitem->bl); + clif_dropflooritem(fitem); return fitem->bl.id; } -int map_addflooritem (struct item *item_data, int amount, int m, int x, int y, +int map_addflooritem(struct item *item_data, int amount, int m, int x, int y, struct map_session_data *first_sd, struct map_session_data *second_sd, struct map_session_data *third_sd, int type) { struct map_session_data *owners[3] = { first_sd, second_sd, third_sd }; - int owner_protection[3]; + int owner_protection[3]; if (type) { @@ -944,99 +943,99 @@ int map_addflooritem (struct item *item_data, int amount, int m, int x, int y, owner_protection[1] + battle_config.item_third_get_time; } - return map_addflooritem_any (item_data, amount, m, x, y, + return map_addflooritem_any(item_data, amount, m, x, y, owners, owner_protection, battle_config.flooritem_lifetime, 1); } -/* int xy,r; */ -/* unsigned int tick; */ -/* struct flooritem_data *fitem=NULL; */ - -/* nullpo_retr(0, item_data); */ - -/* if((xy=map_searchrandfreecell(m,x,y,1))<0) */ -/* return 0; */ -/* r=rand(); */ - -/* fitem = (struct flooritem_data *)aCalloc(1,sizeof(*fitem)); */ -/* fitem->bl.type=BL_ITEM; */ -/* fitem->bl.prev = fitem->bl.next = NULL; */ -/* fitem->bl.m=m; */ -/* fitem->bl.x=xy&0xffff; */ -/* fitem->bl.y=(xy>>16)&0xffff; */ -/* fitem->first_get_id = 0; */ -/* fitem->first_get_tick = 0; */ -/* fitem->second_get_id = 0; */ -/* fitem->second_get_tick = 0; */ -/* fitem->third_get_id = 0; */ -/* fitem->third_get_tick = 0; */ - -/* fitem->bl.id = map_addobject(&fitem->bl); */ -/* if(fitem->bl.id==0){ */ -/* free(fitem); */ -/* return 0; */ -/* } */ - -/* tick = gettick(); */ -/* if(first_sd) { */ -/* fitem->first_get_id = first_sd->bl.id; */ -/* if(type) */ -/* fitem->first_get_tick = tick + battle_config.mvp_item_first_get_time; */ -/* else */ -/* fitem->first_get_tick = tick + battle_config.item_first_get_time; */ -/* } */ -/* if(second_sd) { */ -/* fitem->second_get_id = second_sd->bl.id; */ -/* if(type) */ -/* fitem->second_get_tick = tick + battle_config.mvp_item_first_get_time + battle_config.mvp_item_second_get_time; */ -/* else */ -/* fitem->second_get_tick = tick + battle_config.item_first_get_time + battle_config.item_second_get_time; */ -/* } */ -/* if(third_sd) { */ -/* fitem->third_get_id = third_sd->bl.id; */ -/* if(type) */ -/* fitem->third_get_tick = tick + battle_config.mvp_item_first_get_time + battle_config.mvp_item_second_get_time + battle_config.mvp_item_third_get_time; */ -/* else */ -/* fitem->third_get_tick = tick + battle_config.item_first_get_time + battle_config.item_second_get_time + battle_config.item_third_get_time; */ -/* } */ - -/* memcpy(&fitem->item_data,item_data,sizeof(*item_data)); */ -/* fitem->item_data.amount=amount; */ -/* fitem->subx=(r&3)*3+3; */ -/* fitem->suby=((r>>2)&3)*3+3; */ -/* fitem->cleartimer=add_timer(gettick()+battle_config.flooritem_lifetime,map_clearflooritem_timer,fitem->bl.id,0); */ - -/* map_addblock(&fitem->bl); */ -/* clif_dropflooritem(fitem); */ - -/* return fitem->bl.id; */ +/* int xy,r; */ +/* unsigned int tick; */ +/* struct flooritem_data *fitem=NULL; */ + +/* nullpo_retr(0, item_data); */ + +/* if ((xy=map_searchrandfreecell(m,x,y,1))<0) */ +/* return 0; */ +/* r=rand(); */ + +/* fitem = (struct flooritem_data *)aCalloc(1,sizeof(*fitem)); */ +/* fitem->bl.type=BL_ITEM; */ +/* fitem->bl.prev = fitem->bl.next = NULL; */ +/* fitem->bl.m=m; */ +/* fitem->bl.x=xy&0xffff; */ +/* fitem->bl.y= (xy>>16)&0xffff; */ +/* fitem->first_get_id = 0; */ +/* fitem->first_get_tick = 0; */ +/* fitem->second_get_id = 0; */ +/* fitem->second_get_tick = 0; */ +/* fitem->third_get_id = 0; */ +/* fitem->third_get_tick = 0; */ + +/* fitem->bl.id = map_addobject(&fitem->bl); */ +/* if (fitem->bl.id==0){ */ +/* free(fitem); */ +/* return 0; */ +/* } */ + +/* tick = gettick(); */ +/* if (first_sd) { */ +/* fitem->first_get_id = first_sd->bl.id; */ +/* if (type) */ +/* fitem->first_get_tick = tick + battle_config.mvp_item_first_get_time; */ +/* else */ +/* fitem->first_get_tick = tick + battle_config.item_first_get_time; */ +/* } */ +/* if (second_sd) { */ +/* fitem->second_get_id = second_sd->bl.id; */ +/* if (type) */ +/* fitem->second_get_tick = tick + battle_config.mvp_item_first_get_time + battle_config.mvp_item_second_get_time; */ +/* else */ +/* fitem->second_get_tick = tick + battle_config.item_first_get_time + battle_config.item_second_get_time; */ +/* } */ +/* if (third_sd) { */ +/* fitem->third_get_id = third_sd->bl.id; */ +/* if (type) */ +/* fitem->third_get_tick = tick + battle_config.mvp_item_first_get_time + battle_config.mvp_item_second_get_time + battle_config.mvp_item_third_get_time; */ +/* else */ +/* fitem->third_get_tick = tick + battle_config.item_first_get_time + battle_config.item_second_get_time + battle_config.item_third_get_time; */ +/* } */ + +/* memcpy(&fitem->item_data,item_data,sizeof(*item_data)); */ +/* fitem->item_data.amount=amount; */ +/* fitem->subx= (r&3)*3+3; */ +/* fitem->suby= ((r>>2)&3)*3+3; */ +/* fitem->cleartimer=add_timer(gettick()+battle_config.flooritem_lifetime,map_clearflooritem_timer,fitem->bl.id,0); */ + +/* map_addblock(&fitem->bl); */ +/* clif_dropflooritem(fitem); */ + +/* return fitem->bl.id; */ /* } */ /*========================================== * charid_dbへ追加(返信待ちがあれば返信) *------------------------------------------ */ -void map_addchariddb (int charid, const char *name) +void map_addchariddb(int charid, const char *name) { - struct charid2nick *p = (struct charid2nick *)numdb_search (charid_db, charid); + struct charid2nick *p = (struct charid2nick *)numdb_search(charid_db, charid); if (p == NULL) { // データベースにない - CREATE (p, struct charid2nick, 1); + CREATE(p, struct charid2nick, 1); p->req_id = 0; } else - numdb_erase (charid_db, charid); + numdb_erase(charid_db, charid); int req = p->req_id; - memcpy (p->nick, name, 24); + memcpy(p->nick, name, 24); p->req_id = 0; - numdb_insert (charid_db, charid, p); + numdb_insert(charid_db, charid, p); if (req) { // 返信待ちがあれば返信 - struct map_session_data *sd = map_id2sd (req); + struct map_session_data *sd = map_id2sd(req); if (sd != NULL) - clif_solved_charname (sd, charid); + clif_solved_charname(sd, charid); } } @@ -1044,16 +1043,16 @@ void map_addchariddb (int charid, const char *name) * charid_dbへ追加(返信要求のみ) *------------------------------------------ */ -int map_reqchariddb (struct map_session_data *sd, int charid) +int map_reqchariddb(struct map_session_data *sd, int charid) { - nullpo_retr (0, sd); + nullpo_retr(0, sd); - struct charid2nick *p = (struct charid2nick *)numdb_search (charid_db, charid); + struct charid2nick *p = (struct charid2nick *)numdb_search(charid_db, charid); if (p != NULL) // データベースにすでにある return 0; - CREATE (p, struct charid2nick, 1); + CREATE(p, struct charid2nick, 1); p->req_id = sd->bl.id; - numdb_insert (charid_db, charid, p); + numdb_insert(charid_db, charid, p); return 0; } @@ -1061,33 +1060,33 @@ int map_reqchariddb (struct map_session_data *sd, int charid) * id_dbへblを追加 *------------------------------------------ */ -void map_addiddb (struct block_list *bl) +void map_addiddb(struct block_list *bl) { - nullpo_retv (bl); + nullpo_retv(bl); - numdb_insert (id_db, bl->id, bl); + numdb_insert(id_db, bl->id, bl); } /*========================================== * id_dbからblを削除 *------------------------------------------ */ -void map_deliddb (struct block_list *bl) +void map_deliddb(struct block_list *bl) { - nullpo_retv (bl); + nullpo_retv(bl); - numdb_erase (id_db, bl->id); + numdb_erase(id_db, bl->id); } /*========================================== * nick_dbへsdを追加 *------------------------------------------ */ -void map_addnickdb (struct map_session_data *sd) +void map_addnickdb(struct map_session_data *sd) { - nullpo_retv (sd); + nullpo_retv(sd); - strdb_insert (nick_db, sd->status.name, sd); + strdb_insert(nick_db, sd->status.name, sd); } /*========================================== @@ -1096,61 +1095,61 @@ void map_addnickdb (struct map_session_data *sd) * quit処理の主体が違うような気もしてきた *------------------------------------------ */ -int map_quit (struct map_session_data *sd) +int map_quit(struct map_session_data *sd) { - nullpo_retr (0, sd); + nullpo_retr(0, sd); if (sd->chatID) // チャットから出る - chat_leavechat (sd); + chat_leavechat(sd); if (sd->trade_partner) // 取引を中断する - trade_tradecancel (sd); + trade_tradecancel(sd); if (sd->party_invite > 0) // パーティ勧誘を拒否する - party_reply_invite (sd, sd->party_invite_account, 0); + party_reply_invite(sd, sd->party_invite_account, 0); - party_send_logout (sd); // パーティのログアウトメッセージ送信 + party_send_logout(sd); // パーティのログアウトメッセージ送信 - pc_cleareventtimer (sd); // イベントタイマを破棄する + pc_cleareventtimer(sd); // イベントタイマを破棄する - skill_castcancel (&sd->bl, 0); // 詠唱を中断する - skill_stop_dancing (&sd->bl, 1); // ダンス/演奏中断 + skill_castcancel(&sd->bl, 0); // 詠唱を中断する + skill_stop_dancing(&sd->bl, 1); // ダンス/演奏中断 if (sd->sc_data && sd->sc_data[SC_BERSERK].timer != -1) //バーサーク中の終了はHPを100に sd->status.hp = 100; - skill_status_change_clear (&sd->bl, 1); // ステータス異常を解除する - skill_clear_unitgroup (&sd->bl); // スキルユニットグループの削除 - skill_cleartimerskill (&sd->bl); - pc_stop_walking (sd, 0); - pc_stopattack (sd); - pc_delinvincibletimer (sd); - pc_delspiritball (sd, sd->spiritball, 1); - skill_gangsterparadise (sd, 0); + skill_status_change_clear(&sd->bl, 1); // ステータス異常を解除する + skill_clear_unitgroup(&sd->bl); // スキルユニットグループの削除 + skill_cleartimerskill(&sd->bl); + pc_stop_walking(sd, 0); + pc_stopattack(sd); + pc_delinvincibletimer(sd); + pc_delspiritball(sd, sd->spiritball, 1); + skill_gangsterparadise(sd, 0); - pc_calcstatus (sd, 4); + pc_calcstatus(sd, 4); - clif_clearchar_area (&sd->bl, 2); + clif_clearchar_area(&sd->bl, 2); - if (pc_isdead (sd)) - pc_setrestartvalue (sd, 2); - pc_makesavestatus (sd); + if (pc_isdead(sd)) + pc_setrestartvalue(sd, 2); + pc_makesavestatus(sd); //クローンスキルで覚えたスキルは消す //The storage closing routines will save the char if needed. [Skotlex] if (!sd->state.storage_open) - chrif_save (sd); + chrif_save(sd); else if (sd->state.storage_open) - storage_storage_quit (sd); + storage_storage_quit(sd); if (sd->npc_stackbuf && sd->npc_stackbuf != NULL) - free (sd->npc_stackbuf); + free(sd->npc_stackbuf); - map_delblock (&sd->bl); + map_delblock(&sd->bl); - numdb_erase (id_db, sd->bl.id); - strdb_erase (nick_db, sd->status.name); - numdb_erase (charid_db, sd->status.char_id); + numdb_erase(id_db, sd->bl.id); + strdb_erase(nick_db, sd->status.name); + numdb_erase(charid_db, sd->status.char_id); return 0; } @@ -1159,7 +1158,7 @@ int map_quit (struct map_session_data *sd) * id番号のPCを探す。居なければNULL *------------------------------------------ */ -struct map_session_data *map_id2sd (int id) +struct map_session_data *map_id2sd(int id) { // remove search from db, because: // 1 - all players, npc, items and mob are in this db (to search, it's not speed, and search in session is more sure) @@ -1168,14 +1167,14 @@ struct map_session_data *map_id2sd (int id) // replaced by searching in all session. // by searching in session, we are sure that fd, session, and account exist. /* - struct block_list *bl; + struct block_list *bl; - bl=numdb_search(id_db,id); - if(bl && bl->type==BL_PC) - return (struct map_session_data*)bl; - return NULL; + bl=numdb_search(id_db,id); + if (bl && bl->type==BL_PC) + return (struct map_session_data*)bl; + return NULL; */ - int i; + int i; struct map_session_data *sd = NULL; for (i = 0; i < fd_max; i++) @@ -1189,9 +1188,9 @@ struct map_session_data *map_id2sd (int id) * char_id番号の名前を探す *------------------------------------------ */ -char *map_charid2nick (int id) +char *map_charid2nick(int id) { - struct charid2nick *p = (struct charid2nick *)numdb_search (charid_db, id); + struct charid2nick *p = (struct charid2nick *)numdb_search(charid_db, id); if (p == NULL) return NULL; @@ -1203,7 +1202,7 @@ char *map_charid2nick (int id) /*========================================*/ /* [Fate] Operations to iterate over active map sessions */ -static struct map_session_data *map_get_session (int i) +static struct map_session_data *map_get_session(int i) { struct map_session_data *d; @@ -1214,12 +1213,12 @@ static struct map_session_data *map_get_session (int i) return NULL; } -static struct map_session_data *map_get_session_forward (int start) +static struct map_session_data *map_get_session_forward(int start) { - int i; + int i; for (i = start; i < fd_max; i++) { - struct map_session_data *d = map_get_session (i); + struct map_session_data *d = map_get_session(i); if (d) return d; } @@ -1227,12 +1226,12 @@ static struct map_session_data *map_get_session_forward (int start) return NULL; } -static struct map_session_data *map_get_session_backward (int start) +static struct map_session_data *map_get_session_backward(int start) { - int i; + int i; for (i = start; i >= 0; i--) { - struct map_session_data *d = map_get_session (i); + struct map_session_data *d = map_get_session(i); if (d) return d; } @@ -1240,24 +1239,24 @@ static struct map_session_data *map_get_session_backward (int start) return NULL; } -struct map_session_data *map_get_first_session (void) +struct map_session_data *map_get_first_session(void) { - return map_get_session_forward (0); + return map_get_session_forward(0); } -struct map_session_data *map_get_next_session (struct map_session_data *d) +struct map_session_data *map_get_next_session(struct map_session_data *d) { - return map_get_session_forward (d->fd + 1); + return map_get_session_forward(d->fd + 1); } -struct map_session_data *map_get_last_session (void) +struct map_session_data *map_get_last_session(void) { - return map_get_session_backward (fd_max); + return map_get_session_backward(fd_max); } -struct map_session_data *map_get_prev_session (struct map_session_data *d) +struct map_session_data *map_get_prev_session(struct map_session_data *d) { - return map_get_session_backward (d->fd - 1); + return map_get_session_backward(d->fd - 1); } /*========================================== @@ -1266,16 +1265,16 @@ struct map_session_data *map_get_prev_session (struct map_session_data *d) * return map_session_data pointer or NULL *------------------------------------------ */ -struct map_session_data *map_nick2sd (const char *nick) +struct map_session_data *map_nick2sd(const char *nick) { - int i, quantity = 0, nicklen; + int i, quantity = 0, nicklen; struct map_session_data *sd = NULL; struct map_session_data *pl_sd = NULL; if (nick == NULL) return NULL; - nicklen = strlen (nick); + nicklen = strlen(nick); for (i = 0; i < fd_max; i++) { @@ -1283,10 +1282,10 @@ struct map_session_data *map_nick2sd (const char *nick) && pl_sd->state.auth) { // Without case sensitive check (increase the number of similar character names found) - if (strncasecmp (pl_sd->status.name, nick, nicklen) == 0) + if (strncasecmp(pl_sd->status.name, nick, nicklen) == 0) { // Strict comparison (if found, we finish the function immediatly with correct value) - if (strcmp (pl_sd->status.name, nick) == 0) + if (strcmp(pl_sd->status.name, nick) == 0) return pl_sd; quantity++; sd = pl_sd; @@ -1307,13 +1306,13 @@ struct map_session_data *map_nick2sd (const char *nick) * 一時objectの場合は配列を引くのみ *------------------------------------------ */ -struct block_list *map_id2bl (int id) +struct block_list *map_id2bl(int id) { struct block_list *bl = NULL; - if (id < sizeof (object) / sizeof (object[0])) + if (id < sizeof(object) / sizeof(object[0])) bl = object[id]; else - bl = (struct block_list *)numdb_search (id_db, id); + bl = (struct block_list *)numdb_search(id_db, id); return bl; } @@ -1322,13 +1321,13 @@ struct block_list *map_id2bl (int id) * id_db内の全てにfuncを実行 *------------------------------------------ */ -int map_foreachiddb (db_func_t func, ...) +int map_foreachiddb(db_func_t func, ...) { va_list ap = NULL; - va_start (ap, func); - numdb_foreach (id_db, func, ap); - va_end (ap); + va_start(ap, func); + numdb_foreach(id_db, func, ap); + va_end(ap); return 0; } @@ -1336,9 +1335,9 @@ int map_foreachiddb (db_func_t func, ...) * map.npcへ追加 (warp等の領域持ちのみ) *------------------------------------------ */ -int map_addnpc (int m, struct npc_data *nd) +int map_addnpc(int m, struct npc_data *nd) { - int i; + int i; if (m < 0 || m >= map_num) return -1; for (i = 0; i < map[m].npc_num && i < MAX_NPC_PER_MAP; i++) @@ -1347,7 +1346,7 @@ int map_addnpc (int m, struct npc_data *nd) if (i == MAX_NPC_PER_MAP) { if (battle_config.error_log) - printf ("too many NPCs in one map %s\n", map[m].name); + printf("too many NPCs in one map %s\n", map[m].name); return -1; } if (i == map[m].npc_num) @@ -1355,19 +1354,19 @@ int map_addnpc (int m, struct npc_data *nd) map[m].npc_num++; } - nullpo_retr (0, nd); + nullpo_retr(0, nd); map[m].npc[i] = nd; nd->n = i; - numdb_insert (id_db, nd->bl.id, nd); + numdb_insert(id_db, nd->bl.id, nd); return i; } static -void map_removenpc (void) +void map_removenpc(void) { - int i, m, n = 0; + int i, m, n = 0; for (m = 0; m < map_num; m++) { @@ -1375,30 +1374,30 @@ void map_removenpc (void) { if (map[m].npc[i] != NULL) { - clif_clearchar_area (&map[m].npc[i]->bl, 2); - map_delblock (&map[m].npc[i]->bl); - numdb_erase (id_db, map[m].npc[i]->bl.id); + clif_clearchar_area(&map[m].npc[i]->bl, 2); + map_delblock(&map[m].npc[i]->bl); + numdb_erase(id_db, map[m].npc[i]->bl.id); if (map[m].npc[i]->bl.subtype == SCRIPT) { // free(map[m].npc[i]->u.scr.script); // free(map[m].npc[i]->u.scr.label_list); } - free (map[m].npc[i]); + free(map[m].npc[i]); map[m].npc[i] = NULL; n++; } } } - printf ("%d NPCs removed.\n", n); + printf("%d NPCs removed.\n", n); } /*========================================== * map名からmap番号へ変換 *------------------------------------------ */ -int map_mapname2mapid (const char *name) +int map_mapname2mapid(const char *name) { - struct map_data *md = (struct map_data *)strdb_search (map_db, name); + struct map_data *md = (struct map_data *)strdb_search(map_db, name); if (md == NULL || md->gat == NULL) return -1; return md->m; @@ -1408,9 +1407,9 @@ int map_mapname2mapid (const char *name) * 他鯖map名からip,port変換 *------------------------------------------ */ -int map_mapname2ipport (const char *name, struct in_addr *ip, int *port) +int map_mapname2ipport(const char *name, struct in_addr *ip, int *port) { - struct map_data_other_server *mdos = (struct map_data_other_server *)strdb_search (map_db, name); + struct map_data_other_server *mdos = (struct map_data_other_server *)strdb_search(map_db, name); if (mdos == NULL || mdos->gat) return -1; *ip = mdos->ip; @@ -1422,7 +1421,7 @@ int map_mapname2ipport (const char *name, struct in_addr *ip, int *port) * *------------------------------------------ */ -int map_check_dir (int s_dir, int t_dir) +int map_check_dir(int s_dir, int t_dir) { if (s_dir == t_dir) return 0; @@ -1468,12 +1467,12 @@ int map_check_dir (int s_dir, int t_dir) * 彼我の方向を計算 *------------------------------------------ */ -int map_calc_dir (struct block_list *src, int x, int y) +int map_calc_dir(struct block_list *src, int x, int y) { - int dir = 0; - int dx, dy; + int dir = 0; + int dx, dy; - nullpo_retr (0, src); + nullpo_retr(0, src); dx = x - src->x; dy = y - src->y; @@ -1521,7 +1520,7 @@ int map_calc_dir (struct block_list *src, int x, int y) * (m,x,y)の状態を調べる *------------------------------------------ */ -int map_getcell (int m, int x, int y) +int map_getcell(int m, int x, int y) { if (x < 0 || x >= map[m].xs - 1 || y < 0 || y >= map[m].ys - 1) return 1; @@ -1532,7 +1531,7 @@ int map_getcell (int m, int x, int y) * (m,x,y)の状態をtにする *------------------------------------------ */ -int map_setcell (int m, int x, int y, int t) +int map_setcell(int m, int x, int y, int t) { if (x < 0 || x >= map[m].xs || y < 0 || y >= map[m].ys) return t; @@ -1543,27 +1542,27 @@ int map_setcell (int m, int x, int y, int t) * 他鯖管理のマップをdbに追加 *------------------------------------------ */ -int map_setipport (const char *name, struct in_addr ip, int port) +int map_setipport(const char *name, struct in_addr ip, int port) { struct map_data_other_server *mdos = NULL; - struct map_data *md = (struct map_data *)strdb_search (map_db, name); + struct map_data *md = (struct map_data *)strdb_search(map_db, name); if (md == NULL) { // not exist -> add new data - CREATE (mdos, struct map_data_other_server, 1); - memcpy (mdos->name, name, 24); + CREATE(mdos, struct map_data_other_server, 1); + memcpy(mdos->name, name, 24); mdos->gat = NULL; mdos->ip = ip; mdos->port = port; - strdb_insert (map_db, mdos->name, mdos); + strdb_insert(map_db, mdos->name, mdos); } else { if (md->gat) { // local -> check data - if (ip.s_addr != clif_getip ().s_addr || port != clif_getport ()) + if (ip.s_addr != clif_getip().s_addr || port != clif_getport()) { - printf ("from char server : %s -> %s:%d\n", name, ip2str(ip), + printf("from char server : %s -> %s:%d\n", name, ip2str(ip), port); return 1; } @@ -1586,127 +1585,127 @@ int map_setipport (const char *name, struct in_addr ip, int port) static struct Waterlist { char mapname[24]; - int waterheight; + int waterheight; } *waterlist = NULL; #define NO_WATER 1000000 -static int map_waterheight (char *mapname) +static int map_waterheight(char *mapname) { if (waterlist) { - int i; + int i; for (i = 0; waterlist[i].mapname[0] && i < MAX_MAP_PER_SERVER; i++) - if (strcmp (waterlist[i].mapname, mapname) == 0) + if (strcmp(waterlist[i].mapname, mapname) == 0) return waterlist[i].waterheight; } return NO_WATER; } -static void map_readwater (char *watertxt) +static void map_readwater(char *watertxt) { char line[1024], w1[1024]; FILE *fp = NULL; - int n = 0; + int n = 0; - fp = fopen_ (watertxt, "r"); + fp = fopen_(watertxt, "r"); if (fp == NULL) { - printf ("file not found: %s\n", watertxt); + printf("file not found: %s\n", watertxt); return; } if (waterlist == NULL) { - CREATE (waterlist, struct Waterlist, MAX_MAP_PER_SERVER); + CREATE(waterlist, struct Waterlist, MAX_MAP_PER_SERVER); } - while (fgets (line, 1020, fp) && n < MAX_MAP_PER_SERVER) + while (fgets(line, 1020, fp) && n < MAX_MAP_PER_SERVER) { - int wh, count; + int wh, count; if (line[0] == '/' && line[1] == '/') continue; - if ((count = sscanf (line, "%s%d", w1, &wh)) < 1) + if ((count = sscanf(line, "%s%d", w1, &wh)) < 1) { continue; } - strcpy (waterlist[n].mapname, w1); + strcpy(waterlist[n].mapname, w1); if (count >= 2) waterlist[n].waterheight = wh; else waterlist[n].waterheight = 3; n++; } - fclose_ (fp); + fclose_(fp); } /*========================================== * マップ1枚読み込み *------------------------------------------ */ -static int map_readmap (int m, char *fn, char *alias) +static int map_readmap(int m, char *fn, char *alias) { - int s; - int x, y, xs, ys; + int s; + int x, y, xs, ys; struct gat_1cell { char type; } *p; - int wh; + int wh; size_t size; // read & convert fn - uint8_t *gat = (uint8_t *)grfio_read (fn); + uint8_t *gat = (uint8_t *)grfio_read(fn); if (gat == NULL) return -1; - printf ("\rLoading Maps [%d/%d]: %-50s ", m, map_num, fn); - fflush (stdout); + printf("\rLoading Maps [%d/%d]: %-50s ", m, map_num, fn); + fflush(stdout); map[m].m = m; - xs = map[m].xs = *(short *) (gat); - ys = map[m].ys = *(short *) (gat + 2); - printf ("\n%i %i\n", xs, ys); - map[m].gat = (uint8_t *)calloc (s = map[m].xs * map[m].ys, 1); + xs = map[m].xs = *(short *)(gat); + ys = map[m].ys = *(short *)(gat + 2); + printf("\n%i %i\n", xs, ys); + map[m].gat = (uint8_t *)calloc(s = map[m].xs * map[m].ys, 1); if (map[m].gat == NULL) { - printf ("out of memory : map_readmap gat\n"); - exit (1); + printf("out of memory : map_readmap gat\n"); + exit(1); } map[m].npc_num = 0; map[m].users = 0; - memset (&map[m].flag, 0, sizeof (map[m].flag)); + memset(&map[m].flag, 0, sizeof(map[m].flag)); if (battle_config.pk_mode) map[m].flag.pvp = 1; // make all maps pvp for pk_mode [Valaris] - wh = map_waterheight (map[m].name); + wh = map_waterheight(map[m].name); for (y = 0; y < ys; y++) { - p = (struct gat_1cell *) (gat + y * xs + 4); + p = (struct gat_1cell *)(gat + y * xs + 4); for (x = 0; x < xs; x++) { - /*if(wh!=NO_WATER && p->type==0){ + /*if (wh!=NO_WATER && p->type==0){ * // 水場判定 - * map[m].gat[x+y*xs]=(p->high[0]>wh || p->high[1]>wh || p->high[2]>wh || p->high[3]>wh) ? 3 : 0; + * map[m].gat[x+y*xs]= (p->high[0]>wh || p->high[1]>wh || p->high[2]>wh || p->high[3]>wh) ? 3 : 0; * } else { */ map[m].gat[x + y * xs] = p->type; //} p++; } } - free (gat); + free(gat); map[m].bxs = (xs + BLOCK_SIZE - 1) / BLOCK_SIZE; map[m].bys = (ys + BLOCK_SIZE - 1) / BLOCK_SIZE; size = map[m].bxs * map[m].bys; - CREATE (map[m].block, struct block_list *, size); + CREATE(map[m].block, struct block_list *, size); - CREATE (map[m].block_mob, struct block_list *, size); + CREATE(map[m].block_mob, struct block_list *, size); - CREATE (map[m].block_count, int, size); + CREATE(map[m].block_count, int, size); - CREATE (map[m].block_mob_count, int, size); + CREATE(map[m].block_mob_count, int, size); - strdb_insert (map_db, map[m].name, &map[m]); + strdb_insert(map_db, map[m].name, &map[m]); // printf("%s read done\n",fn); @@ -1718,57 +1717,57 @@ static int map_readmap (int m, char *fn, char *alias) *------------------------------------------ */ static -int map_readallmap (void) +int map_readallmap(void) { - int i, maps_removed = 0; + int i, maps_removed = 0; char fn[256] = ""; // 先に全部のャbプの存在を確認 for (i = 0; i < map_num; i++) { - if (strstr (map[i].name, ".gat") == NULL) + if (strstr(map[i].name, ".gat") == NULL) continue; - sprintf (fn, "data\\%s", map[i].name); + sprintf(fn, "data\\%s", map[i].name); // TODO - remove this, it is the last call to grfio_size, which is deprecated - if (!grfio_size (fn)) + if (!grfio_size(fn)) { - map_delmap (map[i].name); + map_delmap(map[i].name); maps_removed++; } } for (i = 0; i < map_num; i++) { - if (strstr (map[i].name, ".gat") != NULL) + if (strstr(map[i].name, ".gat") != NULL) { - char *p = strstr (map[i].name, ">"); // [MouseJstr] + char *p = strstr(map[i].name, ">"); // [MouseJstr] if (p != NULL) { char alias[64]; *p = '\0'; - strcpy (alias, map[i].name); - strcpy (map[i].name, p + 1); - sprintf (fn, "data\\%s", map[i].name); - if (map_readmap (i, fn, alias) == -1) + strcpy(alias, map[i].name); + strcpy(map[i].name, p + 1); + sprintf(fn, "data\\%s", map[i].name); + if (map_readmap(i, fn, alias) == -1) { - map_delmap (map[i].name); + map_delmap(map[i].name); maps_removed++; } } else { - sprintf (fn, "data\\%s", map[i].name); - if (map_readmap (i, fn, NULL) == -1) + sprintf(fn, "data\\%s", map[i].name); + if (map_readmap(i, fn, NULL) == -1) { - map_delmap (map[i].name); + map_delmap(map[i].name); maps_removed++; } } } } - free (waterlist); - printf ("\rMaps Loaded: %d %60s\n", map_num, ""); - printf ("\rMaps Removed: %d \n", maps_removed); + free(waterlist); + printf("\rMaps Loaded: %d %60s\n", map_num, ""); + printf("\rMaps Removed: %d \n", maps_removed); return 0; } @@ -1777,9 +1776,9 @@ int map_readallmap (void) *------------------------------------------ */ static -int map_addmap (char *mapname) +int map_addmap(char *mapname) { - if (strcasecmp (mapname, "clear") == 0) + if (strcasecmp(mapname, "clear") == 0) { map_num = 0; return 0; @@ -1787,10 +1786,10 @@ int map_addmap (char *mapname) if (map_num >= MAX_MAP_PER_SERVER - 1) { - printf ("too many map\n"); + printf("too many map\n"); return 1; } - memcpy (map[map_num].name, mapname, 24); + memcpy(map[map_num].name, mapname, 24); map_num++; return 0; } @@ -1799,11 +1798,11 @@ int map_addmap (char *mapname) * 読み込むmapを削除する *------------------------------------------ */ -int map_delmap (char *mapname) +int map_delmap(char *mapname) { - int i; + int i; - if (strcasecmp (mapname, "all") == 0) + if (strcasecmp(mapname, "all") == 0) { map_num = 0; return 0; @@ -1811,11 +1810,11 @@ int map_delmap (char *mapname) for (i = 0; i < map_num; i++) { - if (strcmp (map[i].name, mapname) == 0) + if (strcmp(map[i].name, mapname) == 0) { - printf ("Removing map [ %s ] from maplist\n", map[i].name); - memmove (map + i, map + i + 1, - sizeof (map[0]) * (map_num - i - 1)); + printf("Removing map [ %s ] from maplist\n", map[i].name); + memmove(map + i, map + i + 1, + sizeof(map[0]) * (map_num - i - 1)); map_num--; } } @@ -1830,65 +1829,65 @@ FILE *map_logfile = NULL; char *map_logfile_name = NULL; static long map_logfile_index; -static void map_close_logfile (void) +static void map_close_logfile(void) { if (map_logfile) { - char *filenameop_buf = (char*)malloc (strlen (map_logfile_name) + 50); - sprintf (filenameop_buf, "gzip -f %s.%ld", map_logfile_name, + char *filenameop_buf = (char*)malloc(strlen(map_logfile_name) + 50); + sprintf(filenameop_buf, "gzip -f %s.%ld", map_logfile_name, map_logfile_index); - fclose (map_logfile); + fclose(map_logfile); - if (!system (filenameop_buf)) - perror (filenameop_buf); + if (!system(filenameop_buf)) + perror(filenameop_buf); - free (filenameop_buf); + free(filenameop_buf); } } -static void map_start_logfile (long suffix) +static void map_start_logfile(long suffix) { - char *filename_buf = (char*)malloc (strlen (map_logfile_name) + 50); + char *filename_buf = (char*)malloc(strlen(map_logfile_name) + 50); map_logfile_index = suffix >> LOGFILE_SECONDS_PER_CHUNK_SHIFT; - sprintf (filename_buf, "%s.%ld", map_logfile_name, map_logfile_index); - map_logfile = fopen (filename_buf, "w+"); + sprintf(filename_buf, "%s.%ld", map_logfile_name, map_logfile_index); + map_logfile = fopen(filename_buf, "w+"); if (!map_logfile) - perror (map_logfile_name); + perror(map_logfile_name); - free (filename_buf); + free(filename_buf); } -static void map_set_logfile (const char *filename) +static void map_set_logfile(const char *filename) { struct timeval tv; - map_logfile_name = strdup (filename); - gettimeofday (&tv, NULL); + map_logfile_name = strdup(filename); + gettimeofday(&tv, NULL); - map_start_logfile (tv.tv_sec); + map_start_logfile(tv.tv_sec); - MAP_LOG ("log-start v3"); + MAP_LOG("log-start v3"); } -void map_write_log (const char *format, ...) +void map_write_log(const char *format, ...) { struct timeval tv; va_list args; - va_start (args, format); + va_start(args, format); - gettimeofday (&tv, NULL); + gettimeofday(&tv, NULL); if ((tv.tv_sec >> LOGFILE_SECONDS_PER_CHUNK_SHIFT) != map_logfile_index) { - map_close_logfile (); - map_start_logfile (tv.tv_sec); + map_close_logfile(); + map_start_logfile(tv.tv_sec); } - fprintf (map_logfile, "%ld.%06ld ", (long) tv.tv_sec, (long) tv.tv_usec); - vfprintf (map_logfile, format, args); - fputc ('\n', map_logfile); + fprintf(map_logfile, "%ld.%06ld ", (long) tv.tv_sec, (long) tv.tv_usec); + vfprintf(map_logfile, format, args); + fputc('\n', map_logfile); } /*========================================== @@ -1896,157 +1895,156 @@ void map_write_log (const char *format, ...) *------------------------------------------ */ static -int map_config_read (const char *cfgName) +int map_config_read(const char *cfgName) { char line[1024], w1[1024], w2[1024]; FILE *fp; struct hostent *h = NULL; - fp = fopen_ (cfgName, "r"); + fp = fopen_(cfgName, "r"); if (fp == NULL) { - printf ("Map configuration file not found at: %s\n", cfgName); - exit (1); + printf("Map configuration file not found at: %s\n", cfgName); + exit(1); } - while (fgets (line, sizeof (line) - 1, fp)) + while (fgets(line, sizeof(line) - 1, fp)) { if (line[0] == '/' && line[1] == '/') continue; - if (sscanf (line, "%[^:]: %[^\r\n]", w1, w2) == 2) + if (sscanf(line, "%[^:]: %[^\r\n]", w1, w2) == 2) { - if (strcasecmp (w1, "userid") == 0) + if (strcasecmp(w1, "userid") == 0) { - chrif_setuserid (w2); + chrif_setuserid(w2); } - else if (strcasecmp (w1, "passwd") == 0) + else if (strcasecmp(w1, "passwd") == 0) { - chrif_setpasswd (w2); + chrif_setpasswd(w2); } - else if (strcasecmp (w1, "char_ip") == 0) + else if (strcasecmp(w1, "char_ip") == 0) { - h = gethostbyname (w2); + h = gethostbyname(w2); if (h != NULL) { - printf - ("Character server IP address : %s -> %d.%d.%d.%d\n", + printf("Character server IP address : %s -> %d.%d.%d.%d\n", w2, (unsigned char) h->h_addr[0], (unsigned char) h->h_addr[1], (unsigned char) h->h_addr[2], (unsigned char) h->h_addr[3]); - sprintf (w2, "%d.%d.%d.%d", (unsigned char) h->h_addr[0], + sprintf(w2, "%d.%d.%d.%d", (unsigned char) h->h_addr[0], (unsigned char) h->h_addr[1], (unsigned char) h->h_addr[2], (unsigned char) h->h_addr[3]); } - chrif_setip (w2); + chrif_setip(w2); } - else if (strcasecmp (w1, "char_port") == 0) + else if (strcasecmp(w1, "char_port") == 0) { - chrif_setport (atoi (w2)); + chrif_setport(atoi(w2)); } - else if (strcasecmp (w1, "map_ip") == 0) + else if (strcasecmp(w1, "map_ip") == 0) { - h = gethostbyname (w2); + h = gethostbyname(w2); if (h != NULL) { - printf ("Map server IP address : %s -> %d.%d.%d.%d\n", w2, + printf("Map server IP address : %s -> %d.%d.%d.%d\n", w2, (unsigned char) h->h_addr[0], (unsigned char) h->h_addr[1], (unsigned char) h->h_addr[2], (unsigned char) h->h_addr[3]); - sprintf (w2, "%d.%d.%d.%d", (unsigned char) h->h_addr[0], + sprintf(w2, "%d.%d.%d.%d", (unsigned char) h->h_addr[0], (unsigned char) h->h_addr[1], (unsigned char) h->h_addr[2], (unsigned char) h->h_addr[3]); } - clif_setip (w2); + clif_setip(w2); } - else if (strcasecmp (w1, "map_port") == 0) + else if (strcasecmp(w1, "map_port") == 0) { - clif_setport (atoi (w2)); - map_port = (atoi (w2)); + clif_setport(atoi(w2)); + map_port = (atoi(w2)); } - else if (strcasecmp (w1, "water_height") == 0) + else if (strcasecmp(w1, "water_height") == 0) { - map_readwater (w2); + map_readwater(w2); } - else if (strcasecmp (w1, "map") == 0) + else if (strcasecmp(w1, "map") == 0) { - map_addmap (w2); + map_addmap(w2); } - else if (strcasecmp (w1, "delmap") == 0) + else if (strcasecmp(w1, "delmap") == 0) { - map_delmap (w2); + map_delmap(w2); } - else if (strcasecmp (w1, "npc") == 0) + else if (strcasecmp(w1, "npc") == 0) { - npc_addsrcfile (w2); + npc_addsrcfile(w2); } - else if (strcasecmp (w1, "delnpc") == 0) + else if (strcasecmp(w1, "delnpc") == 0) { - npc_delsrcfile (w2); + npc_delsrcfile(w2); } - else if (strcasecmp (w1, "autosave_time") == 0) + else if (strcasecmp(w1, "autosave_time") == 0) { - autosave_interval = atoi (w2) * 1000; + autosave_interval = atoi(w2) * 1000; if (autosave_interval <= 0) autosave_interval = DEFAULT_AUTOSAVE_INTERVAL; } - else if (strcasecmp (w1, "motd_txt") == 0) + else if (strcasecmp(w1, "motd_txt") == 0) { - strcpy (motd_txt, w2); + strcpy(motd_txt, w2); } - else if (strcasecmp (w1, "help_txt") == 0) + else if (strcasecmp(w1, "help_txt") == 0) { - strcpy (help_txt, w2); + strcpy(help_txt, w2); } - else if (strcasecmp (w1, "mapreg_txt") == 0) + else if (strcasecmp(w1, "mapreg_txt") == 0) { - strcpy (mapreg_txt, w2); + strcpy(mapreg_txt, w2); } - else if (strcasecmp (w1, "gm_log") == 0) + else if (strcasecmp(w1, "gm_log") == 0) { - gm_logfile_name = strdup (w2); + gm_logfile_name = strdup(w2); } - else if (strcasecmp (w1, "log_file") == 0) + else if (strcasecmp(w1, "log_file") == 0) { - map_set_logfile (w2); + map_set_logfile(w2); } - else if (strcasecmp (w1, "import") == 0) + else if (strcasecmp(w1, "import") == 0) { - map_config_read (w2); + map_config_read(w2); } } } - fclose_ (fp); + fclose_(fp); return 0; } static -void cleanup_sub (struct block_list *bl, va_list ap) +void cleanup_sub(struct block_list *bl, va_list ap) { - nullpo_retv (bl); + nullpo_retv(bl); switch (bl->type) { case BL_PC: - map_delblock (bl); // There is something better... + map_delblock(bl); // There is something better... break; case BL_NPC: - npc_delete ((struct npc_data *) bl); + npc_delete((struct npc_data *) bl); break; case BL_MOB: - mob_delete ((struct mob_data *) bl); + mob_delete((struct mob_data *) bl); break; case BL_ITEM: - map_clearflooritem (bl->id); + map_clearflooritem(bl->id); break; case BL_SKILL: - skill_delunit ((struct skill_unit *) bl); + skill_delunit((struct skill_unit *) bl); break; case BL_SPELL: - spell_free_invocation ((struct invocation *) bl); + spell_free_invocation((struct invocation *) bl); break; } } @@ -2055,55 +2053,55 @@ void cleanup_sub (struct block_list *bl, va_list ap) * map鯖終了時処理 *------------------------------------------ */ -void term_func (void) +void term_func(void) { - map_close_logfile (); + map_close_logfile(); - int map_id, i; + int map_id, i; for (map_id = 0; map_id < map_num; map_id++) { if (map[map_id].m) - map_foreachinarea (cleanup_sub, map_id, 0, 0, map[map_id].xs, + map_foreachinarea(cleanup_sub, map_id, 0, 0, map[map_id].xs, map[map_id].ys, 0, 0); } for (i = 0; i < fd_max; i++) - delete_session (i); + delete_session(i); - map_removenpc (); + map_removenpc(); - numdb_final (id_db, NULL); - strdb_final (map_db, NULL); - strdb_final (nick_db, NULL); - numdb_final (charid_db, NULL); + numdb_final(id_db, NULL); + strdb_final(map_db, NULL); + strdb_final(nick_db, NULL); + numdb_final(charid_db, NULL); for (i = 0; i <= map_num; i++) { if (map[i].gat) - free (map[i].gat); + free(map[i].gat); if (map[i].block) - free (map[i].block); + free(map[i].block); if (map[i].block_mob) - free (map[i].block_mob); + free(map[i].block_mob); if (map[i].block_count) - free (map[i].block_count); + free(map[i].block_count); if (map[i].block_mob_count) - free (map[i].block_mob_count); + free(map[i].block_mob_count); } - do_final_script (); - do_final_itemdb (); - do_final_storage (); + do_final_script(); + do_final_itemdb(); + do_final_storage(); } /// --help was passed // FIXME this should produce output -void map_helpscreen (void) +void map_helpscreen(void) { - exit (1); + exit(1); } -int compare_item (struct item *a, struct item *b) +int compare_item(struct item *a, struct item *b) { return ((a->nameid == b->nameid) && (a->identify == b->identify) && @@ -2118,9 +2116,9 @@ int compare_item (struct item *a, struct item *b) * Map-Server Init and Command-line Arguments [Valaris] *------------------------------------------------------ */ -int do_init (int argc, char *argv[]) +int do_init(int argc, char *argv[]) { - int i; + int i; const char *MAP_CONF_NAME = "conf/map_athena.conf"; const char *BATTLE_CONF_FILENAME = "conf/battle_athena.conf"; @@ -2131,62 +2129,61 @@ int do_init (int argc, char *argv[]) for (i = 1; i < argc; i++) { - if (strcmp (argv[i], "--help") == 0 || strcmp (argv[i], "--h") == 0 - || strcmp (argv[i], "--?") == 0 || strcmp (argv[i], "/?") == 0) - map_helpscreen (); - else if (strcmp (argv[i], "--map_config") == 0) + if (strcmp(argv[i], "--help") == 0 || strcmp(argv[i], "--h") == 0 + || strcmp(argv[i], "--?") == 0 || strcmp(argv[i], "/?") == 0) + map_helpscreen(); + else if (strcmp(argv[i], "--map_config") == 0) MAP_CONF_NAME = argv[i + 1]; - else if (strcmp (argv[i], "--battle_config") == 0) + else if (strcmp(argv[i], "--battle_config") == 0) BATTLE_CONF_FILENAME = argv[i + 1]; - else if (strcmp (argv[i], "--atcommand_config") == 0) + else if (strcmp(argv[i], "--atcommand_config") == 0) ATCOMMAND_CONF_FILENAME = argv[i + 1]; - else if (strcmp (argv[i], "--script_config") == 0) + else if (strcmp(argv[i], "--script_config") == 0) SCRIPT_CONF_NAME = argv[i + 1]; - else if (strcmp (argv[i], "--msg_config") == 0) + else if (strcmp(argv[i], "--msg_config") == 0) MSG_CONF_NAME = argv[i + 1]; } - map_config_read (MAP_CONF_NAME); - battle_config_read (BATTLE_CONF_FILENAME); - atcommand_config_read (ATCOMMAND_CONF_FILENAME); - script_config_read (SCRIPT_CONF_NAME); + map_config_read(MAP_CONF_NAME); + battle_config_read(BATTLE_CONF_FILENAME); + atcommand_config_read(ATCOMMAND_CONF_FILENAME); + script_config_read(SCRIPT_CONF_NAME); - id_db = numdb_init (); - map_db = strdb_init (16); - nick_db = strdb_init (24); - charid_db = numdb_init (); + id_db = numdb_init(); + map_db = strdb_init(16); + nick_db = strdb_init(24); + charid_db = numdb_init(); - map_readallmap (); + map_readallmap(); // add_timer_func_list (map_clearflooritem_timer, "map_clearflooritem_timer"); do_init_chrif (); do_init_clif (); - do_init_itemdb (); - do_init_mob (); // npcの初期化時内でmob_spawnして、mob_dbを参照するのでinit_npcより先 - do_init_script (); - do_init_npc (); - do_init_pc (); - do_init_party (); - do_init_storage (); - do_init_skill (); - do_init_magic (); - - npc_event_do_oninit (); // npcのOnInitイベント実行 + do_init_itemdb(); + do_init_mob(); // npcの初期化時内でmob_spawnして、mob_dbを参照するのでinit_npcより先 + do_init_script(); + do_init_npc(); + do_init_pc(); + do_init_party(); + do_init_storage(); + do_init_skill(); + do_init_magic(); + + npc_event_do_oninit(); // npcのOnInitイベント実行 if (battle_config.pk_mode == 1) - printf ("The server is running in \033[1;31mPK Mode\033[0m.\n"); + printf("The server is running in \033[1;31mPK Mode\033[0m.\n"); - printf - ("The map-server is \033[1;32mready\033[0m (Server is listening on the port %d).\n\n", + printf("The map-server is \033[1;32mready\033[0m (Server is listening on the port %d).\n\n", map_port); return 0; } -int map_scriptcont (struct map_session_data *sd, int id) +int map_scriptcont(struct map_session_data *sd, int id) { - struct block_list *bl = map_id2bl (id); + struct block_list *bl = map_id2bl(id); if (!bl) return 0; @@ -2194,9 +2191,9 @@ int map_scriptcont (struct map_session_data *sd, int id) switch (bl->type) { case BL_NPC: - return npc_scriptcont (sd, id); + return npc_scriptcont(sd, id); case BL_SPELL: - spell_execute_script ((struct invocation *) bl); + spell_execute_script((struct invocation *) bl); break; } |