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.
		
			
				
	
	
		
			148 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			148 lines
		
	
	
		
			5.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| //::///////////////////////////////////////////////
 | ||
| //:: Name           Wargird's Armor maintain script
 | ||
| //:: FileName       wol_m_wargirds
 | ||
| //:://////////////////////////////////////////////
 | ||
| /*
 | ||
| LEGACY ITEM PENALTIES (These do not stack. Highest takes precedence).
 | ||
| Attack Penalty: -1 at 6th, -2 at 12th, -3 at 18th
 | ||
| Will Save Penalty: -1 at 7th, -2 at 9th, -3 at 15th, -4 at 20th
 | ||
| Hit Point Penalty: -2 at 7th, -4 at 8th, -6 at 10th, -8 at 14th, -10 at 16th
 | ||
|   
 | ||
| LEGACY ITEM BONUSES
 | ||
| 6th - +2 Breastplate
 | ||
| 9th - +3 Breastplate
 | ||
| 13th - +4 Breastplate
 | ||
| 17th - +5 Breastplate
 | ||
| 19th - +5 Breastplate of Fortification
 | ||
| 
 | ||
| LEGACY ITEM ABILITIES
 | ||
| Easy Movement (Su): Beginning at 5th level, Wargird’s Armor is treated as light armor for any purpose related to your movement. 
 | ||
| Warrior’s Surge (Su): At 7th level and higher, once per day when a melee attack would reduce you to 0 or fewer hit points, you immediately gain a +4 bonus to Strength and Constitution for 5 rounds. This ability activates without an action on your part—you have no control over this feature. 
 | ||
| Fast Movement (Su): At 10th level, you gain a 5-foot enhancement bonus to your base land speed. 
 | ||
| Haste (Sp): Starting at 16th level, five times per day as a swift action, you can use haste as the spell. Caster level 10th. 
 | ||
| Resistance to Cold (Su): At 18th level, you gain resistance to cold 20. 
 | ||
| Stoneskin (Sp): At 20th level and higher, once per day on command, you can use stoneskin as the spell. Caster level 15th. 
 | ||
| */
 | ||
| 
 | ||
| void WarriorsSurge(object oPC)
 | ||
| {
 | ||
|     if (10 >= GetCurrentHitPoints(oPC) && !GetLocalInt(oPC, "WarriorsSurgeUse"))
 | ||
|     {
 | ||
|         effect eLink = EffectLinkEffects(EffectAbilityIncrease(ABILITY_STRENGTH, 4), EffectAbilityIncrease(ABILITY_CONSTITUTION, 4));
 | ||
|         ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eLink), oPC, 30.0);
 | ||
|         SetLocalInt(oPC, "WarriorsSurgeUse", TRUE);
 | ||
|     }
 | ||
|     DelayCommand(0.25, WarriorsSurge(oPC));
 | ||
| }
 | ||
| 
 | ||
| #include "prc_inc_template"
 | ||
| 
 | ||
| void main()
 | ||
