#include "sysdep.h" #include "conf.h" #include "structs.h" #include "interpreter.h" #include "utils.h" const char *deity_abbrevs[] = { "Aet", "Cor", "Lyt", "Pal", "Ero", "Cai", "Mar", "Pos", "Lel", "Cha", "Ele", "Nem", "Dur", "Ran", "Inc", "\n" }; const char *pc_deity_types[] = { "Aetos", "Corgus", "Lythern", "Pallas", "Eros", "Cailia", "Marbin", "Poseidon", "Lelu", "Chaos", "Elestra", "Nemonica", "Durn", "Ranus", "Incubus", "\n" }; const char **deity_types = pc_deity_types; /* The menu for choosing a deity in interpreter.c: */ const char *deity_menu = "\r\n" "&YSelect a deity to worship&n&R:&n\r\n" "\r\n" " Good Neutral Evil&n\r\n" " &g-&y-&g-&y- &g-&y-&g-&y-&g-&y-&g- &g-&y-&g-&y-&n\r\n" " &c[&na&c]&n Aetos &c[&nf&c]&n Cailia &c[&nk&c]&n Elestra\r\n" " &c[&nb&c]&n Corgus &c[&ng&c]&n Marbin &c[&nl&c]&n Nemonica\r\n" " &c[&nc&c]&n Lythern &c[&nh&c]&n Poseidon &c[&nm&c]&n Durn\r\n" " &c[&nd&c]&n Pallas &c[&ni&c]&n Lelu &c[&nn&c]&n Ranus\r\n" " &c[&ne&c]&n Eros &c[&nj&c]&n Chaos &c[&no&c]&n Incubus\r\n"; int parse_deity (char arg) { arg = LOWER (arg); switch (arg) { case 'a': return DEITY_AETOS; break; case 'b': return DEITY_CORGUS; break; case 'c': return DEITY_LYTHERN; break; case 'd': return DEITY_PALLAS; break; case 'e': return DEITY_EROS; break; case 'f': return DEITY_CAILIA; break; case 'g': return DEITY_MARBIN; break; case 'h': return DEITY_POSEIDON; break; case 'i': return DEITY_LELU; break; case 'j': return DEITY_CHAOS; break; case 'k': return DEITY_ELESTRA; break; case 'l': return DEITY_NEMONICA; break; case 'm': return DEITY_DURN; break; case 'n': return DEITY_RANUS; break; case 'o': return DEITY_INCUBUS; break; default: return DEITY_UNDEFINED; break; } } long find_deity_bitvector (char arg) { arg = LOWER (arg); switch (arg) { case 'a': return (1 << 0); break; case 'b': return (1 << 1); break; case 'c': return (1 << 2); break; case 'd': return (1 << 3); break; case 'e': return (1 << 4); break; case 'f': return (1 << 5); break; case 'g': return (1 << 6); break; case 'h': return (1 << 7); break; case 'i': return (1 << 8); break; case 'j': return (1 << 9); break; case 'k': return (1 << 10); break; case 'l': return (1 << 11); break; case 'm': return (1 << 12); break; case 'n': return (1 << 13); break; case 'o': return (1 << 14); break; default: return 0; break; } }