?? anongame_infos.c
字號:
if (anongame_infos->anongame_infos_DESC_list) { LIST_TRAVERSE(anongame_infos->anongame_infos_DESC_list, curr) { if (!(entry = elem_get_data(curr))) eventlog(eventlog_level_error, __FUNCTION__, "found NULL entry in list"); else { anongame_infos_DESC_destroy(entry); } list_remove_elem(anongame_infos->anongame_infos_DESC_list, &curr); } list_destroy(anongame_infos->anongame_infos_DESC_list); anongame_infos->anongame_infos_DESC_list = NULL; } anongame_infos_DESC_destroy(anongame_infos->anongame_infos_DESC); anongame_infos_URL_destroy(anongame_infos->anongame_infos_URL); anongame_infos_data_destroy(anongame_infos->anongame_infos_data_war3, anongame_infos->anongame_infos_data_lang_war3); anongame_infos_data_destroy(anongame_infos->anongame_infos_data_w3xp, anongame_infos->anongame_infos_data_lang_w3xp); xfree((void *) anongame_infos); return 0;}static int anongame_infos_set_str(char **dst, char *src, char *errstr){ char *temp; if (!(src)) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL %s", errstr); return -1; } temp = xstrdup(src); if (*dst) xfree((void *) *dst); *dst = temp; return 0;}static int anongame_infos_URL_set_URL(int member, char *URL){ char **anongame_infos_URLs; if (!(anongame_infos_URLs = anongame_infos->anongame_infos_URL)) { eventlog(eventlog_level_error, __FUNCTION__, "detected NULL anongame_infos_URL"); return -1; } return anongame_infos_set_str(&anongame_infos_URLs[member], URL, "URL");}extern char *anongame_infos_URL_get_URL(int member){ char **anongame_infos_URLs; if (!(anongame_infos_URLs = anongame_infos->anongame_infos_URL)) return NULL; else return anongame_infos_URLs[member];}static int anongame_infos_DESC_set_DESC(t_anongame_infos_DESC * anongame_infos_DESC, int member, char *DESC){ char ** descs; if (!(anongame_infos_DESC)) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL anongame_infos_DESC"); return -1; } if (!(descs = anongame_infos_DESC->descs)) { eventlog(eventlog_level_error, __FUNCTION__, "anongame_infos_DESC had NULL descs"); return -1; } return anongame_infos_set_str(&descs[member], DESC, "DESC");}static t_anongame_infos_DESC *anongame_infos_get_anongame_infos_DESC_by_langID(t_anongame_infos * anongame_infos, char *langID){ t_elem *curr; t_anongame_infos_DESC *entry; if (!(anongame_infos)) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL anongame_infos"); return NULL; } if (!(langID)) return anongame_infos->anongame_infos_DESC; if (!(anongame_infos->anongame_infos_DESC_list)) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL anongame_infos_DESC_list - default values"); return anongame_infos->anongame_infos_DESC; } LIST_TRAVERSE(anongame_infos->anongame_infos_DESC_list, curr) { if (!(entry = (t_anongame_infos_DESC *) elem_get_data(curr))) eventlog(eventlog_level_error, __FUNCTION__, "found NULL entry in list"); else { if ((entry->langID) && (strcmp(entry->langID, langID) == 0)) return entry; } } return anongame_infos->anongame_infos_DESC;}extern char *anongame_infos_DESC_get_DESC(char *langID, int member){ char *result; t_anongame_infos_DESC * DESC; if ((DESC = anongame_infos_get_anongame_infos_DESC_by_langID(anongame_infos, langID))) if ((DESC->descs) && (result = DESC->descs[member])) return result; if ((DESC = anongame_infos->anongame_infos_DESC)) if ((DESC->descs) && (result = DESC->descs[member])) return result; return NULL;}/**********/extern char *anongame_infos_get_short_desc(char *langID, int queue){ int member = 0; switch (queue) { case ANONGAME_TYPE_1V1: member = gametype_1v1_short; break; case ANONGAME_TYPE_2V2: member = gametype_2v2_short; break; case ANONGAME_TYPE_3V3: member = gametype_3v3_short; break; case ANONGAME_TYPE_4V4: member = gametype_4v4_short; break; case ANONGAME_TYPE_5V5: member = gametype_5v5_short; break; case ANONGAME_TYPE_6V6: member = gametype_6v6_short; break; case ANONGAME_TYPE_2V2V2: member = gametype_2v2v2_short; break; case ANONGAME_TYPE_3V3V3: member = gametype_3v3v3_short; break; case ANONGAME_TYPE_4V4V4: member = gametype_4v4v4_short; break; case ANONGAME_TYPE_2V2V2V2: member = gametype_2v2v2v2_short; break; case ANONGAME_TYPE_3V3V3V3: member = gametype_3v3v3v3_short; break; case ANONGAME_TYPE_SMALL_FFA: member = gametype_sffa_short; break; case ANONGAME_TYPE_TEAM_FFA: member = gametype_tffa_short; break; case ANONGAME_TYPE_AT_2V2: member = gametype_2v2_short; break; case ANONGAME_TYPE_AT_3V3: member = gametype_3v3_short; break; case ANONGAME_TYPE_AT_4V4: member = gametype_4v4_short; break; case ANONGAME_TYPE_AT_2V2V2: member = gametype_2v2v2_short; break; case ANONGAME_TYPE_TY: return tournament_get_format(); default: eventlog(eventlog_level_error, __FUNCTION__, "invalid queue (%d)", queue); return NULL; } return anongame_infos_DESC_get_DESC(langID,member);}extern char *anongame_infos_get_long_desc(char *langID, int queue){ int member = 0; switch (queue) { case ANONGAME_TYPE_1V1: member = gametype_1v1_long; break; case ANONGAME_TYPE_2V2: member = gametype_2v2_long; break; case ANONGAME_TYPE_3V3: member = gametype_3v3_long; break; case ANONGAME_TYPE_4V4: member = gametype_4v4_long; break; case ANONGAME_TYPE_5V5: member = gametype_5v5_long; break; case ANONGAME_TYPE_6V6: member = gametype_6v6_long; break; case ANONGAME_TYPE_2V2V2: member = gametype_2v2v2_long; break; case ANONGAME_TYPE_3V3V3: member = gametype_3v3v3_long; break; case ANONGAME_TYPE_4V4V4: member = gametype_4v4v4_long; break; case ANONGAME_TYPE_2V2V2V2: member = gametype_2v2v2v2_long; break; case ANONGAME_TYPE_3V3V3V3: member = gametype_3v3v3v3_long; break; case ANONGAME_TYPE_SMALL_FFA: member = gametype_sffa_long; break; case ANONGAME_TYPE_TEAM_FFA: member = gametype_tffa_long; break; case ANONGAME_TYPE_AT_2V2: member = gametype_2v2_long; break; case ANONGAME_TYPE_AT_3V3: member = gametype_3v3_long; break; case ANONGAME_TYPE_AT_4V4: member = gametype_4v4_long; break; case ANONGAME_TYPE_AT_2V2V2: member = gametype_2v2v2_long; break; case ANONGAME_TYPE_TY: return tournament_get_sponsor();; default: eventlog(eventlog_level_error, __FUNCTION__, "invalid queue (%d)", queue); return NULL; } return anongame_infos_DESC_get_DESC(langID,member);}/**********/static int anongame_infos_THUMBSDOWN_set_THUMBSDOWN(char * anongame_infos_THUMBSDOWN, int member, char value){ if (!anongame_infos_THUMBSDOWN) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL anongame_infos_THUMBSDOWN"); return -1; } anongame_infos_THUMBSDOWN[member] = value; return 0;}/**********/extern char anongame_infos_get_thumbsdown(int queue){ int member = 0; switch (queue) { case ANONGAME_TYPE_1V1: member = PG_1v1; break; case ANONGAME_TYPE_2V2: member = PG_2v2; break; case ANONGAME_TYPE_3V3: member = PG_3v3; break; case ANONGAME_TYPE_4V4: member = PG_4v4; break; case ANONGAME_TYPE_5V5: member = PG_5v5; break; case ANONGAME_TYPE_6V6: member = PG_6v6; break; case ANONGAME_TYPE_2V2V2: member = PG_2v2v2; break; case ANONGAME_TYPE_3V3V3: member = PG_3v3v3; break; case ANONGAME_TYPE_4V4V4: member = PG_4v4v4; break; case ANONGAME_TYPE_2V2V2V2: member = PG_2v2v2v2; break; case ANONGAME_TYPE_3V3V3V3: member = PG_3v3v3v3; break; case ANONGAME_TYPE_SMALL_FFA: member = PG_ffa; break; case ANONGAME_TYPE_TEAM_FFA: member = AT_ffa; break; case ANONGAME_TYPE_AT_2V2: member = AT_2v2; break; case ANONGAME_TYPE_AT_3V3: member = AT_3v3; break; case ANONGAME_TYPE_AT_4V4: member = AT_4v4; break; case ANONGAME_TYPE_AT_2V2V2: member = AT_2v2v2; break; case ANONGAME_TYPE_TY: return tournament_get_thumbs_down(); default: eventlog(eventlog_level_error, __FUNCTION__, "invalid queue (%d)", queue); return 1; } return anongame_infos->anongame_infos_THUMBSDOWN[member];}/**********/static int anongame_infos_ICON_REQ_set_REQ(t_anongame_infos * anongame_infos, int member, int value){ int * anongame_infos_ICON_REQ; if (!anongame_infos) { eventlog(eventlog_level_error, __FUNCTION__, "got NULL anongame_infos"); return -1; } anongame_infos_ICON_REQ = anongame_infos->anongame_infos_ICON_REQ; anongame_infos_ICON_REQ[member] = value; return 0;}extern short anongame_infos_get_ICON_REQ(int Level, t_clienttag clienttag){ switch (clienttag) { case CLIENTTAG_WARCRAFT3_UINT: switch (Level) { case 0: return 0; case 1: return anongame_infos->anongame_infos_ICON_REQ[ICON_REQ_WAR3_Level1]; case 2: return anongame_infos->anongame_infos_ICON_REQ[ICON_REQ_WAR3_Level2]; case 3: return anongame_infos->anongame_infos_ICON_REQ[ICON_REQ_WAR3_Level3]; case 4: return anongame_infos->anongame_infos_ICON_REQ[ICON_REQ_WAR3_Level4]; default:
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -