Files
PRC8/nwn/nwnprc/trunk/newspellbook/moi_mld_trthskr.nss
Jaysyn904 73ce19db22 2026/02/21 Update
Updated all soulmelds to allow double chakra binds.
Updated Totemist soulmelds to allow double totem binds.
Pearl of Black Doubt should play nice with Vow of Poverty.
2026-02-21 19:25:00 -05:00

65 lines
2.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
11/1/20 by Stratovarius
Truthseeker Goggles
Descriptors: None
Classes: Incarnate, Soulborn
Chakra: Brow
Saving Throw: None
Incarnum forms blue-lensed goggles that hover in front of your eyes. The world does not seem blue to you; rather, small details become apparent, whether they are in something you search or in someones facial expression and posture.
While you wear your truthseeker goggles, you gain a +2 insight bonus on Search and Sense Motive checks.
Essentia: Every point of essentia you invest in your truthseeker goggles increases the insight bonus by 2.
Chakra Bind (Brow)
Your truthseeker goggles rest firmly before your eyes, granting you sight even in darkness.
You gain darkvision.
*/
//::////////////////////////////////////////////////////////
//::
//:: Updated by: Jaysyn
//:: Updated on: 2026-02-21 00:53:56
//::
//:: Added missing Sense Motive skill bonus
//:: Double Chakra Bind support added
//::
//::////////////////////////////////////////////////////////
#include "moi_inc_moifunc"
void main()
{
object oMeldshaper = PRCGetSpellTargetObject();
int nMeldId = PRCGetSpellId();
int nEssentia = GetEssentiaInvested(oMeldshaper);
int nBonus = 2 + (nEssentia * 2);
effect eLink = EffectLinkEffects(EffectSkillIncrease(SKILL_SEARCH, nBonus), EffectSkillIncrease(SKILL_SENSE_MOTIVE, nBonus));
// Brow bind (darkvision) — check regular or double Brow
int nBoundToBrow = FALSE;
if (GetLocalInt(oMeldshaper, "BoundMeld" + IntToString(CHAKRA_BROW)) == nMeldId ||
GetLocalInt(oMeldshaper, "BoundMeld" + IntToString(CHAKRA_DOUBLE_BROW)) == nMeldId)
nBoundToBrow = TRUE;
if (nBoundToBrow) eLink = EffectLinkEffects(eLink, EffectUltravision());
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eLink), oMeldshaper, 9999.0);
IPSafeAddItemProperty(GetPCSkin(oMeldshaper), ItemPropertyBonusFeat(IP_CONST_MELD_TRUTHSEEKER_GOGGLES), 9999.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
}
/* void main()
{
object oMeldshaper = PRCGetSpellTargetObject();
int nEssentia = GetEssentiaInvested(oMeldshaper);
int nBonus = 2 + (nEssentia * 2);
effect eLink = EffectLinkEffects(EffectSkillIncrease(SKILL_SEARCH, nBonus), EffectSkillIncrease(SKILL_SEARCH, nBonus));
if (GetIsMeldBound(oMeldshaper) == CHAKRA_BROW) eLink = EffectLinkEffects(eLink, EffectUltravision());
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, SupernaturalEffect(eLink), oMeldshaper, 9999.0);
IPSafeAddItemProperty(GetPCSkin(oMeldshaper), ItemPropertyBonusFeat(IP_CONST_MELD_TRUTHSEEKER_GOGGLES), 9999.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
} */