This is a really simple code structure.
First, put:
	Code:
		
                int16	rune;
	void	SetRune(int16 amount) {rune = amount;}
	int16	GetRune() {return rune;}
 into mob.h
Then:
into Mob::Mob in mob.cpp
Then, put this into ChangeHP() in attack.cpp:
	Code:
		int16 ramt = GetRune();
	if (ramt > 0 && amount < 0)
	{
		if (amount + ramt <= 0)
		{
			amount += ramt;
                       ramt = 0;
		}
		else
		{
			ramt += amount;
			amount = 0;
		}
		if (ramt == 0)
			this->BuffFadeByEffect(SE_Rune);
		SetRune(ramt);
	}
 And this under both Damage functions in attack.cpp:
	Code:
		int16 ramt = GetRune();
	if (ramt > 0 && damage > 0)
	{
		if (damage > ramt)
		{
			damage -= ramt;
                        ramt = 0;
		}
		else
		{
			ramt -= damage;
			damage = -6;
		}
		if (ramt == 0)
			this->BuffFadeByEffect(SE_Rune);
		SetRune(ramt);
	}
 Finally, this under SE_Rune in spells.cpp:
	Code:
	SetRune(CalcSpellValue(spells[spell_id].formula[i], spells[spell_id].base[i], spells[spell_id].max[i], caster_level));
 And you're done!