Encounter work continues
Encounter work continues. Created or modified UTCs for randomized human pirates, sirines & Marty the Imp. Created random encounter tables for "Foothills" & "Beaches".
This commit is contained in:
		| @@ -32,21 +32,21 @@ | ||||
| //  to be generated if the "SET_NAME" is set to "RANDOM". | ||||
| // | ||||
| //  eg.  Male Dwarven Villager becomes Gloigan Stonecutter or Rufus Mason. | ||||
| //  | ||||
| // | ||||
| //  "TITLE": Prepends the defined string to the NPCs name. | ||||
| // | ||||
| //		eg. "Lord" Brown | ||||
| //      eg. "Lord" Brown | ||||
| // | ||||
| //  "POSTFIX": Appends the defind string after the NPC's name. | ||||
| // | ||||
| //  	eg. Ralph "the Guard" | ||||
| //      eg. Ralph "the Guard" | ||||
| // | ||||
|  | ||||
|  | ||||
|     "RND_ROGUE" | ||||
|     "RND_BARBARIAN" | ||||
|     "RND_FIGHTER" | ||||
|     "RND_CLERIC"    : Setting these to "1" will give the NPC a randomized class  | ||||
|     "RND_CLERIC"    : Setting these to "1" will give the NPC a randomized class | ||||
|     "RND_MAGE"      : appropriate postfix | ||||
|     "RND_DRUID" | ||||
|     "RND_RANGER" | ||||
| @@ -55,7 +55,7 @@ | ||||
| // | ||||
| // | ||||
| //////////////////////////////////////////////////////////////////////////////*/ | ||||
| #include "prc_inc_racial" | ||||
| //#include "prc_inc_racial" | ||||
|  | ||||
| //void main (){} | ||||
|  | ||||
| @@ -340,7 +340,7 @@ void ms_Nomenclature(object oNPC = OBJECT_SELF) | ||||
| string ms_RandomFirstName(object oNPC = OBJECT_SELF) | ||||
| { | ||||
|     int Gender   = GetGender(oNPC); | ||||
|     int Race     = MyPRCGetRacialType(oNPC); | ||||
|     int Race     = GetRacialType(oNPC); | ||||
|  | ||||
|     string Name; | ||||
|  | ||||
| @@ -386,7 +386,7 @@ string ms_RandomFirstName(object oNPC = OBJECT_SELF) | ||||
|  | ||||
| string ms_RandomLastName(object oNPC = OBJECT_SELF) | ||||
| { | ||||
|     int Race     = MyPRCGetRacialType(oNPC); | ||||
|     int Race     = GetRacialType(oNPC); | ||||
|  | ||||
|     string Name; | ||||
|  | ||||
|   | ||||
| @@ -197,3 +197,59 @@ void RndFighterArmor(object oNPC) | ||||
|         oItem = GetNextItemInInventory(OBJECT_SELF); | ||||
|     } | ||||
| } | ||||
|  | ||||
| void RndPirateArmor(object oNPC) | ||||
| { | ||||
|     //Randomizes Armor | ||||
|  | ||||
|     int nResult = d6(1); | ||||
|     int nStackSize = 1; // Create 1 items; | ||||
|  | ||||
|     string sItem; | ||||
|  | ||||
|     if (nResult == 1) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE1"; | ||||
|         } | ||||
|     else if(nResult == 2) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE2"; | ||||
|         } | ||||
|     else if(nResult == 3) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE3"; | ||||
|         } | ||||
|     else if(nResult == 4) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE4"; | ||||
|         } | ||||
|     else if(nResult == 5) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE5"; | ||||
|         } | ||||
|     else if(nResult == 6) | ||||
|         { | ||||
|             sItem = "RA_ALTSL_PIRATE5"; | ||||
|         } | ||||
|     else | ||||
|         sItem = "RA_ALTSL_PIRATE6"; | ||||
|  | ||||
|     CreateItemOnObject(sItem, oNPC, nStackSize); | ||||
|  | ||||
|         // Loop the object's inventory and equip the first | ||||
|     object oItem = GetFirstItemInInventory(oNPC); | ||||
|     while(GetIsObjectValid(oItem)) | ||||
|     { | ||||
|         // Check if armor, of course | ||||
|         if(GetBaseItemType(oItem) == BASE_ITEM_ARMOR) | ||||
|         { | ||||
|             // Equip it and stop the script | ||||
|             DelayCommand(0.1f, ActionEquipItem(oItem, INVENTORY_SLOT_CHEST)); | ||||
|             DelayCommand(0.2f, SetDroppableFlag(oItem, FALSE)); | ||||
|             return; | ||||
|         } | ||||
|  | ||||
|         oItem = GetNextItemInInventory(oNPC); | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
							
								
								
									
										492
									
								
								_module/nss/ra_rnd_pirat_spw.nss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										492
									
								
								_module/nss/ra_rnd_pirat_spw.nss
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,492 @@ | ||||
| //:://///////////////////////////////////////////// | ||||
| //:: Name ra_rnd_pirat_spw | ||||
| //:: Copyright (c) 2001 Bioware Corp. | ||||
| //:: Copyright (c) NWN Dark Sun | ||||
| //::////////////////////////////////////////////// | ||||
| /* | ||||
|     Default On Spawn script | ||||
|  | ||||
|  | ||||
|     2003-07-28: Georg Zoeller: | ||||
|  | ||||
|     If you set a ninteger on the creature named | ||||
|     "X2_USERDEFINED_ONSPAWN_EVENTS" | ||||
|     The creature will fire a pre and a post-spawn | ||||
|     event on itself, depending on the value of that | ||||
|     variable | ||||
|     1 - Fire Userdefined Event 1510 (pre spawn) | ||||
|     2 - Fire Userdefined Event 1511 (post spawn) | ||||
|     3 - Fire both events | ||||
|  | ||||
|     2007-12-31: Deva Winblood | ||||
|     Modified to look for X3_HORSE_OWNER_TAG and if | ||||
|     it is defined look for an NPC with that tag | ||||
|     nearby or in the module (checks near first). | ||||
|     It will make that NPC this horse's master. | ||||
|  | ||||
| */ | ||||
| //::////////////////////////////////////////////// | ||||
| //:: Created By: Keith Warner, Georg Zoeller | ||||
| //:: Created On: June 11/03 | ||||
| //::////////////////////////////////////////////// | ||||
|  | ||||
| const int EVENT_USER_DEFINED_PRESPAWN = 1510; | ||||
| const int EVENT_USER_DEFINED_POSTSPAWN = 1511; | ||||
|  | ||||
| #include "NW_I0_GENERIC" | ||||
| #include "ms_name_inc" | ||||
| #include "x2_inc_switches" | ||||
| #include "rnd_commoner_inc" | ||||
| #include "ra_rnd_armor_inc" | ||||
|  | ||||
| void ShrinkEm(object oPC) | ||||
| { | ||||
|     SetObjectVisualTransform(oPC, OBJECT_VISUAL_TRANSFORM_SCALE, 0.5f); | ||||
| } | ||||
|  | ||||
| void GrowEm(object oPC) | ||||
| { | ||||
|     SetObjectVisualTransform(oPC, OBJECT_VISUAL_TRANSFORM_SCALE, 1.5f); | ||||
| } | ||||
|  | ||||
| void main() | ||||
| { | ||||
|     string sTag; | ||||
|     object oNPC; | ||||
|     // User defined OnSpawn event requested? | ||||
|     int nSpecEvent = GetLocalInt(OBJECT_SELF,"X2_USERDEFINED_ONSPAWN_EVENTS"); | ||||
|  | ||||
|  | ||||
|     // Pre Spawn Event requested | ||||
|     if (nSpecEvent == 1  || nSpecEvent == 3  ) | ||||
|     { | ||||
|     SignalEvent(OBJECT_SELF,EventUserDefined(EVENT_USER_DEFINED_PRESPAWN )); | ||||
|     } | ||||
|  | ||||
| //:: Initialize Mount System | ||||
|     sTag=GetLocalString(OBJECT_SELF,"X3_HORSE_OWNER_TAG"); | ||||
|     if (GetStringLength(sTag)>0) | ||||
|     { // look for master | ||||
|         oNPC=GetNearestObjectByTag(sTag); | ||||
|         if (GetIsObjectValid(oNPC)&&GetObjectType(oNPC)==OBJECT_TYPE_CREATURE) | ||||
|         { // master found | ||||
|             AddHenchman(oNPC); | ||||
|         } // master found | ||||
|         else | ||||
|         { // look in module | ||||
|             oNPC=GetObjectByTag(sTag); | ||||
|             if (GetIsObjectValid(oNPC)&&GetObjectType(oNPC)==OBJECT_TYPE_CREATURE) | ||||
|             { // master found | ||||
|                 AddHenchman(oNPC); | ||||
|             } // master found | ||||
|             else | ||||
|             { // master does not exist - remove X3_HORSE_OWNER_TAG | ||||
|                 DeleteLocalString(OBJECT_SELF,"X3_HORSE_OWNER_TAG"); | ||||
|             } // master does not exist - remove X3_HORSE_OWNER_TAG | ||||
|         } // look in module | ||||
|     } // look for master | ||||
|  | ||||
|  | ||||
|     //:: Sets a random integer on the creature to use with other spell functions | ||||
|  | ||||
|     string sImmune = GetName(OBJECT_SELF)+"_AURA_IMMUNE"; | ||||
|     int nRandomSeed = Random(999); | ||||
|     SetLocalInt(OBJECT_SELF, sImmune, nRandomSeed); | ||||
|  | ||||
| //:: Creature will quickly & automatically buff itself up with any defensive | ||||
| //:: spells it has memorized. | ||||
|  | ||||
|     int nAutobuff = GetLocalInt(OBJECT_SELF,"AUTOBUFF"); | ||||
|     if (nAutobuff > 0 ) | ||||
|     { | ||||
|         SetSpawnInCondition(NW_FLAG_FAST_BUFF_ENEMY); | ||||
|     } | ||||
|  | ||||
| //:: Creature will flee those that close within 7m if they are not friends, | ||||
| //:: Rangers or Druids. | ||||
|  | ||||
|     int nHerbivore = GetLocalInt(OBJECT_SELF,"CREATURE_VAR_HERBIVORE"); | ||||
|     if (nHerbivore > 0 ) | ||||
|     { | ||||
|         SetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL); | ||||
|         SetBehaviorState(NW_FLAG_BEHAVIOR_HERBIVORE); | ||||
|     } | ||||
|  | ||||
| //:: Creature will only attack those that close within 5m and are not friends, | ||||
| //:: Rangers or Druids. | ||||
|  | ||||
|     int nOmnivore = GetLocalInt(OBJECT_SELF,"CREATURE_VAR_OMNIVORE"); | ||||
|     if (nOmnivore > 0 ) | ||||
|     { | ||||
|         SetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL); | ||||
|         SetBehaviorState(NW_FLAG_BEHAVIOR_OMNIVORE); | ||||
|     } | ||||
|  | ||||
|     int nOLM = GetLocalInt(OBJECT_SELF,"OLM"); | ||||
|     if (nOLM > 0) | ||||
|     { | ||||
|         DelayCommand(0.0f, ShrinkEm(OBJECT_SELF)); | ||||
|  | ||||
|         effect eSlow = EffectMovementSpeedDecrease(50); | ||||
|         eSlow = SupernaturalEffect(eSlow); | ||||
|         eSlow = ExtraordinaryEffect(eSlow); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eSlow,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nHuge = GetLocalInt(OBJECT_SELF,"HUGE"); | ||||
|     if (nHuge > 0) | ||||
|     { | ||||
|         DelayCommand(0.0f, GrowEm(OBJECT_SELF)); | ||||
|  | ||||
|     } | ||||
|  | ||||
|    int nNoStun = GetLocalInt(OBJECT_SELF,"NOSTUN"); | ||||
|     if (nNoStun > 0) | ||||
|     { | ||||
|         effect eNoStun = EffectImmunity(IMMUNITY_TYPE_STUN); | ||||
|         eNoStun = SupernaturalEffect(eNoStun); | ||||
|         eNoStun = ExtraordinaryEffect(eNoStun); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNoStun,OBJECT_SELF)); | ||||
|     } | ||||
|     int nNatInvis = GetLocalInt(OBJECT_SELF,"NATURAL_INVIS"); | ||||
|     if (nNatInvis > 0) | ||||
|     { | ||||
|         effect eNatInvis = EffectInvisibility(4); | ||||
|         eNatInvis = SupernaturalEffect(eNatInvis); | ||||
|         eNatInvis = ExtraordinaryEffect(eNatInvis); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNatInvis,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nNoSleep = GetLocalInt(OBJECT_SELF,"NOSLEEP"); | ||||
|     if (nNoSleep > 0) | ||||
|     { | ||||
|         effect eNoSleep = EffectImmunity(IMMUNITY_TYPE_SLEEP); | ||||
|         eNoSleep = SupernaturalEffect(eNoSleep); | ||||
|         eNoSleep = ExtraordinaryEffect(eNoSleep); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNoSleep,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nNoDaze = GetLocalInt(OBJECT_SELF,"NODAZE"); | ||||
|     if (nNoDaze > 0) | ||||
|     { | ||||
|         effect eNoDaze = EffectImmunity(IMMUNITY_TYPE_DAZED); | ||||
|         eNoDaze = SupernaturalEffect(eNoDaze); | ||||
|         eNoDaze = ExtraordinaryEffect(eNoDaze); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNoDaze,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nNoBlind = GetLocalInt(OBJECT_SELF,"NOBLIND"); | ||||
|     if (nNoBlind > 0) | ||||
|     { | ||||
|         effect eNoBlind = EffectImmunity(IMMUNITY_TYPE_BLINDNESS); | ||||
|         eNoBlind = SupernaturalEffect(eNoBlind); | ||||
|         eNoBlind = ExtraordinaryEffect(eNoBlind); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNoBlind,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nNoDeaf = GetLocalInt(OBJECT_SELF,"NODEAF"); | ||||
|     if (nNoDeaf > 0) | ||||
|     { | ||||
|         effect eNoDeaf = EffectImmunity(IMMUNITY_TYPE_DEAFNESS); | ||||
|         eNoDeaf = SupernaturalEffect(eNoDeaf); | ||||
|         eNoDeaf = ExtraordinaryEffect(eNoDeaf); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eNoDeaf,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     int nDeaf = GetLocalInt(OBJECT_SELF,"IS_DEAF"); | ||||
|     if (nDeaf > 0) | ||||
|     { | ||||
|         effect eDeaf = EffectDeaf(); | ||||
|         eDeaf = SupernaturalEffect(eDeaf); | ||||
|         eDeaf = ExtraordinaryEffect(eDeaf); | ||||
|         DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eDeaf,OBJECT_SELF)); | ||||
|     } | ||||
|  | ||||
|     /*  Fix for the new golems to reduce their number of attacks */ | ||||
|  | ||||
|     int nNumber = GetLocalInt(OBJECT_SELF,CREATURE_VAR_NUMBER_OF_ATTACKS); | ||||
|     if (nNumber >0 ) | ||||
|     { | ||||
|         SetBaseAttackBonus(nNumber); | ||||
|     } | ||||
|  | ||||
|      int nVFX = GetLocalInt(OBJECT_SELF,"SpawnVFX"); | ||||
|     if(nVFX) | ||||
|         { | ||||
|             ApplyEffectToObject(DURATION_TYPE_PERMANENT,SupernaturalEffect(EffectVisualEffect(nVFX)),OBJECT_SELF); | ||||
|         } | ||||
|  | ||||
|     int nRegen = GetLocalInt(OBJECT_SELF,"FAST_HEALING"); | ||||
|     if(nRegen) | ||||
|         { | ||||
|             effect eRegen = EffectRegenerate(nRegen, 6.0f); | ||||
|             eRegen = SupernaturalEffect(eRegen); | ||||
|             eRegen = ExtraordinaryEffect(eRegen); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT, eRegen, OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|     int nShadowy = GetLocalInt(OBJECT_SELF,"SHADOWY"); | ||||
|     if (nShadowy) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_PROT_SHADOW_ARMOR); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|     int nStony = GetLocalInt(OBJECT_SELF,"STONY"); | ||||
|     if (nStony) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_PROT_STONESKIN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     int nFirey = GetLocalInt(OBJECT_SELF,"FIREY"); | ||||
|     if (nFirey) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_INFERNO_NO_SOUND); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     int nWoody = GetLocalInt(OBJECT_SELF,"WOODY"); | ||||
|     if (nWoody) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_PROT_BARKSKIN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|     int nConcealed20 = GetLocalInt(OBJECT_SELF,"CONCEALED20"); | ||||
|     if (nConcealed20) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_BLUR ); | ||||
|             effect eConceal = EffectConcealment(20, 0); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|     int nConcealed50 = GetLocalInt(OBJECT_SELF,"CONCEALED50"); | ||||
|     if (nConcealed50) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_BLUR ); | ||||
|             effect eConceal = EffectConcealment(50, 0); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|         int nIcy = GetLocalInt(OBJECT_SELF,"ICY"); | ||||
|     if (nIcy) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_ICESKIN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
|     int nSR = GetLocalInt(OBJECT_SELF,"SPELL_RESISTANCE"); | ||||
|     if ( nSR ) | ||||
|     { | ||||
|         effect eSR = EffectSpellResistanceIncrease(nSR); | ||||
|         eSR = SupernaturalEffect(eSR); | ||||
|         eSR = ExtraordinaryEffect(eSR); | ||||
|         ApplyEffectToObject(DURATION_TYPE_PERMANENT,eSR,OBJECT_SELF); | ||||
|     } | ||||
|  | ||||
|     int nAttackBonus = GetLocalInt(OBJECT_SELF,"ATTACK_BONUS"); | ||||
|     if ( nAttackBonus ) | ||||
|     { | ||||
|         effect eAttack = EffectAttackIncrease(nAttackBonus); | ||||
|         eAttack = SupernaturalEffect(eAttack); | ||||
|         eAttack = ExtraordinaryEffect(eAttack); | ||||
|         ApplyEffectToObject(DURATION_TYPE_PERMANENT,eAttack,OBJECT_SELF); | ||||
|     } | ||||
|  | ||||
|     int nAcidShield = GetLocalInt(OBJECT_SELF,"ACID_SHIELD"); | ||||
|     if ( nAcidShield ) | ||||
|     { | ||||
|         effect eShield = EffectDamageShield(0,DAMAGE_BONUS_1d8,DAMAGE_TYPE_ACID); | ||||
|         eShield = SupernaturalEffect(eShield); | ||||
|         eShield = ExtraordinaryEffect(eShield); | ||||
|         ApplyEffectToObject(DURATION_TYPE_PERMANENT,eShield,OBJECT_SELF); | ||||
|     } | ||||
|  | ||||
|     int nSerratedEdge = GetLocalInt(OBJECT_SELF,"SERRATED_EDGE"); | ||||
|     if ( nSerratedEdge ) | ||||
|     { | ||||
|         effect eShield = EffectDamageShield(0,DAMAGE_BONUS_1d6,DAMAGE_TYPE_SLASHING); | ||||
|         eShield = SupernaturalEffect(eShield); | ||||
|         eShield = ExtraordinaryEffect(eShield); | ||||
|         ApplyEffectToObject(DURATION_TYPE_PERMANENT,eShield,OBJECT_SELF); | ||||
|     } | ||||
|  | ||||
|     int nSpikedArmor = GetLocalInt(OBJECT_SELF,"SPIKED_ARMOR"); | ||||
|     if ( nSpikedArmor ) | ||||
|     { | ||||
|         effect eShield = EffectDamageShield(0,DAMAGE_BONUS_1d4,DAMAGE_TYPE_PIERCING); | ||||
|         eShield = SupernaturalEffect(eShield); | ||||
|         eShield = ExtraordinaryEffect(eShield); | ||||
|         ApplyEffectToObject(DURATION_TYPE_PERMANENT,eShield,OBJECT_SELF); | ||||
|     } | ||||
|  | ||||
|     int nGlow = GetLocalInt (OBJECT_SELF,"GLOW_COLOR"); | ||||
|     if (nGlow == 1) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_BLUE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 2) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_BROWN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 3) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_GREEN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 4) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_GREY); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 5) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_BLUE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 6) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_BROWN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 7) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_GREEN); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 8) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_ORANGE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 9) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_PURPLE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 10) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_RED); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 11) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_LIGHT_YELLOW); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 12) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_ORANGE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 13) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_PURPLE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 14) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_RED); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 15) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_WHITE); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|     else if (nGlow == 16) | ||||
|         { | ||||
|             effect eVis = EffectVisualEffect(VFX_DUR_GLOW_YELLOW); | ||||
|             eVis = SupernaturalEffect(eVis); | ||||
|             eVis = ExtraordinaryEffect(eVis); | ||||
|             DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_PERMANENT,eVis,OBJECT_SELF)); | ||||
|         } | ||||
|  | ||||
| // Check for randomizations. | ||||
|  | ||||
|     ms_Nomenclature(OBJECT_SELF); | ||||
|  | ||||
|     int nKeepskin = GetLocalInt(OBJECT_SELF,"RA_KEEPSKIN"); | ||||
|         if (nKeepskin != 1) | ||||
|             { | ||||
|                 rnd_skin(OBJECT_SELF); | ||||
|             } | ||||
|  | ||||
|     rnd_skin(OBJECT_SELF); | ||||
|  | ||||
|     int nKeephead = GetLocalInt(OBJECT_SELF,"RA_KEEPHEAD"); | ||||
|         if (nKeephead != 1) | ||||
|             { | ||||
|                 rnd_head(OBJECT_SELF); | ||||
|             } | ||||
|  | ||||
|     int nKeeptats = GetLocalInt(OBJECT_SELF,"RA_KEEPTATS"); | ||||
|         if (nKeeptats != 1) | ||||
|             { | ||||
|                 rnd_tattoo(OBJECT_SELF); | ||||
|             } | ||||
|  | ||||
| //:: Randomize Armor | ||||
|     RndPirateArmor(OBJECT_SELF); | ||||
|     ActionEquipMostEffectiveArmor(); | ||||
|  | ||||
|  | ||||
|     // Execute default OnSpawn script. | ||||
|     ExecuteScript("nw_c2_default9", OBJECT_SELF); | ||||
|  | ||||
|     // Execute PRC OnSpawn script. | ||||
|     ExecuteScript("prc_npc_spawn", OBJECT_SELF); | ||||
|  | ||||
|  | ||||
|     //Post Spawn event requeste | ||||
|     if (nSpecEvent == 2 || nSpecEvent == 3) | ||||
|     { | ||||
|     SignalEvent(OBJECT_SELF,EventUserDefined(EVENT_USER_DEFINED_POSTSPAWN)); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -4629,7 +4629,537 @@ at night. */ | ||||
|     } | ||||
| //:: Foothills Random Encounters | ||||
|  | ||||
|   | ||||
| /* Beach Wandering Monsters | ||||
| Check for encounters at 4 a.m. (just before dawn), 9 a.m., noon, dusk, 9 p.m., | ||||
| and midnight. Encounters occur on a roll of 1 on 1d20. If an encounter is  | ||||
| indicated, roll 1d10 using the table below.  */ | ||||
|  | ||||
| //:: Beach Random Encounters | ||||
|     if (sCamp == "beach") | ||||
|     { | ||||
| 		int nPirateChance = d10(1); | ||||
|         int nSpawn = Random(10) + 1; | ||||
| 		 | ||||
|         switch (nSpawn) | ||||
|         { | ||||
|             case 1:	case 2: | ||||
| 			//:: Merchant ship (off coast) | ||||
| 			{ | ||||
| 			//:: Not sure how to handle this one yet. | ||||
|             break; | ||||
| 			} | ||||
| 			//:: Merchant ship (off coast)	 | ||||
| 			 | ||||
| 			 case 3: | ||||
| 			//:: Pirate ship (off coast) | ||||
| 			{ | ||||
| 			//:: Not sure how to handle this one yet. | ||||
|             break; | ||||
| 			} | ||||
| 			//:: Pirate ship (off coast)			 | ||||
| 			 | ||||
| 			case 4: case 5: case 6: | ||||
| 			//:: Pirates - 90% Foraging Party / 10% Raiding Party | ||||
| 			if (nPirateChance <= 9) | ||||
| 			{//:: Spawn Pirate Foraging Party	 | ||||
| 			 | ||||
| 				int nPirates = (d6(2) + 6); | ||||
| 				// Set Number of Placeables | ||||
| 				SetLocalInt(oCamp, "CampNumP", 0); | ||||
| 				// Set Number of Creatures | ||||
| 				SetLocalInt(oCamp, "CampNumC", nPirates); | ||||
| 				// Set Radius of Camp | ||||
| 				SetLocalFloat(oCamp, "CampRadius", 10.0); | ||||
|  | ||||
| 				// Set Creature 0 to be Trigger | ||||
| 				// Script 00 : Kill him and the Camp Despawns | ||||
| 				// SetLocalString(oCamp, "CampTrigger", "C0"); | ||||
| 				// SetLocalInt(oCamp, "CampTriggerScript", 0); | ||||
|  | ||||
| 				// Set Placeable 0 to be Camp Center | ||||
| 				//SetLocalString(oCamp, "CampCenter", "P0"); | ||||
|  | ||||
| 				// Set Placeable 0 and Spawn Flags | ||||
| 				// First Placeable always Spawns at Center of Camp | ||||
| 				// If CampCenter Is Not Set | ||||
| 				//SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); | ||||
| 				SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); | ||||
|  | ||||
| 				// Set Placeable 1 and Spawn Flags | ||||
| 				//SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
| 				//SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); | ||||
|  | ||||
| 				// Set Creature 0 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC0", "RA_PIR8_HU_M02"); | ||||
| 				SetLocalString(oCamp, "CampC0_Flags", "SP_RW_RG010M005_DS2_RH60"); | ||||
|  | ||||
| 				// Set Creature 1 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC1", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC1_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC1_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 				 | ||||
| 				// Set Creature 2 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC2", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC2_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC2_Flags", "SP_RW_RG002M001_DS2_RH60");			 | ||||
| 							 | ||||
| 				// Set Creature 3 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC3", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC3_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC3_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 				 | ||||
| 				// Set Creature 4 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC4", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC4_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC4_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 				 | ||||
| 				// Set Creature 5 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC5", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC5_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC5_Flags", "SP_RW_RG002M001_DS2_RH60");		 | ||||
|  | ||||
| 				// Set Creature 6 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC6", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC6_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC6_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				// Set Creature 7 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC7", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC7_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC7_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				// Set Creature 8 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC8", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC8_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC8_Flags", "SP_RW_RG002M001_DS2_RH60");					 | ||||
|  | ||||
| 				// Set Creature 9 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC9", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC9_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC9_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				// Set Creature 10 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC10", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC10_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC10_Flags", "SP_RW_RG002M001_DS2_RH60");				 | ||||
|  | ||||
| 				// Set Creature 11 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC11", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC11_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC11_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				// Set Creature 12 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC12", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC12_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC12_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 		 | ||||
| 				// Set Creature 13 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC13", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC13_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC13_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 				 | ||||
| 				// Set Creature 14 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC14", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC14_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC14_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 				 | ||||
| 				// Set Creature 15 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC15", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC15_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC15_Flags", "SP_RW_RG002M001_DS2_RH60");		 | ||||
|  | ||||
| 				// Set Creature 16 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC16", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC16_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC16_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				// Set Creature 17 and Spawn Flags | ||||
| 				SetLocalString(oCamp, "CampC17", "RA_PIR8_HU_M01"); | ||||
| 				// SetLocalString(oCamp, "CampC17_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 				SetLocalString(oCamp, "CampC17_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 				break; | ||||
| 			}  | ||||
| 			//:: Spawn Pirate Foraging Party | ||||
| 			 | ||||
| 			else | ||||
| 			{//:: Spawn Pirate Raiding Party | ||||
| 			 | ||||
|             int nPirates = (12 + d2(1) + d6(3)); | ||||
|             // Set Number of Placeables | ||||
|             SetLocalInt(oCamp, "CampNumP", 0); | ||||
|             // Set Number of Creatures | ||||
|             SetLocalInt(oCamp, "CampNumC", nPirates); | ||||
|             // Set Radius of Camp | ||||
|             SetLocalFloat(oCamp, "CampRadius", 10.0); | ||||
|  | ||||
|             // Set Creature 0 to be Trigger | ||||
|             // Script 00 : Kill him and the Camp Despawns | ||||
|             // SetLocalString(oCamp, "CampTrigger", "C0"); | ||||
|             // SetLocalInt(oCamp, "CampTriggerScript", 0); | ||||
|  | ||||
|             // Set Placeable 0 to be Camp Center | ||||
|             //SetLocalString(oCamp, "CampCenter", "P0"); | ||||
|  | ||||
|             // Set Placeable 0 and Spawn Flags | ||||
|             // First Placeable always Spawns at Center of Camp | ||||
|             // If CampCenter Is Not Set | ||||
|             SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
|             SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); | ||||
|  | ||||
|             // Set Placeable 1 and Spawn Flags | ||||
|             //SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
|             //SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); | ||||
|  | ||||
|             // Set Creature 0 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC0", "RA_PIR8_HU_M03"); | ||||
|             SetLocalString(oCamp, "CampC0_Flags", "SP_RW_RG025M005_DS2_RH60"); | ||||
|  | ||||
|             // Set Creature 1 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC1", "RA_PIR8_HU_M04"); | ||||
| 			// SetLocalString(oCamp, "CampC1_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC1_Flags", "SP_RW_RG020M004_DS2_RH60"); | ||||
| 			 | ||||
|             // Set Creature 2 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC2", "RA_PIR8_HU_M02"); | ||||
| 			// SetLocalString(oCamp, "CampC2_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC2_Flags", "SP_RW_RG010M005_DS2_RH60");			 | ||||
| 			             | ||||
| 			// Set Creature 3 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC3", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC3_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC3_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 			 | ||||
| 			// Set Creature 4 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC4", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC4_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC4_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 			 | ||||
| 			// Set Creature 5 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC5", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC5_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC5_Flags", "SP_RW_RG002M001_DS2_RH60");		 | ||||
|  | ||||
| 			// Set Creature 6 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC6", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC6_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC6_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 7 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC7", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC7_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC7_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 8 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC8", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC8_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC8_Flags", "SP_RW_RG002M001_DS2_RH60");					 | ||||
|  | ||||
| 			// Set Creature 9 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC9", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC9_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC9_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 10 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC10", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC10_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC10_Flags", "SP_RW_RG002M001_DS2_RH60");				 | ||||
|  | ||||
| 			// Set Creature 11 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC11", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC11_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC11_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 12 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC12", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC12_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC12_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 	 | ||||
| 			// Set Creature 13 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC13", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC13_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC13_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 			 | ||||
| 			// Set Creature 14 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC14", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC14_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC14_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 			 | ||||
| 			// Set Creature 15 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC15", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC15_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC15_Flags", "SP_RW_RG002M001_DS2_RH60");		 | ||||
|  | ||||
| 			// Set Creature 16 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC16", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC16_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC16_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 17 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC17", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC17_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC17_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 18 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC18", "RA_PIR8_HU_M02"); | ||||
| 			// SetLocalString(oCamp, "CampC18_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC18_Flags", "SP_RW_RG010M005_DS2_RH60");					 | ||||
|  | ||||
| 			// Set Creature 19 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC19", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC19_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC19_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 20 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC20", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC20_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC20_Flags", "SP_RW_RG002M001_DS2_RH60");				 | ||||
|  | ||||
| 			// Set Creature 21 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC21", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC21_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC21_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 22 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC22", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC22_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC22_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 	 | ||||
| 			// Set Creature 23 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC23", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC23_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC23_Flags", "SP_RW_RG002M001_DS2_RH60"); | ||||
| 			 | ||||
| 			// Set Creature 24 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC24", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC24_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC24_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 			 | ||||
| 			// Set Creature 25 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC25", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC25_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC25_Flags", "SP_RW_RG002M001_DS2_RH60");		 | ||||
|  | ||||
| 			// Set Creature 26 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC26", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC26_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC26_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 27 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC27", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC27_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC27_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 28 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC28", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC28_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC28_Flags", "SP_RW_RG002M001_DS2_RH60");					 | ||||
|  | ||||
| 			// Set Creature 29 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC29", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC29_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC29_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 30 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC30", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC30_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC30_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 31 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC30", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC30_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC30_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 32 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC30", "RA_PIR8_HU_M01"); | ||||
| 			// SetLocalString(oCamp, "CampC30_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC30_Flags", "SP_RW_RG002M001_DS2_RH60");	 | ||||
| 			 | ||||
|             break; | ||||
| 			} | ||||
| 			//:: Spawn Pirate Raiding Party				 | ||||
| 			//:: Pirates - 90% Foraging Party / 10% Raiding Party			 | ||||
|  | ||||
| 			case 7: case 8: | ||||
| 			//:: 2d6 Ogres | ||||
| 			{ | ||||
| 			 | ||||
|             int nOgres = d6(2); | ||||
|             // Set Number of Placeables | ||||
|             SetLocalInt(oCamp, "CampNumP", 1); | ||||
|             // Set Number of Creatures | ||||
|             SetLocalInt(oCamp, "CampNumC", nOgres); | ||||
|             // Set Radius of Camp | ||||
|             SetLocalFloat(oCamp, "CampRadius", 10.0); | ||||
|  | ||||
|             // Set Creature 0 to be Trigger | ||||
|             // Script 00 : Kill him and the Camp Despawns | ||||
|             // SetLocalString(oCamp, "CampTrigger", "C0"); | ||||
|             // SetLocalInt(oCamp, "CampTriggerScript", 0); | ||||
|  | ||||
|             // Set Placeable 0 to be Camp Center | ||||
|             SetLocalString(oCamp, "CampCenter", "P0"); | ||||
|  | ||||
|             // Set Placeable 0 and Spawn Flags | ||||
|             // First Placeable always Spawns at Center of Camp | ||||
|             // If CampCenter Is Not Set | ||||
|             SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); | ||||
| 			SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); | ||||
|  | ||||
|             // Set Placeable 1 and Spawn Flags | ||||
|             //SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
|             //SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); | ||||
|  | ||||
|             // Set Creature 0 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC0", "RA_OGRE01"); | ||||
|             SetLocalString(oCamp, "CampC0_Flags", "SP_RW_RG005M002_DS2_RH60"); | ||||
|  | ||||
|             // Set Creature 1 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC1", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC1_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC1_Flags", "SP_RW_RG005M002_DS2_RH60"); | ||||
| 			 | ||||
|             // Set Creature 2 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC2", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC2_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC2_Flags", "SP_RW_RG005M002_DS2_RH60");			 | ||||
| 			             | ||||
| 			// Set Creature 3 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC3", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC3_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC3_Flags", "SP_RW_RG005M002_DS2_RH60"); | ||||
| 			 | ||||
| 			// Set Creature 4 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC4", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC4_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC4_Flags", "SP_RW_RG005M002_DS2_RH60");	 | ||||
| 			 | ||||
| 			// Set Creature 5 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC5", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC5_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC5_Flags", "SP_RW_RG005M002_DS2_RH60");		 | ||||
|  | ||||
| 			// Set Creature 6 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC6", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC6_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC6_Flags", "SP_RW_RG005M002_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 7 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC7", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC7_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC7_Flags", "SP_RW_RG005M002_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 8 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC8", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC8_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC8_Flags", "SP_RW_RG005M002_DS2_RH60");					 | ||||
|  | ||||
| 			// Set Creature 9 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC9", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC9_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC9_Flags", "SP_RW_RG005M002_DS2_RH60");	 | ||||
|  | ||||
| 			// Set Creature 10 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC10", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC10_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC10_Flags", "SP_RW_RG005M002_DS2_RH60");				 | ||||
|  | ||||
| 			// Set Creature 11 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC11", "RA_OGRE01"); | ||||
| 			// SetLocalString(oCamp, "CampC11_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC11_Flags", "SP_RW_RG005M002_DS2_RH60");	 | ||||
| 	 | ||||
|             break;			 | ||||
| 			} | ||||
| 			//:: 2d6 Ogres | ||||
| 			 | ||||
| 			case 9:  | ||||
| 			//:: 1d3 Sirens | ||||
| 			{			 | ||||
|             int nSirens = d3(1); | ||||
|             // Set Number of Placeables | ||||
|             SetLocalInt(oCamp, "CampNumP", 1); | ||||
|             // Set Number of Creatures | ||||
|             SetLocalInt(oCamp, "CampNumC", nSirens); | ||||
|             // Set Radius of Camp | ||||
|             SetLocalFloat(oCamp, "CampRadius", 10.0); | ||||
|  | ||||
|             // Set Creature 0 to be Trigger | ||||
|             // Script 00 : Kill him and the Camp Despawns | ||||
|             // SetLocalString(oCamp, "CampTrigger", "C0"); | ||||
|             // SetLocalInt(oCamp, "CampTriggerScript", 0); | ||||
|  | ||||
|             // Set Placeable 0 to be Camp Center | ||||
|             // SetLocalString(oCamp, "CampCenter", "P0"); | ||||
|  | ||||
|             // Set Placeable 0 and Spawn Flags | ||||
|             // First Placeable always Spawns at Center of Camp | ||||
|             // If CampCenter Is Not Set | ||||
|             // SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); | ||||
|             SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); | ||||
|  | ||||
|             // Set Placeable 1 and Spawn Flags | ||||
|             //SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
|             //SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); | ||||
|  | ||||
|             // Set Creature 0 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC0", "RA_SIRINE001"); | ||||
|             SetLocalString(oCamp, "CampC0_Flags", "SP_CD060_RH60"); | ||||
|  | ||||
|             // Set Creature 1 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC1", "RA_SIRINE001"); | ||||
| 			// SetLocalString(oCamp, "CampC1_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC1_Flags", "SP_CD060_RH60"); | ||||
| 			 | ||||
|             // Set Creature 2 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC2", "RA_SIRINE001"); | ||||
| 			// SetLocalString(oCamp, "CampC2_Flags", "SP_SF_RW_CD60_RH"); | ||||
| 			SetLocalString(oCamp, "CampC2_Flags", "SP_CD060_RH60");	 | ||||
| 			 | ||||
|             break;			 | ||||
| 			} | ||||
| 			//:: 1d3 Sirens | ||||
| 			 | ||||
| 			case 10:			 | ||||
| 			//:: Marty the Imp			 | ||||
| 			{ | ||||
|             int nImp = 1; | ||||
|             // Set Number of Placeables | ||||
|             SetLocalInt(oCamp, "CampNumP", 0); | ||||
|             // Set Number of Creatures | ||||
|             SetLocalInt(oCamp, "CampNumC", nImp); | ||||
|             // Set Radius of Camp | ||||
|             SetLocalFloat(oCamp, "CampRadius", 10.0); | ||||
|  | ||||
|             // Set Creature 0 to be Trigger | ||||
|             // Script 00 : Kill him and the Camp Despawns | ||||
|             // SetLocalString(oCamp, "CampTrigger", "C0"); | ||||
|             // SetLocalInt(oCamp, "CampTriggerScript", 0); | ||||
|  | ||||
|             // Set Placeable 0 to be Camp Center | ||||
|             //SetLocalString(oCamp, "CampCenter", "P0"); | ||||
|  | ||||
|             // Set Placeable 0 and Spawn Flags | ||||
|             // First Placeable always Spawns at Center of Camp | ||||
|             // If CampCenter Is Not Set | ||||
|             //SetLocalString(oCamp, "CampP0", "plc_campfrwspit"); | ||||
|             SetLocalString(oCamp, "CampP0_Flags", "SP_SF"); | ||||
|  | ||||
|             // Set Placeable 1 and Spawn Flags | ||||
|             //SetLocalString(oCamp, "CampP1", "plc_chest1"); | ||||
|             //SetLocalString(oCamp, "CampP1_Flags", "SP_PL3T80P30"); | ||||
|  | ||||
|             // Set Creature 0 and Spawn Flags | ||||
|             SetLocalString(oCamp, "CampC0", "RA_IMP_MARTY"); | ||||
|             SetLocalString(oCamp, "CampC0_Flags", "SP_RW_CD060"); | ||||
|      			 | ||||
| 			break; | ||||
| 			} | ||||
| 			//:: Marty the Imp				 | ||||
|         } | ||||
|     } | ||||
| //:: Beach Random Encounters | ||||
|  | ||||
|  | ||||
|  | ||||
| 	// Example Camp | ||||
|   | ||||
		Reference in New Issue
	
	Block a user