Amon_PRC8/_module/nss/give_bss_04.nss

86 lines
3.9 KiB
Plaintext
Raw Permalink Normal View History

2025-04-03 19:00:46 -04:00
//::///////////////////////////////////////////////
//:: FileName give_bss_01
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 3/19/2005 6:06:11 PM
//:://////////////////////////////////////////////
#include "nw_i0_tool"
void ApplyAdditionalHP(object oPC, int iAmount, float fDuration)
{
effect eHP;
eHP=GetFirstEffect(oPC);
while(GetIsEffectValid(eHP))
{
if(GetEffectType(eHP)==EFFECT_TYPE_TEMPORARY_HITPOINTS)
{
RemoveEffect(oPC, eHP);
SendMessageToPC(oPC, "Removing Existing HP Buff");
}
eHP=GetNextEffect(oPC);
}
eHP=EffectTemporaryHitpoints(iAmount);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHP, oPC, fDuration);
eHP=EffectVisualEffect(VFX_IMP_HOLY_AID);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHP, oPC, fDuration);
}
void main()
{
object oPartyMember = GetFirstFactionMember(GetPCSpeaker(), TRUE);
while (GetIsObjectValid(oPartyMember) == TRUE)
{
SetLocalInt(oPartyMember, "bss_test", 0);
if(HasItem(oPartyMember, "bss_token_04")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_05")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_06")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_07")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_08")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_09")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_10")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_11")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_12")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_13")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_14")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_15")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_16")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_17")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "bss_token_18")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_1")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_2")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_3")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_4")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_5")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_6")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_7")){SetLocalInt(oPartyMember, "bss_test", 1);}
if(HasItem(oPartyMember, "xq_token_8")){SetLocalInt(oPartyMember, "bss_test", 1);}
if ((GetLocalInt(oPartyMember,"bss_test"))==0)
{
// Give the speaker some XP
GiveXPToCreature(oPartyMember, 400);
object oItemToTake1;
object oItemToTake2;
object oItemToTake3;
oItemToTake1 = GetItemPossessedBy(oPartyMember, "bss_token_01");
oItemToTake2 = GetItemPossessedBy(oPartyMember, "bss_token_02");
oItemToTake3 = GetItemPossessedBy(oPartyMember, "bss_token_03");
DestroyObject(oItemToTake1);
DestroyObject(oItemToTake2);
DestroyObject(oItemToTake3);
// Give the speaker the items
CreateItemOnObject("bss_token_04", oPartyMember, 1);
ActionCastSpellAtObject(SPELL_BLESS,GetPCSpeaker(),TRUE,20,PROJECTILE_PATH_TYPE_DEFAULT,TRUE);
ApplyAdditionalHP(oPartyMember, 100, 3600.0);
}
oPartyMember = GetNextFactionMember(GetPCSpeaker(), TRUE);
}
}