Reorganizes Project (#41)

This commit is contained in:
Kamron Batman 2019-08-02 18:13:40 -07:00 • committed by GitHub
parent 08bf44af9a
commit 3614a66aee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3499 changed files with 79 additions and 55 deletions

View file

@ -0,0 +1,82 @@
using System;
namespace Server.Engines.VeteranRewards
{
public class RewardEntry
{
public RewardEntry(RewardCategory category, int name, Type itemType, params object[] args)
{
Category = category;
ItemType = itemType;
RequiredExpansion = Expansion.None;
Name = name;
Args = args;
category.Entries.Add(this);
}
public RewardEntry(RewardCategory category, string name, Type itemType, params object[] args)
{
Category = category;
ItemType = itemType;
RequiredExpansion = Expansion.None;
NameString = name;
Args = args;
category.Entries.Add(this);
}
public RewardEntry(RewardCategory category, int name, Type itemType, Expansion requiredExpansion,
params object[] args)
{
Category = category;
ItemType = itemType;
RequiredExpansion = requiredExpansion;
Name = name;
Args = args;
category.Entries.Add(this);
}
public RewardEntry(RewardCategory category, string name, Type itemType, Expansion requiredExpansion,
params object[] args)
{
Category = category;
ItemType = itemType;
RequiredExpansion = requiredExpansion;
NameString = name;
Args = args;
category.Entries.Add(this);
}
public RewardList List{ get; set; }
public RewardCategory Category{ get; }
public Type ItemType{ get; }
public Expansion RequiredExpansion{ get; }
public int Name{ get; }
public string NameString{ get; }
public object[] Args{ get; }
public Item Construct()
{
try
{
Item item = Activator.CreateInstance(ItemType, Args) as Item;
if (item is IRewardItem rewardItem)
rewardItem.IsRewardItem = true;
return item;
}
catch
{
// ignored
}
return null;
}
}
}