65 lines
2.1 KiB
Plaintext
65 lines
2.1 KiB
Plaintext
|
|
BEGIN {
|
|
# Read the array data from living.c
|
|
while ((getline buff < living_c) == 1) {
|
|
if (buff ~ /con_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) con[i]=array[i];
|
|
}
|
|
if (buff ~ /sp_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) sp[i]=array[i];
|
|
}
|
|
if (buff ~ /dex_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) ac[i]=-1*array[i];
|
|
}
|
|
if (buff ~ /dam_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) dam[i]=array[i];
|
|
}
|
|
if (buff ~ /float cha_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) {
|
|
diff = (array[i] - 1)/(array[i] + 1);
|
|
buy[i] = diff + 1;
|
|
sell[i] = 1 - diff;
|
|
}
|
|
}
|
|
if (buff ~ /speed_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) speed[i]= 1 + array[i];
|
|
}
|
|
if (buff ~ /thaco_bonus\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) thaco[i]=array[i];
|
|
}
|
|
if (buff ~ /learn_spell\[/) {
|
|
get_values(buff);
|
|
for(i=1;i<=30;i++) learn[i]=array[i];
|
|
break;
|
|
}
|
|
}
|
|
# print it out
|
|
for(i=1; i<=30 ; i++) {
|
|
printf("%d & %s & %s & %s & %s & %s & %s & %s & %s & %6.3f/%6.3f \\\\ \n",i,
|
|
con[i],sp[i],ac[i],dam[i],thaco[i],"",speed[i],learn[i],buy[i],sell[i]);
|
|
}
|
|
|
|
close(living_c);
|
|
}
|
|
|
|
function get_values (buff) {
|
|
tind = 0;
|
|
while (1) {
|
|
getline buff < living_c;
|
|
# if(lev==1) getline buff < living_c;
|
|
if (buff ~ /};/)
|
|
break;
|
|
gsub("[ \t]*\"", "", buff);
|
|
nr = split(buff, val, ",");
|
|
for (i = 1; i<=nr ; i++)
|
|
if(val[i]!="") array[tind++]=val[i];
|
|
}
|
|
}
|