Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| //::///////////////////////////////////////////////
 | |
| //:: Blood Magus 
 | |
| //:: prc_bloodmagus.nss
 | |
| //:://////////////////////////////////////////////
 | |
| //:: Check to see which Blood Magus feats a creature
 | |
| //:: has and apply the appropriate bonuses.
 | |
| //:://////////////////////////////////////////////
 | |
| //:: Created By: Stratovarius
 | |
| //:: Created On: Sept 3, 2005
 | |
| //:://////////////////////////////////////////////
 | |
| 
 | |
| #include "prc_alterations"
 | |
| 
 | |
| /// Class level to Conc /////////
 | |
| void DurableCasting(object oPC, object oSkin, int nBlood)
 | |
| {
 | |
| 
 | |
|    if(GetLocalInt(oSkin, "DurableCasting") == nBlood) return;
 | |
| 
 | |
|     SetCompositeBonus(oSkin, "DurableCasting", nBlood, ITEM_PROPERTY_SKILL_BONUS, SKILL_CONCENTRATION);
 | |
| }
 | |
| 
 | |
| void Infusion(object oPC, object oSkin, int iLevel)
 | |
| {
 | |
|     string sFlag = "BloodMagusInfusion";
 | |
| 
 | |
|     if(GetLocalInt(oSkin, sFlag) == iLevel) return;
 | |
| 
 | |
|     SetCompositeBonus(oSkin, sFlag, iLevel, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CON);
 | |
|     SetLocalInt(oSkin, sFlag, iLevel);
 | |
| }
 | |
| 
 | |
| void ThickerThanWater(object oPC, object oSkin)
 | |
| {
 | |
|     if(GetLocalInt(oSkin, "ThickerThanWater") == TRUE) return;
 | |
| 
 | |
|     AddItemProperty(DURATION_TYPE_PERMANENT, ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_PIERCING, IP_CONST_DAMAGERESIST_1), oSkin);
 | |
|     AddItemProperty(DURATION_TYPE_PERMANENT, ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_SLASHING, IP_CONST_DAMAGERESIST_1), oSkin);
 | |
|     SetLocalInt(oSkin, "ThickerThanWater", TRUE);
 | |
| }
 | |
| 
 | |
| void main()
 | |
| {
 | |
|     object oPC = OBJECT_SELF;
 | |
|     object oSkin = GetPCSkin(oPC);
 | |
|     int nBlood = GetLevelByClass(CLASS_TYPE_BLOOD_MAGUS, oPC);
 | |
| 
 | |
|     if(nBlood >= 1) DurableCasting(oPC, oSkin, nBlood);
 | |
|     if(nBlood >= 7) ThickerThanWater(oPC, oSkin);
 | |
|     if(nBlood >= 9) Infusion(oPC, oSkin, 2);
 | |
| }
 |