mirror of
https://github.com/tym1116/BH3.git
synced 2025-12-12 22:44:35 +01:00
226 lines
4.8 KiB
C#
226 lines
4.8 KiB
C#
using System.Collections.Generic;
|
|
|
|
namespace MoleMole
|
|
{
|
|
public abstract class StorageDataItemBase
|
|
{
|
|
public int uid;
|
|
|
|
public int ID;
|
|
|
|
public int rarity;
|
|
|
|
public int level = 1;
|
|
|
|
public int exp;
|
|
|
|
public int avatarID = -1;
|
|
|
|
public int number = 1;
|
|
|
|
public bool isProtected;
|
|
|
|
public abstract StorageDataItemBase Clone();
|
|
|
|
public abstract int GetIdForKey();
|
|
|
|
public abstract float GetPriceForSell();
|
|
|
|
public abstract string GetIconPath();
|
|
|
|
public abstract string GetImagePath();
|
|
|
|
public abstract int GetCost();
|
|
|
|
public abstract float GetHPAdd();
|
|
|
|
public abstract float GetSPAdd();
|
|
|
|
public abstract float GetAttackAdd();
|
|
|
|
public abstract float GetDefenceAdd();
|
|
|
|
public abstract float GetCriticalAdd();
|
|
|
|
public abstract int GetMaxLevel();
|
|
|
|
public abstract float GetGearExp();
|
|
|
|
public abstract void UpLevel();
|
|
|
|
public abstract void UpRarity();
|
|
|
|
public abstract int GetMaxRarity();
|
|
|
|
public abstract int GetExpType();
|
|
|
|
public abstract int GetMaxExp();
|
|
|
|
public abstract string GetDisplayTitle();
|
|
|
|
public abstract string GetDescription();
|
|
|
|
public abstract List<KeyValuePair<int, int>> GetEvoMaterial();
|
|
|
|
public abstract StorageDataItemBase GetEvoStorageItem();
|
|
|
|
public abstract int GetCoinNeedToUpLevel();
|
|
|
|
public abstract int GetCoinNeedToUpRarity();
|
|
|
|
public abstract int GetSubRarity();
|
|
|
|
public abstract int GetMaxSubRarity();
|
|
|
|
public abstract int GetBaseType();
|
|
|
|
public abstract string GetBaseTypeName();
|
|
|
|
public static int CompareToRarityDesc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.rarity != robj.rarity)
|
|
{
|
|
return robj.rarity - lobj.rarity;
|
|
}
|
|
if (lobj.GetSubRarity() != robj.GetSubRarity())
|
|
{
|
|
return robj.GetSubRarity() - lobj.GetSubRarity();
|
|
}
|
|
if (lobj.level != robj.level)
|
|
{
|
|
return robj.level - lobj.level;
|
|
}
|
|
if (lobj.exp != robj.exp)
|
|
{
|
|
return robj.exp - lobj.exp;
|
|
}
|
|
if (lobj.ID != robj.ID)
|
|
{
|
|
return lobj.ID - robj.ID;
|
|
}
|
|
return robj.uid - lobj.uid;
|
|
}
|
|
|
|
public static int CompareToRarityAsc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.rarity != robj.rarity)
|
|
{
|
|
return lobj.rarity - robj.rarity;
|
|
}
|
|
if (lobj.GetSubRarity() != robj.GetSubRarity())
|
|
{
|
|
return lobj.GetSubRarity() - robj.GetSubRarity();
|
|
}
|
|
if (lobj.level != robj.level)
|
|
{
|
|
return robj.level - lobj.level;
|
|
}
|
|
if (lobj.exp != robj.exp)
|
|
{
|
|
return robj.exp - lobj.exp;
|
|
}
|
|
if (lobj.ID != robj.ID)
|
|
{
|
|
return lobj.ID - robj.ID;
|
|
}
|
|
return robj.uid - lobj.uid;
|
|
}
|
|
|
|
public static int CompareToLevelDesc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.level != robj.level)
|
|
{
|
|
return robj.level - lobj.level;
|
|
}
|
|
if (lobj.exp != robj.exp)
|
|
{
|
|
return robj.exp - lobj.exp;
|
|
}
|
|
if (lobj.rarity != robj.rarity)
|
|
{
|
|
return robj.rarity - lobj.rarity;
|
|
}
|
|
if (lobj.GetSubRarity() != robj.GetSubRarity())
|
|
{
|
|
return robj.GetSubRarity() - lobj.GetSubRarity();
|
|
}
|
|
if (lobj.ID != robj.ID)
|
|
{
|
|
return lobj.ID - robj.ID;
|
|
}
|
|
return robj.uid - lobj.uid;
|
|
}
|
|
|
|
public static int CompareToLevelAsc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.level != robj.level)
|
|
{
|
|
return lobj.level - robj.level;
|
|
}
|
|
if (lobj.exp != robj.exp)
|
|
{
|
|
return robj.exp - lobj.exp;
|
|
}
|
|
if (lobj.rarity != robj.rarity)
|
|
{
|
|
return robj.rarity - lobj.rarity;
|
|
}
|
|
if (lobj.GetSubRarity() != robj.GetSubRarity())
|
|
{
|
|
return robj.GetSubRarity() - lobj.GetSubRarity();
|
|
}
|
|
if (lobj.ID != robj.ID)
|
|
{
|
|
return lobj.ID - robj.ID;
|
|
}
|
|
return robj.uid - lobj.uid;
|
|
}
|
|
|
|
public static int CompareToCostDesc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.GetCost() != robj.GetCost())
|
|
{
|
|
return robj.GetCost() - lobj.GetCost();
|
|
}
|
|
return CompareToRarityDesc(lobj, robj);
|
|
}
|
|
|
|
public static int CompareToCostAsc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.GetCost() != robj.GetCost())
|
|
{
|
|
return lobj.GetCost() - robj.GetCost();
|
|
}
|
|
return CompareToRarityDesc(lobj, robj);
|
|
}
|
|
|
|
public static int CompareToBaseTypeDesc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.GetBaseType() != robj.GetBaseType())
|
|
{
|
|
return robj.GetBaseType() - lobj.GetBaseType();
|
|
}
|
|
return CompareToRarityDesc(lobj, robj);
|
|
}
|
|
|
|
public static int CompareToBaseTypeAsc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
if (lobj.GetBaseType() != robj.GetBaseType())
|
|
{
|
|
return lobj.GetBaseType() - robj.GetBaseType();
|
|
}
|
|
return CompareToRarityDesc(lobj, robj);
|
|
}
|
|
|
|
public static int CompareToUidDesc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
return robj.uid - lobj.uid;
|
|
}
|
|
|
|
public static int CompareToUidAsc(StorageDataItemBase lobj, StorageDataItemBase robj)
|
|
{
|
|
return lobj.uid - robj.uid;
|
|
}
|
|
}
|
|
}
|