internal void AttackMobs()
{
if (MobsPanel.CheckedIndices.Count < 1)
{
LogPanel.Log("E: Choose at least 1 mob to attack");
return;
}
// sort by value - ie., sort by room number
List<AttackHandler.MobArg> mobs = new List<AttackHandler.MobArg>();
foreach (int i in MobsPanel.CheckedIndices)
{
int id = int.Parse(MobsPanel.Mobs[i].SubItems[1].Text);
int room = int.Parse(MobsPanel.Mobs[i].SubItems[2].Text);
string name = MobsPanel.Mobs[i].SubItems[0].Text;
AttackHandler.MobArg arg = new AttackHandler.MobArg(id, room, name);
if (!mobs.Contains(arg))
{
mobs.Add(arg);
}
}
mobs.Sort(
delegate(
AttackHandler.MobArg first,
AttackHandler.MobArg second)
{
return second.RoomId.CompareTo(first.RoomId);
}
);
SetUpHandler();
AttackHandler.BeginMobs(mobs);
}