In path: ../src/map
In skill.h
Within struct s_skill_db { Find:
int unit_flag;
After ADD:
int pneumaIgnore;
In skill.c
Within function bool static bool skill_parse_row_skilldb(char* split[], int columns, int current)
Find:
safestrncpy(skill_db[i].desc, trim(split[16]), sizeof(skill_db[i].desc));
After Add:
if(split[17] && atoi(split[17]))
skill_db[i].pneumaIgnore = 1;
else
skill_db[i].pneumaIgnore = 0;
Within function static void skill_readdb(void)
Find:
sv_readdb(db_path, DBPATH"skill_db.txt" , ',', 17, 17, MAX_SKILL_DB, skill_parse_row_skilldb);
Replace with:
sv_readdb(db_path, DBPATH"skill_db.txt" , ',', 17, 18, MAX_SKILL_DB, skill_parse_row_skilldb);
In battle.c
Find:
if( sc->data[sC_PNEUMA] && (flag&(BF_MAGIC|BF_LONG)) == BF_LONG || sc->data[sC__MANHOLE] ) {
Before ADD:
if(!skill_db[skill_num].pneumaIgnore)
In path: ../db/re OR ../db/pre-re (depending on which version you're using).
In file:skill_db.txt
Go to the skill you want Pneuma to be ignored and add a comma and number 1 like this:
To:
It's optional to put 0 as any skill that has not the last value will be filled with 0.