public override void GetPacketDataString(TextWriter text, bool flagsDescription) { text.Write("\n\tcount:{0,-2} page:{1} pages:{2} unk1:0x{3:X2}", itemCount, page, maxPages, unk1); if (itemCount > 0) { for (int i = 0; i < itemCount; i++) { MerchantItem item = items[i]; text.Write("\n\tindex:{0,-2} level:{1,-2} value1:{2,-3} value2:{3,-3} hand:0x{4:X2} damageAndObjectType:0x{5:X2} canUse:{6} weigh:{7,-4} condition:{8,3} durability:{9,3} quality:{10,3} bonus:{11,2} model:0x{12:X4} color:0x{13:X4} effect:0x{14:X4} lot:0x{15:X4} price:{16,-9} name:\"{17}\"", item.index, item.level, item.value1, item.value2, item.hand, item.damageAndObjectType, item.canUse, item.weight / 10f, item.condition, item.durability, item.quality, item.bonus, item.model, item.color, item.effect, item.lot, item.price, item.name); if (flagsDescription) { text.Write(" ({0})", (StoC_0x02_InventoryUpdate.eObjectType)(item.damageAndObjectType & 0x3F)); } } } }
public bool BuyItem(int itemGuid, uint quantity) { MerchantItem merchantItem = this.Merchant.Bag.FirstOrDefault((MerchantItem x) => x.Guid == itemGuid); bool result; if (merchantItem == null || quantity == 0u || !this.CanBuy(merchantItem, quantity)) { this.Character.Client.Send(new ExchangeErrorMessage(8)); result = false; } else { this.Merchant.Bag.RemoveItem(merchantItem, quantity, true); BasePlayerItem item = Singleton <ItemManager> .Instance.CreatePlayerItem(this.Character, merchantItem.Template, quantity, merchantItem.Effects); this.Character.Inventory.AddItem(item); BasicHandler.SendTextInformationMessage(this.Character.Client, TextInformationTypeEnum.TEXT_INFORMATION_MESSAGE, 21, new object[] { quantity, merchantItem.Template.Id }); this.Character.Inventory.SubKamas((int)(merchantItem.Price * quantity)); BasicHandler.SendTextInformationMessage(this.Character.Client, TextInformationTypeEnum.TEXT_INFORMATION_MESSAGE, 46, new object[] { (int)(merchantItem.Price * quantity) }); this.Merchant.KamasEarned += merchantItem.Price * quantity; this.Character.Client.Send(new ExchangeBuyOkMessage()); result = true; } return(result); }
private void AddItem() { var search = new ItemSearchForm(_items); search.SelectClicked += async(o, args) => { if (!(o is ItemTemplate item)) { return; } var slot = 0; if (_merchantItems != null && _merchantItems.Count(x => x.PageNumber == _page) > 0) { slot = _merchantItems.Where(x => x.PageNumber == _page).Max(x => x.SlotPosition) + 1; } else { _merchantItems = new List <MerchantItem>(); } var merchantItem = new MerchantItem { ItemTemplateID = item.Id_nb, PageNumber = _page, SlotPosition = slot }; _merchantItems.Add(merchantItem); await Save(); }; search.ShowDialog(this); }
public static void HandleExchangeObjectModifyPricedMessage(WorldClient client, ExchangeObjectModifyPricedMessage message) { if (!client.Character.IsBusy() && message.price > 0) { MerchantItem merchantItem = client.Character.MerchantBag.TryGetItem((int)message.objectUID); if (merchantItem != null) { merchantItem.Price = (uint)message.price; if ((long)message.quantity == (long)((ulong)merchantItem.Stack) || message.quantity == 0) { InventoryHandler.SendExchangeShopStockMovementUpdatedMessage(client, merchantItem); } else { if ((long)message.quantity < (long)((ulong)merchantItem.Stack)) { client.Character.MerchantBag.MoveToInventory(merchantItem, (uint)((ulong)merchantItem.Stack - (ulong)((long)message.quantity))); } else { BasePlayerItem basePlayerItem = client.Character.Inventory.TryGetItem(merchantItem.Template); if (basePlayerItem != null) { client.Character.Inventory.MoveToMerchantBag(basePlayerItem, (uint)((long)message.quantity - (long)((ulong)merchantItem.Stack)), (uint)message.price); } } } } } }
/// <summary> /// </summary> /// <param name="json"></param> /// <returns></returns> public object Get(string json) { var dic = json.ToObject <Dictionary <string, string> >(); //前端传值需注意大小写 userId为必传项 dic.TryGetValue("userId", out var userId); if (userId.IsNullOrEmpty()) { return(null); } var userGradeList = Ioc.Resolve <IAutoConfigService>().GetList <UserGradeConfig>(); var userRights = Ioc.Resolve <IUserRightsService>().GetList(u => u.UserId == u.UserId.ToInt64()); var merchantList = new List <MerchantItem>(); foreach (var item in userGradeList) { var userRight = userRights.FirstOrDefault(u => u.GradeId == item.Id); if (userRight == null) { userRight = new UserRights(); userRight.TotalUseCount = 0; } var temp = new MerchantItem { Count = userRight.TotalUseCount, GradeName = item.Name }; merchantList.Add(temp); } return(merchantList); }
public void InitiliseSuppliers(IEnumerable <LiveSupplier> suppliers) { foreach (LiveSupplier liveSupplier in suppliers) { if (!Supliers.Any(s => s.Name.Equals(liveSupplier.Name))) { Supliers.Add(liveSupplier); } var availableItems = liveSupplier.InventoryItems(); Database.ExtendCategories(availableItems.Select(i => i.Category)); foreach (IInventoryItem availableItem in availableItems) { if (Database.HasItem(availableItem.Name, availableItem.Category)) { Database.ModifyStockValue(availableItem.Name, availableItem.Category, availableItem.Stock); if (!Database.DoesItemHaveFailoverSupplier(availableItem.Name, availableItem.Category)) { Database.SetFailoverSupplierForItem(availableItem.Name, availableItem.Category, new Supplier(liveSupplier.Name)); } } else { MerchantItem newItem = new MerchantItem(availableItem.Name, availableItem.Category, availableItem.Stock, availableItem.Price) { PreferredSupplier = new Supplier(liveSupplier.Name) }; Database.AddItem(newItem); } } } }
/// <summary> /// 获取商户列表 /// </summary> public void GetMerchantList() { var mid = GetInt("mid"); var orderby = GetInt("orderby"); var orderbytype = GetInt("orderbytype"); var start = GetInt("start"); var limit = GetInt("limit"); var merresult = MerchantHelper.GetMerchantList(mid, orderby, orderbytype, start * limit, limit); var mertyperesult = MerchantTypeHelper.GetList(); var data = new List <MerchantItem>(); var idlist = merresult.Results.Select(o => o.Id).ToList(); var users = AccountHelper.GetUserList(Utility.GetWhereSql(idlist)); foreach (var merchant in merresult.Results) { var merchantitem = new MerchantItem(); merchantitem.Id = merchant.Id; merchantitem.UserCount = merchant.UserCount; var user = users.Results.FirstOrDefault(o => o.Id == merchant.Id); if (user == null) { ReturnErrorMsg("数据出错"); return; } merchantitem.Money = user.Money; var mertype = mertyperesult.FirstOrDefault(o => o.Id == merchant.Mid); if (mertype == null) { ReturnErrorMsg("数据出错"); return; } merchantitem.Cname = mertype.Name; merchantitem.CreateTime = merchant.CreateTime; merchantitem.DevName = merchant.DevName; merchantitem.Name = merchant.Name; merchantitem.LogoUrl = merchant.LogoUrl; data.Add(merchantitem); } var jt = new JsonTransfer(); jt.Add("list", data); jt.Add("totalcount", merresult.TotalCount); Response.Write(jt.ToJson()); Response.End(); }
public override void GetPacketDataString(TextWriter text, bool flagsDescription) { text.Write("\n\tcount:{0,-2} windowType:{1}({4}) page:{2} unk1:{3}", itemCount, windowType, page, unk1, (eMerchantWindowType)windowType); for (int i = 0; i < itemCount; i++) { MerchantItem item = items[i]; text.Write("\n\tindex:{0,-2} level:{1,-2} value1:{2,-3} value2:{3,-3} hand:0x{4:X2} damageType:0x{5:X2} objectType:0x{6:X2} canUse:{7} weight:{8,-4} price:{9,-8} model:0x{10:X4} name:\"{11}\"", item.index, item.level, item.value1, item.value2, item.hand, item.damageType, item.objectType, item.canUse, item.weight, item.price, item.model, item.name); if (flagsDescription) { text.Write(" ({0})", (StoC_0x02_InventoryUpdate.eObjectType)item.objectType); } } }
public static void HandleExchangeObjectMoveMessage(WorldClient client, ExchangeObjectMoveMessage message) { if (client.Character.IsTrading()) { client.Character.Trader.MoveItem((int)message.objectUID, message.quantity); } else { if (client.Character.IsInMerchantDialog() && message.quantity <= 0) { MerchantItem merchantItem = client.Character.MerchantBag.TryGetItem((int)message.objectUID); if (merchantItem != null && client.Character.MerchantBag.MoveToInventory(merchantItem)) { client.Send(new ExchangeShopStockMovementRemovedMessage(message.objectUID)); } } } }
/// <summary> /// Initializes the packet. All data parsing must be done here. /// </summary> public override void Init() { Position = 0; itemCount = (sbyte)ReadByte(); page = ReadByte(); maxPages = ReadByte(); unk1 = ReadByte(); if (itemCount > 0) { items = new MerchantItem[itemCount]; for (int i = 0; i < itemCount; i++) { MerchantItem item = new MerchantItem(); item.index = ReadByte(); item.level = ReadByte(); item.value1 = ReadByte(); // DPS_AF item.value2 = ReadByte(); // SPD_ABS item.hand = ReadByte(); item.damageAndObjectType = ReadByte(); // Hand + ObjectType ? item.canUse = ReadByte(); item.weight = ReadShort(); item.condition = ReadByte(); item.durability = ReadByte(); item.quality = ReadByte(); item.bonus = ReadByte(); item.model = ReadShort(); item.color = ReadShort(); item.effect = ReadShort(); item.lot = ReadShort(); item.price = ReadInt(); item.name = ReadPascalString(); // max length = 0x2F ? items[i] = item; } } }
/// <summary> /// Initializes the packet. All data parsing must be done here. /// </summary> public override void Init() { Position = 0; itemCount = ReadByte(); // 0x00 windowType = ReadByte(); // 0x01 page = ReadByte(); // 0x02 unk1 = ReadByte(); // 0x03 items = new MerchantItem[itemCount]; for (int i = 0; i < itemCount; i++) { MerchantItem item = new MerchantItem(); item.index = ReadByte(); item.level = ReadByte(); item.value1 = ReadByte(); item.value2 = ReadByte(); item.hand = ReadByte(); // >>6 to get hand item.damageAndObjectType = ReadByte(); if (windowType < (byte)eMerchantWindowType.HouseStore) { item.damageType = (byte)(item.damageAndObjectType >> 6); item.objectType = (byte)(item.damageAndObjectType & 0x3F); } else { item.objectType = item.damageAndObjectType; } item.canUse = ReadByte(); item.weight = ReadShort(); item.price = ReadInt(); item.model = ReadShort(); item.name = ReadPascalString(); items[i] = item; } }
public void MPT_Redundancy_AddNewAggt_StringEntity() { var repo = RF.Concrete <HouseMerchantRepository>(); using (RF.TransactionScope(repo)) { var r = new HouseMerchant { Name = "A1" }; var c = new MerchantItem(); r.MerchantItemList.Add(c); Assert.AreEqual(c.RD_MerchantName, r.Name); r.Id = Guid.NewGuid().ToString(); Assert.AreEqual(c.RD_MerchantName, r.Name); Save(r); r = repo.GetById(r.Id); Assert.AreEqual(r.MerchantItemList[0].RD_MerchantName, r.Name); } }
public void Load() { _templates = new Dictionary <uint, NpcTemplate>(); _goods = new Dictionary <uint, MerchantGoods>(); using (var connection = SQLite.CreateConnection()) { _log.Info("Loading npc templates..."); using (var command = connection.CreateCommand()) { command.CommandText = "SELECT * from npcs"; command.Prepare(); using (var sqliteDataReader = command.ExecuteReader()) using (var reader = new SQLiteWrapperReader(sqliteDataReader)) { while (reader.Read()) { var template = new NpcTemplate(); template.Id = reader.GetUInt32("id"); template.Name = reader.GetString("name"); template.CharRaceId = reader.GetInt32("char_race_id"); template.NpcGradeId = (NpcGradeType)reader.GetByte("npc_grade_id"); template.NpcKindId = (NpcKindType)reader.GetByte("npc_kind_id"); template.Level = reader.GetByte("level"); template.NpcTemplateId = (NpcTemplateType)reader.GetByte("npc_template_id"); template.ModelId = reader.GetUInt32("model_id"); template.FactionId = reader.GetUInt32("faction_id"); template.SkillTrainer = reader.GetBoolean("skill_trainer", true); template.AiFileId = reader.GetInt32("ai_file_id"); template.Merchant = reader.GetBoolean("merchant", true); template.NpcNicknameId = reader.GetInt32("npc_nickname_id"); template.Auctioneer = reader.GetBoolean("auctioneer", true); template.ShowNameTag = reader.GetBoolean("show_name_tag", true); template.VisibleToCreatorOnly = reader.GetBoolean("visible_to_creator_only", true); template.NoExp = reader.GetBoolean("no_exp", true); template.PetItemId = reader.GetInt32("pet_item_id", 0); template.BaseSkillId = reader.GetInt32("base_skill_id"); template.TrackFriendship = reader.GetBoolean("track_friendship", true); template.Priest = reader.GetBoolean("priest", true); template.NpcTedencyId = reader.GetInt32("npc_tendency_id", 0); template.Blacksmith = reader.GetBoolean("blacksmith", true); template.Teleporter = reader.GetBoolean("teleporter", true); template.Opacity = reader.GetFloat("opacity"); template.AbilityChanger = reader.GetBoolean("ability_changer", true); template.Scale = reader.GetFloat("scale"); template.SightRangeScale = reader.GetFloat("sight_range_scale"); template.SightFovScale = reader.GetFloat("sight_fov_scale"); template.MilestoneId = reader.GetInt32("milestone_id", 0); template.AttackStartRangeScale = reader.GetFloat("attack_start_range_scale"); template.Aggression = reader.GetBoolean("aggression", true); template.ExpMultiplier = reader.GetFloat("exp_multiplier"); template.ExpAdder = reader.GetInt32("exp_adder"); template.Stabler = reader.GetBoolean("stabler", true); template.AcceptAggroLink = reader.GetBoolean("accept_aggro_link", true); template.RecrutingBattlefieldId = reader.GetInt32("recruiting_battle_field_id"); template.ReturnDistance = reader.GetFloat("return_distance"); template.NpcAiParamId = reader.GetInt32("npc_ai_param_id"); template.NonPushableByActor = reader.GetBoolean("non_pushable_by_actor", true); template.Banker = reader.GetBoolean("banker", true); template.AggroLinkSpecialRuleId = reader.GetInt32("aggro_link_special_rule_id"); template.AggroLinkHelpDist = reader.GetFloat("aggro_link_help_dist"); template.AggroLinkSightCheck = reader.GetBoolean("aggro_link_sight_check", true); template.Expedition = reader.GetBoolean("expedition", true); template.HonorPoint = reader.GetInt32("honor_point"); template.Trader = reader.GetBoolean("trader", true); template.AggroLinkSpecialGuard = reader.GetBoolean("aggro_link_special_guard", true); template.AggroLinkSpecialIgnoreNpcAttacker = reader.GetBoolean("aggro_link_special_ignore_npc_attacker", true); template.AbsoluteReturnDistance = reader.GetFloat("absolute_return_distance"); template.Repairman = reader.GetBoolean("repairman", true); template.ActivateAiAlways = reader.GetBoolean("activate_ai_always", true); template.Specialty = reader.GetBoolean("specialty", true); template.UseRangeMod = reader.GetBoolean("use_range_mod", true); template.NpcPostureSetId = reader.GetInt32("npc_posture_set_id"); template.MateEquipSlotPackId = reader.GetInt32("mate_equip_slot_pack_id", 0); template.MateKindId = reader.GetInt32("mate_kind_id", 0); template.EngageCombatGiveQuestId = reader.GetInt32("engage_combat_give_quest_id", 0); template.NoApplyTotalCustom = reader.GetBoolean("no_apply_total_custom", true); template.BaseSkillStrafe = reader.GetBoolean("base_skill_strafe", true); template.BaseSkillDelay = reader.GetFloat("base_skill_delay"); template.NpcInteractionSetId = reader.GetInt32("npc_interaction_set_id", 0); template.UseAbuserList = reader.GetBoolean("use_abuser_list", true); template.ReturnWhenEnterHousingArea = reader.GetBoolean("return_when_enter_housing_area", true); template.LookConverter = reader.GetBoolean("look_converter", true); template.UseDDCMSMountSkill = reader.GetBoolean("use_ddcms_mount_skill", true); template.CrowdEffect = reader.GetBoolean("crowd_effect", true); var bodyPack = reader.GetInt32("equip_bodies_id", 0); var clothPack = reader.GetInt32("equip_cloths_id", 0); var weaponPack = reader.GetInt32("equip_weapons_id", 0); var totalCustomId = reader.GetInt32("total_custom_id", 0); if (clothPack > 0) { using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT * FROM equip_pack_cloths WHERE id=@id"; command2.Prepare(); command2.Parameters.AddWithValue("id", clothPack); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { while (reader2.Read()) { template.Items.Headgear = reader2.GetUInt32("headgear_id"); template.Items.HeadgearGrade = reader2.GetByte("headgear_grade_id"); template.Items.Necklace = reader2.GetUInt32("necklace_id"); template.Items.NecklaceGrade = reader2.GetByte("necklace_grade_id"); template.Items.Shirt = reader2.GetUInt32("shirt_id"); template.Items.ShirtGrade = reader2.GetByte("shirt_grade_id"); template.Items.Belt = reader2.GetUInt32("belt_id"); template.Items.BeltGrade = reader2.GetByte("belt_grade_id"); template.Items.Pants = reader2.GetUInt32("pants_id"); template.Items.PantsGrade = reader2.GetByte("pants_grade_id"); template.Items.Gloves = reader2.GetUInt32("glove_id"); template.Items.GlovesGrade = reader2.GetByte("glove_grade_id"); template.Items.Shoes = reader2.GetUInt32("shoes_id"); template.Items.ShoesGrade = reader2.GetByte("shoes_grade_id"); template.Items.Bracelet = reader2.GetUInt32("bracelet_id"); template.Items.BraceletGrade = reader2.GetByte("bracelet_grade_id"); template.Items.Back = reader2.GetUInt32("back_id"); template.Items.BackGrade = reader2.GetByte("back_grade_id"); template.Items.Cosplay = reader2.GetUInt32("cosplay_id"); template.Items.CosplayGrade = reader2.GetByte("cosplay_grade_id"); template.Items.Undershirts = reader2.GetUInt32("undershirt_id"); template.Items.UndershirtsGrade = reader2.GetByte("undershirt_grade_id"); template.Items.Underpants = reader2.GetUInt32("underpants_id"); template.Items.UnderpantsGrade = reader2.GetByte("underpants_grade_id"); } } } } if (weaponPack > 0) { using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT * FROM equip_pack_weapons WHERE id=@id"; command2.Prepare(); command2.Parameters.AddWithValue("id", weaponPack); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { while (reader2.Read()) { template.Items.Mainhand = reader2.GetUInt32("mainhand_id"); template.Items.MainhandGrade = reader2.GetByte("mainhand_grade_id"); template.Items.Offhand = reader2.GetUInt32("offhand_id"); template.Items.OffhandGrade = reader2.GetByte("offhand_grade_id"); template.Items.Ranged = reader2.GetUInt32("ranged_id"); template.Items.RangedGrade = reader2.GetByte("ranged_grade_id"); template.Items.Musical = reader2.GetUInt32("musical_id"); template.Items.MusicalGrade = reader2.GetByte("musical_grade_id"); } } } } if (totalCustomId > 0) { using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT * FROM total_character_customs WHERE id=@id"; command2.Prepare(); command2.Parameters.AddWithValue("id", totalCustomId); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { while (reader2.Read()) { template.HairId = reader2.GetUInt32("hair_id"); template.ModelParams = new UnitCustomModelParams(UnitCustomModelType.Face); template.ModelParams .SetHairColorId(reader2.GetUInt32("hair_color_id")) .SetSkinColorId(reader2.GetUInt32("skin_color_id")); template.ModelParams.Face.MovableDecalAssetId = reader2.GetUInt32("face_movable_decal_asset_id"); template.ModelParams.Face.MovableDecalScale = reader2.GetFloat("face_movable_decal_scale"); template.ModelParams.Face.MovableDecalRotate = reader2.GetFloat("face_movable_decal_rotate"); template.ModelParams.Face.MovableDecalMoveX = reader2.GetInt16("face_movable_decal_move_x"); template.ModelParams.Face.MovableDecalMoveY = reader2.GetInt16("face_movable_decal_move_y"); template.ModelParams.Face.SetFixedDecalAsset(0, reader2.GetUInt32("face_fixed_decal_asset_0_id"), reader2.GetFloat("face_fixed_decal_asset_0_weight")); template.ModelParams.Face.SetFixedDecalAsset(1, reader2.GetUInt32("face_fixed_decal_asset_1_id"), reader2.GetFloat("face_fixed_decal_asset_1_weight")); template.ModelParams.Face.SetFixedDecalAsset(2, reader2.GetUInt32("face_fixed_decal_asset_2_id"), reader2.GetFloat("face_fixed_decal_asset_2_weight")); template.ModelParams.Face.SetFixedDecalAsset(3, reader2.GetUInt32("face_fixed_decal_asset_3_id"), reader2.GetFloat("face_fixed_decal_asset_3_weight")); template.ModelParams.Face.DiffuseMapId = reader2.GetUInt32("face_diffuse_map_id"); template.ModelParams.Face.NormalMapId = reader2.GetUInt32("face_normal_map_id"); template.ModelParams.Face.EyelashMapId = reader2.GetUInt32("face_eyelash_map_id"); template.ModelParams.Face.LipColor = reader2.GetUInt32("lip_color"); template.ModelParams.Face.LeftPupilColor = reader2.GetUInt32("left_pupil_color"); template.ModelParams.Face.RightPupilColor = reader2.GetUInt32("right_pupil_color"); template.ModelParams.Face.EyebrowColor = reader2.GetUInt32("eyebrow_color"); reader2.GetBytes("modifier", 0, template.ModelParams.Face.Modifier, 0, 128); template.ModelParams.Face.MovableDecalWeight = reader2.GetFloat("face_movable_decal_weight"); template.ModelParams.Face.NormalMapWeight = reader2.GetFloat("face_normal_map_weight"); template.ModelParams.Face.DecoColor = reader2.GetUInt32("deco_color"); } } } } else { template.ModelParams = new UnitCustomModelParams(UnitCustomModelType.Skin); } if (template.NpcPostureSetId > 0) { using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT * FROM npc_postures WHERE npc_posture_set_id=@id"; command2.Prepare(); command2.Parameters.AddWithValue("id", template.NpcPostureSetId); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { if (reader2.Read()) { template.AnimActionId = reader2.GetUInt32("anim_action_id"); } } } } using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT * FROM item_body_parts WHERE model_id = @model_id"; command2.Prepare(); command2.Parameters.AddWithValue("model_id", template.ModelId); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { while (reader2.Read()) { var itemId = reader2.GetUInt32("item_id", 0); var slot = reader2.GetInt32("slot_type_id") - 23; template.BodyItems[slot] = itemId; } } } if (template.CharRaceId > 0) { using (var command2 = connection.CreateCommand()) { command2.CommandText = "SELECT char_race_id, char_gender_id FROM characters WHERE model_id = @model_id"; command2.Prepare(); command2.Parameters.AddWithValue("model_id", template.ModelId); using (var sqliteReader2 = command2.ExecuteReader()) using (var reader2 = new SQLiteWrapperReader(sqliteReader2)) { if (reader2.Read()) { template.Race = reader2.GetByte("char_race_id"); template.Gender = reader2.GetByte("char_gender_id"); } } } } _templates.Add(template.Id, template); } } } using (var command = connection.CreateCommand()) { command.CommandText = "SELECT * FROM unit_modifiers WHERE owner_type='Npc'"; command.Prepare(); using (var sqliteDataReader = command.ExecuteReader()) using (var reader = new SQLiteWrapperReader(sqliteDataReader)) { while (reader.Read()) { var npcId = reader.GetUInt32("owner_id"); if (!_templates.ContainsKey(npcId)) { continue; } var npc = _templates[npcId]; var template = new BonusTemplate(); template.Attribute = (UnitAttribute)reader.GetByte("unit_attribute_id"); template.ModifierType = (UnitModifierType)reader.GetByte("unit_modifier_type_id"); template.Value = reader.GetInt32("value"); template.LinearLevelBonus = reader.GetInt32("linear_level_bonus"); npc.Bonuses.Add(template); } } } using (var command = connection.CreateCommand()) { command.CommandText = "SELECT * FROM npc_initial_buffs"; command.Prepare(); using (var reader = new SQLiteWrapperReader(command.ExecuteReader())) { while (reader.Read()) { var id = reader.GetUInt32("npc_id"); var buffId = reader.GetUInt32("buff_id"); if (!_templates.ContainsKey(id)) { continue; } var template = _templates[id]; template.Buffs.Add(buffId); } } } using (var command = connection.CreateCommand()) { command.CommandText = "SELECT * FROM merchants"; command.Prepare(); using (var reader = new SQLiteWrapperReader(command.ExecuteReader())) { while (reader.Read()) { var id = reader.GetUInt32("npc_id"); if (!_templates.ContainsKey(id)) { continue; } var template = _templates[id]; template.MerchantPackId = reader.GetUInt32("merchant_pack_id"); } } } _log.Info("Loaded {0} npc templates", _templates.Count); _log.Info("Loading merchant packs..."); using (var command = connection.CreateCommand()) { command.CommandText = "SELECT * FROM merchant_goods"; command.Prepare(); using (var reader = new SQLiteWrapperReader(command.ExecuteReader())) { while (reader.Read()) { var id = reader.GetUInt32("merchant_pack_id"); var template = new MerchantItem(); template.Id = reader.GetUInt32("item_id"); template.Grade = reader.GetByte("grade_id"); if (!_goods.ContainsKey(id)) { _goods.Add(id, new MerchantGoods(id)); } _goods[id].Items.Add(template.Id, template); } } } _log.Info("Loaded {0} merchant packs", _goods.Count); } }
public bool CanBuy(MerchantItem item, int amount) => Character.Inventory.Kamas >= item.Price * amount || !Merchant.CanBeSee(Character);
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { ItemTemplate[] buffMerch = (ItemTemplate[])GameServer.Database.SelectObjects<ItemTemplate>("PackageID like '" + GameServer.Database.Escape("BPBuffTokens") + "' ORDER by Item_Type"); MerchantItem m_item = null; int pagenumber = 0; int slotposition = 0; m_item = (MerchantItem)GameServer.Database.SelectObject<MerchantItem>("ItemListID='BPBuffTokens'"); if (m_item == null) { foreach (ItemTemplate item in buffMerch) { m_item = new MerchantItem(); m_item.ItemListID = "BPBuffTokens"; m_item.ItemTemplateID = item.Id_nb; m_item.PageNumber = pagenumber; m_item.SlotPosition = slotposition; m_item.AllowAdd = true; GameServer.Database.AddObject(m_item); if (slotposition == 29) { slotposition = 0; pagenumber += 1; } else { slotposition += 1; } } } }
public MItem(MerchantItem item) { Index = item.Index + 1; Name = item.Name.ToLower(); ItemId = item.ItemId; }
public void Add(MerchantItem entity) { base.Add(entity); }
public static void SendExchangeShopStockMovementUpdatedMessage(IPacketReceiver client, MerchantItem item) { client.Send(new ExchangeShopStockMovementUpdatedMessage(item.GetObjectItemToSell())); }
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { ItemTemplate item = null; // Albion Weapons #region benthic_glaive item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_glaive"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_glaive"; item.Name = "Benthic Glaive"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 52; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.PolearmWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1936; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_glaive #region benthic_rapier item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_rapier"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_rapier"; item.Name = "Benthic Rapier"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 39; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.ThrustWeapon; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 18; item.Model = 1960; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_rapier #region benthic_falchion item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_falchion"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_falchion"; item.Name = "Benthic Falchion"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 40; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.SlashingWeapon; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 19; item.Model = 1948; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_falchion #region benthic_long_bow item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_long_bow"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_long_bow"; item.Name = "Benthic Long Bow"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 52; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Longbow; item.Item_Type = (int)eInventorySlot.DistanceWeapon; item.Weight = 10; item.Model = 1912; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllArcherySkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_long_bow #region benthic_stiletto item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_stiletto"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_stiletto"; item.Name = "Benthic Stiletto"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 33; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.ThrustWeapon; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1956; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_stiletto #region benthic_war_pick item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_war_pick"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_war_pick"; item.Name = "Benthic War Pick"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 53; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.TwoHandedWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1900; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_war_pick #region benthic_pick_flail item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_pick_flail"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_pick_flail"; item.Name = "Benthic Pick Flail"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 36; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Flexible; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1928; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_pick_flail #region benthic_coffin_mace item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_coffin_mace"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_coffin_mace"; item.Name = "Benthic Coffin Mace"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 34; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.CrushingWeapon; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1920; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_coffin_mace #region benthic_great_sword item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_sword"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_sword"; item.Name = "Benthic Great Sword"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 51; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.TwoHandedWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1904; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_sword #region benthic_magus_staff item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_magus_staff"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_magus_staff"; item.Name = "Benthic Magus Staff"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 30; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Staff; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 40; item.Model = 1968; item.Bonus1 = 30; item.Bonus2 = 10; item.Bonus3 = 10; item.Bonus4 = 50; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.AllFocusLevels; item.Bonus5Type = (int)eProperty.AllMagicSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.Charges = 10; item.MaxCharges = 10; item.SpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_magus_staff #region benthic_bishops_mace item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_bishops_mace"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_bishops_mace"; item.Name = "Benthic Bishops Mace"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 38; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.CrushingWeapon; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1916; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_bishops_mace #region benthic_great_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_hammer"; item.Name = "Benthic Great Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 55; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.TwoHandedWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1896; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_hammer #region benthic_quarterstaff item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_quarterstaff"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_quarterstaff"; item.Name = "Benthic Quarterstaff"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 42; item.Hand = 1; item.Type_Damage = (int)eDamageType.Crush; item.Object_Type = (int)eObjectType.Staff; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1952; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_quarterstaff #region benthic_spiked_flail item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_spiked_flail"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_spiked_flail"; item.Name = "Benthic Spiked Flail"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 39; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Flexible; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 30; item.Model = 1924; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_spiked_flail #region benthic_military_fork item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_military_fork"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_military_fork"; item.Name = "Benthic Military Fork"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 57; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.PolearmWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1932; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_military_fork #region benthic_lucerne_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_lucerne_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_lucerne_hammer"; item.Name = "Benthic Lucerne Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 56; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.PolearmWeapon; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1940; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Albion; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_lucerne_hammer // Midgard Weapons #region benthic_war_axe item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_war_axe"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_war_axe"; item.Name = "Benthic War Axe"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 26; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Axe; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Weight = 10; item.Model = 2032; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true; item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_war_axe #region benthic_battleaxe item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_battleaxe"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_battleaxe"; item.Name = "Benthic Battleaxe"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 55; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Axe; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2052; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_battleaxe #region benthic_moon_claw item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_moon_claw"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_moon_claw"; item.Name = "Benthic Moon Claw"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 38; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.HandToHand; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Weight = 10; item.Model = 2024; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_moon_claw #region benthic_great_club item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_club"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_club"; item.Name = "Benthic Great Club"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 54; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Hammer; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2056; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_club #region benthic_war_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_war_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_war_hammer"; item.Name = "Benthic War Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 36; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Hammer; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 2044; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_war_hammer #region benthic_fang_greave item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_fang_greave"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_fang_greave"; item.Name = "Benthic Fang Greave"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 40; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.HandToHand; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Weight = 10; item.Model = 2028; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_fang_greave #region benthic_long_sword2 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_long_sword2"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_long_sword2"; item.Name = "Benthic Long Sword"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 40; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Sword; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 2036; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_long_sword2 #region benthic_great_sword3 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_sword3"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_sword3"; item.Name = "Benthic Great Sword"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 53; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Sword; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2060; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_sword3 #region benthic_hooked_spear item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_hooked_spear"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_hooked_spear"; item.Name = "Benthic Hooked Spear"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 51; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Spear; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2048; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_hooked_spear #region benthic_magus_staff2 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_magus_staff2"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_magus_staff2"; item.Name = "Benthic Magus Staff"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 45; item.Hand = 3; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Staff; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1968; item.Bonus = 35; item.Bonus1 = 30; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 50; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.AllFocusLevels; item.Bonus5Type = (int)eProperty.AllMagicSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_magus_staff2 #region benthic_magus_staff3 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_magus_staff3"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_magus_staff3"; item.Name = "Benthic Magus Staff"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 30; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Staff; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 40; item.Model = 2068; item.Bonus1 = 30; item.Bonus2 = 10; item.Bonus3 = 10; item.Bonus4 = 50; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.AllFocusLevels; item.Bonus5Type = (int)eProperty.AllMagicSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.Charges = 10; item.MaxCharges = 10; item.SpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_magus_staff3 #region benthic_battle_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_battle_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_battle_hammer"; item.Name = "Benthic Battle Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 33; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Hammer; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Weight = 10; item.Model = 2044; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_battle_hammer #region benthic_composite_bow item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_composite_bow"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_composite_bow"; item.Name = "Benthic Composite Bow"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 45; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.CompositeBow; item.Item_Type = (int)eInventorySlot.DistanceWeapon; item.Weight = 10; item.Model = 2064; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllArcherySkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_composite_bow #region benthic_double_bladed_axe item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_double_bladed_axe"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_double_bladed_axe"; item.Name = "Benthic Double Bladed Axe"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 37; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Axe; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 2040; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Midgard; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_double_bladed_axe // Hibernia Weapons #region benthic_adze item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_adze"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_adze"; item.Name = "Benthic Adze"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 33; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Piercing; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 2012; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_adze #region benthic_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_hammer"; item.Name = "Benthic Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 34; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Blunt; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1992; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_hammer #region benthic_war_adze item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_war_adze"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_war_adze"; item.Name = "Benthic War Adze"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 39; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Piercing; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 24; item.Model = 2016; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_war_adze #region benthic_long_sword item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_long_sword"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_long_sword"; item.Name = "Benthic Long Sword"; item.Level = 51; item.Durability = 500000; item.MaxDurability = 500000; item.Condition = 500000; item.MaxCondition = 500000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 37; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Blades; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Color = 45; item.Weight = 10; item.Model = 1972; item.Bonus = 35; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_long_sword #region benthic_war_scythe item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_war_scythe"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_war_scythe"; item.Name = "Benthic War Scythe"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 55; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Scythe; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2004; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_war_scythe #region benthic_battle_adze item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_battle_adze"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_battle_adze"; item.Name = "Benthic Battle Adze"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 33; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Piercing; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Weight = 24; item.Model = 2016; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_battle_adze #region benthic_dire_hammer item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_dire_hammer"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_dire_hammer"; item.Name = "Benthic Dire Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 42; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Blunt; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1988; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_dire_hammer #region benthic_recurve_bow item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_recurve_bow"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_recurve_bow"; item.Name = "Benthic Recurve Bow"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 52; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.RecurvedBow; item.Item_Type = (int)eInventorySlot.DistanceWeapon; item.Weight = 10; item.Model = 1996; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Dexterity; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllArcherySkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_recurve_bow #region benthic_short_sword item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_short_sword"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_short_sword"; item.Name = "Benthic Short Sword"; item.Level = 51; item.Durability = 500000; item.MaxDurability = 500000; item.Condition = 500000; item.MaxCondition = 500000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 33; item.Hand = 2; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Blades; item.Item_Type = (int)eInventorySlot.LeftHandWeapon; item.Color = 45; item.Weight = 10; item.Model = 1944; item.Bonus = 35; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_short_sword #region benthic_battle_spear item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_battle_spear"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_battle_spear"; item.Name = "Benthic Battle Spear"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 56; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Spear; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 2008; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_battle_spear #region benthic_great_sword2 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_sword2"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_sword2"; item.Name = "Benthic Great Sword"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 55; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.LargeWeapons; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1984; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_sword2 #region benthic_short_sword2 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_short_sword2"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_short_sword2"; item.Name = "Benthic Short Sword"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 32; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.Blades; item.Item_Type = (int)eInventorySlot.RightHandWeapon; item.Weight = 10; item.Model = 1976; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_short_sword2 #region benthic_great_hammer2 item = (ItemTemplate)GameServer.Database.FindObjectByKey<ItemTemplate>("benthic_great_hammer2"); if (item == null) { item = new ItemTemplate(); item.Id_nb = "benthic_great_hammer2"; item.Name = "Benthic Great Hammer"; item.Level = 51; item.Durability = 100; item.MaxDurability = 100; item.Condition = 50000; item.MaxCondition = 50000; item.Quality = 100; item.DPS_AF = 165; item.SPD_ABS = 51; item.Hand = 1; item.Type_Damage = 11; item.Object_Type = (int)eObjectType.LargeWeapons; item.Item_Type = (int)eInventorySlot.TwoHandWeapon; item.Weight = 10; item.Model = 1980; item.Bonus1 = 28; item.Bonus2 = 8; item.Bonus3 = 8; item.Bonus4 = 10; item.Bonus5 = 2; item.Bonus1Type = (int)eProperty.Strength; item.Bonus2Type = (int)eProperty.Resist_Heat; item.Bonus3Type = (int)eProperty.Resist_Cold; item.Bonus4Type = (int)eProperty.ArmorFactor; item.Bonus5Type = (int)eProperty.AllMeleeWeaponSkills; item.IsPickable = true; item.IsDropable = true;item.IsTradable = true; item.Price = 5000; item.MaxCount = 1; item.PackSize = 1; item.ProcSpellID = 32050; item.Realm = (int)eRealm.Hibernia; GameServer.Database.AddObject(item); if (log.IsDebugEnabled) log.Debug("Added " + item.Id_nb); } item = null; #endregion benthic_great_hammer2 MerchantItem m_item = null; m_item = (MerchantItem)GameServer.Database.SelectObject<MerchantItem>("ItemListID='LegendaryColdWeapons'"); if (m_item == null) { #region Merchant Items m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_rapier"; m_item.PageNumber = 0; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_falchion"; m_item.PageNumber = 0; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_stiletto"; m_item.PageNumber = 0; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_pick_flail"; m_item.PageNumber = 0; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_coffin_mace"; m_item.PageNumber = 0; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_bishops_mace"; m_item.PageNumber = 0; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_spiked_flail"; m_item.PageNumber = 0; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_glaive"; m_item.PageNumber = 0; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_war_pick"; m_item.PageNumber = 0; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_sword"; m_item.PageNumber = 0; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_magus_staff"; m_item.PageNumber = 0; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_hammer"; m_item.PageNumber = 0; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_quarterstaff"; m_item.PageNumber = 0; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_military_fork"; m_item.PageNumber = 0; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_lucerne_hammer"; m_item.PageNumber = 0; m_item.SlotPosition = 14; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_long_bow"; m_item.PageNumber = 0; m_item.SlotPosition = 15; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_war_hammer"; m_item.PageNumber = 1; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_long_sword2"; m_item.PageNumber = 1; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_double_bladed_axe"; m_item.PageNumber = 1; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_war_axe"; m_item.PageNumber = 1; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_moon_claw"; m_item.PageNumber = 1; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_fang_greave"; m_item.PageNumber = 1; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_battle_hammer"; m_item.PageNumber = 1; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_battleaxe"; m_item.PageNumber = 1; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_club"; m_item.PageNumber = 1; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_sword3"; m_item.PageNumber = 1; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_hooked_spear"; m_item.PageNumber = 1; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_magus_staff2"; m_item.PageNumber = 1; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_magus_staff3"; m_item.PageNumber = 1; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_composite_bow"; m_item.PageNumber = 1; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_adze"; m_item.PageNumber = 2; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_hammer"; m_item.PageNumber = 2; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_war_adze"; m_item.PageNumber = 2; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_long_sword"; m_item.PageNumber = 2; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_dire_hammer"; m_item.PageNumber = 2; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_short_sword2"; m_item.PageNumber = 2; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_battle_adze"; m_item.PageNumber = 2; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_short_sword"; m_item.PageNumber = 2; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_war_scythe"; m_item.PageNumber = 2; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_battle_spear"; m_item.PageNumber = 2; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_sword2"; m_item.PageNumber = 2; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_great_hammer2"; m_item.PageNumber = 2; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; m_item = new MerchantItem(); m_item.ItemListID = "LegendaryColdWeapons"; m_item.ItemTemplateID = "benthic_recurve_bow"; m_item.PageNumber = 2; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); item = null; #endregion Merchant Items } item = null; }
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { MerchantItem m_item = null; m_item = (MerchantItem)GameServer.Database.SelectObject<MerchantItem> ("ItemListID='AlbLabWeaps'"); if (m_item == null) { #region Merchant Items #region Page 1 Alb // main hand weapons m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Foremans_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Ifocezases_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Indignation_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Indy_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Outrage_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Reformation_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Revenge_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Swines_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Technomancer_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Lefthand weapons m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Aegbarol_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Anger_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Crusher_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Danger_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Saztsohs_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 14; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Moment_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 15; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Torture_Lab_Alb"; m_item.PageNumber = 0; m_item.SlotPosition = 16; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Shields m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Buckler_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 18; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Buckler_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 19; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 21; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 22; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Infused_Guard_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 23; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Protector_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 25; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 26; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 1 alb #region Page 2 Alb // 2 Handed m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Anguish_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Aolmos_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Dark_Guard_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "War_Spear_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Domos_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Fear_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Hate_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Iapetuss_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Kulgahs_Rod_Lab"; m_item.PageNumber = 1; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Martello_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Mnevis_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Murder_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Smash_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Spite_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Technomancer_Pick_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion page 2 alb #region Page 3 Alb // Bows m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Eouss_Crossbow_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Eouss_Short_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Eous's Long Bow"; m_item.PageNumber = 2; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Perfected_Lab_Alb"; m_item.PageNumber = 2; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Remorseless_Lab_Alb"; m_item.PageNumber = 2; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Harp m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Uruo_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Staffs m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Disenchanted_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Nok_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Noks_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Punisher_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Succor_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 14; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "AlbLabWeaps"; m_item.ItemTemplateID = "Pelgars_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 15; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 3 Alb #endregion Merchant Items } }
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { MerchantItem m_item = null; m_item = (MerchantItem)GameServer.Database.SelectObject<MerchantItem>( "ItemListID='HibLabWeaps'"); if (m_item == null) { #region Hibernia Merchant Items // Main Hand, Lefthand, Shields #region Page 1 Hib // Main hand weapons m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Anguish_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Crusher_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Foremans_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Mnevis_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Technomancer_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Weapons that can be used in left hand m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Aegbarol_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Anger_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Danger_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Fear_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Saztsohs_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Smash_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Moment_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Torture_Lab_Hib"; m_item.PageNumber = 0; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Shields m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Buckler_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 15; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Buckler_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 16; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 18; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 19; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Infused_Guard_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 20; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Protector_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 22; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 23; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 1 Hib // 2 Handed Weapons #region Page 2 Hib m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Aolmos_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Dark_Guard_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "War_Spear_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Domos_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Hatred_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Iapetuss_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Kulgahs_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Martello_Lab_Alb"; m_item.PageNumber = 1; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Murder_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Outrage_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Smash_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Spite_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Technomancer_Scythe_Lab_Hib"; m_item.PageNumber = 1; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 2 Hib // Staffs / Bows / Harp #region Page 3 Hib m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Eouss_Recurved_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Perfected_Lab_Hib"; m_item.PageNumber = 2; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Remorseless_Lab_Hib"; m_item.PageNumber = 2; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Pelgars_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "HibLabWeaps"; m_item.ItemTemplateID = "Uruo_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 3 Hib #endregion Hibernia Merchant Items } }
void ShowPurchaseWindow(MerchantItem mItem) { confirmBoxRect = new Rect((Screen.width - 200) / 2, (Screen.height - 75) / 2, 150, 100); mState = MerchantState.Purchase; selectedItem = mItem; AtavismUiSystem.AddFrame("MerchantDialog", uiRect); }
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { ItemTemplate[] buffMerch = GameServer.Database.SelectObjects<ItemTemplate>("`PackageID` LIKE @PackageID", new QueryParameter("@PackageID", "BPBuffTokens")).OrderBy(it => it.Item_Type).ToArray(); MerchantItem m_item = null; int pagenumber = 0; int slotposition = 0; m_item = GameServer.Database.SelectObjects<MerchantItem>("`ItemListID` = @ItemListID", new QueryParameter("@ItemListID", "BPBuffTokens")).FirstOrDefault(); if (m_item == null) { foreach (ItemTemplate item in buffMerch) { m_item = new MerchantItem(); m_item.ItemListID = "BPBuffTokens"; m_item.ItemTemplateID = item.Id_nb; m_item.PageNumber = pagenumber; m_item.SlotPosition = slotposition; m_item.AllowAdd = true; GameServer.Database.AddObject(m_item); if (slotposition == 29) { slotposition = 0; pagenumber += 1; } else { slotposition += 1; } } } }
public int IndexOf(MerchantItem entity) { return base.IndexOf(entity); }
public bool Remove(MerchantItem entity) { return base.Remove(entity); }
public bool Contains(MerchantItem entity) { return base.Contains(entity); }
private static void CheckMerchantItems(string merchantid, string[] itemids) { IList<MerchantItem> merchantitems = GameServer.Database.SelectObjects<MerchantItem>("ItemListID=\'" + GameServer.Database.Escape(merchantid) + "\'"); int slot = 0; foreach (string itemid in itemids) { bool found = false; foreach (MerchantItem dbitem in merchantitems) { if (dbitem.ItemTemplateID == itemid) { found = true; break; } } if (!found) { var newitem = new MerchantItem { ItemListID = merchantid, ItemTemplateID = itemid, SlotPosition = (slot % 30), PageNumber = (slot / 30) }; GameServer.Database.AddObject(newitem); } slot += 1; } }
public static void SendExchangeShopStockMovementRemovedMessage(IPacketReceiver client, MerchantItem item) { client.Send(new ExchangeShopStockMovementRemovedMessage((uint)item.Guid)); }
void _HandleMerchantList(Dictionary<string, object> props) { merchantItems.Clear(); NpcId = (OID)props["npcOid"]; int numItems = (int)props["numItems"]; for (int i = 0; i < numItems; i++) { MerchantItem merchantItem = new MerchantItem(); merchantItem.itemID = (int)props ["item_" + i + "ID"]; merchantItem.count = (int)props ["item_" + i + "Count"]; merchantItem.cost = (int)props ["item_" + i + "Cost"]; merchantItem.purchaseCurrency = (int)props ["item_" + i + "Currency"]; merchantItems.Add(merchantItem); } // dispatch a ui event to tell the rest of the system string[] args = new string[1]; AtavismEventSystem.DispatchEvent ("MERCHANT_UPDATE", args); }
public static void OnServerStartup(DOLEvent e, object sender, EventArgs args) { MerchantItem m_item = null; m_item = (MerchantItem)GameServer.Database.SelectObject<MerchantItem>( "ItemListID='MidLabWeaps'"); if (m_item == null) { #region Midgard Merchant Items // Main Hand Weapons, Lhand weapons and Shields #region Page 1 Mid m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Anger_Axe_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Anguish_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Crusher_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Danger_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Foremans_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Indy_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Mnevis_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Murder_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Revenge_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Technomancer_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Moment_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 10; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Weapons that can used in LeftHand m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Aegbarol_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Anger_LeftAxe_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 13; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Hatred_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 14; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Kulgahs_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 15; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Smash_Lab_Mid"; m_item.PageNumber = 0; m_item.SlotPosition = 16; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "The_One_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 17; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); // Shields m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Buckler_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 19; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Buckler_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 20; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 22; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 23; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Infused_Guard_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 24; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Protector_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 26; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Infused_Aegis_Lab"; m_item.PageNumber = 0; m_item.SlotPosition = 27; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 1 Mid // 2 Handed Weapons #region Page 2 Mid m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Aolmos_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Dark_Guard_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "War_Spear_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Domos_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 3; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Fear_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Iapetuss_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 5; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Martello_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Outrage_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 7; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Smash_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 8; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Spite_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 9; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Technomancer_Great_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 11; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Torture_Lab_Mid"; m_item.PageNumber = 1; m_item.SlotPosition = 12; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); #endregion Page 2 Mid // Staffs / Bows / Throwing weapon #region Page 3 Mid m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Eouss_Composite_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 0; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Perfected_Lab_Mid"; m_item.PageNumber = 2; m_item.SlotPosition = 1; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Remorseless_Lab_Mid"; m_item.PageNumber = 2; m_item.SlotPosition = 2; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); m_item = new MerchantItem(); m_item.ItemListID = "MidLabWeaps"; m_item.ItemTemplateID = "Pelgars_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 4; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); /* Delete this line if you want to add Throwing weapons to the merchant! m_item = new MerchantItem(); m_item.ItemListID = "Throwing_Lab_Mid"; m_item.ItemTemplateID = "Pelgars_Lab"; m_item.PageNumber = 2; m_item.SlotPosition = 6; //m_item.AutoSave = true; GameServer.Database.AddObject(m_item); */ // Delete this line too! #endregion Page 3 Mid #endregion Midgard Labyrinth Weapons } }
public void OnCommand(GameClient client, string[] args) { if (args.Length == 1) { DisplaySyntax(client); return; } string param = ""; if (args.Length > 2) param = String.Join(" ", args, 2, args.Length - 2); GameMerchant targetMerchant = null; if (client.Player.TargetObject != null && client.Player.TargetObject is GameMerchant) targetMerchant = (GameMerchant)client.Player.TargetObject; if (args[1].ToLower() != "create" && targetMerchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } switch (args[1].ToLower()) { #region Create case "create": { string theType = "DOL.GS.GameMerchant"; if (args.Length > 2) theType = args[2]; //Create a new merchant GameMerchant merchant = null; foreach (Assembly script in ScriptMgr.GameServerScripts) { try { client.Out.SendDebugMessage(script.FullName); merchant = (GameMerchant)script.CreateInstance(theType, false); if (merchant != null) break; } catch (Exception e) { client.Out.SendMessage(e.ToString(), eChatType.CT_System, eChatLoc.CL_PopupWindow); } } if (merchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.ErrorCreateInstance", theType)); return; } //Fill the object variables merchant.X = client.Player.X; merchant.Y = client.Player.Y; merchant.Z = client.Player.Z; merchant.CurrentRegion = client.Player.CurrentRegion; merchant.Heading = client.Player.Heading; merchant.Level = 1; merchant.Realm = client.Player.Realm; merchant.Name = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "GMCommands.Merchant.NewName"); merchant.Model = 9; //Fill the living variables merchant.CurrentSpeed = 0; merchant.MaxSpeedBase = 200; merchant.GuildName = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "GMCommands.Merchant.NewGuildName"); merchant.Size = 50; merchant.AddToWorld(); merchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Create.Created", merchant.ObjectID)); break; } #endregion Create #region Info case "info": { if (args.Length == 2) { if (targetMerchant.TradeItems == null) DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Info.ArtListIsEmpty")); else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Info.ArtList", targetMerchant.TradeItems.ItemsListID)); } } break; } #endregion Info #region Save case "save": { targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Save.SavedInDB")); break; } #endregion Save #region SaveList case "savelist": { string currentID = targetMerchant.TradeItems.ItemsListID; var itemList = GameServer.Database.SelectObjects<MerchantItem>("`ItemListID` = @ItemListID", new QueryParameter("@ItemListID", currentID)); foreach (MerchantItem merchantItem in itemList) { MerchantItem item = new MerchantItem(); item.ItemListID = GameServer.Database.Escape(args[2]); item.ItemTemplateID = merchantItem.ItemTemplateID; item.PageNumber = merchantItem.PageNumber; item.SlotPosition = merchantItem.SlotPosition; GameServer.Database.AddObject(item); } DisplayMessage(client, "New MerchantItems list saved as '" + GameServer.Database.Escape(args[2]) + "'"); break; } #endregion SaveList #region Remove case "remove": { targetMerchant.DeleteFromDatabase(); targetMerchant.Delete(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Remove.RemovedFromDB")); break; } #endregion Remove #region Sell case "sell": { switch (args[2].ToLower()) { #region Add case "add": { if (args.Length == 4) { try { string templateID = args[3]; targetMerchant.TradeItems = new MerchantTradeItems(templateID); targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Sell.Add.Loaded")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } break; } #endregion Add #region Remove case "remove": { if (args.Length == 3) { targetMerchant.TradeItems = null; targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Sell.Remove.Removed")); } break; } #endregion Remove #region Default default: { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } #endregion Default } break; } #endregion Sell #region Articles case "articles": { if (args.Length < 3) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } switch (args[2].ToLower()) { #region Add case "add": { if (args.Length <= 6) { try { string templateID = args[3]; int page = Convert.ToInt32(args[4]); eMerchantWindowSlot slot = eMerchantWindowSlot.FirstEmptyInPage; if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } ItemTemplate template = GameServer.Database.FindObjectByKey<ItemTemplate>(templateID); if (template == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.ItemTemplateNoFound", templateID)); return; } if (args.Length == 6) { slot = (eMerchantWindowSlot)Convert.ToInt32(args[5]); } slot = targetMerchant.TradeItems.GetValidSlot(page, slot); if (slot == eMerchantWindowSlot.Invalid) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.PageAndSlotInvalid", page, (MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS - 1), slot, (MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS - 1))); return; } MerchantItem item = GameServer.Database.SelectObjects<MerchantItem>("`ItemListID` = @ItemListID AND `PageNumber` = @PageNumber AND `SlotPosition` = @SlotPosition", new [] { new QueryParameter("@ItemListID", targetMerchant.TradeItems.ItemsListID), new QueryParameter("@PageNumber", page), new QueryParameter("@SlotPosition", slot) } ).FirstOrDefault(); if (item == null) { item = new MerchantItem(); item.ItemListID = targetMerchant.TradeItems.ItemsListID; item.ItemTemplateID = templateID; item.SlotPosition = (int)slot; item.PageNumber = page; GameServer.Database.AddObject(item); } else { item.ItemTemplateID = templateID; GameServer.Database.SaveObject(item); } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.ItemAdded")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); } break; } #endregion Add #region Remove case "remove": { if (args.Length == 5) { try { int page = Convert.ToInt32(args[3]); int slot = Convert.ToInt32(args[4]); if (page < 0 || page >= MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.PageInvalid", page, (MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS - 1))); return; } if (slot < 0 || slot >= MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInvalid", slot, (MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS - 1))); return; } if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } MerchantItem item = GameServer.Database.SelectObjects<MerchantItem>("`ItemListID` = @ItemListID AND `PageNumber` = @PageNumber AND `SlotPosition` = @SlotPosition", new [] { new QueryParameter("@ItemListID", targetMerchant.TradeItems.ItemsListID), new QueryParameter("@PageNumber", page), new QueryParameter("@SlotPosition", slot) } ).FirstOrDefault(); if (item == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInPageIsAEmpty", slot, page)); return; } GameServer.Database.DeleteObject(item); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInPageCleaned", slot, page)); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); } break; } #endregion Remove #region Delete case "delete": { if (args.Length == 3) { try { if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Delete.DeletingListTemp")); var merchantitems = GameServer.Database.SelectObjects<MerchantItem>("`ItemListID` = @ItemListID", new QueryParameter("@ItemListID", targetMerchant.TradeItems.ItemsListID)); if (merchantitems.Count > 0) { GameServer.Database.DeleteObject(merchantitems); } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Delete.ListDeleted")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } break; } #endregion Delete #region Default default: { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } #endregion Default } break; } #endregion Articles #region Type case "type": { string theType = param; if (args.Length > 2) theType = args[2]; //Create a new merchant GameMerchant merchant = null; foreach (Assembly script in ScriptMgr.GameServerScripts) { try { client.Out.SendDebugMessage(script.FullName); merchant = (GameMerchant)script.CreateInstance(theType, false); if (merchant != null) break; } catch (Exception e) { client.Out.SendMessage(e.ToString(), eChatType.CT_System, eChatLoc.CL_PopupWindow); } } if (merchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.ErrorCreateInstance", theType)); return; } //Fill the object variables merchant.X = targetMerchant.X; merchant.Y = targetMerchant.Y; merchant.Z = targetMerchant.Z; merchant.CurrentRegion = targetMerchant.CurrentRegion; merchant.Heading = targetMerchant.Heading; merchant.Level = targetMerchant.Level; merchant.Realm = targetMerchant.Realm; merchant.Name = targetMerchant.Name; merchant.Model = targetMerchant.Model; //Fill the living variables merchant.CurrentSpeed = targetMerchant.CurrentSpeed; ; merchant.MaxSpeedBase = targetMerchant.MaxSpeedBase; ; merchant.GuildName = targetMerchant.GuildName; merchant.Size = targetMerchant.Size; merchant.Inventory = targetMerchant.Inventory; merchant.EquipmentTemplateID = targetMerchant.EquipmentTemplateID; merchant.TradeItems = targetMerchant.TradeItems; merchant.AddToWorld(); merchant.SaveIntoDatabase(); targetMerchant.Delete(); targetMerchant.DeleteFromDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Type.Changed", param)); break; } #endregion Type } }
public bool CanBuy(MerchantItem item, uint amount) { return((long)this.Character.Inventory.Kamas >= (long)((ulong)(item.Price * amount)) || !this.Merchant.CanBeSee(this.Character)); }
public void OnCommand(GameClient client, string[] args) { if (args.Length == 1) { DisplaySyntax(client); return; } string param = ""; if (args.Length > 2) { param = String.Join(" ", args, 2, args.Length - 2); } GameMerchant targetMerchant = null; if (client.Player.TargetObject != null && client.Player.TargetObject is GameMerchant) { targetMerchant = (GameMerchant)client.Player.TargetObject; } if (args[1].ToLower() != "create" && targetMerchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } switch (args[1].ToLower()) { #region Create case "create": { string theType = "DOL.GS.GameMerchant"; if (args.Length > 2) { theType = args[2]; } //Create a new merchant GameMerchant merchant = null; ArrayList asms = new ArrayList(ScriptMgr.Scripts); asms.Add(typeof(GameServer).Assembly); foreach (Assembly script in asms) { try { client.Out.SendDebugMessage(script.FullName); merchant = (GameMerchant)script.CreateInstance(theType, false); if (merchant != null) { break; } } catch (Exception e) { client.Out.SendMessage(e.ToString(), eChatType.CT_System, eChatLoc.CL_PopupWindow); } } if (merchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.ErrorCreateInstance", theType)); return; } //Fill the object variables merchant.X = client.Player.X; merchant.Y = client.Player.Y; merchant.Z = client.Player.Z; merchant.CurrentRegion = client.Player.CurrentRegion; merchant.Heading = client.Player.Heading; merchant.Level = 1; merchant.Realm = client.Player.Realm; merchant.Name = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "GMCommands.Merchant.NewName"); merchant.Model = 9; //Fill the living variables merchant.CurrentSpeed = 0; merchant.MaxSpeedBase = 200; merchant.GuildName = LanguageMgr.GetTranslation(ServerProperties.Properties.SERV_LANGUAGE, "GMCommands.Merchant.NewGuildName"); merchant.Size = 50; merchant.AddToWorld(); merchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Create.Created", merchant.ObjectID)); break; } #endregion Create #region Info case "info": { if (args.Length == 2) { if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Info.ArtListIsEmpty")); } else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Info.ArtList", targetMerchant.TradeItems.ItemsListID)); } } break; } #endregion Info #region Save case "save": { targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Save.SavedInDB")); break; } #endregion Save #region SaveList case "savelist": { string currentID = targetMerchant.TradeItems.ItemsListID; var itemList = GameServer.Database.SelectObjects <MerchantItem>("ItemListID = '" + currentID + "'"); foreach (MerchantItem merchantItem in itemList) { MerchantItem item = new MerchantItem(); item.ItemListID = GameServer.Database.Escape(args[2]); item.ItemTemplateID = merchantItem.ItemTemplateID; item.PageNumber = merchantItem.PageNumber; item.SlotPosition = merchantItem.SlotPosition; GameServer.Database.AddObject(item); } DisplayMessage(client, "New MerchantItems list saved as '" + GameServer.Database.Escape(args[2]) + "'"); break; } #endregion SaveList #region Remove case "remove": { targetMerchant.DeleteFromDatabase(); targetMerchant.Delete(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Remove.RemovedFromDB")); break; } #endregion Remove #region Sell case "sell": { switch (args[2].ToLower()) { #region Add case "add": { if (args.Length == 4) { try { string templateID = args[3]; targetMerchant.TradeItems = new MerchantTradeItems(templateID); targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Sell.Add.Loaded")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } break; } #endregion Add #region Remove case "remove": { if (args.Length == 3) { targetMerchant.TradeItems = null; targetMerchant.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Sell.Remove.Removed")); } break; } #endregion Remove #region Default default: { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } #endregion Default } break; } #endregion Sell #region Articles case "articles": { if (args.Length < 3) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } switch (args[2].ToLower()) { #region Add case "add": { if (args.Length <= 6) { try { string templateID = args[3]; int page = Convert.ToInt32(args[4]); eMerchantWindowSlot slot = eMerchantWindowSlot.FirstEmptyInPage; if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } ItemTemplate template = GameServer.Database.FindObjectByKey <ItemTemplate>(templateID); if (template == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.ItemTemplateNoFound", templateID)); return; } if (args.Length == 6) { slot = (eMerchantWindowSlot)Convert.ToInt32(args[5]); } slot = targetMerchant.TradeItems.GetValidSlot(page, slot); if (slot == eMerchantWindowSlot.Invalid) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.PageAndSlotInvalid", page, (MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS - 1), slot, (MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS - 1))); return; } MerchantItem item = GameServer.Database.SelectObject <MerchantItem>("ItemListID = '" + GameServer.Database.Escape(targetMerchant.TradeItems.ItemsListID) + "' AND PageNumber = '" + page + "' AND SlotPosition = '" + slot + "'"); if (item == null) { item = new MerchantItem(); item.ItemListID = targetMerchant.TradeItems.ItemsListID; item.ItemTemplateID = templateID; item.SlotPosition = (int)slot; item.PageNumber = page; GameServer.Database.AddObject(item); } else { item.ItemTemplateID = templateID; GameServer.Database.SaveObject(item); } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Add.ItemAdded")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); } break; } #endregion Add #region Remove case "remove": { if (args.Length == 5) { try { int page = Convert.ToInt32(args[3]); int slot = Convert.ToInt32(args[4]); if (page < 0 || page >= MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.PageInvalid", page, (MerchantTradeItems.MAX_PAGES_IN_TRADEWINDOWS - 1))); return; } if (slot < 0 || slot >= MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInvalid", slot, (MerchantTradeItems.MAX_ITEM_IN_TRADEWINDOWS - 1))); return; } if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } MerchantItem item = GameServer.Database.SelectObject <MerchantItem>("ItemListID = '" + GameServer.Database.Escape(targetMerchant.TradeItems.ItemsListID) + "' AND PageNumber = '" + page + "' AND SlotPosition = '" + slot + "'"); if (item == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInPageIsAEmpty", slot, page)); return; } GameServer.Database.DeleteObject(item); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Remove.SlotInPageCleaned", slot, page)); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } else { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); } break; } #endregion Remove #region Delete case "delete": { if (args.Length == 3) { try { if (targetMerchant.TradeItems == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.ListNoFound")); return; } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Delete.DeletingListTemp")); var merchantitems = GameServer.Database.SelectObjects <MerchantItem>("ItemsListID = '" + GameServer.Database.Escape(targetMerchant.TradeItems.ItemsListID) + "'"); if (merchantitems.Count > 0) { foreach (MerchantItem item in merchantitems) { GameServer.Database.DeleteObject(item); } } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Articles.Delete.ListDeleted")); } catch (Exception) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } } break; } #endregion Delete #region Default default: { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.CommandOverview")); return; } #endregion Default } break; } #endregion Articles #region Type case "type": { string theType = param; if (args.Length > 2) { theType = args[2]; } //Create a new merchant GameMerchant merchant = null; ArrayList asms = new ArrayList(ScriptMgr.Scripts); asms.Add(typeof(GameServer).Assembly); foreach (Assembly script in asms) { try { client.Out.SendDebugMessage(script.FullName); merchant = (GameMerchant)script.CreateInstance(theType, false); if (merchant != null) { break; } } catch (Exception e) { client.Out.SendMessage(e.ToString(), eChatType.CT_System, eChatLoc.CL_PopupWindow); } } if (merchant == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.ErrorCreateInstance", theType)); return; } //Fill the object variables merchant.X = targetMerchant.X; merchant.Y = targetMerchant.Y; merchant.Z = targetMerchant.Z; merchant.CurrentRegion = targetMerchant.CurrentRegion; merchant.Heading = targetMerchant.Heading; merchant.Level = targetMerchant.Level; merchant.Realm = targetMerchant.Realm; merchant.Name = targetMerchant.Name; merchant.Model = targetMerchant.Model; //Fill the living variables merchant.CurrentSpeed = targetMerchant.CurrentSpeed;; merchant.MaxSpeedBase = targetMerchant.MaxSpeedBase;; merchant.GuildName = targetMerchant.GuildName; merchant.Size = targetMerchant.Size; merchant.Inventory = targetMerchant.Inventory; merchant.EquipmentTemplateID = targetMerchant.EquipmentTemplateID; merchant.TradeItems = targetMerchant.TradeItems; merchant.AddToWorld(); merchant.SaveIntoDatabase(); targetMerchant.Delete(); targetMerchant.DeleteFromDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Merchant.Type.Changed", param)); break; } #endregion Type } }
public void Insert(int index, MerchantItem entity) { base.Insert(index, entity); }