1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
m4_define(`__WEAPON_CHOOSE_STYLE', `m4_define(`__WEAPON',m4_defn(`$1'))m4_undefine(`$1')')m4_dnl
m4_define(`__WEAPON_ERLANG_STYLE',`from_id (`$1') ->
#weapon
{
id = $1,
name = <<"$2">>,
range_type = $3,
range_mod = $4,
damage_type = $5,
damage_mod = $6,
coef = $7
};
')m4_dnl
m4_define(`__WEAPON_RANGE_TYPE_TO_CHAR',m4_ifelse($1,melee,m,$1,ranged,r))m4_dnl
m4_define(`__WEAPON_RANGE_MOD_TO_CHAR',m4_ifelse($1,long,l,$1,short,s))m4_dnl
m4_define(`__WEAPON_DAMAGE_TYPE_TO_CHAR',m4_ifelse($1,slash,s,$1,pierce,p,$1,blunt,b))m4_dnl
m4_define(`__WEAPON_DAMAGE_MOD_TO_CHAR',m4_ifelse($1,heavy,h,$1,light,l))m4_dnl
m4_define(`__WEAPON_JSON_STYLE',` {
"msg": "add_weapon",
"id": $1,
"nam": "$2",
"rt": "__WEAPON_RANGE_TYPE_TO_CHAR($3)",
"rm": "__WEAPON_RANGE_MOD_TO_CHAR($4)",
"dt": "__WEAPON_DAMAGE_TYPE_TO_CHAR($5)",
"dm": "__WEAPON_DAMAGE_MOD_TO_CHAR($6)",
"cf": $7
},
')m4_dnl
m4_define(`__WEAPON_USE_ERLANG_STYLE',`__WEAPON_CHOOSE_STYLE(`__WEAPON_ERLANG_STYLE')')m4_dnl
m4_define(`__WEAPON_USE_JSON_STYLE',`__WEAPON_CHOOSE_STYLE(`__WEAPON_JSON_STYLE')')m4_dnl
|