Modernization Fixes & Updates to Default Values (#3)
This commit is contained in:
parent
445eddff68
commit
dcf64091b1
768 changed files with 10507 additions and 14196 deletions
|
|
@ -77,49 +77,53 @@ namespace Server.Engines.Quests.Collector
|
|||
{
|
||||
QuestSystem qs = player.Quest;
|
||||
|
||||
if (qs is CollectorQuest)
|
||||
if (qs.FindObjective(typeof(CaptureImagesObjective)) is CaptureImagesObjective obj && !obj.Completed)
|
||||
if (!(qs is CollectorQuest))
|
||||
return;
|
||||
|
||||
CaptureImagesObjective obj = qs.FindObjective<CaptureImagesObjective>();
|
||||
|
||||
if (obj?.Completed != false)
|
||||
return;
|
||||
|
||||
if (targeted is Mobile)
|
||||
{
|
||||
CaptureResponse response = obj.CaptureImage(
|
||||
targeted.GetType().Name == "GreaterMongbat"
|
||||
? new Mongbat().GetType()
|
||||
: targeted.GetType(), out ImageType image);
|
||||
|
||||
switch (response)
|
||||
{
|
||||
if (targeted is Mobile)
|
||||
case CaptureResponse.Valid:
|
||||
{
|
||||
CaptureResponse response = obj.CaptureImage(
|
||||
targeted.GetType().Name == "GreaterMongbat"
|
||||
? new Mongbat().GetType()
|
||||
: targeted.GetType(), out ImageType image);
|
||||
player.SendLocalizedMessage(
|
||||
1055125); // The enchanted paints swirl for a moment then an image begins to take shape. *Click*
|
||||
player.AddToBackpack(new PaintedImage(image));
|
||||
|
||||
switch (response)
|
||||
{
|
||||
case CaptureResponse.Valid:
|
||||
{
|
||||
player.SendLocalizedMessage(
|
||||
1055125); // The enchanted paints swirl for a moment then an image begins to take shape. *Click*
|
||||
player.AddToBackpack(new PaintedImage(image));
|
||||
|
||||
break;
|
||||
}
|
||||
case CaptureResponse.AlreadyDone:
|
||||
{
|
||||
player.SendAsciiMessage(0x2C,
|
||||
"You have already captured the image of this creature");
|
||||
|
||||
break;
|
||||
}
|
||||
case CaptureResponse.Invalid:
|
||||
{
|
||||
player.SendLocalizedMessage(
|
||||
1055124); // You have no interest in capturing the image of this creature.
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
else
|
||||
case CaptureResponse.AlreadyDone:
|
||||
{
|
||||
player.SendAsciiMessage(0x35, "You have no interest in that.");
|
||||
}
|
||||
player.SendAsciiMessage(0x2C,
|
||||
"You have already captured the image of this creature");
|
||||
|
||||
return;
|
||||
break;
|
||||
}
|
||||
case CaptureResponse.Invalid:
|
||||
{
|
||||
player.SendLocalizedMessage(
|
||||
1055124); // You have no interest in capturing the image of this creature.
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
player.SendAsciiMessage(0x35, "You have no interest in that.");
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
from.SendLocalizedMessage(1010085); // You cannot use this.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Linq;
|
||||
using Server.Mobiles;
|
||||
|
||||
namespace Server.Engines.Quests.Collector
|
||||
|
|
@ -56,6 +56,8 @@ namespace Server.Engines.Quests.Collector
|
|||
new ImageTypeInfo(9746, typeof(Juggernaut), 55, 38)
|
||||
};
|
||||
|
||||
private static ImageType[] m_ImageTypeList;
|
||||
|
||||
public ImageTypeInfo(int figurine, Type type, int x, int y)
|
||||
{
|
||||
Figurine = figurine;
|
||||
|
|
@ -70,34 +72,26 @@ namespace Server.Engines.Quests.Collector
|
|||
|
||||
public int Name => Figurine < 0x4000 ? 1020000 + Figurine : 1078872 + Figurine;
|
||||
public int X{ get; }
|
||||
|
||||
public int Y{ get; }
|
||||
|
||||
public static ImageTypeInfo Get(ImageType image)
|
||||
{
|
||||
int index = (int)image;
|
||||
if (index >= 0 && index < m_Table.Length)
|
||||
return m_Table[index];
|
||||
return m_Table[0];
|
||||
return m_Table[index >= 0 && index < m_Table.Length ? index : 0];
|
||||
}
|
||||
|
||||
public static ImageType[] RandomList(int count)
|
||||
{
|
||||
ArrayList list = new ArrayList(m_Table.Length);
|
||||
for (int i = 0; i < m_Table.Length; i++)
|
||||
list.Add((ImageType)i);
|
||||
|
||||
ImageType[] images = new ImageType[count];
|
||||
|
||||
for (int i = 0; i < images.Length; i++)
|
||||
if (m_ImageTypeList == null)
|
||||
{
|
||||
int index = Utility.Random(list.Count);
|
||||
images[i] = (ImageType)list[index];
|
||||
|
||||
list.RemoveAt(index);
|
||||
m_ImageTypeList = new ImageType[m_Table.Length];
|
||||
for (int i = 0; i < m_Table.Length; i++)
|
||||
m_ImageTypeList[i] = (ImageType)i;
|
||||
}
|
||||
|
||||
return images;
|
||||
|
||||
ImageType[] array = m_ImageTypeList.ToArray();
|
||||
Utility.Shuffle(array);
|
||||
return array.Take(count).ToArray();
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue