static bool DeleteCharAccessories(uint charId) { try { SpellRecord.DeleteAll("OwnerId = " + charId); AuraRecord.DeleteAll("OwnerId = " + charId); ItemRecord.DeleteAll("OwnerId = " + charId); SkillRecord.DeleteAll("OwnerId = " + charId); SpecProfile.DeleteAll("CharacterId = " + charId); ReputationRecord.DeleteAll("OwnerId = " + charId); QuestRecord.DeleteAll("OwnerId = " + charId); SummonedPetRecord.DeleteAll("OwnerLowId = " + charId); PermanentPetRecord.DeleteAll("OwnerLowId = " + charId); MailMgr.ReturnValueMailFor(charId); MailMessage.DeleteAll("ReceiverId = " + charId); RelationMgr.Instance.RemoveRelations(charId); InstanceMgr.RemoveLog(charId); GroupMgr.Instance.RemoveOfflineCharacter(charId); AchievementRecord.DeleteAll("CharacterId = " + charId); AchievementProgressRecord.DeleteAll("CharacterId = " + charId); return(true); } catch (Exception ex) { LogUtil.ErrorException(ex, "Failed to delete character with Id: " + charId); return(false); } }
public void GiveReward(Character character) { // Wrong gender if (character.Gender != Gender && Gender != GenderType.Neutral) { return; } if (character.FactionGroup == FactionGroup.Alliance && AllianceTitle != 0) { character.SetTitle(AllianceTitle, false); } else if (character.FactionGroup == FactionGroup.Horde && HordeTitle != 0) { character.SetTitle(HordeTitle, false); } if (Item != 0) { var mailMessage = new MailMessage(Subjects.Localize(character.Locale), Bodies.Localize(character.Locale)) { ReceiverId = character.EntityId.Low, DeliveryTime = DateTime.Now, SendTime = DateTime.Now, ExpireTime = DateTime.Now.AddMonths(1), MessageStationary = MailStationary.Normal }; mailMessage.AddItem(Item); MailMgr.SendMail(mailMessage); } }
public void GiveReward(Character character) { if (character.Gender != this.Gender && this.Gender != GenderType.Neutral) { return; } if (character.FactionGroup == FactionGroup.Alliance && this.AllianceTitle != TitleId.None) { character.SetTitle(this.AllianceTitle, false); } else if (character.FactionGroup == FactionGroup.Horde && this.HordeTitle != TitleId.None) { character.SetTitle(this.HordeTitle, false); } if (this.Item == (Asda2ItemId)0) { return; } MailMessage letter = new MailMessage(this.Subjects.Localize(character.Locale), this.Bodies.Localize(character.Locale)) { ReceiverId = character.EntityId.Low, DeliveryTime = DateTime.Now, SendTime = DateTime.Now, ExpireTime = DateTime.Now.AddMonths(1), MessageStationary = MailStationary.Normal }; letter.AddItem(this.Item); MailMgr.SendMail(letter); }
public override void Process(CmdTrigger <RealmServerCmdArgs> trigger) { var text = trigger.Text; var mod = text.NextModifiers(); var items = new List <ItemRecord>(); var cod = 0u; var money = 0u; if (mod.Contains("i")) { var itemId = trigger.Text.NextEnum(ItemId.None); var template = ItemMgr.GetTemplate(itemId); if (template == null) { trigger.Reply("Invalid ItemId."); return; } var item = ItemRecord.CreateRecord(template); items.Add(item); item.SaveLater(); } if (mod.Contains("c")) { cod = text.NextUInt(); } var recipientName = trigger.Text.NextWord(); if (recipientName.Length == 0) { trigger.Reply("Could not send mail - Unknown Recipient: " + recipientName); return; } var subject = trigger.Text.NextWord(","); var msg = trigger.Text.Remainder; var err = MailMgr.SendMail(recipientName, subject, msg, MailStationary.GM, items, money, cod, trigger.Args.User); if (err == MailError.OK) { trigger.Reply("Done."); } else { trigger.Reply("Could not send mail: " + err); } }
public override void Process(CmdTrigger <RealmServerCmdArgs> trigger) { StringStream text = trigger.Text; string str = text.NextModifiers(); List <ItemRecord> itemRecordList = new List <ItemRecord>(); uint cod = 0; uint money = 0; if (str.Contains("i")) { ItemTemplate template = ItemMgr.GetTemplate(trigger.Text.NextEnum(Asda2ItemId.None)); if (template == null) { trigger.Reply("Invalid ItemId."); return; } ItemRecord record = ItemRecord.CreateRecord(template); itemRecordList.Add(record); record.SaveLater(); } if (str.Contains("c")) { cod = text.NextUInt(); } string recipientName = trigger.Text.NextWord(); if (recipientName.Length == 0) { trigger.Reply("Could not send mail - Unknown Recipient: " + recipientName); } else { string subject = trigger.Text.NextWord(","); string remainder = trigger.Text.Remainder; MailError mailError = MailMgr.SendMail(recipientName, subject, remainder, MailStationary.GM, itemRecordList, money, cod, trigger.Args.User); if (mailError == MailError.OK) { trigger.Reply("Done."); } else { trigger.Reply("Could not send mail: " + mailError); } } }
private static bool DeleteCharAccessories(uint charId) { try { ActiveRecordBase <SpellRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <AuraRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <ItemRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <SkillRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <SpecProfile> .DeleteAll("CharacterId = " + (object)charId); ActiveRecordBase <ReputationRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <QuestRecord> .DeleteAll("OwnerId = " + (object)charId); ActiveRecordBase <SummonedPetRecord> .DeleteAll("OwnerLowId = " + (object)charId); ActiveRecordBase <PermanentPetRecord> .DeleteAll("OwnerLowId = " + (object)charId); MailMgr.ReturnValueMailFor(charId); ActiveRecordBase <MailMessage> .DeleteAll("ReceiverId = " + (object)charId); Singleton <RelationMgr> .Instance.RemoveRelations(charId); InstanceMgr.RemoveLog(charId); Singleton <GroupMgr> .Instance.RemoveOfflineCharacter(charId); ActiveRecordBase <AchievementRecord> .DeleteAll("CharacterId = " + (object)charId); ActiveRecordBase <AchievementProgressRecord> .DeleteAll("CharacterId = " + (object)charId); return(true); } catch (Exception ex) { LogUtil.ErrorException(ex, "Failed to delete character with Id: " + (object)charId, new object[0]); return(false); } }