Reorganizes Project (#41)
This commit is contained in:
parent
08bf44af9a
commit
3614a66aee
3499 changed files with 79 additions and 55 deletions
77
Projects/Scripts/Engines/MLQuests/Gumps/QuestLogGump.cs
Normal file
77
Projects/Scripts/Engines/MLQuests/Gumps/QuestLogGump.cs
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
using System.Collections.Generic;
|
||||
using Server.Gumps;
|
||||
using Server.Mobiles;
|
||||
using Server.Network;
|
||||
|
||||
namespace Server.Engines.MLQuests.Gumps
|
||||
{
|
||||
public class QuestLogGump : BaseQuestGump
|
||||
{
|
||||
private bool m_CloseGumps;
|
||||
private PlayerMobile m_Owner;
|
||||
|
||||
public QuestLogGump(PlayerMobile pm, bool closeGumps = true)
|
||||
: base(1046026) // Quest Log
|
||||
{
|
||||
m_Owner = pm;
|
||||
m_CloseGumps = closeGumps;
|
||||
|
||||
if (closeGumps)
|
||||
{
|
||||
pm.CloseGump<QuestLogGump>();
|
||||
pm.CloseGump<QuestLogDetailedGump>();
|
||||
}
|
||||
|
||||
RegisterButton(ButtonPosition.Right, ButtonGraphic.Okay, 3);
|
||||
|
||||
SetPageCount(1);
|
||||
|
||||
BuildPage();
|
||||
|
||||
int numberColor, stringColor;
|
||||
|
||||
MLQuestContext context = MLQuestSystem.GetContext(pm);
|
||||
|
||||
if (context != null)
|
||||
{
|
||||
List<MLQuestInstance> instances = context.QuestInstances;
|
||||
|
||||
for (int i = 0; i < instances.Count; ++i)
|
||||
{
|
||||
if (instances[i].Failed)
|
||||
{
|
||||
numberColor = 0x3C00;
|
||||
stringColor = 0x7B0000;
|
||||
}
|
||||
else
|
||||
{
|
||||
numberColor = stringColor = 0xFFFFFF;
|
||||
}
|
||||
|
||||
TextDefinition.AddHtmlText(this, 98, 140 + 21 * i, 270, 21, instances[i].Quest.Title, false, false,
|
||||
numberColor, stringColor);
|
||||
AddButton(368, 140 + 21 * i, 0x26B0, 0x26B1, 6 + i, GumpButtonType.Reply, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnResponse(NetState sender, RelayInfo info)
|
||||
{
|
||||
if (info.ButtonID < 6)
|
||||
return;
|
||||
|
||||
MLQuestContext context = MLQuestSystem.GetContext(m_Owner);
|
||||
|
||||
if (context == null)
|
||||
return;
|
||||
|
||||
List<MLQuestInstance> instances = context.QuestInstances;
|
||||
int index = info.ButtonID - 6;
|
||||
|
||||
if (index >= instances.Count)
|
||||
return;
|
||||
|
||||
sender.Mobile.SendGump(new QuestLogDetailedGump(instances[index], m_CloseGumps));
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue