Spells to fix for Rose, so they target both wielded weapons.
Re: Spells to fix for Rose, so they target both wielded weapons.
I can try it, but it will likely be a few days before they are done. The items did not work like the spells, so I had to change a lot of things. Trying to put the duration based on level has given me errors, but there are other things I can try. What do you think is good for max duration?
Re: Spells to fix for Rose, so they target both wielded weapons.
12 hours in game should do the trick ?
/tara
/tara
Re: Spells to fix for Rose, so they target both wielded weapons.
Ok, I got them finished before leaving for work. Here are the 2 item scripts, and a modified healing sting.
Healing Sting:
Acid Weapon for Assassin:
Negative Weapon for Blackguards:
The item powers will not dispel on rest, but that can be fixed by adding a few lines to the module on rest script. I will do that later today, after I get home.
Healing sting should now buff the caster when buffing an animal companion. However I did not have time to test it.
Enjoy!
Healing Sting:
Code: Select all
//::///////////////////////////////////////////////
//:: Healing Sting
//:: X2_S0_HealStng
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
//:: Updated by Rose, Dec. 6, 2015
// complete redesign now imbuing target held weapon with the power of lightning giving it 2d12 electrical Damage bonus.
#include "x2_inc_spellhook"
/* This function has been replaced for optimization reasons
void AddFlamingEffectToWeapon(object oTarget, float fDuration, int nCasterLvl)
{
// If the spell is cast again, any previous itemproperties matching are removed.
IPSafeAddItemProperty(oTarget, ItemPropertyOnHitCastSpell(127,nCasterLvl), fDuration, X2_IP_ADDPROP_POLICY_REPLACE_EXISTING);
IPSafeAddItemProperty(oTarget, ItemPropertyVisualEffect(ITEM_VISUAL_FIRE), fDuration,X2_IP_ADDPROP_POLICY_REPLACE_EXISTING,FALSE,TRUE);
return;
}
*/
void AddFlamingEffectToWeapon( object oTarget, float fDuration, int nCasterLvl)
{
IPSafeAddItemProperty(oTarget, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ELECTRICAL, IP_CONST_DAMAGEBONUS_2d12), fDuration, X2_IP_ADDPROP_POLICY_REPLACE_EXISTING);
IPSafeAddItemProperty(oTarget, ItemPropertyVisualEffect(ITEM_VISUAL_ELECTRICAL), fDuration,X2_IP_ADDPROP_POLICY_REPLACE_EXISTING,FALSE,TRUE);
}
void main()
{
/*
Spellcast Hook Code
Added 2003-07-07 by Georg Zoeller
If you want to make changes to all spells,
check x2_inc_spellhook.nss to find out more
*/
if (!X2PreSpellCastCode())
{
// If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
return;
}
// End of Spell Cast Hook
//Declare major variables
effect eVis = EffectVisualEffect(VFX_IMP_PULSE_FIRE);
eVis = EffectLinkEffects(EffectVisualEffect(VFX_IMP_FLAME_M),eVis);
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
int nDuration = 2 * GetCasterLevel(OBJECT_SELF);
int nMetaMagic = GetMetaMagicFeat();
int nCasterLvl = GetCasterLevel(OBJECT_SELF);
//Limit nCasterLvl to 10, so it max out at +10 to the damage.
//Bugfix: Limiting nCasterLvl to *20* - the damage calculation
// divides it by 2.
if(nCasterLvl > 20)
{
nCasterLvl = 20;
}
if (nMetaMagic == METAMAGIC_EXTEND)
{
nDuration = nDuration * 2; //Duration is +100%
}
object oTarget = GetSpellTargetObject();
if(GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_CREATURE)
{
// Alter the right hand weapon equipped by the creature.
object oWeapon1 = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTarget);
if(GetIsObjectValid(oWeapon1))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon1))
{
SignalEvent(oWeapon1, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon1));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon1), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon1, TurnsToSeconds(nDuration),nCasterLvl);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the left hand weapon equipped by the creature.
object oWeapon2 = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget);
if(GetIsObjectValid(oWeapon2))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon2))
{
SignalEvent(oWeapon2, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon2));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon2), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon2, TurnsToSeconds(nDuration),nCasterLvl);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the right claw equipped by the creature.
object oWeapon3 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oTarget);
if(GetIsObjectValid(oWeapon3))
{
SignalEvent(oWeapon3, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon3));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon3), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon3, TurnsToSeconds(nDuration),nCasterLvl);
}
}
// Alter the left claw equipped by the creature.
object oWeapon4 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oTarget);
if(GetIsObjectValid(oWeapon4))
{
SignalEvent(oWeapon4, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon4));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon4), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon4, TurnsToSeconds(nDuration),nCasterLvl);
}
}
// Alter the bite equipped by the creature.
object oWeapon5 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oTarget);
if(GetIsObjectValid(oWeapon5))
{
SignalEvent(oWeapon5, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon5));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon5), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon5, TurnsToSeconds(nDuration),nCasterLvl);
}
}
// Alter the right hand weapon equipped by the creature.
object oWeapon6 = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, OBJECT_SELF);
if(GetIsObjectValid(oWeapon6))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon6))
{
SignalEvent(oWeapon6, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon6));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon6), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon6, TurnsToSeconds(nDuration),nCasterLvl);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the left hand weapon equipped by the creature.
object oWeapon7 = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, OBJECT_SELF);
if(GetIsObjectValid(oWeapon7))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon7))
{
SignalEvent(oWeapon7, EventSpellCastAt(OBJECT_SELF, GetSpellId(), FALSE));
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon7));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon7), TurnsToSeconds(nDuration));
AddFlamingEffectToWeapon(oWeapon7, TurnsToSeconds(nDuration),nCasterLvl);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
}
else
{
SendMessageToPC(OBJECT_SELF, "You must target a creature!");
return;
}
}
Code: Select all
//::///////////////////////////////////////////////
//:: Acid Weapon
//:: Copyright (c) 2015 Rose Corp.
//:://////////////////////////////////////////////
// Gives a melee weapon 2d8 acid damage.
//:://////////////////////////////////////////////
//:: Created By: Rose
//:: Created On: Dec. 6, 2015
//:://////////////////////////////////////////////
#include "nw_i0_spells"
#include "x2_i0_spells"
#include "x2_inc_switches"
#include "x2_inc_itemprop"
void main()
{
if( GetUserDefinedItemEventNumber() == X2_ITEM_EVENT_ACTIVATE )
{
if (GetLevelByClass(CLASS_TYPE_ASSASSIN, OBJECT_SELF) < 1)
{
SendMessageToPC(OBJECT_SELF, "You must have at least 1 level of assassin to use this item!");
return;
}
//Declare major variables
effect eVis = EffectVisualEffect(VFX_IMP_PULSE_NEGATIVE);
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
int nMetaMagic = GetMetaMagicFeat();
int nCasterLvl = GetLevelByClass(CLASS_TYPE_ASSASSIN, OBJECT_SELF);
int nDuration = 2 * nCasterLvl;
//Limit nCasterLvl to 20.
if(nCasterLvl > 20)
{
nCasterLvl = 20;
}
if (nMetaMagic == METAMAGIC_EXTEND)
{
nDuration = nDuration * 2; //Duration is +100%
}
object oTarget = GetItemActivatedTarget();
if(GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_CREATURE)
{
// Alter the right hand weapon equipped by the creature.
object oWeapon1 = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTarget);
if(GetIsObjectValid(oWeapon1))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon1))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon1));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon1), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon1, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the left hand weapon equipped by the creature.
object oWeapon2 = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget);
if(GetIsObjectValid(oWeapon2))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon2))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon2));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon2), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon2, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the right claw equipped by the creature.
object oWeapon3 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oTarget);
if(GetIsObjectValid(oWeapon3))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon3));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon3), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon3, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
// Alter the left claw equipped by the creature.
object oWeapon4 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oTarget);
if(GetIsObjectValid(oWeapon4))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon4));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon4), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon4, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
// Alter the bite equipped by the creature.
object oWeapon5 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oTarget);
if(GetIsObjectValid(oWeapon5))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon5));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon5), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon5, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
}
else
{
SendMessageToPC(OBJECT_SELF, "You must target a creature!");
return;
}
}
}
Code: Select all
//::///////////////////////////////////////////////
//:: Negative Weapon
//:: Copyright (c) 2015 Rose Corp.
//:://////////////////////////////////////////////
// Gives a melee weapon 2d8 acid damage.
//:://////////////////////////////////////////////
//:: Created By: Rose
//:: Created On: Dec. 6, 2015
//:://////////////////////////////////////////////
#include "nw_i0_spells"
#include "x2_i0_spells"
#include "x2_inc_switches"
#include "x2_inc_itemprop"
void main()
{
if( GetUserDefinedItemEventNumber() == X2_ITEM_EVENT_ACTIVATE )
{
if (GetLevelByClass(CLASS_TYPE_BLACKGUARD, OBJECT_SELF) < 1)
{
SendMessageToPC(OBJECT_SELF, "You must have at least 1 level of blackguard to use this item!");
return;
}
//Declare major variables
effect eVis = EffectVisualEffect(VFX_IMP_PULSE_NEGATIVE);
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_NEGATIVE);
int nMetaMagic = GetMetaMagicFeat();
int nCasterLvl = GetLevelByClass(CLASS_TYPE_BLACKGUARD, OBJECT_SELF);
int nDuration = 2 * nCasterLvl;
//Limit nCasterLvl to 20.
if(nCasterLvl > 20)
{
nCasterLvl = 20;
}
if (nMetaMagic == METAMAGIC_EXTEND)
{
nDuration = nDuration * 2; //Duration is +100%
}
object oTarget = GetItemActivatedTarget();
if(GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_CREATURE)
{
// Alter the right hand weapon equipped by the creature.
object oWeapon1 = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTarget);
if(GetIsObjectValid(oWeapon1))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon1))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon1));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon1), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon1, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the left hand weapon equipped by the creature.
object oWeapon2 = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget);
if(GetIsObjectValid(oWeapon2))
{
// If the PC has a melee weapon equipped.
if ( IPGetIsMeleeWeapon(oWeapon2))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon2));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon2), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon2, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
else
{
FloatingTextStrRefOnCreature(83615, OBJECT_SELF);
}
}
// Alter the right claw equipped by the creature.
object oWeapon3 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oTarget);
if(GetIsObjectValid(oWeapon3))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon3));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon3), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon3, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
// Alter the left claw equipped by the creature.
object oWeapon4 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oTarget);
if(GetIsObjectValid(oWeapon4))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon4));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon4), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon4, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
// Alter the bite equipped by the creature.
object oWeapon5 = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oTarget);
if(GetIsObjectValid(oWeapon5))
{
if (nDuration>0)
{
// haaaack: store caster level on item for the on hit spell to work properly
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, GetItemPossessor(oWeapon5));
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDur, GetItemPossessor(oWeapon5), TurnsToSeconds(nDuration));
IPSafeAddItemProperty(oWeapon5, ItemPropertyDamageBonus(IP_CONST_DAMAGETYPE_NEGATIVE, IP_CONST_DAMAGEBONUS_2d8), 1440.0);
}
}
}
else
{
SendMessageToPC(OBJECT_SELF, "You must target a creature!");
return;
}
}
}
Healing sting should now buff the caster when buffing an animal companion. However I did not have time to test it.
Enjoy!
Re: Spells to fix for Rose, so they target both wielded weapons.
Thx a million Rose
Ill be implementing it all right now
/tara
Ill be implementing it all right now
/tara
Re: Spells to fix for Rose, so they target both wielded weapons.
Well, I have a blackguard level on my toon Melissa, and after reclogging, I received my item to cast neg damage on weapons. However it does not work at all. No error messages or anything, it just does nothing. The script was a tag script, so perhaps the tag does not match, or was a typo. I hope you can fix this please. I tested these scripts after I made them, and they worked fine.
Re: Spells to fix for Rose, so they target both wielded weapons.
I ran over the script names and the tagnames for both assasin and blackguard powers and they were matching. However I noticed both spells seemed to be set to level >1 , which i now changed to >0 so basically it might have not functioned for level 1 blackguard before ?
Looking forward to feedback if it works now...
/tara
Looking forward to feedback if it works now...
/tara
Re: Spells to fix for Rose, so they target both wielded weapons.
Well, the blackguard item powers still do not work. I looked at the scripts again, and they are not set to level > 1, they are set to return if level < 1. Well, unless you changed them. Even if the player does not have the required level, there should be an error message. There was no message or anything, they just did nothing.
Re: Spells to fix for Rose, so they target both wielded weapons.
Weird, weird and even more weird. I'll look it over after work...
/tara
/tara
Re: Spells to fix for Rose, so they target both wielded weapons.
Hmm this MIGHT be the problem... Atleast its the only thing my little wannabee-scripter-brain could come up with as possible explanation.
Seemes the intire script is wrapped inside this IF , and our onactivate item setting is to merely activate any script directly matching the tag of activation item.
Void main
if( GetUserDefinedItemEventNumber() == X2_ITEM_EVENT_ACTIVATE
{
"Intire script"
}
Thus I'm doubtful if this event number actually activates in the module....
I've //'d them out now and restarted module and they combined just fine without, so see if it works now...
/tara
Seemes the intire script is wrapped inside this IF , and our onactivate item setting is to merely activate any script directly matching the tag of activation item.
Void main
if( GetUserDefinedItemEventNumber() == X2_ITEM_EVENT_ACTIVATE
{
"Intire script"
}
Thus I'm doubtful if this event number actually activates in the module....
I've //'d them out now and restarted module and they combined just fine without, so see if it works now...
/tara
Re: Spells to fix for Rose, so they target both wielded weapons.
Tag scripts need to be set to an item event, or they will function for all events: on equip, on unequip, on acquire, on unacquire, on hit cast, on spell cast at, and on activate. If you // the line out, the item will function for all those events, and not just on activate. That line is very important for all tag scripts, and can cause problems without it. For tag scripts, the name of the script must match exactly, the tag of the item used.