| {
 | ||
|     object oPC = OBJECT_SELF;    
 | ||
|     object oSkin = GetPCSkin(oPC);
 | ||
|     int nHD = GetHitDice(oPC);
 | ||
|     object oWOL = GetItemPossessedBy(oPC, "WOL_WargirdsArmor");
 | ||
|     int nHPPen = 0;
 | ||
|     
 | ||
|     // You get nothing if you aren't wielding the WOL
 | ||
|     if(oWOL != GetItemInSlot(INVENTORY_SLOT_CHEST, oPC))
 | ||
|     {
 | ||
|     	SetCompositeBonus(oSkin, "Wargirds_SavesW", 0, ITEM_PROPERTY_DECREASED_SAVING_THROWS, IP_CONST_SAVEBASETYPE_WILL); 
 | ||
|     	SetCompositeAttackBonus(oPC, "Wargirds_Atk", 0, ATTACK_BONUS_MISC);
 | ||
|     	return;
 | ||
|     }      
 | ||
|     
 | ||
|     // 5th to 10th level abilities
 | ||
|     if (GetHasFeat(FEAT_LEAST_LEGACY, oPC))
 | ||
|     {
 | ||
|         if(nHD >= 5)
 | ||
|         {
 | ||
|         }         
 | ||
|         if(nHD >= 6)
 | ||
|         {
 | ||
|             SetCompositeAttackBonus(oPC, "Wargirds_Atk", -1, ATTACK_BONUS_MISC);  
 | ||
|             IPSafeAddItemProperty(oWOL, ItemPropertyACBonus(2));
 | ||
|         }     
 | ||
|         if(nHD >= 7)
 | ||
|         {
 | ||
|             nHPPen += 2;
 | ||
|             SetCompositeBonus(oSkin, "Wargirds_SavesW", 1, ITEM_PROPERTY_DECREASED_SAVING_THROWS, IP_CONST_SAVEBASETYPE_WILL); 
 | ||
|             if (!GetLocalInt(oPC, "WarriorsSurgeHB")) 
 | ||
|             {
 | ||
|                 WarriorsSurge(oPC);
 | ||
|                 SetLocalInt(oPC, "WarriorsSurgeHB", TRUE);
 | ||
|             }             
 | ||
|         } 
 | ||
|         if(nHD >= 8)
 | ||
|         {
 | ||
|             nHPPen += 2;            
 | ||
|         } 
 | ||
|         if(nHD >= 9)
 | ||
|         {
 | ||
|             SetCompositeBonus(oSkin, "Wargirds_SavesW", 2, ITEM_PROPERTY_DECREASED_SAVING_THROWS, IP_CONST_SAVEBASETYPE_WILL); 
 | ||
|             IPSafeAddItemProperty(oWOL, ItemPropertyACBonus(3));
 | ||
|         }
 | ||
|         if(nHD >= 10)
 | ||
|         {
 | ||
|             nHPPen += 2;        
 | ||
|         }    
 | ||
|     }
 | ||
|     // 11th to 16th level abilities
 | ||
|     if (GetHasFeat(FEAT_LESSER_LEGACY, oPC))
 | ||
|     {    
 | ||
|         if(nHD >= 11)
 | ||
|         {
 | ||
|         }
 | ||
|         if(nHD >= 12)
 | ||
|         {
 | ||
|             SetCompositeAttackBonus(oPC, "Wargirds_Atk", -2, ATTACK_BONUS_MISC);
 | ||
|         }    
 | ||
|         if(nHD >= 13)
 | ||
|         {
 | ||
|             IPSafeAddItemProperty(oWOL, ItemPropertyACBonus(4));
 | ||
|         }
 | ||
|         if(nHD >= 14)
 | ||
|         {
 | ||
|             nHPPen += 2;        
 | ||
|         }            
 | ||
|         if(nHD >= 15)
 | ||
|         {
 | ||
|             SetCompositeBonus(oSkin, "Wargirds_SavesW", 3, ITEM_PROPERTY_DECREASED_SAVING_THROWS, IP_CONST_SAVEBASETYPE_WILL); 
 | ||
|         }    
 | ||
|         if(nHD >= 16)
 | ||
|         {
 | ||
|             nHPPen += 2;      
 | ||
|             IPSafeAddItemProperty(oSkin, PRCItemPropertyBonusFeat(IP_CONST_FEAT_WARGIRDS_HASTE), 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
 | ||
|         }     
 | ||
|     }
 | ||
|     // 17th+ level abilities
 | ||
|     if (GetHasFeat(FEAT_GREATER_LEGACY, oPC))
 | ||
|     {    
 | ||
|         if(nHD >= 17)
 | ||
|         {    
 | ||
|             IPSafeAddItemProperty(oWOL, ItemPropertyACBonus(5));  
 | ||
|         }  
 | ||
|         if(nHD >= 18)
 | ||
|         {
 | ||
|             SetCompositeAttackBonus(oPC, "Wargirds_Atk", -3, ATTACK_BONUS_MISC);
 | ||
|             IPSafeAddItemProperty(oSkin, ItemPropertyDamageResistance(IP_CONST_DAMAGETYPE_COLD, IP_CONST_DAMAGERESIST_20), 0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
 | ||
|         } 
 | ||
|         if(nHD >= 19)
 | ||
|         {
 | ||
|             IPSafeAddItemProperty(oWOL, ItemPropertyImmunityMisc(IP_CONST_IMMUNITYMISC_CRITICAL_HITS));
 | ||
|         } 
 | ||
|         if(nHD >= 20)
 | ||
|         {
 | ||
|             SetCompositeBonus(oSkin, "Wargirds_SavesW", 4, ITEM_PROPERTY_DECREASED_SAVING_THROWS, IP_CONST_SAVEBASETYPE_WILL); 
 | ||
|             IPSafeAddItemProperty(oSkin, PRCItemPropertyBonusFeat(IP_CONST_FEAT_WARGIRDS_STONESKIN), 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
 | ||
|         } 
 | ||
|     }     
 | ||
|         
 | ||
|     SetLocalInt(oPC, "WoLHealthPenalty", nHPPen);    
 | ||
|     if (!GetLocalInt(oPC, "WoLHealthPenaltyHB") && nHPPen > 0) 
 | ||
|     {
 | ||
|         WoLHealthPenaltyHB(oPC);
 | ||
|         SetLocalInt(oPC, "WoLHealthPenaltyHB", TRUE);
 | ||
|     }    
 | ||
| } |