string sSayThis; int iTalkVolume = TALKVOLUME_TALK; int iTalkFlag = 0; #include "NW_I0_Plot" #include "in_e_specialvfx" void main() { string oItemTag = GetTag(GetItemActivated()); if (oItemTag == "NW_IT_RECALL") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_1") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_2") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_3") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_4") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_5") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_6") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_7") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_RECALL_8") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_HOB_HRS") { object oPC = GetItemActivator(); object oArea = GetArea (oPC); object oPortal = GetNearestObjectByTag("RHUN_CRBL_PORT", oPC); { if (oPortal == OBJECT_INVALID){ //Do Nothing } else { DestroyObject(oPortal);} } vector vPosition = GetPosition (oPC); float fOrientation = GetFacing (oPC); location lSpawn = Location (oArea, vPosition, fOrientation); AssignCommand(oPC, ClearAllActions(TRUE)); AssignCommand(oPC, PlaySound("as_mg_telepout1")); CreateObject(OBJECT_TYPE_PLACEABLE, "crystal_portal", lSpawn, TRUE);} else if (oItemTag == "RHUN_CRYSBALL") { object oPC = GetItemActivator(); object oArea = GetArea (oPC); object oPortal = GetNearestObjectByTag("RHUN_CRBL_PORT", oPC); { if (oPortal == OBJECT_INVALID){ //Do Nothing } else { DestroyObject(oPortal);} } vector vPosition = GetPosition (oPC); float fOrientation = GetFacing (oPC); location lSpawn = Location (oArea, vPosition, fOrientation); AssignCommand(oPC, ClearAllActions(TRUE)); AssignCommand(oPC, PlaySound("as_mg_telepout1")); CreateObject(OBJECT_TYPE_PLACEABLE, "crystal_portal", lSpawn, TRUE);} else if (oItemTag == "RHUN_OBPC_1") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_2") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_3") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_4") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_5") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_6") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_7") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_8") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_OBPC_9") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_PARTREC") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; SendMessageToPC(oTaerJ, sSayThis);} else if (oItemTag == "RHUN_CURALL") { object oUser; effect eHeal; effect eHealVis = EffectVisualEffect(VFX_IMP_HEALING_S); int nCurrentHitPoints, nMaxHitPoints, nVisualEffectId; oUser = GetItemActivator(); nMaxHitPoints = GetMaxHitPoints(oUser); nCurrentHitPoints = GetCurrentHitPoints(oUser); if ( nCurrentHitPoints < nMaxHitPoints ) { eHeal = EffectHeal(nMaxHitPoints - nCurrentHitPoints); ApplyEffectToObject( DURATION_TYPE_INSTANT, eHeal, oUser ); ApplyEffectToObject( DURATION_TYPE_INSTANT, eHealVis, oUser );}} else if (oItemTag == "RHUN_RESTSIT") { object oUser; oUser = GetItemActivator(); AssignCommand(oUser, ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS, 0.5, 9999.0));} else if (oItemTag == "Drum") { ExecuteScript("bardsongonact", GetItemActivator());} else if (oItemTag == "Mandolin") { ExecuteScript("bardsongonact", GetItemActivator());} else if (oItemTag == "Pipes") { ExecuteScript("bardsongonact", GetItemActivator());} else if (oItemTag == "Horn") { ExecuteScript("bardsongonact", GetItemActivator());} else if (oItemTag == "Harp") { ExecuteScript("bardsongonact", GetItemActivator());} else if (oItemTag == "RHUN_TAL_TAN") { object oClicker = GetItemActivator(); object oHench = GetHenchman(oClicker); { if (GetTag(oHench) == "RHUN_SUDEMON"){ string sSayThis; int iTalkVolume = TALKVOLUME_TALK; int iTalkFlag = 0; sSayThis = "I can only summon one demon at a time."; AssignCommand(oClicker, ClearAllActions(TRUE)); AssignCommand(oClicker, ActionSpeakString(sSayThis, iTalkVolume));} else { string sSayThis; int iTalkVolume = TALKVOLUME_TALK; int iTalkFlag = 0; object oDemon = CreateObject(OBJECT_TYPE_CREATURE, "balsum", GetLocation(oClicker), FALSE); sSayThis = "I call forth upon you to do my bidding!"; AssignCommand(oClicker, ClearAllActions(TRUE)); AssignCommand(oClicker, ActionSpeakString(sSayThis, iTalkVolume)); AddHenchman(oClicker, oDemon); AdjustAlignment(oClicker, ALIGNMENT_EVIL, 3); ApplyEffectAtLocation(DURATION_TYPE_PERMANENT, EffectVisualEffect(VFX_IMP_UNSUMMON), GetLocation(oDemon));}}} else if (oItemTag == "PCList3") { object oActivator = GetItemActivator(); AssignCommand(oActivator, ActionStartConversation(oActivator, "c_pcl_activate", TRUE));} else if (oItemTag == "PCList2") { object oActivator = GetItemActivator(); AssignCommand(oActivator, ActionStartConversation(oActivator, "c_pcl_activate2", TRUE));} else if (oItemTag == "TAER_PRISTNCR") { object oTaerJ = GetItemActivator(); sSayThis = "You cannot use this item when you are in combat."; AssignCommand(oTaerJ, ClearAllActions(TRUE)); AssignCommand(oTaerJ, ActionSpeakString(sSayThis, iTalkVolume));} else if (oItemTag == "SHA_EYEOFMOON") { object oEmitter = GetItemActivator(); object FocusPT; float fdur = 7.5; if(GetTag(GetArea(oEmitter)) == "VelkyncheelTrezin") { FocusPT = GetWaypointByTag("FocusTrezin"); } else if(GetTag(GetArea(oEmitter)) == "VelkyncheelTreznt") { FocusPT = GetWaypointByTag("FocusTreznt"); } else if(GetTag(GetArea(oEmitter)) == "VelkyncheelWernin") { FocusPT = GetWaypointByTag("FocusWermin"); } else if(GetTag(GetArea(oEmitter)) == "VelkyncheelWernnt") { FocusPT = GetWaypointByTag("FocusWernnt"); } else if(GetTag(GetArea(oEmitter)) == "TempleofShar") { //Damage Lady NightBringer for some positive damage. FocusPT = GetObjectByTag("SHA_SHARALTAR"); fdur = 4.5; } else { AssignCommand(oEmitter, SpeakString("The Eye of Moon does not seem to function here.")); return; } vector v1 = GetPosition(oEmitter); vector v2 = GetPosition(FocusPT); VFXTrace(v1, v2, fdur, oEmitter, VFX_FNF_DISPEL, 1.7); AssignCommand(oEmitter, SpeakString("A magical light leads the way to the source of Shar's evils.")); } else if (oItemTag == "stoneofappraisal") { object oPC = GetItemActivator(); sSayThis = "You are in combat! Now is no time for an appraisal!"; SendMessageToPC(oPC, sSayThis);} else if( oItemTag == "SHA_DROW_ACADEMY_RECALL") { ExecuteScript("drow_academy_rcl", GetModule()); } else if(oItemTag == "rude_vamprecall") { ExecuteScript("vamprecall", GetModule()); } else if( oItemTag == "rude_werecatrecall") { ExecuteScript("werecatrecall", GetModule()); } else if( oItemTag == "POTION_OF_BLOOD") { ExecuteScript("sha_potion_blood", GetModule()); } else if (oItemTag == "sha_grt_eye") { AssignCommand(GetItemActivator(), ActionStartConversation(GetItemActivator(), "sha_grt_eye", TRUE, FALSE)); } else if(FindSubString(oItemTag, "SHA_HOUSE_INSIGNIA") >= 0) { ExecuteScript("drow_house_rcl", GetModule()); } else if(FindSubString(oItemTag, "SHA_SLAVEMAKER") >= 0) { ExecuteScript("s_slavemaker", GetModule()); } else if(FindSubString(oItemTag, "SHA_EPICBAG_BROOCH") >=0) { ExecuteScript("sha_epicbags", GetModule()); } else { SendMessageToPC(GetItemActivator(), "You cannot use this item at this moment."); } }