本文整理汇总了C#中GameNPC.SetOwnBrain方法的典型用法代码示例。如果您正苦于以下问题:C# GameNPC.SetOwnBrain方法的具体用法?C# GameNPC.SetOwnBrain怎么用?C# GameNPC.SetOwnBrain使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GameNPC
的用法示例。
在下文中一共展示了GameNPC.SetOwnBrain方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateDunwynClone
protected void CreateDunwynClone()
{
if (dunwynClone == null)
{
dunwynClone = new GameNPC();
dunwynClone.Name = dunwyn.Name;
dunwynClone.Model = dunwyn.Model;
dunwynClone.GuildName = dunwyn.GuildName;
dunwynClone.Realm = dunwyn.Realm;
dunwynClone.CurrentRegionID = 1;
dunwynClone.Size = dunwyn.Size;
dunwynClone.Level = 15; // to make the figthing against fairy sorceress a bit more dramatic :)
dunwynClone.X = 567604 + Util.Random(-150, 150);
dunwynClone.Y = 509619 + Util.Random(-150, 150);
dunwynClone.Z = 2813;
dunwynClone.Heading = 3292;
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 798);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 19);
dunwynClone.Inventory = template.CloseTemplate();
dunwynClone.SwitchWeapon(GameLiving.eActiveWeaponSlot.Standard);
// dunwynClone.AddNPCEquipment((byte) eEquipmentItems.TORSO, 798, 0, 0, 0);
// dunwynClone.AddNPCEquipment((byte) eEquipmentItems.RIGHT_HAND, 19, 0, 0, 0);
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
dunwynClone.SetOwnBrain(brain);
dunwynClone.AddToWorld();
GameEventMgr.AddHandler(dunwynClone, GameLivingEvent.Interact, new DOLEventHandler(TalkToMasterDunwynClone));
foreach (GamePlayer visPlayer in dunwynClone.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
visPlayer.Out.SendEmoteAnimation(dunwynClone, eEmote.Bind);
}
}
else
{
TeleportTo(dunwynClone, dunwynClone, locationDunwynClone);
}
}
示例2: GetMasterFrederick
public static GameNPC GetMasterFrederick()
{
GameNPC[] npcs = WorldMgr.GetNPCsByName("Master Frederick", eRealm.Albion);
GameNPC masterFrederick = null;
if (npcs.Length == 0)
{
masterFrederick = new GameNPC();
masterFrederick.Model = 32;
masterFrederick.Name = "Master Frederick";
if (log.IsWarnEnabled)
log.Warn("Could not find " + masterFrederick.Name + ", creating him ...");
masterFrederick.GuildName = "Part of Frederick Quests";
masterFrederick.Realm = eRealm.Albion;
masterFrederick.CurrentRegionID = 1;
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 41);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 42);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 40);
template.AddNPCEquipment(eInventorySlot.Cloak, 91);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 4);
masterFrederick.Inventory = template.CloseTemplate();
masterFrederick.SwitchWeapon(GameLiving.eActiveWeaponSlot.Standard);
// masterFrederick.AddNPCEquipment((byte) eVisibleItems.TORSO, 41, 0, 0, 0);
// masterFrederick.AddNPCEquipment((byte) eVisibleItems.LEG, 42, 0, 0, 0);
// masterFrederick.AddNPCEquipment((byte) eVisibleItems.BOOT, 40, 0, 0, 0);
// masterFrederick.AddNPCEquipment((byte) eVisibleItems.CLOAK, 91, 0, 0, 0);
// masterFrederick.AddNPCEquipment((byte) eVisibleItems.RIGHT_HAND, 4, 0, 0, 0);
masterFrederick.Size = 50;
masterFrederick.Level = 50;
masterFrederick.X = 567969;
masterFrederick.Y = 509880;
masterFrederick.Z = 2861;
masterFrederick.Heading = 65;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
masterFrederick.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
masterFrederick.SaveIntoDatabase();
masterFrederick.AddToWorld();
}
else
masterFrederick = npcs[0];
return masterFrederick;
}
示例3: CreateDunwynClone
protected void CreateDunwynClone()
{
GameNpcInventoryTemplate template;
if (dunwynClone == null)
{
dunwynClone = new GameNPC();
dunwynClone.Name = "Master Dunwyn";
dunwynClone.Model = 9;
dunwynClone.GuildName = "Part of " + questTitle + " Quest";
dunwynClone.Realm = eRealm.Albion;
dunwynClone.CurrentRegionID = 1;
dunwynClone.Size = 50;
dunwynClone.Level = 14;
dunwynClone.X = GameLocation.ConvertLocalXToGlobalX(8602, 0) + Util.Random(-150, 150);
dunwynClone.Y = GameLocation.ConvertLocalYToGlobalY(47193, 0) + Util.Random(-150, 150);
dunwynClone.Z = 2409;
dunwynClone.Heading = 342;
template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 798);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 19);
dunwynClone.Inventory = template.CloseTemplate();
dunwynClone.SwitchWeapon(GameLiving.eActiveWeaponSlot.Standard);
// dunwynClone.AddNPCEquipment((byte) eEquipmentItems.TORSO, 798, 0, 0, 0);
// dunwynClone.AddNPCEquipment((byte) eEquipmentItems.RIGHT_HAND, 19, 0, 0, 0);
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
dunwynClone.SetOwnBrain(brain);
dunwynClone.AddToWorld();
GameEventMgr.AddHandler(dunwynClone, GameLivingEvent.Interact, new DOLEventHandler(TalkToMasterDunwyn));
GameEventMgr.AddHandler(dunwynClone, GameLivingEvent.WhisperReceive, new DOLEventHandler(TalkToMasterDunwyn));
}
else
{
dunwynClone.MoveTo(1, 567604, 509619, 2813, 3292);
}
foreach (GamePlayer visPlayer in dunwynClone.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
visPlayer.Out.SendEmoteAnimation(dunwynClone, eEmote.Bind);
}
for (int i = 0; i < recruits.Length; i++)
{
recruits[i] = new GameNPC();
recruits[i].Name = "Recruit";
recruits[i].GuildName = "Part of " + questTitle + " Quest";
recruits[i].Realm = eRealm.Albion;
recruits[i].CurrentRegionID = 1;
recruits[i].Size = 50;
recruits[i].Level = 6;
recruits[i].X = GameLocation.ConvertLocalXToGlobalX(8602, 0) + Util.Random(-150, 150);
recruits[i].Y = GameLocation.ConvertLocalYToGlobalY(47193, 0) + Util.Random(-150, 150);
recruits[i].Z = 2409;
recruits[i].Heading = 187;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
recruits[i].SetOwnBrain(brain);
}
recruits[0].Name = "Recruit Armsman McTavish";
recruits[0].Model = 40;
template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TwoHandWeapon, 69);
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 46);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 47);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 50);
template.AddNPCEquipment(eInventorySlot.ArmsArmor, 48);
template.AddNPCEquipment(eInventorySlot.HandsArmor, 49);
recruits[0].Inventory = template.CloseTemplate();
recruits[0].SwitchWeapon(GameLiving.eActiveWeaponSlot.TwoHanded);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.TWO_HANDED, 69, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.TORSO, 46, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.LEGS, 47, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.FEET, 50, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.ARMS, 48, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.HAND, 49, 0, 0, 0);
recruits[1].Name = "Recruit Paladin Andral";
recruits[1].Model = 41;
template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TwoHandWeapon, 6);
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 41);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 42);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 45);
template.AddNPCEquipment(eInventorySlot.ArmsArmor, 43);
//.........这里部分代码省略.........
示例4: ScriptLoaded
//.........这里部分代码省略.........
log.Warn("Could not find " + squireGalune.Name + ", creating him ...");
squireGalune.GuildName = "Part of " + questTitle + " Quest";
squireGalune.Realm = eRealm.Albion;
squireGalune.CurrentRegionID = 21;
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 320);
template.AddNPCEquipment(eInventorySlot.HandsArmor, 137);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 138);
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 134);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 135);
squireGalune.Inventory = template.CloseTemplate();
squireGalune.SwitchWeapon(GameLiving.eActiveWeaponSlot.Standard);
squireGalune.Size = 45;
squireGalune.Level = 8;
squireGalune.X = 33219;
squireGalune.Y = 31931;
squireGalune.Z = 16240;
squireGalune.Heading = 477;
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
squireGalune.SaveIntoDatabase();
squireGalune.AddToWorld();
}
else
squireGalune = npcs[0];
foreach (GameNPC npc in squireGalune.GetNPCsInRadius(400))
{
if (npc.Name == "small spider")
{
smallSpider = npc;
break;
}
}
if (smallSpider == null)
{
smallSpider = new GameNPC();
smallSpider.Model = 72;
smallSpider.Name = "small spider";
if (log.IsWarnEnabled)
log.Warn("Could not find " + smallSpider.Name + ", creating him ...");
smallSpider.GuildName = "Part of " + questTitle + " Quest";
smallSpider.Realm = eRealm.None;
smallSpider.CurrentRegionID = 21;
smallSpider.Size = 17;
smallSpider.Level = 5;
smallSpider.X = 33158;
smallSpider.Y = 31973;
smallSpider.Z = 16240;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
smallSpider.SetOwnBrain(brain);
smallSpider.Heading = 2605;
smallSpider.MaxSpeedBase = 0;
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
smallSpider.SaveIntoDatabase();
smallSpider.AddToWorld();
}
#endregion
/* Now we add some hooks to the npc we found.
* Actually, we want to know when a player interacts with him.
* So, we hook the right-click (interact) and the whisper method
* of npc and set the callback method to the "TalkToXXX"
* method. This means, the "TalkToXXX" method is called whenever
* a player right clicks on him or when he whispers to him.
*/
GameEventMgr.AddHandler(GamePlayerEvent.AcceptQuest, new DOLEventHandler(SubscribeQuest));
GameEventMgr.AddHandler(GamePlayerEvent.DeclineQuest, new DOLEventHandler(SubscribeQuest));
GameEventMgr.AddHandler(sirJerem, GameLivingEvent.Interact, new DOLEventHandler(TalkToSirJerem));
GameEventMgr.AddHandler(sirJerem, GameLivingEvent.WhisperReceive, new DOLEventHandler(TalkToSirJerem));
GameEventMgr.AddHandler(squireGalune, GameLivingEvent.Interact, new DOLEventHandler(TalkToSquireGalune));
GameEventMgr.AddHandler(squireGalune, GameLivingEvent.WhisperReceive, new DOLEventHandler(TalkToSquireGalune));
/* Now we bring to Ydenia the possibility to give this quest to players */
sirJerem.AddQuestToGive(typeof (ShakenSquire));
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initialized");
}
示例5: CreateMorgana
protected virtual void CreateMorgana()
{
if (Morgana == null)
{
Morgana = new GameNPC();
Morgana.Model = 283;
Morgana.Name = "Morgana";
if (log.IsWarnEnabled)
log.Warn("Could not find " + Morgana.Name + " , creating it ...");
Morgana.GuildName = "";
Morgana.Realm = eRealm.None;
Morgana.CurrentRegionID = 1;
Morgana.Size = 51;
Morgana.Level = 90;
Morgana.X = 306056;
Morgana.Y = 670106;
Morgana.Z = 3095;
Morgana.Heading = 3261;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
Morgana.SetOwnBrain(brain);
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 98, 43);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 133, 61);
Morgana.Inventory = template.CloseTemplate();
// Morgana.AddNPCEquipment((byte) eVisibleItems.TORSO, 98, 43, 0, 0);
// Morgana.AddNPCEquipment((byte) eVisibleItems.BOOT, 133, 61, 0, 0);
}
Morgana.AddToWorld();
}
示例6: CreateBriediClone
protected void CreateBriediClone()
{
GameNpcInventoryTemplate template;
if (briediClone == null)
{
briediClone = new GameNPC();
briediClone.Model = 157;
briediClone.Name = "Master Briedi";
briediClone.GuildName = "Part of " + questTitle + " Quest";
briediClone.Realm = eRealm.Midgard;
briediClone.CurrentRegionID = 100;
briediClone.Size = 50;
briediClone.Level = 45;
briediClone.X = GameLocation.ConvertLocalXToGlobalX(45394, 100);
briediClone.Y = GameLocation.ConvertLocalYToGlobalY(39768, 100);
briediClone.Z = 4709;
briediClone.Heading = 107;
template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 348);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 349);
template.AddNPCEquipment(eInventorySlot.ArmsArmor, 350);
template.AddNPCEquipment(eInventorySlot.HandsArmor, 351);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 352);
template.AddNPCEquipment(eInventorySlot.TwoHandWeapon, 640);
briediClone.Inventory = template.CloseTemplate();
briediClone.SwitchWeapon(GameLiving.eActiveWeaponSlot.TwoHanded);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.TORSO, 348, 0, 0, 0);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.LEGS, 349, 0, 0, 0);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.ARMS, 350, 0, 0, 0);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.HAND, 351, 0, 0, 0);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.FEET, 352, 0, 0, 0);
// briediClone.AddNPCEquipment((byte) eEquipmentItems.TWO_HANDED, 640, 0, 0, 0);
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
briediClone.SetOwnBrain(brain);
briediClone.AddToWorld();
GameEventMgr.AddHandler(briediClone, GameLivingEvent.Interact, new DOLEventHandler(TalkToMasterBriedi));
GameEventMgr.AddHandler(briediClone, GameLivingEvent.WhisperReceive, new DOLEventHandler(TalkToMasterBriedi));
}
else
{
briediClone.MoveTo(100, GameLocation.ConvertLocalXToGlobalX(45394, 100), GameLocation.ConvertLocalYToGlobalY(39768, 100), 4709, 107);
}
foreach (GamePlayer visPlayer in briediClone.GetPlayersInRadius(WorldMgr.VISIBILITY_DISTANCE))
{
visPlayer.Out.SendEmoteAnimation(briediClone, eEmote.Bind);
}
for (int i = 0; i < recruits.Length; i++)
{
recruits[i] = new GameNPC();
recruits[i].Name = "Recruit";
recruits[i].GuildName = "Part of " + questTitle + " Quest";
recruits[i].Realm = eRealm.Midgard;
recruits[i].CurrentRegionID = briediClone.CurrentRegionID;
recruits[i].Size = 50;
recruits[i].Level = 6;
recruits[i].X = briediClone.X + Util.Random(-150, 150);
recruits[i].Y = briediClone.Y + Util.Random(-150, 150);
recruits[i].Z = briediClone.Z;
recruits[i].Heading = 187;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
recruits[i].SetOwnBrain(brain);
}
recruits[0].Name = "Recruit Hietan";
recruits[0].Model = 189;
template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TwoHandWeapon, 69);
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 46);
template.AddNPCEquipment(eInventorySlot.LegsArmor, 47);
template.AddNPCEquipment(eInventorySlot.FeetArmor, 50);
template.AddNPCEquipment(eInventorySlot.ArmsArmor, 48);
template.AddNPCEquipment(eInventorySlot.HandsArmor, 49);
recruits[0].Inventory = template.CloseTemplate();
recruits[0].SwitchWeapon(GameLiving.eActiveWeaponSlot.TwoHanded);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.TWO_HANDED, 69, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.TORSO, 46, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.LEGS, 47, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.FEET, 50, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.ARMS, 48, 0, 0, 0);
// recruits[0].AddNPCEquipment((byte) eEquipmentItems.HAND, 49, 0, 0, 0);
recruits[1].Name = "Recruit Iduki";
//.........这里部分代码省略.........
示例7: Notify
public override void Notify(DOLEvent e, object sender, EventArgs args)
{
GamePlayer player = sender as GamePlayer;
if (player == null || player.IsDoingQuest(typeof(HeartOfSephucoth)) == null)
return;
if (e == GameLivingEvent.EnemyKilled)
{
EnemyKilledEventArgs gArgs = (EnemyKilledEventArgs)args;
if (Step == 1)
{
if (gArgs.Target.Name == "river sprite")
{
if (Util.Chance(25))
{
if (sephucoth == null)
{
sephucoth = new GameNPC();
sephucoth.Model = 136;
sephucoth.Name = "Sephucoth";
sephucoth.Realm = eRealm.None;
sephucoth.CurrentRegionID = 1;
sephucoth.Size = 55;
sephucoth.Level = 7;
sephucoth.X = 560836;
sephucoth.Y = 527260;
sephucoth.Z = 2082;
sephucoth.Heading = 1480;
StandardMobBrain brain = new StandardMobBrain(); // set a brain witch find a lot mob friend to attack the player
sephucoth.SetOwnBrain(brain); // so this mob must be abble to cast
sephucoth.RespawnInterval = 0; // don't respawn when killed
sephucoth.AddToWorld();
}
}
}
else if (gArgs.Target.Name == "Sephucoth")
{
GiveItem(gArgs.Target, player, sephucothsHeart);
if (sephucoth != null) { sephucoth = null; }
Step = 2;
}
}
else if (Step == 3)
{
if (gArgs.Target.Name == "large skeleton")
{
if (Util.Chance(50))
{
GiveItem(gArgs.Target, player, polishedBone);
Step = 4;
}
}
}
}
else if (e == GamePlayerEvent.GiveItem)
{
GiveItemEventArgs gArgs = (GiveItemEventArgs)args;
if (gArgs.Target.Name == eowylnAstos.Name)
{
if (gArgs.Item.Id_nb == sephucothsHeart.Id_nb && Step == 2)
{
RemoveItem(eowylnAstos, m_questPlayer, sephucothsHeart);
eowylnAstos.TurnTo(m_questPlayer);
eowylnAstos.SayTo(m_questPlayer, "You have done well traveler! I will still require one final object to complete the pendant. Seek out a large skeleton and bring from it a piece of polished bone! Return this to me and I shall finish your pendant.");
Step = 3;
}
else if (gArgs.Item.Id_nb == polishedBone.Id_nb && Step == 4)
{
RemoveItem(eowylnAstos, m_questPlayer, polishedBone);
eowylnAstos.TurnTo(m_questPlayer);
eowylnAstos.SayTo(m_questPlayer, "Eowyln draws two items before her. Gathering her strength, she shouts.");
new RegionTimer(eowylnAstos, new RegionTimerCallback(BuildNecklace), 5000);
}
}
}
}
示例8: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
#region defineNPCs
GameNPC[] npcs;
npcs = WorldMgr.GetNPCsByName("Torold Sterkkriger", (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(151).IsDisabled)
{
ToroldSterkkriger = new DOL.GS.GameNPC();
ToroldSterkkriger.Model = 522;
ToroldSterkkriger.Name = "Torold Sterkkriger";
if (log.IsWarnEnabled)
log.Warn("Could not find " + ToroldSterkkriger.Name + ", creating ...");
ToroldSterkkriger.GuildName = "Part of " + questTitle + " Quest";
ToroldSterkkriger.Realm = eRealm.Midgard;
ToroldSterkkriger.CurrentRegionID = 151;
ToroldSterkkriger.Size = 50;
ToroldSterkkriger.Level = 55;
ToroldSterkkriger.MaxSpeedBase = 191;
ToroldSterkkriger.Faction = FactionMgr.GetFactionByID(0);
ToroldSterkkriger.X = 287623;
ToroldSterkkriger.Y = 355226;
ToroldSterkkriger.Z = 3488;
ToroldSterkkriger.Heading = 3788;
ToroldSterkkriger.RespawnInterval = -1;
ToroldSterkkriger.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
ToroldSterkkriger.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
ToroldSterkkriger.SaveIntoDatabase();
ToroldSterkkriger.AddToWorld();
}
}
else
{
ToroldSterkkriger = npcs[0];
}
npcs = WorldMgr.GetNPCsByName("Jorund Bruttstein", (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(151).IsDisabled)
{
JorundBruttstein = new DOL.GS.GameNPC();
JorundBruttstein.Model = 513;
JorundBruttstein.Name = "Jorund Bruttstein";
if (log.IsWarnEnabled)
log.Warn("Could not find " + JorundBruttstein.Name + ", creating ...");
JorundBruttstein.GuildName = "Part of " + questTitle + " Quest";
JorundBruttstein.Realm = eRealm.Midgard;
JorundBruttstein.CurrentRegionID = 151;
JorundBruttstein.Size = 52;
JorundBruttstein.Level = 50;
JorundBruttstein.MaxSpeedBase = 191;
JorundBruttstein.Faction = FactionMgr.GetFactionByID(0);
JorundBruttstein.X = 287884;
JorundBruttstein.Y = 356307;
JorundBruttstein.Z = 3488;
JorundBruttstein.Heading = 3163;
JorundBruttstein.RespawnInterval = -1;
JorundBruttstein.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
JorundBruttstein.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
JorundBruttstein.SaveIntoDatabase();
JorundBruttstein.AddToWorld();
}
}
else
{
JorundBruttstein = npcs[0];
}
#endregion defineNPCs
#region defineItems
//.........这里部分代码省略.........
示例9: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
#region defineNPCs
GameNPC[] npcs;
npcs = WorldMgr.GetNPCsByName(LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.TheBirthdayGift.NPCBarkeepNognar"), (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(100).IsDisabled)
{
BarkeepNognar = new DOL.GS.GameMerchant();
BarkeepNognar.Model = 212;
BarkeepNognar.Name = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.TheBirthdayGift.NPCBarkeepNognar");
if (log.IsWarnEnabled)
log.Warn("Could not find " + BarkeepNognar.Name + ", creating ...");
BarkeepNognar.GuildName = "Part of " + questTitle + " Quest";
BarkeepNognar.Realm = eRealm.Midgard;
BarkeepNognar.CurrentRegionID = 100;
BarkeepNognar.Size = 58;
BarkeepNognar.Level = 15;
BarkeepNognar.MaxSpeedBase = 191;
BarkeepNognar.Faction = FactionMgr.GetFactionByID(0);
BarkeepNognar.X = 805429;
BarkeepNognar.Y = 726478;
BarkeepNognar.Z = 4717;
BarkeepNognar.Heading = 4073;
BarkeepNognar.RespawnInterval = -1;
BarkeepNognar.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
BarkeepNognar.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
BarkeepNognar.SaveIntoDatabase();
BarkeepNognar.AddToWorld();
}
}
else
{
BarkeepNognar = npcs[0];
}
npcs = WorldMgr.GetNPCsByName(LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.TheBirthdayGift.NPCBarkeepPrugar"), (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(101).IsDisabled)
{
BarkeepPrugar = new DOL.GS.GameMerchant();
BarkeepPrugar.Model = 213;
BarkeepPrugar.Name = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "Mid.TheBirthdayGift.NPCBarkeepPrugar");
if (log.IsWarnEnabled)
log.Warn("Could not find " + BarkeepPrugar.Name + ", creating ...");
BarkeepPrugar.GuildName = "Part of " + questTitle + " Quest";
BarkeepPrugar.Realm = eRealm.Midgard;
BarkeepPrugar.CurrentRegionID = 101;
BarkeepPrugar.Size = 60;
BarkeepPrugar.Level = 15;
BarkeepPrugar.MaxSpeedBase = 191;
BarkeepPrugar.Faction = FactionMgr.GetFactionByID(0);
BarkeepPrugar.X = 33230;
BarkeepPrugar.Y = 34802;
BarkeepPrugar.Z = 8027;
BarkeepPrugar.Heading = 1194;
BarkeepPrugar.RespawnInterval = -1;
BarkeepPrugar.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
BarkeepPrugar.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
BarkeepPrugar.SaveIntoDatabase();
BarkeepPrugar.AddToWorld();
}
}
else
{
BarkeepPrugar = npcs[0];
}
//.........这里部分代码省略.........
示例10: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
#region defineNPCs
GameNPC[] npcs;
npcs = WorldMgr.GetNPCsByName("Audun", (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(101).IsDisabled)
{
Audun = new DOL.GS.GameNPC();
Audun.Model = 232;
Audun.Name = "Audun";
if (log.IsWarnEnabled)
log.Warn("Could not find " + Audun.Name + ", creating ...");
Audun.GuildName = "Part of " + questTitle + " Quest";
Audun.Realm = eRealm.Midgard;
Audun.CurrentRegionID = 101;
Audun.Size = 48;
Audun.Level = 49;
Audun.MaxSpeedBase = 191;
Audun.Faction = FactionMgr.GetFactionByID(0);
Audun.X = 33283;
Audun.Y = 35305;
Audun.Z = 8027;
Audun.Heading = 1763;
Audun.RespawnInterval = -1;
Audun.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
Audun.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
Audun.SaveIntoDatabase();
Audun.AddToWorld();
}
}
else
{
Audun = npcs[0];
}
npcs = WorldMgr.GetNPCsByName("Guard Olja", (eRealm)2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(229).IsDisabled)
{
GuardOlja = new DOL.GS.GameNPC();
GuardOlja.Model = 180;
GuardOlja.Name = "Guard Olja";
if (log.IsWarnEnabled)
log.Warn("Could not find " + GuardOlja.Name + ", creating ...");
GuardOlja.GuildName = "Part of " + questTitle + " Quest";
GuardOlja.Realm = eRealm.Midgard;
GuardOlja.CurrentRegionID = 229;
GuardOlja.Size = 50;
GuardOlja.Level = 50;
GuardOlja.MaxSpeedBase = 191;
GuardOlja.Faction = FactionMgr.GetFactionByID(0);
GuardOlja.X = 47994;
GuardOlja.Y = 37341;
GuardOlja.Z = 21812;
GuardOlja.Heading = 204;
GuardOlja.RespawnInterval = -1;
GuardOlja.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
GuardOlja.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
GuardOlja.SaveIntoDatabase();
GuardOlja.AddToWorld();
}
}
else
{
GuardOlja = npcs[0];
}
#endregion defineNPCs
#region defineItems
//.........这里部分代码省略.........
示例11: CreateFairy
protected virtual void CreateFairy()
{
ireFairy = new GameNPC();
ireFairy.Model = 603;
ireFairy.Name = "Ire Fairy";
ireFairy.GuildName = "Part of " + questTitle + " Quest";
ireFairy.Realm = eRealm.None;
ireFairy.CurrentRegionID = 1;
ireFairy.Size = 50;
ireFairy.Level = 4;
ireFairy.X = GameLocation.ConvertLocalXToGlobalX(12336, 0) + Util.Random(-150, 150);
ireFairy.Y = GameLocation.ConvertLocalYToGlobalY(22623, 0) + Util.Random(-150, 150);
ireFairy.Z = 2405;
ireFairy.Heading = 226;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 20;
brain.AggroRange = 200;
ireFairy.SetOwnBrain(brain);
ireFairy.AddToWorld();
}
示例12: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
#region defineNPCs
GameNPC[] npcs;
npcs = WorldMgr.GetNPCsByName("Dwarven Guard Rinda",(eRealm) 2);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(100).IsDisabled)
{
DwarvenGuardRinda = new DOL.GS.GameNPC();
DwarvenGuardRinda.Model = 238;
DwarvenGuardRinda.Name = "Dwarven Guard Rinda";
if (log.IsWarnEnabled)
log.Warn("Could not find " + DwarvenGuardRinda.Name + ", creating ...");
DwarvenGuardRinda.GuildName = "Part of " + questTitle + " Quest";
DwarvenGuardRinda.Realm = eRealm.Midgard;
DwarvenGuardRinda.CurrentRegionID = 100;
DwarvenGuardRinda.Size = 53;
DwarvenGuardRinda.Level = 41;
DwarvenGuardRinda.MaxSpeedBase = 191;
DwarvenGuardRinda.Faction = FactionMgr.GetFactionByID(0);
DwarvenGuardRinda.X = 805496;
DwarvenGuardRinda.Y = 701215;
DwarvenGuardRinda.Z = 4960;
DwarvenGuardRinda.Heading = 1570;
DwarvenGuardRinda.RespawnInterval = -1;
DwarvenGuardRinda.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
DwarvenGuardRinda.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
DwarvenGuardRinda.SaveIntoDatabase();
DwarvenGuardRinda.AddToWorld();
}
}
else
{
DwarvenGuardRinda = npcs[0];
}
npcs = WorldMgr.GetNPCsByName("hobgoblin snake-finder",(eRealm) 0);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(100).IsDisabled)
{
hobgoblinsnakefinder = new DOL.GS.GameNPC();
hobgoblinsnakefinder.Model = 251;
hobgoblinsnakefinder.Name = "hobgoblin snake-finder";
if (log.IsWarnEnabled)
log.Warn("Could not find " + hobgoblinsnakefinder.Name + ", creating ...");
hobgoblinsnakefinder.GuildName = "Part of " + questTitle + " Quest";
hobgoblinsnakefinder.Realm = eRealm.None;
hobgoblinsnakefinder.CurrentRegionID = 100;
hobgoblinsnakefinder.Size = 37;
hobgoblinsnakefinder.Level = 1;
hobgoblinsnakefinder.MaxSpeedBase = 191;
hobgoblinsnakefinder.Faction = FactionMgr.GetFactionByID(0);
hobgoblinsnakefinder.X = 803189;
hobgoblinsnakefinder.Y = 695157;
hobgoblinsnakefinder.Z = 4926;
hobgoblinsnakefinder.Heading = 125;
hobgoblinsnakefinder.RespawnInterval = -1;
hobgoblinsnakefinder.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
hobgoblinsnakefinder.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
hobgoblinsnakefinder.SaveIntoDatabase();
hobgoblinsnakefinder.AddToWorld();
}
}
else
{
hobgoblinsnakefinder = npcs[0];
}
#endregion
//.........这里部分代码省略.........
示例13: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
#region defineNPCs
GameNPC[] npcs;
npcs = WorldMgr.GetNPCsByName("Guard Alakyrr", (eRealm)1);
if (npcs.Length == 0)
{
if (!WorldMgr.GetRegion(63).IsDisabled)
{
GuardAlakyrr = new DOL.GS.GameNPC();
GuardAlakyrr.Model = 748;
GuardAlakyrr.Name = "Guard Alakyrr";
if (log.IsWarnEnabled)
log.Warn("Could not find " + GuardAlakyrr.Name + ", creating ...");
GuardAlakyrr.GuildName = "Part of " + questTitle + " Quest";
GuardAlakyrr.Realm = eRealm.Albion;
GuardAlakyrr.CurrentRegionID = 63;
GuardAlakyrr.Size = 50;
GuardAlakyrr.Level = 30;
GuardAlakyrr.MaxSpeedBase = 191;
GuardAlakyrr.Faction = FactionMgr.GetFactionByID(0);
GuardAlakyrr.X = 28707;
GuardAlakyrr.Y = 20147;
GuardAlakyrr.Z = 16760;
GuardAlakyrr.Heading = 4016;
GuardAlakyrr.RespawnInterval = -1;
GuardAlakyrr.BodyType = 0;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 500;
GuardAlakyrr.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
GuardAlakyrr.SaveIntoDatabase();
GuardAlakyrr.AddToWorld();
}
}
else
{
GuardAlakyrr = npcs[0];
}
#endregion defineNPCs
#region defineItems
enchanterdtenebrousflask = GameServer.Database.FindObjectByKey<ItemTemplate>("enchanterdtenebrousflask");
if (enchanterdtenebrousflask == null)
{
enchanterdtenebrousflask = new ItemTemplate();
enchanterdtenebrousflask.Name = "Enchanted Tenebrous Flask";
if (log.IsWarnEnabled)
log.Warn("Could not find " + enchanterdtenebrousflask.Name + ", creating it ...");
enchanterdtenebrousflask.Level = 1;
enchanterdtenebrousflask.Weight = 1;
enchanterdtenebrousflask.Model = 490;
enchanterdtenebrousflask.Object_Type = 0;
enchanterdtenebrousflask.Item_Type = -1;
enchanterdtenebrousflask.Id_nb = "enchanterdtenebrousflask";
enchanterdtenebrousflask.Hand = 0;
enchanterdtenebrousflask.Price = 0;
enchanterdtenebrousflask.IsPickable = true;
enchanterdtenebrousflask.IsDropable = false;
enchanterdtenebrousflask.IsTradable = true;
enchanterdtenebrousflask.CanDropAsLoot = true;
enchanterdtenebrousflask.Color = 0;
enchanterdtenebrousflask.Bonus = 0; // default bonus
enchanterdtenebrousflask.Bonus1 = 0;
enchanterdtenebrousflask.Bonus1Type = (int)0;
enchanterdtenebrousflask.Bonus2 = 0;
enchanterdtenebrousflask.Bonus2Type = (int)0;
enchanterdtenebrousflask.Bonus3 = 0;
enchanterdtenebrousflask.Bonus3Type = (int)0;
enchanterdtenebrousflask.Bonus4 = 0;
enchanterdtenebrousflask.Bonus4Type = (int)0;
enchanterdtenebrousflask.Bonus5 = 0;
enchanterdtenebrousflask.Bonus5Type = (int)0;
enchanterdtenebrousflask.Bonus6 = 0;
enchanterdtenebrousflask.Bonus6Type = (int)0;
enchanterdtenebrousflask.Bonus7 = 0;
enchanterdtenebrousflask.Bonus7Type = (int)0;
enchanterdtenebrousflask.Bonus8 = 0;
enchanterdtenebrousflask.Bonus8Type = (int)0;
enchanterdtenebrousflask.Bonus9 = 0;
enchanterdtenebrousflask.Bonus9Type = (int)0;
enchanterdtenebrousflask.Bonus10 = 0;
enchanterdtenebrousflask.Bonus10Type = (int)0;
enchanterdtenebrousflask.ExtraBonus = 0;
//.........这里部分代码省略.........
示例14: ScriptLoaded
public static void ScriptLoaded(DOLEvent e, object sender, EventArgs args)
{
if (!ServerProperties.Properties.LOAD_QUESTS)
return;
if (log.IsInfoEnabled)
log.Info("Quest \"" + questTitle + "\" initializing ...");
/* First thing we do in here is to search for the NPCs inside
* the world who comes from the certain Realm. If we find a the players,
* this means we don't have to create a new one.
*
* NOTE: You can do anything you want in this method, you don't have
* to search for NPC's ... you could create a custom item, place it
* on the ground and if a player picks it up, he will get the quest!
* Just examples, do anything you like and feel comfortable with :)
*/
#region defineNPCs
masterFrederick = GetMasterFrederick();
GameNPC[] npcs = WorldMgr.GetNPCsByName("Master Dunwyn", eRealm.Albion);
if (npcs.Length == 0)
{
if (log.IsWarnEnabled)
log.Warn("Could not find Master Dunwyn, creating ...");
dunwyn = new GameNPC();
dunwyn.Model = 9;
dunwyn.Name = "Master Dunwyn";
dunwyn.GuildName = "Part of " + questTitle + " Quest";
dunwyn.Realm = eRealm.Albion;
dunwyn.CurrentRegionID = 1;
dunwyn.Size = 50;
dunwyn.Level = 20;
dunwyn.X = 465383;
dunwyn.Y = 634773;
dunwyn.Z = 1840;
dunwyn.Heading = 187;
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 798);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 19);
dunwyn.Inventory = template.CloseTemplate();
// dunwyn.AddNPCEquipment((byte) eEquipmentItems.TORSO, 798, 0, 0, 0);
// dunwyn.AddNPCEquipment((byte) eEquipmentItems.RIGHT_HAND, 19, 0, 0, 0);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
dunwyn.SaveIntoDatabase();
dunwyn.AddToWorld();
}
else
dunwyn = npcs[0];
npcs = WorldMgr.GetNPCsByName("Princess Obera", eRealm.None);
if (npcs.Length == 0)
{
if (log.IsWarnEnabled)
log.Warn("Could not find Princess Obera, creating ...");
princessObera = new GameNPC();
princessObera.Name = "Princess Obera";
princessObera.X = 579289;
princessObera.Y = 508200;
princessObera.Z = 2779;
princessObera.Heading = 347;
princessObera.Model = 603;
princessObera.GuildName = "Part of " + questTitle + " Quest";
princessObera.Realm = eRealm.None;
princessObera.CurrentRegionID = 1;
princessObera.Size = 49;
princessObera.Level = 3;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 80;
brain.AggroRange = 1000;
princessObera.SetOwnBrain(brain);
if (SAVE_INTO_DATABASE)
princessObera.SaveIntoDatabase();
princessObera.AddToWorld();
}
else
{
princessObera = (GameNPC) npcs[0];
}
int counter = 0;
foreach (GameNPC npc in princessObera.GetNPCsInRadius(500))
{
if (npc.Name == "ire fairy sorceress")
{
fairySorceress[counter] = (GameNPC) npc;
counter++;
}
if (counter == fairySorceress.Length)
//.........这里部分代码省略.........
示例15: GetAddrir
public static GameNPC GetAddrir()
{
GameNPC[] npcs = WorldMgr.GetNPCsByName("Addrir", eRealm.Hibernia);
GameNPC addrir = null;
if (npcs.Length == 0)
{
addrir = new GameNPC();
addrir.Model = 335;
addrir.Name = "Addrir";
if (log.IsWarnEnabled)
log.Warn("Could not find " + addrir.Name + ", creating him ...");
addrir.GuildName = "Part of Addrir Quests";
addrir.Realm = eRealm.Hibernia;
addrir.CurrentRegionID = 200;
GameNpcInventoryTemplate template = new GameNpcInventoryTemplate();
template.AddNPCEquipment(eInventorySlot.TorsoArmor, 58, 35);
template.AddNPCEquipment(eInventorySlot.Cloak, 57, 32);
template.AddNPCEquipment(eInventorySlot.RightHandWeapon, 1173);
addrir.Inventory = template.CloseTemplate();
addrir.SwitchWeapon(GameLiving.eActiveWeaponSlot.Standard);
// addrir.AddNPCEquipment((byte) eVisibleItems.TORSO, 58, 35, 0, 0);
// addrir.AddNPCEquipment((byte) eVisibleItems.CLOAK, 57, 32, 0, 0);
// addrir.AddNPCEquipment((byte) eVisibleItems.RIGHT_HAND, 1173, 0, 0, 0);
addrir.Size = 50;
addrir.Level = 50;
addrir.X = GameLocation.ConvertLocalXToGlobalX(26955, 200);
addrir.Y = GameLocation.ConvertLocalYToGlobalY(7789, 200);
addrir.Z = 5196;
addrir.Heading = 22;
StandardMobBrain brain = new StandardMobBrain();
brain.AggroLevel = 0;
brain.AggroRange = 0;
addrir.SetOwnBrain(brain);
//You don't have to store the created mob in the db if you don't want,
//it will be recreated each time it is not found, just comment the following
//line if you rather not modify your database
if (SAVE_INTO_DATABASE)
addrir.SaveIntoDatabase();
addrir.AddToWorld();
}
else
addrir = npcs[0];
return addrir;
}