Files
HeroesStone_PRC8/_module/nss/descriptrigger.nss
Jaysyn904 1eefc84201 Initial Commit
Initial Commit.
2025-09-14 15:40:46 -04:00

109 lines
4.4 KiB
Plaintext

void main()
{
object oEntering=GetEnteringObject();
if(GetIsPC(oEntering))
{
int nFireOnce=GetLocalInt(OBJECT_SELF, "FireOnce");
if(nFireOnce)
{
if(GetLocalInt(OBJECT_SELF, GetPCPlayerName(oEntering)))
{
return;
}
else
{
SetLocalInt(OBJECT_SELF, GetPCPlayerName(oEntering),1);
}
}
int nSpotCheck=GetLocalInt(OBJECT_SELF, "SpotCheck");
int nListenCheck=GetLocalInt(OBJECT_SELF, "ListenCheck");
int nLoreCheck=GetLocalInt(OBJECT_SELF, "LoreCheck");
int nWisdomCheck=GetLocalInt(OBJECT_SELF, "WisdomCheck");
int nSearchCheck=GetLocalInt(OBJECT_SELF, "SearchCheck");
int nSpellCraftCheck=GetLocalInt(OBJECT_SELF, "SpellCraftCheck");
int nDivineClass=GetLocalInt(OBJECT_SELF, "ClassDivine");
int nNatureClass=GetLocalInt(OBJECT_SELF, "ClassNature");
int nRogueClass=GetLocalInt(OBJECT_SELF, "ClassRogue");
int nArcaneClass=GetLocalInt(OBJECT_SELF, "ClassArcane");
int nWarClass=GetLocalInt(OBJECT_SELF, "ClassWar");
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "Description"), oEntering, TRUE);
if(nWisdomCheck!=0)
{
if(GetAbilityScore(oEntering, ABILITY_WISDOM)+d20()>=nWisdomCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "WisdomSucces"), oEntering, TRUE);
}
}
if(nListenCheck!=0)
{
if(GetSkillRank(SKILL_LISTEN, oEntering)+d20()>=nListenCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ListenSucces"), oEntering, TRUE);
}
}
if(nSpotCheck!=0)
{
if(GetSkillRank(SKILL_SPOT, oEntering)+d20()>=nSpotCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "SpotSucces"), oEntering, TRUE);
}
}
if(nLoreCheck!=0)
{
if(GetSkillRank(SKILL_LORE, oEntering)+d20()>=nLoreCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "LoreSucces"), oEntering, TRUE);
}
}
if(nSearchCheck!=0)
{
if(GetSkillRank(SKILL_SEARCH, oEntering)+d20()>=nSearchCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "SearchSucces"), oEntering, TRUE);
}
}
if(nSpellCraftCheck!=0)
{
if(GetSkillRank(SKILL_SPELLCRAFT, oEntering)+d20()>=nSpellCraftCheck)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "SpellCraftSucces"), oEntering, TRUE);
}
}
if(nDivineClass!=0)
{
if(GetLevelByClass(CLASS_TYPE_CLERIC,oEntering)>0||GetLevelByClass(CLASS_TYPE_PALADIN,oEntering)>0||GetLevelByClass(CLASS_TYPE_HARPER,oEntering)>0||GetLevelByClass(CLASS_TYPE_DIVINECHAMPION,oEntering)>0)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ClassDivineInfo"), oEntering, TRUE);
}
}
if(nNatureClass!=0)
{
if(GetLevelByClass(CLASS_TYPE_RANGER,oEntering)>0||GetLevelByClass(CLASS_TYPE_DRUID,oEntering)>0)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ClassNatureInfo"), oEntering, TRUE);
}
}
if(nRogueClass!=0)
{
if(GetLevelByClass(CLASS_TYPE_ROGUE,oEntering)>0||GetLevelByClass(CLASS_TYPE_BARD,oEntering)>0)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ClassRogueInfo"), oEntering, TRUE);
}
}
if(nWarClass!=0)
{
if(GetLevelByClass(CLASS_TYPE_FIGHTER,oEntering)>0||GetLevelByClass(CLASS_TYPE_BARBARIAN,oEntering)>0||GetLevelByClass(CLASS_TYPE_WEAPON_MASTER,oEntering)>0)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ClassWarInfo"), oEntering, TRUE);
}
}
if(nArcaneClass!=0)
{
if(GetLevelByClass(CLASS_TYPE_BARD,oEntering)>0||GetLevelByClass(CLASS_TYPE_SORCERER,oEntering)>0||GetLevelByClass(CLASS_TYPE_WIZARD,oEntering)>0)
{
FloatingTextStringOnCreature(GetLocalString(OBJECT_SELF, "ClassArcaneInfo"), oEntering, TRUE);
}
}
}
}