Updated PRC8 Tester module
Updated PRC8 Tester module. Tweaked Beholder Ray for Petrification Immunity. Updated Saint for Petrification Immunity. Fixed Master Alchemist not getting marker feat. Started working on Materials system. Updated release archive.
This commit is contained in:
parent
b87007587c
commit
152f99037e
BIN
Notes/DnD3.5Index-Equipment.pdf
Normal file
BIN
Notes/DnD3.5Index-Equipment.pdf
Normal file
Binary file not shown.
BIN
Notes/Materials&Hardness.xlsx
Normal file
BIN
Notes/Materials&Hardness.xlsx
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,7 +1,7 @@
|
||||
2DA V2.0
|
||||
|
||||
Bonus
|
||||
0 0
|
||||
0 1
|
||||
1 0
|
||||
2 0
|
||||
3 0
|
||||
|
Binary file not shown.
@ -30166,7 +30166,7 @@ objs\prc_reservheal.ncs: scripts\prc_reservheal.nss include\prc_sp_func.nss incl
|
||||
|
||||
objs\prc_reservhrbrth.ncs: scripts\prc_reservhrbrth.nss include\spinc_dimdoor.nss include\prc_inc_combmove.nss include\prc_inc_spells.nss include\prc_inc_teleport.nss include\prc_inc_chat.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\inc_2dacache.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_array.nss include\prc_class_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_inc_combat.nss include\inc_dynconv.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_abil_damage.nss include\prc_inc_sp_tch.nss
|
||||
|
||||
objs\prc_reservinvndl.ncs: scripts\prc_reservinvndl.nss include\x2_inc_spellhook.nss include\prc_x2_craft.nss include\prc_inc_spells.nss include\prc_inc_combat.nss include\prc_inc_itmrstr.nss include\prc_inc_burn.nss include\pnp_shft_main.nss include\inc_dynconv.nss include\inc_npc.nss include\prc_inc_newip.nss include\prc_add_spell_dc.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_descrptr.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_abil_damage.nss include\prc_getbest_inc.nss include\prc_inc_function.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_template_con.nss include\prc_alterations.nss
|
||||
objs\prc_reservinvndl.ncs: scripts\prc_reservinvndl.nss include\x2_inc_spellhook.nss include\prc_inc_sp_tch.nss include\prc_x2_craft.nss include\prc_inc_spells.nss include\prc_inc_combat.nss include\prc_inc_itmrstr.nss include\prc_inc_burn.nss include\pnp_shft_main.nss include\inc_dynconv.nss include\inc_npc.nss include\prc_inc_newip.nss include\prc_add_spell_dc.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_descrptr.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_abil_damage.nss include\prc_getbest_inc.nss include\prc_inc_function.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\inc_nwnx_funcs.nss include\prc_template_con.nss include\prc_alterations.nss
|
||||
|
||||
objs\prc_reservlern.ncs: scripts\prc_reservlern.nss include\prc_inc_shifting.nss include\prc_inc_spells.nss include\prc_inc_racial.nss include\prc_inc_function.nss include\prc_inc_onhit.nss include\prc_shifter_info.nss include\prc_weap_apt.nss include\prc_inc_wpnrest.nss include\inc_nwnx_funcs.nss include\prc_class_const.nss include\prc_feat_const.nss include\prc_racial_const.nss include\prc_inc_util.nss include\prc_inc_stunfist.nss include\prc_template_con.nss include\prc_alterations.nss include\inc_abil_damage.nss include\prc_inc_damage.nss include\prc_effect_inc.nss include\inc_item_props.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_sb_const.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\inc_dynconv.nss include\prc_inc_combat.nss include\prc_inc_unarmed.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss
|
||||
|
||||
@ -33166,7 +33166,7 @@ spellobjs\x2_s0_vinemhmpb.ncs: spells\x2_s0_vinemhmpb.nss include\prc_inc_spells
|
||||
|
||||
spellobjs\x2_s0_vinemhmpc.ncs: spells\x2_s0_vinemhmpc.nss include\prc_inc_spells.nss include\prc_alterations.nss include\prc_add_spell_dc.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\inc_2dacache.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_array.nss include\prc_class_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\inc_abil_damage.nss
|
||||
|
||||
spellobjs\x2_s1_beholdray.ncs: spells\x2_s1_beholdray.nss
|
||||
spellobjs\x2_s1_beholdray.ncs: spells\x2_s1_beholdray.nss include\prc_inc_spells.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\inc_2dacache.nss include\inc_debug.nss include\prc_inc_switch.nss include\prc_inc_array.nss include\prc_class_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_utility.nss include\prc_inc_nwscript.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_misc_const.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss
|
||||
|
||||
spellobjs\x2_s1_chaosspit.ncs: spells\x2_s1_chaosspit.nss include\prc_inc_sp_tch.nss include\prc_inc_combat.nss include\prc_inc_unarmed.nss include\prc_inc_onhit.nss include\prc_misc_const.nss include\prc_inc_fork.nss include\prc_inc_natweap.nss include\inc_utility.nss include\prc_inc_spells.nss include\prc_inc_nwscript.nss include\prc_class_const.nss include\inc_target_list.nss include\inc_logmessage.nss include\inc_threads.nss include\prc_inc_actions.nss include\inc_time.nss include\inc_draw_prc.nss include\inc_eventhook.nss include\inc_metalocation.nss include\inc_array_sort.nss include\inc_uniqueid.nss include\inc_set.nss include\prc_spell_const.nss include\inv_invoc_const.nss include\psi_power_const.nss include\prc_inc_racial.nss include\prc_inc_array.nss include\moi_meld_const.nss include\bnd_vestig_const.nss include\inc_2dacache.nss include\prc_feat_const.nss include\prc_racial_const.nss include\inc_debug.nss include\prc_inc_switch.nss include\inc_persist_loca.nss include\prc_inc_skin.nss include\inc_persistsql.nss include\inc_draw.nss include\inc_draw_tools.nss include\inc_pers_array.nss include\inc_area.nss include\inc_heap.nss include\inc_newspellbook.nss include\inc_vfx_const.nss include\spinc_necro_cyst.nss include\true_utter_const.nss include\prc_inc_sneak.nss include\prcsp_engine.nss include\inc_item_props.nss include\prc_inc_core.nss include\inc_sp_gain_mem.nss include\lookup_2da_spell.nss include\inc_lookups.nss include\prc_inc_damage.nss include\prc_inc_sb_const.nss include\prc_effect_inc.nss include\prc_inc_castlvl.nss include\prc_inc_newip.nss include\prc_inc_descrptr.nss include\prc_x2_itemprop.nss include\prc_ipfeat_const.nss include\inc_prc_npc.nss include\tob_move_const.nss include\prcsp_archmaginc.nss include\prc_add_spl_pen.nss include\prcsp_reputation.nss include\inc_abil_damage.nss
|
||||
|
||||
|
@ -127,7 +127,6 @@ void main()
|
||||
if (nFastHealing > 10) {nFastHealing == 10;}
|
||||
SetCompositeBonus(oSkin, "Template_Saint_FastHealing", nFastHealing, ITEM_PROPERTY_REGENERATION);
|
||||
|
||||
|
||||
//:: Set racial type to Outsider (Native)
|
||||
ipIP = PRCItemPropertyBonusFeat(IP_CONST_FEAT_OUTSIDER_RACIAL_TYPE);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
@ -176,7 +175,13 @@ void main()
|
||||
ipIP = ItemPropertySpellImmunitySpecific(246); //:: Basilisk Mask
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
ipIP = ItemPropertySpellImmunitySpecific(247); //:: Gorgon Mask
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
//:: Set Immunity to Petrification (maybe this will work?)
|
||||
effect ePetrificationImmunity = EffectBonusFeat(FEAT_IMMUNE_PETRIFICATION);
|
||||
|
||||
ipIP = PRCItemPropertyBonusFeat(FEAT_IMMUNE_PETRIFICATION);
|
||||
IPSafeAddItemProperty(oSkin, ipIP, 0.0, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
|
||||
|
||||
//:: Set Ability Score Bonuses
|
||||
SetCompositeBonus(oSkin, "Template_Saint_con", 2, ITEM_PROPERTY_ABILITY_BONUS, IP_CONST_ABILITY_CON);
|
||||
@ -229,6 +234,7 @@ void main()
|
||||
eEffect3 = VersusRacialTypeEffect(eEffect3, RACIAL_TYPE_UNDEAD);
|
||||
effect eLink = EffectLinkEffects(eEffect1, eEffect2);
|
||||
eLink = EffectLinkEffects(eLink, eEffect3);
|
||||
eLink = EffectLinkEffects(eLink, ePetrificationImmunity);
|
||||
eLink = SupernaturalEffect(eLink);
|
||||
eLink = TagEffect(eLink, "EffectHolyTouch");
|
||||
|
||||
|
@ -12,31 +12,37 @@
|
||||
//:: Created By: Georg Zoeller
|
||||
//:: Created On: 2003-09-16
|
||||
//:://////////////////////////////////////////////
|
||||
#include "prc_inc_spells"
|
||||
#include "x0_i0_henchman"
|
||||
//#include "x0_i0_spells"
|
||||
|
||||
|
||||
#include "x0_i0_spells"
|
||||
|
||||
|
||||
void DoBeholderPetrify(int nDuration,object oSource, object oTarget, int nSpellID);
|
||||
void DoBeholderPetrify(int nDuration, object oSource, object oTarget, int nSpellID);
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
int nSpell = GetSpellId();
|
||||
object oTarget = GetSpellTargetObject();
|
||||
int nSpell = PRCGetSpellId();
|
||||
object oTarget = PRCGetSpellTargetObject();
|
||||
|
||||
int nSave, bSave;
|
||||
int nSaveDC = 15;
|
||||
|
||||
int iHD = GetHitDice(OBJECT_SELF);
|
||||
int iCHAb = GetAbilityModifier(ABILITY_CHARISMA, OBJECT_SELF);
|
||||
int nSaveDC = 10 + (iHD / 2) + iCHAb;
|
||||
|
||||
float fDelay;
|
||||
|
||||
effect e1, eLink, eVis, eDur;
|
||||
|
||||
|
||||
switch (nSpell)
|
||||
{
|
||||
case 776 :
|
||||
switch (nSpell)
|
||||
{
|
||||
case 776 :
|
||||
nSave = SAVING_THROW_FORT; //BEHOLDER_RAY_DEATH
|
||||
break;
|
||||
|
||||
case 777:
|
||||
case 777:
|
||||
nSave = SAVING_THROW_WILL; //BEHOLDER_RAY_TK
|
||||
break;
|
||||
|
||||
@ -52,28 +58,28 @@ void main()
|
||||
nSave = SAVING_THROW_WILL;
|
||||
break;
|
||||
|
||||
case 783:
|
||||
case 783:
|
||||
nSave = SAVING_THROW_FORT; //BEHOLDER_RAY_WOUND
|
||||
break;
|
||||
|
||||
case 784: // BEHOLDER_RAY_FEAR
|
||||
case 784: // BEHOLDER_RAY_FEAR
|
||||
nSave = SAVING_THROW_WILL;
|
||||
break;
|
||||
|
||||
case 785:
|
||||
case 786:
|
||||
case 787:
|
||||
case 785:
|
||||
case 786:
|
||||
case 787:
|
||||
}
|
||||
|
||||
SignalEvent(oTarget,EventSpellCastAt(OBJECT_SELF,GetSpellId(),TRUE));
|
||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, PRCGetSpellId(), TRUE));
|
||||
fDelay = 0.0f; //old -- GetSpellEffectDelay(GetLocation(oTarget),OBJECT_SELF);
|
||||
if (nSave == SAVING_THROW_WILL)
|
||||
{
|
||||
bSave = MySavingThrow(SAVING_THROW_WILL,oTarget, nSaveDC,SAVING_THROW_TYPE_ALL,OBJECT_SELF,fDelay) >0;
|
||||
bSave = PRCMySavingThrow(SAVING_THROW_WILL,oTarget, nSaveDC,SAVING_THROW_TYPE_ALL,OBJECT_SELF,fDelay) > 0;
|
||||
}
|
||||
else if (nSave == SAVING_THROW_FORT)
|
||||
{
|
||||
bSave = MySavingThrow(SAVING_THROW_FORT,oTarget, nSaveDC,SAVING_THROW_TYPE_ALL,OBJECT_SELF,fDelay) >0;
|
||||
bSave = PRCMySavingThrow(SAVING_THROW_FORT,oTarget, nSaveDC,SAVING_THROW_TYPE_ALL,OBJECT_SELF,fDelay) > 0;
|
||||
}
|
||||
|
||||
if (!bSave)
|
||||
@ -84,39 +90,39 @@ void main()
|
||||
case 776: e1 = EffectDeath(TRUE);
|
||||
eVis = EffectVisualEffect(VFX_IMP_DEATH);
|
||||
eLink = EffectLinkEffects(e1,eVis);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eLink,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eLink,oTarget);
|
||||
break;
|
||||
|
||||
case 777: e1 = ExtraordinaryEffect(EffectKnockdown());
|
||||
eVis = EffectVisualEffect(VFX_IMP_STUN);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,6.0f);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,6.0f);
|
||||
break;
|
||||
|
||||
// Petrify for one round per SaveDC
|
||||
case 778: eVis = EffectVisualEffect(VFX_IMP_POLYMORPH);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
DoBeholderPetrify(nSaveDC,OBJECT_SELF,oTarget,GetSpellId());
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
DoBeholderPetrify(nSaveDC,OBJECT_SELF,oTarget,PRCGetSpellId());
|
||||
break;
|
||||
|
||||
|
||||
case 779: e1 = EffectCharmed();
|
||||
eVis = EffectVisualEffect(VFX_IMP_CHARM);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,24.0f);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,24.0f);
|
||||
break;
|
||||
|
||||
|
||||
case 780: e1 = EffectSlow();
|
||||
eVis = EffectVisualEffect(VFX_IMP_SLOW);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,RoundsToSeconds(6));
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,RoundsToSeconds(6));
|
||||
break;
|
||||
|
||||
case 783: e1 = EffectDamage(d8(2)+10);
|
||||
eVis = EffectVisualEffect(VFX_COM_BLOOD_REG_RED);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,e1,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,e1,oTarget);
|
||||
break;
|
||||
|
||||
|
||||
@ -125,8 +131,8 @@ void main()
|
||||
eVis = EffectVisualEffect(VFX_IMP_FEAR_S);
|
||||
eDur = EffectVisualEffect(VFX_DUR_MIND_AFFECTING_FEAR);
|
||||
e1 = EffectLinkEffects(eDur,e1);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,RoundsToSeconds(1+d4()));
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY,e1,oTarget,RoundsToSeconds(1+d4()));
|
||||
break;
|
||||
|
||||
|
||||
@ -140,20 +146,20 @@ void main()
|
||||
case 776: e1 = EffectDamage(d6(3)+13);
|
||||
eVis = EffectVisualEffect(VFX_IMP_NEGATIVE_ENERGY);
|
||||
eLink = EffectLinkEffects(e1,eVis);
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT,eLink,oTarget);
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT,eLink,oTarget);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void DoBeholderPetrify(int nDuration,object oSource, object oTarget, int nSpellID)
|
||||
void DoBeholderPetrify(int nDuration, object oSource, object oTarget, int nSpellID)
|
||||
{
|
||||
|
||||
if(!GetIsReactionTypeFriendly(oTarget) && !GetIsDead(oTarget))
|
||||
{
|
||||
// * exit if creature is immune to petrification
|
||||
if (spellsIsImmuneToPetrification(oTarget) == TRUE || GetHasFeat(4643)) //:: PRC's Immunity to Petrification
|
||||
if (PRCIsImmuneToPetrification(oTarget) == TRUE)
|
||||
{
|
||||
return;
|
||||
}
|
||||
@ -215,4 +221,4 @@ void DoBeholderPetrify(int nDuration,object oSource, object oTarget, int nSpellI
|
||||
// April 2003: Clearing actions to kick them out of conversation when petrified
|
||||
AssignCommand(oTarget, ClearAllActions());
|
||||
}
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user