Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
105 lines
3.6 KiB
Plaintext
105 lines
3.6 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Eye of Gruumsh
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
Script to modify skin of Eye of Gruumsh
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Oni5115
|
|
//:: Created On: July 19, 2004
|
|
//:://////////////////////////////////////////////
|
|
|
|
#include "prc_alterations"
|
|
#include "prc_feat_const"
|
|
#include "prc_class_const"
|
|
|
|
void ApplyRitualScarringDefense(object oPC, object oSkin)
|
|
{
|
|
int ACBonus = 0;
|
|
int iEOGLevel = GetLevelByClass(CLASS_TYPE_PRC_EYE_OF_GRUUMSH, oPC);
|
|
|
|
if(iEOGLevel >= 3 && iEOGLevel < 6)
|
|
{
|
|
ACBonus = 1;
|
|
}
|
|
else if(iEOGLevel >= 6 && iEOGLevel < 9)
|
|
{
|
|
ACBonus = 2;
|
|
}
|
|
else if(iEOGLevel >= 9)
|
|
{
|
|
ACBonus = 3;
|
|
}
|
|
|
|
itemproperty ipACBonus = ItemPropertyACBonus(ACBonus);
|
|
|
|
SetCompositeBonus(oSkin, "RitualScarringDefenseBonus", ACBonus, ITEM_PROPERTY_AC_BONUS);
|
|
SetLocalInt(oPC, "HasRitualScarring", 2);
|
|
}
|
|
|
|
void RemoveRitualScarringDefense(object oPC, object oSkin)
|
|
{
|
|
SetCompositeBonus(oSkin, "RitualScarringDefenseBonus", 0, ITEM_PROPERTY_AC_BONUS);
|
|
SetLocalInt(oPC, "HasRitualScarring", 1);
|
|
}
|
|
|
|
void ApplySightOfGruumsh(object oPC, object oSkin)
|
|
{
|
|
SetCompositeBonus(oSkin, "SightOfGruumshFortBonus", 2, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_FORTITUDE);
|
|
SetCompositeBonus(oSkin, "SightOfGruumshRefBonus", 2, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_REFLEX);
|
|
SetCompositeBonus(oSkin, "SightOfGruumshWillBonus", 2, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_WILL);
|
|
|
|
SetLocalInt(oPC, "HasSightOfGruumsh", 2);
|
|
}
|
|
|
|
void RemoveSightOfGruumsh(object oPC, object oSkin)
|
|
{
|
|
SetCompositeBonus(oSkin, "SightOfGruumshFortBonus", 0, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_FORTITUDE);
|
|
SetCompositeBonus(oSkin, "SightOfGruumshRefBonus", 0, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_REFLEX);
|
|
SetCompositeBonus(oSkin, "SightOfGruumshWillBonus", 0, ITEM_PROPERTY_SAVING_THROW_BONUS_SPECIFIC, IP_CONST_SAVEBASETYPE_WILL);
|
|
|
|
SetLocalInt(oPC, "HasSightOfGruumsh", 1);
|
|
}
|
|
|
|
void main()
|
|
{
|
|
//Declare main variables.
|
|
object oPC = OBJECT_SELF;
|
|
object oSkin = GetPCSkin(oPC);
|
|
object oArmor = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC);
|
|
|
|
string nMes = "";
|
|
|
|
// On Error Remove effects
|
|
// This typically occurs On Load
|
|
// Because the variables are not yet set.
|
|
if(GetLocalInt(oPC, "HasRitualScarring") == 0 || GetLocalInt(oPC, "HasSightOfGruumsh") == 0 )
|
|
{
|
|
RemoveRitualScarringDefense(oPC, oSkin);
|
|
RemoveSightOfGruumsh(oPC, oSkin);
|
|
|
|
if(GetHasFeat(FEAT_SIGHT_OF_GRUUMSH, oPC) )
|
|
{
|
|
ApplySightOfGruumsh(oPC, oSkin);
|
|
}
|
|
}
|
|
// Apply effects
|
|
else
|
|
{
|
|
// Is only called if Sight Of Gruumsh has been previously removed
|
|
// this prevents it from being called every level up since it never changes once you get it.
|
|
if(GetLocalInt(oPC, "HasSightOfGruumsh") == 1 && GetHasFeat(FEAT_SIGHT_OF_GRUUMSH, oPC) )
|
|
{
|
|
ApplySightOfGruumsh(oPC, oSkin);
|
|
}
|
|
|
|
/*// Is called anytime Ritual might have been upgraded
|
|
// specifically set this way for level up
|
|
if(GetLocalInt(oPC, "HasRitualScarring") != 0 && GetHasFeat(FEAT_RITUAL_SCARRING, oPC) )
|
|
{
|
|
RemoveRitualScarringDefense(oPC, oSkin);
|
|
ApplyRitualScarringDefense(oPC, oSkin);
|
|
}*/
|
|
}
|
|
}
|