generated from Jaysyn/ModuleTemplate
903 lines
34 KiB
Plaintext
903 lines
34 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Example XP2 OnActivate Script Script
|
|
//:: x2_mod_def_act
|
|
//:: (c) 2003 Bioware Corp.
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
Put into: OnItemActivate Event
|
|
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Georg Zoeller
|
|
//:: Created On: 2003-07-16
|
|
//:://////////////////////////////////////////////
|
|
#include "habd_include"
|
|
#include "omw_plns"
|
|
#include "x2_inc_switches"
|
|
#include "wi_bof"
|
|
#include "zep_inc_phenos"
|
|
#include "prc_inc_spells"
|
|
|
|
void main()
|
|
{
|
|
object oItem = GetItemActivated();
|
|
object oTarget = GetItemActivatedTarget();
|
|
object oUser = GetItemActivator();
|
|
location lTarLoc = GetItemActivatedTargetLocation();
|
|
|
|
SetLocalObject(oUser, "ACTITEM", oItem);
|
|
SetLocalObject(oUser, "ACTTARGET", oTarget);
|
|
SetLocalLocation(oUser, "ACTTARLOC", lTarLoc);
|
|
|
|
ExecuteScript("dl_spell", oUser);
|
|
|
|
DeleteLocalObject(oUser, "ACTITEM");
|
|
DeleteLocalObject(oUser, "ACTTARGET");
|
|
DeleteLocalLocation(oUser, "ACTTARLOC");
|
|
|
|
if (PLNSToggleLootNotificationOnActivateItem(GetItemActivator(), GetItemActivated())) return;
|
|
|
|
|
|
// * Generic Item Script Execution Code
|
|
// * If MODULE_SWITCH_EXECUTE_TAGBASED_SCRIPTS is set to TRUE on the module,
|
|
// * it will execute a script that has the same name as the item's tag
|
|
// * inside this script you can manage scripts for all events by checking against
|
|
// * GetUserDefinedItemEventNumber(). See x2_it_example.nss
|
|
if (GetModuleSwitchValue(MODULE_SWITCH_ENABLE_TAGBASED_SCRIPTS) == TRUE)
|
|
{
|
|
SetUserDefinedItemEventNumber(X2_ITEM_EVENT_ACTIVATE);
|
|
int nRet = ExecuteScriptAndReturnInt(GetUserDefinedItemEventScriptName(oItem),OBJECT_SELF);
|
|
if (nRet == X2_EXECUTE_SCRIPT_END)
|
|
{
|
|
return;
|
|
}
|
|
if (HABDOnActivateItem(GetItemActivator(), GetItemActivatedTarget(), GetItemActivated())) return;
|
|
|
|
|
|
}
|
|
{
|
|
if ( GetTag( GetItemActivated() ) == "SleepActivatorToy")
|
|
{
|
|
if (GetLocalInt(GetModule(),"RestAllow") == 1)
|
|
{
|
|
SetLocalInt(GetModule(),"RestAllow",0);
|
|
SpeakString("Resting Disabled",TALKVOLUME_SHOUT);
|
|
return;
|
|
}
|
|
if (GetLocalInt(GetModule(),"RestAllow") == 0)
|
|
{
|
|
SetLocalInt(GetModule(),"RestAllow",1);
|
|
SpeakString("Resting Enabled",TALKVOLUME_SHOUT);
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
//::///////////////////////////////////////////////
|
|
//:: Name: activateitem
|
|
//:: FileName: activateitem.nss
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
|
|
This script will activate the Dungeon Master's Wand.
|
|
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Raven-Wolf
|
|
//:: Created On: January 16, 2004
|
|
//:://////////////////////////////////////////////
|
|
|
|
{
|
|
// Get activator, item, and target objects
|
|
object oActivator = GetItemActivator();
|
|
object oItem = GetItemActivated();
|
|
object oTarget = GetItemActivatedTarget();
|
|
string sItemTag = GetTag(oItem);
|
|
int nPoly = POLYMORPH_TYPE_RED_DRAGON;
|
|
int nDuration = PRCGetCasterLevel(oActivator);
|
|
effect eHealVis = EffectVisualEffect(VFX_IMP_POLYMORPH);
|
|
effect ePoly = EffectPolymorph(nPoly);
|
|
// This routine is for the Dungeon Master Wand.
|
|
if (GetTag(oItem) == "RwDmPolyWand")
|
|
{
|
|
|
|
// Make sure the Activator is a Dungeon Master.
|
|
if (GetIsDM(oActivator) == !TRUE)
|
|
{
|
|
|
|
// Activator not Dungeon Master, destroy object and send message.
|
|
SendMessageToPC(oActivator, "This item is not for you mortal!");
|
|
SendMessageToAllDMs("User tried to use an illegal copy of the\n" +
|
|
"Dungeon Master Polymorph Wand:\n" +
|
|
"Character Name: " + GetPCPlayerName(oActivator) +
|
|
"\nPlayer Name: " + GetName(oActivator));
|
|
DestroyObject(oItem, 0.0);
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
SetLocalObject(oActivator, "Target", oTarget); //Sets the Local Object as the Target, Player, NPC, or DM
|
|
AssignCommand(oActivator, ActionStartConversation(oActivator, "dm_wand_conv", TRUE));// Starts the Dm Wand Conversation
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
// Polymorph Ancient Blue Dragon
|
|
if (GetTag(GetItemActivated()) == "polyancientbluedragon")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ANCIENT_BLUE_DRAGON), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Ancient Green Dragon
|
|
if (GetTag(GetItemActivated()) == "polyancientgreendragon")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ANCIENT_GREEN_DRAGON), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Ancient Red Dragon
|
|
if (GetTag(GetItemActivated()) == "polyancientreddragon")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ANCIENT_RED_DRAGON), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Badger
|
|
if (GetTag(GetItemActivated()) == "polybadger")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BADGER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Balor
|
|
if (GetTag(GetItemActivated()) == "polybalor")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BALOR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Basilisk
|
|
if (GetTag(GetItemActivated()) == "polybasilisk")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BASILISK), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
|
|
// Polymorph Beholder
|
|
if (GetTag(GetItemActivated()) == "polybeholder")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BEHOLDER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Boar
|
|
if (GetTag(GetItemActivated()) == "polyboar")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BOAR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Brown Bear
|
|
if (GetTag(GetItemActivated()) == "polybrownbear")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_BROWN_BEAR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Celestial Avenger
|
|
if (GetTag(GetItemActivated()) == "polycelestialavenger")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_CELESTIAL_AVENGER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Chicken
|
|
if (GetTag(GetItemActivated()) == "polychicken")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_CHICKEN), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Cow
|
|
if (GetTag(GetItemActivated()) == "polycow")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_COW), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Death Slaad
|
|
if (GetTag(GetItemActivated()) == "polydeathslaad")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DEATH_SLAAD), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Badger
|
|
if (GetTag(GetItemActivated()) == "polydirebadger")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRE_BADGER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Boar
|
|
if (GetTag(GetItemActivated()) == "polydireboar")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRE_BOAR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Brown Bear
|
|
if (GetTag(GetItemActivated()) == "polydirebrownbear")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRE_BROWN_BEAR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Panther
|
|
if (GetTag(GetItemActivated()) == "polydirepanther")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRE_PANTHER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Wolf
|
|
if (GetTag(GetItemActivated()) == "polydirewolf")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRE_WOLF), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Dire Tiger
|
|
if (GetTag(GetItemActivated()) == "polydiretiger")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DIRETIGER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Doom Knight
|
|
if (GetTag(GetItemActivated()) == "polydoomknight")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DOOM_KNIGHT), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Drider
|
|
if (GetTag(GetItemActivated()) == "polydrider")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_DRIDER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Elder Air Elemental
|
|
if (GetTag(GetItemActivated()) == "polyelderairelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ELDER_AIR_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Elder Earth Elemental
|
|
if (GetTag(GetItemActivated()) == "polyelderearthelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ELDER_EARTH_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Elder Fire Elemental
|
|
if (GetTag(GetItemActivated()) == "polyelderfireelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ELDER_FIRE_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Elder Water Elemental
|
|
if (GetTag(GetItemActivated()) == "polyelderwaterelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ELDER_WATER_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Elder Air Elemental
|
|
if (GetTag(GetItemActivated()) == "polyelderairelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ELDER_AIR_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Female Drow
|
|
if (GetTag(GetItemActivated()) == "polyfemaledrow")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_FEMALE_DROW), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Fire Giant
|
|
if (GetTag(GetItemActivated()) == "polyfiregiant")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_FIRE_GIANT), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Frost Giant Female
|
|
if (GetTag(GetItemActivated()) == "polyfrostgiantfemale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_FROST_GIANT_FEMALE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Frost Giant Male
|
|
if (GetTag(GetItemActivated()) == "polyfrostgiantmale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_FROST_GIANT_MALE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Gargoyle
|
|
if (GetTag(GetItemActivated()) == "polygargoyle")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_GARGOYLE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Giant Spider
|
|
if (GetTag(GetItemActivated()) == "polygiantspider")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_GIANT_SPIDER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Golem Automaton
|
|
if (GetTag(GetItemActivated()) == "polygolemautomaton")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_GOLEM_AUTOMATON), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Harpy
|
|
if (GetTag(GetItemActivated()) == "polyharpy")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HARPY), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Heurodis
|
|
if (GetTag(GetItemActivated()) == "polyheurodis")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HEURODIS), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Huge Air Elemental
|
|
if (GetTag(GetItemActivated()) == "polyhugeairelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HUGE_AIR_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Huge Earth Elemental
|
|
if (GetTag(GetItemActivated()) == "polyhugeearthelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HUGE_EARTH_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Huge Fire Elemental
|
|
if (GetTag(GetItemActivated()) == "polyhugefireelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HUGE_FIRE_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Huge Water Elemental
|
|
if (GetTag(GetItemActivated()) == "polyhugewaterelemental")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_HUGE_WATER_ELEMENTAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Imp
|
|
if (GetTag(GetItemActivated()) == "polyimp")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_IMP), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Iron Golem
|
|
if (GetTag(GetItemActivated()) == "polyirongolem")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_IRON_GOLEM), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Jnah Giant Female
|
|
if (GetTag(GetItemActivated()) == "polyjnahgiantfemale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_JNAH_GIANT_FEMAL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Jnah Giant Male
|
|
if (GetTag(GetItemActivated()) == "polyjnahgiantmale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_JNAH_GIANT_MALE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Male Drow
|
|
if (GetTag(GetItemActivated()) == "polymaledrow")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_MALE_DROW), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Manticore
|
|
if (GetTag(GetItemActivated()) == "polymanticore")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_MANTICORE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Medusa
|
|
if (GetTag(GetItemActivated()) == "polymedusa")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_MEDUSA), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Mindflayer
|
|
if (GetTag(GetItemActivated()) == "polymindflayer")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_MINDFLAYER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Minotaur
|
|
if (GetTag(GetItemActivated()) == "polyminotaur")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_MINOTAUR), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Panther
|
|
if (GetTag(GetItemActivated()) == "polypanther")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_PANTHER), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Penguin
|
|
if (GetTag(GetItemActivated()) == "polypenguin")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_PENGUIN), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Pixie
|
|
if (GetTag(GetItemActivated()) == "polypixie")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_PIXIE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Quasit
|
|
if (GetTag(GetItemActivated()) == "polyquasit")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_QUASIT), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Red Dragon
|
|
if (GetTag(GetItemActivated()) == "polyreddragon")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_RED_DRAGON), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Risen Lord
|
|
if (GetTag(GetItemActivated()) == "polyrisenlord")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_RISEN_LORD), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Spectre
|
|
if (GetTag(GetItemActivated()) == "polyspectre")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_SPECTRE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Succubus
|
|
if (GetTag(GetItemActivated()) == "polysuccubus")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_SUCCUBUS), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Super Chicken
|
|
if (GetTag(GetItemActivated()) == "polysuperchicken")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_SUPER_CHICKEN), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Troll
|
|
if (GetTag(GetItemActivated()) == "polytroll")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_TROLL), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Umber Hulk
|
|
if (GetTag(GetItemActivated()) == "polyumberhulk")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_UMBER_HULK), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Vampire Female
|
|
if (GetTag(GetItemActivated()) == "polyvampirefemale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_VAMPIRE_FEMALE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Vampire Male
|
|
if (GetTag(GetItemActivated()) == "polyvampiremale")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_VAMPIRE_MALE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Vrock
|
|
if (GetTag(GetItemActivated()) == "polyvrock")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_VROCK), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Werecat
|
|
if (GetTag(GetItemActivated()) == "polywerecat")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WERECAT), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wererat
|
|
if (GetTag(GetItemActivated()) == "polywererat")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WERERAT), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Werewolf
|
|
if (GetTag(GetItemActivated()) == "polywerewolf")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WEREWOLF), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wolf
|
|
if (GetTag(GetItemActivated()) == "polywolf")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WOLF), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wyrmling Black
|
|
if (GetTag(GetItemActivated()) == "polywyrmlingblack")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WYRMLING_BLACK), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wyrmling Blue
|
|
if (GetTag(GetItemActivated()) == "polywyrmlingblue")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WYRMLING_BLUE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wyrmling Green
|
|
if (GetTag(GetItemActivated()) == "polywyrmlinggreen")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WYRMLING_GREEN), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wyrmling Red
|
|
if (GetTag(GetItemActivated()) == "polywyrmlingred")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WYRMLING_RED), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Wyrmling White
|
|
if (GetTag(GetItemActivated()) == "polywyrmlingwhite")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_WYRMLING_WHITE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Yuanti
|
|
if (GetTag(GetItemActivated()) == "polyyuanti")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_YUANTI), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
// Polymorph Zombie
|
|
if (GetTag(GetItemActivated()) == "polyzombie")// Change to tag of unique item you create.
|
|
{
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectPolymorph(POLYMORPH_TYPE_ZOMBIE), oActivator, HoursToSeconds(nDuration));
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT,eHealVis, oActivator);
|
|
|
|
return;
|
|
}
|
|
|
|
//::///////////////////////////////////////////////
|
|
//:: OnActivateItem
|
|
//:://////////////////////////////////////////////
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: 69_Jeremy_69
|
|
//:: Created On: April 25, 2003
|
|
//:://////////////////////////////////////////////
|
|
|
|
|
|
{
|
|
if(GetTag(GetItemActivated())=="ROGUE_GARROTE")
|
|
{
|
|
SetLocalInt(GetItemActivator(),"ROGUE_ITEM",1);
|
|
SetLocalObject(GetItemActivator(),"ROGUE_ITEM",GetItemActivatedTarget());
|
|
ExecuteScript("rogue_inc",GetItemActivator());
|
|
return;
|
|
}
|
|
|
|
object oItem = GetItemActivated();
|
|
object oPC = GetItemActivator();
|
|
string sItemTag = GetTag(oItem);
|
|
|
|
if (sItemTag == "DyeKit") AssignCommand(oPC, ActionStartConversation(oPC, "dye_dyekit", TRUE));
|
|
|
|
object item = GetItemActivated(); // get item used
|
|
|
|
if(GetTag(item) == "wi_bead_of_force")
|
|
wi_bof_effect(GetItemActivator(), GetItemActivatedTargetLocation());
|
|
|
|
if(GetTag(GetItemActivated())=="SubdualModeTog")
|
|
AssignCommand(GetItemActivator(),ActionStartConversation(GetItemActivator(),"subdualconv",TRUE));
|
|
|
|
//section for mounting / dismounting horses
|
|
|
|
if (GetTag (GetItemActivated ()) == "HorseTether")
|
|
{zep_Dismount (oPC, "HorseTether");}
|
|
object oTarget;
|
|
oTarget = GetObjectByTag("HorseTether");
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
// check if the item is the weather wand
|
|
if (GetTag(GetItemActivated()) == "obj_wand_weather")
|
|
// run the weather wand conversation privately with the activator
|
|
AssignCommand(GetItemActivator(), ActionStartConversation(GetItemActivator(), "con_wand_weather", TRUE, FALSE));
|
|
|
|
|
|
}}}
|