// Go go maximum code duplication (for now) public override void HandlePacket(Client context, byte flags, byte[] data, uint position, uint size) { QuestListPacket.QuestDefiniton def = new QuestListPacket.QuestDefiniton(); def.dateOrSomething = "2012/01/05"; def.needsToBeNonzero = 0x00000020; def.getsSetToWord = 0x0000000B; def.questNameString = 30010; def.playTime = (byte)QuestListPacket.EstimatedTime.Short; def.partyType = (byte)QuestListPacket.PartyType.SinglePartyQuest; def.difficulties = (byte)QuestListPacket.Difficulties.Normal | (byte)QuestListPacket.Difficulties.hard | (byte)QuestListPacket.Difficulties.VeryHard | (byte)QuestListPacket.Difficulties.SuperHard; def.requiredLevel = 1; // Not sure why but these need to be set for the quest to be enabled def.field_FF = 0xF1; def.field_101 = 1; QuestDifficultyPacket.QuestDifficulty diff = new QuestDifficultyPacket.QuestDifficulty(); diff.dateOrSomething = "2012/01/05"; diff.something = 0x20; diff.something2 = 0x0B; diff.questNameString = 30010; // These are likely bitfields diff.something3 = 0x00030301; context.SendPacket(new SetQuestPacket(def, context.User)); context.SendPacket(new QuestStartPacket(def, diff)); }
public SetQuestPacket(QuestListPacket.QuestDefiniton questdef, Database.Player p) { this.questdef = questdef; this.p = p; }
public QuestStartPacket(QuestListPacket.QuestDefiniton data, QuestDifficultyPacket.QuestDifficulty difficulty) { this.data = data; this.difficulty = difficulty; }