All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
aion.h
Go to the documentation of this file.
1 /*
2  * aion.h - APme: Aion Automatic Abyss Point Tracker
3  *
4  * Copyright (C) 2012 Mitja Horvat <pinkfluid@gmail.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or (at
9  * your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along
17  * with this program; if not, write to the Free Software Foundation, Inc.,
18  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
19  */
20 
21 #ifndef AION_H_INCLUDED
22 #define AION_H_INCLUDED
23 
32 #include "chatlog.h"
33 
37 #define AION_NAME_DEFAULT "You"
38 #define AION_NAME_FR_DEFAULT "Vous"
39 #define AION_NAME_DE_DEFAULT "Ihr"
44 #define AION_CHAT_SZ CHATLOG_CHAT_SZ
45 
48 #define AION_NAME_SZ CHATLOG_NAME_SZ
49 
51 #define AION_SYSOVR_FILE "system.ovr"
52 
54 #define AION_SYSOVR_CHATLOG "g_chatlog"
55 
57 #define AION_CLIPBOARD_MAX 255
58 
60 #define AION_APLOOT_FORMAT_SHORT "/ROLL (@ap AP):/ @name/" "/" "/ | INV FULL:/ @name/"
61 
62 #define AION_APLOOT_FORMAT_MED "/ROLL (@ap AP):/ @name/ | PASS/ @name/ | INV FULL:/ @name/"
63 
64 #define AION_APLOOT_FORMAT_LONG "/ROLL:/ @name[@ap]/ | PASS:/ @name[@ap]/ | INV FULL:/ @name/"
65 
66 #define AION_APLOOT_FORMAT_DEFAULT AION_APLOOT_FORMAT_SHORT
67 extern bool aion_init(void);
68 extern bool aion_clipboard_set(char *text);
69 
70 extern bool aion_player_is_self(char *charname);
71 extern bool aion_group_join(char *charname);
72 extern bool aion_group_leave(char *charname);
73 extern void aion_group_disband(void);
74 extern void aion_group_loot(char *charname, uint32_t itemid);
75 
76 extern void aion_apvalue_reset(void);
77 extern bool aion_group_apvalue_update(char *charname, uint32_t apval);
78 extern bool aion_group_apvalue_set(char *charname, uint32_t apval);
79 extern uint32_t aion_group_apvalue_lowest(void);
80 
81 extern bool aion_invfull_set(char *charname, bool isfull);
82 extern bool aion_invfull_get(char *charname);
83 extern void aion_invfull_excl_set(bool enable);
84 extern bool aion_invfull_excl_get(void);
85 extern void aion_invfull_clear(void);
86 
87 extern void aion_aplimit_set(uint32_t aplimit);
88 extern uint32_t aion_aplimit_get(void);
89 
90 extern bool aion_player_chat_cache(char *charname, char *chat);
91 extern bool aion_player_chat_get(char *charname, int msgnum, char *dst, size_t dst_sz);
92 extern void aion_player_name_set(char *charname);
93 
102 {
103  char *agi_name;
104  uint32_t agi_apvalue;
105  bool agi_invfull;
108 };
109 
110 extern void aion_group_first(struct aion_group_iter *iter);
111 extern void aion_group_next(struct aion_group_iter *iter);
112 extern bool aion_group_end(struct aion_group_iter *iter);
113 
115 #define LANG_ELYOS 1
116 
117 #define LANG_ASMODIAN 2
118 
119 #define LANG_KRALL 3
120 
121 #define LANG_MAU 4
122 
123 #define LANG_BALAUR 5
124 
125 extern void aion_translate(char *txt, uint32_t language);
126 extern void aion_rtranslate(char *txt, uint32_t language);
127 
128 extern bool aion_aploot_stats(char *stats, size_t stats_sz);
129 extern bool aion_aploot_rights(char *stats, size_t stats_sz);
130 extern bool aion_aploot_fmt_parse(char *fmt);
131 extern bool aion_aploot_fmt_set(char *fmt);
132 
133 extern char* aion_default_install_path(void);
134 extern bool aion_chatlog_is_enabled(bool *isenabled);
135 extern bool aion_chatlog_enable(void);
136 
140 #endif /* AION_H_INCLUDED */
141