添加新的物品

This commit is contained in:
milimoe 2025-01-04 02:53:19 +08:00
parent fe9d07902c
commit 64f8ff961a
Signed by: milimoe
GPG Key ID: 05D280912DA6C69E
9 changed files with 561 additions and 36 deletions

View File

@ -259,7 +259,7 @@ namespace Oshima.Core.Controllers
character = FunGameService.Characters[1].Copy(); character = FunGameService.Characters[1].Copy();
msg.Add($"技能展示的属性基于演示角色:[ {character} ]"); msg.Add($"技能展示的属性基于演示角色:[ {character} ]");
} }
IEnumerable<Skill> skills = FunGameService.Skills.Union(FunGameService.Magics); IEnumerable<Skill> skills = FunGameService.AllSkills;
if (id != null && FunGameService.Characters.Count > 1) if (id != null && FunGameService.Characters.Count > 1)
{ {
Skill? skill = skills.Where(s => s.Id == id).FirstOrDefault()?.Copy(); Skill? skill = skills.Where(s => s.Id == id).FirstOrDefault()?.Copy();
@ -280,6 +280,46 @@ namespace Oshima.Core.Controllers
return NetworkUtility.JsonSerialize(""); return NetworkUtility.JsonSerialize("");
} }
[HttpGet("skillinfoname")]
public string GetSkillInfo_Name([FromQuery] long? qq = null, [FromQuery] string? name = null)
{
long userid = qq ?? Convert.ToInt64("10" + Verification.CreateVerifyCode(VerifyCodeType.NumberVerifyCode, 11));
PluginConfig pc = new("saved", userid.ToString());
pc.LoadConfig();
List<string> msg = [];
Character? character = null;
if (pc.Count > 0)
{
User user = FunGameService.GetUser(pc);
character = user.Inventory.MainCharacter;
msg.Add($"技能展示的属性基于你的主战角色:[ {character} ]");
}
else
{
character = FunGameService.Characters[1].Copy();
msg.Add($"技能展示的属性基于演示角色:[ {character} ]");
}
IEnumerable<Skill> skills = FunGameService.AllSkills;
if (name != null && FunGameService.Characters.Count > 1)
{
Skill? skill = skills.Where(s => s.Name == name).FirstOrDefault()?.Copy();
if (skill != null)
{
msg.Add(character.ToStringWithLevel() + "\r\n" + skill.ToString());
skill.Character = character;
skill.Level++; ;
msg.Add(character.ToStringWithLevel() + "\r\n" + skill.ToString());
character.Level = General.GameplayEquilibriumConstant.MaxLevel;
skill.Level = skill.IsMagic ? General.GameplayEquilibriumConstant.MaxMagicLevel : General.GameplayEquilibriumConstant.MaxSkillLevel;
msg.Add(character.ToStringWithLevel() + "\r\n" + skill.ToString());
return NetworkUtility.JsonSerialize(string.Join("\r\n", msg));
}
}
return NetworkUtility.JsonSerialize("");
}
[HttpGet("iteminfo")] [HttpGet("iteminfo")]
public string GetItemInfo([FromQuery] long? qq = null, [FromQuery] long? id = null) public string GetItemInfo([FromQuery] long? qq = null, [FromQuery] long? id = null)
{ {
@ -1555,6 +1595,8 @@ namespace Oshima.Core.Controllers
if (user1 != null && user2 != null) if (user1 != null && user2 != null)
{ {
user1.Inventory.MainCharacter.Recovery(EP: 200);
user2.Inventory.MainCharacter.Recovery(EP: 200);
return FunGameActionQueue.NewAndStartGame([user1.Inventory.MainCharacter, user2.Inventory.MainCharacter], false, false, false, false, showAllRound); return FunGameActionQueue.NewAndStartGame([user1.Inventory.MainCharacter, user2.Inventory.MainCharacter], false, false, false, false, showAllRound);
} }
else else
@ -1645,8 +1687,12 @@ namespace Oshima.Core.Controllers
if (user1 != null && user2 != null) if (user1 != null && user2 != null)
{ {
Character[] squad1 = [.. user1.Inventory.Characters.Where(c => user1.Inventory.Squad.Contains(c.Id)).Select(c => c.Copy())]; Character[] squad1 = [.. user1.Inventory.Characters.Where(c => user1.Inventory.Squad.Contains(c.Id)).Select(c => c)];
Character[] squad2 = [.. user2.Inventory.Characters.Where(c => user2.Inventory.Squad.Contains(c.Id)).Select(c => c.Copy())]; Character[] squad2 = [.. user2.Inventory.Characters.Where(c => user2.Inventory.Squad.Contains(c.Id)).Select(c => c)];
foreach (Character character in squad1.Union(squad2))
{
character.Recovery(EP: 200);
}
Team team1 = new($"{user1.Username}的小队", squad1); Team team1 = new($"{user1.Username}的小队", squad1);
Team team2 = new($"{user2.Username}的小队", squad2); Team team2 = new($"{user2.Username}的小队", squad2);
return FunGameActionQueue.NewAndStartTeamGame([team1, team2], 0, 0, false, false, false, false, showAllRound); return FunGameActionQueue.NewAndStartTeamGame([team1, team2], 0, 0, false, false, false, false, showAllRound);

View File

@ -15,6 +15,8 @@ namespace Oshima.Core.Utils
{ {
public static List<Character> Characters { get; } = []; public static List<Character> Characters { get; } = [];
public static List<Skill> Skills { get; } = []; public static List<Skill> Skills { get; } = [];
public static List<Skill> PassiveSkills { get; } = [];
public static List<Skill> SuperSkills { get; } = [];
public static List<Skill> Magics { get; } = []; public static List<Skill> Magics { get; } = [];
public static List<Item> Equipment { get; } = []; public static List<Item> Equipment { get; } = [];
public static List<Item> Items { get; } = []; public static List<Item> Items { get; } = [];
@ -41,15 +43,20 @@ namespace Oshima.Core.Utils
Skills.AddRange([new ()]); Skills.AddRange([new ()]);
SuperSkills.AddRange([new (), new (), new (), new (), new (), new (), new (), new (), new (), new (), new (), new ()]);
PassiveSkills.AddRange([new META马(), new (), new (), new (), new (), new (), new (), new (), new (), new (), new (), new ()]);
Magics.AddRange([new (), new (), new (), new (), new (), new (), new (), new (), new (), new (), Magics.AddRange([new (), new (), new (), new (), new (), new (), new (), new (), new (), new (),
new (), new (), new (), new ()]); new (), new (), new (), new ()]);
Dictionary<string, Item> exItems = Factory.GetGameModuleInstances<Item>(OshimaGameModuleConstant.General, OshimaGameModuleConstant.Item); Dictionary<string, Item> exItems = Factory.GetGameModuleInstances<Item>(OshimaGameModuleConstant.General, OshimaGameModuleConstant.Item);
Equipment.AddRange(exItems.Values.Where(i => (int)i.ItemType >= 0 && (int)i.ItemType < 5)); Equipment.AddRange(exItems.Values.Where(i => (int)i.ItemType >= 0 && (int)i.ItemType < 5));
Equipment.AddRange([new 5(), new 15(), new 25(), new 35()]); Equipment.AddRange([new 8(), new 20(), new 35(), new 50()]);
Items.AddRange(exItems.Values.Where(i => (int)i.ItemType > 4)); Items.AddRange(exItems.Values.Where(i => (int)i.ItemType > 4));
Items.AddRange([new (), new (), new (), new (), new (), new (), new (), new (), new (), new ()]); Items.AddRange([new (), new (), new (), new (), new (), new (), new (), new (), new (), new (),
new (), new (), new (), new 1(), new 2(), new 3(), new 1(), new 2(), new 3()]);
AllItems.AddRange(Equipment); AllItems.AddRange(Equipment);
AllItems.AddRange(Items); AllItems.AddRange(Items);
@ -65,7 +72,9 @@ namespace Oshima.Core.Utils
ItemSkills.AddRange([.. Equipment.SelectMany(i => i.Skills.Passives), .. Items.SelectMany(i => i.Skills.Passives)]); ItemSkills.AddRange([.. Equipment.SelectMany(i => i.Skills.Passives), .. Items.SelectMany(i => i.Skills.Passives)]);
AllSkills.AddRange(Skills); AllSkills.AddRange(Skills);
AllSkills.AddRange(PassiveSkills);
AllSkills.AddRange(ItemSkills); AllSkills.AddRange(ItemSkills);
AllSkills.AddRange(SuperSkills);
} }
public static List<Item> GenerateMagicCards(int count, QualityType? qualityType = null) public static List<Item> GenerateMagicCards(int count, QualityType? qualityType = null)
@ -363,6 +372,8 @@ namespace Oshima.Core.Utils
Characters.Clear(); Characters.Clear();
Equipment.Clear(); Equipment.Clear();
Skills.Clear(); Skills.Clear();
SuperSkills.Clear();
PassiveSkills.Clear();
Magics.Clear(); Magics.Clear();
AllItems.Clear(); AllItems.Clear();
ItemSkills.Clear(); ItemSkills.Clear();

View File

@ -5,42 +5,29 @@ using Oshima.FunGame.OshimaModules.Skills;
namespace Oshima.FunGame.OshimaModules.Items namespace Oshima.FunGame.OshimaModules.Items
{ {
public class 5 : Item public class 8 : Item
{ {
public override long Id => (long)AccessoryID.5; public override long Id => (long)AccessoryID.8;
public override string Name => "攻击之爪 +5"; public override string Name => "攻击之爪 +8";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : ""; public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
public override QualityType QualityType => QualityType.White; public override QualityType QualityType => QualityType.White;
public 5(Character? character = null) : base(ItemType.Accessory) public 8(Character? character = null) : base(ItemType.Accessory)
{ {
Skills.Passives.Add(new (character, this, 5)); Skills.Passives.Add(new (character, this, 8));
} }
} }
public class 15 : Item public class 20 : Item
{ {
public override long Id => (long)AccessoryID.15; public override long Id => (long)AccessoryID.20;
public override string Name => "攻击之爪 +15"; public override string Name => "攻击之爪 +20";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : ""; public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
public override QualityType QualityType => QualityType.Green; public override QualityType QualityType => QualityType.Green;
public 15(Character? character = null) : base(ItemType.Accessory) public 20(Character? character = null) : base(ItemType.Accessory)
{ {
Skills.Passives.Add(new (character, this, 15)); Skills.Passives.Add(new (character, this, 20));
}
}
public class 25 : Item
{
public override long Id => (long)AccessoryID.25;
public override string Name => "攻击之爪 +25";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
public override QualityType QualityType => QualityType.Blue;
public 25(Character? character = null) : base(ItemType.Accessory)
{
Skills.Passives.Add(new (character, this, 25));
} }
} }
@ -49,7 +36,7 @@ namespace Oshima.FunGame.OshimaModules.Items
public override long Id => (long)AccessoryID.35; public override long Id => (long)AccessoryID.35;
public override string Name => "攻击之爪 +35"; public override string Name => "攻击之爪 +35";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : ""; public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
public override QualityType QualityType => QualityType.Purple; public override QualityType QualityType => QualityType.Blue;
public 35(Character? character = null) : base(ItemType.Accessory) public 35(Character? character = null) : base(ItemType.Accessory)
{ {
@ -57,6 +44,19 @@ namespace Oshima.FunGame.OshimaModules.Items
} }
} }
public class 50 : Item
{
public override long Id => (long)AccessoryID.50;
public override string Name => "攻击之爪 +50";
public override string Description => Skills.Passives.Count > 0 ? Skills.Passives.First().Description : "";
public override QualityType QualityType => QualityType.Purple;
public 50(Character? character = null) : base(ItemType.Accessory)
{
Skills.Passives.Add(new (character, this, 50));
}
}
public class : Skill public class : Skill
{ {
public override long Id => (long)ItemPassiveID.; public override long Id => (long)ItemPassiveID.;

View File

@ -0,0 +1,149 @@
using Milimoe.FunGame.Core.Entity;
using Milimoe.FunGame.Core.Library.Constant;
using Oshima.FunGame.OshimaModules.Effects.ItemEffects;
using Oshima.FunGame.OshimaModules.Skills;
namespace Oshima.FunGame.OshimaModules.Items
{
public class
{
public interface HPBook
{
public double HP { get; set; }
}
public static void Init(Item item, double exp, int remainUseTimes = 1)
{
item.Skills.Active = new (item, exp);
item.RemainUseTimes = remainUseTimes;
item.IsInGameItem = false;
item.IsReduceTimesAfterUse = true;
item.IsRemoveAfterUse = true;
}
public static string UseItem(Item item, Character character)
{
if (item.Skills.Active != null)
{
item.Skills.Active.OnSkillCasted([character]);
string msg = $"对角色 [ {character} ] 使用 [ {item.Name} ] 成功!";
if (item is HPBook hpBook)
{
msg += $"回复了 {hpBook.HP} 点生命值!";
}
return msg;
}
return "此物品没有主动技能,无法被使用!";
}
public static bool OnItemUsed(Item item, Dictionary<string, object> args)
{
string msg = "";
bool result = false;
Character[] targets = [];
string key = args.Keys.FirstOrDefault(s => s.Equals("targets", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out object? value) && value is Character[] temp)
{
if (temp.Length > 0)
{
targets = [temp[0]];
msg = UseItem(item, temp[0]);
result = true;
}
else
{
msg = $"使用物品失败,没有作用目标!";
}
}
args["msg"] = msg;
key = args.Keys.FirstOrDefault(s => s.Equals("useCount", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out value) && value is int count && targets.Length > 0)
{
string truemsg = $"对角色 [ {targets[0]} ] 使用 {count} 个 [ {item.Name} ] 成功!";
if (item is HPBook expBook)
{
truemsg += $"回复了 {expBook.HP * count} 点生命值!";
}
args["truemsg"] = truemsg;
}
return result;
}
}
public class : Item, .HPBook
{
public override long Id => (long)ConsumableID.;
public override string Name => "小回复药";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.White;
public double HP { get; set; } = 300;
public (User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, HP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class : Item, .HPBook
{
public override long Id => (long)ConsumableID.;
public override string Name => "中回复药";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Green;
public double HP { get; set; } = 700;
public (User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, HP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class : Item, .HPBook
{
public override long Id => (long)ConsumableID.;
public override string Name => "大回复药";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Blue;
public double HP { get; set; } = 1500;
public (User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, HP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class : Skill
{
public override long Id => (long)ItemActiveID.;
public override string Name => "回复药";
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
public (Item? item = null, double hp = 0) : base(SkillType.Item)
{
Level = 1;
Item = item;
Effects.Add(new RecoverHP(this, new()
{
{ "hp", hp }
}));
}
}
}

View File

@ -0,0 +1,149 @@
using Milimoe.FunGame.Core.Entity;
using Milimoe.FunGame.Core.Library.Constant;
using Oshima.FunGame.OshimaModules.Effects.ItemEffects;
using Oshima.FunGame.OshimaModules.Skills;
namespace Oshima.FunGame.OshimaModules.Items
{
public class
{
public interface EPBook
{
public double EP { get; set; }
}
public static void Init(Item item, double exp, int remainUseTimes = 1)
{
item.Skills.Active = new (item, exp);
item.RemainUseTimes = remainUseTimes;
item.IsInGameItem = false;
item.IsReduceTimesAfterUse = true;
item.IsRemoveAfterUse = true;
}
public static string UseItem(Item item, Character character)
{
if (item.Skills.Active != null)
{
item.Skills.Active.OnSkillCasted([character]);
string msg = $"对角色 [ {character} ] 使用 [ {item.Name} ] 成功!";
if (item is EPBook hpBook)
{
msg += $"回复了 {hpBook.EP} 点能量值!";
}
return msg;
}
return "此物品没有主动技能,无法被使用!";
}
public static bool OnItemUsed(Item item, Dictionary<string, object> args)
{
string msg = "";
bool result = false;
Character[] targets = [];
string key = args.Keys.FirstOrDefault(s => s.Equals("targets", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out object? value) && value is Character[] temp)
{
if (temp.Length > 0)
{
targets = [temp[0]];
msg = UseItem(item, temp[0]);
result = true;
}
else
{
msg = $"使用物品失败,没有作用目标!";
}
}
args["msg"] = msg;
key = args.Keys.FirstOrDefault(s => s.Equals("useCount", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out value) && value is int count && targets.Length > 0)
{
string truemsg = $"对角色 [ {targets[0]} ] 使用 {count} 个 [ {item.Name} ] 成功!";
if (item is EPBook expBook)
{
truemsg += $"回复了 {expBook.EP * count} 点能量值!";
}
args["truemsg"] = truemsg;
}
return result;
}
}
public class 1 : Item, .EPBook
{
public override long Id => (long)ConsumableID.1;
public override string Name => "能量饮料";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Green;
public double EP { get; set; } = 50;
public 1(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, EP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class 2 : Item, .EPBook
{
public override long Id => (long)ConsumableID.2;
public override string Name => "能量饮料 Pro";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Blue;
public double EP { get; set; } = 100;
public 2(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, EP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class 3 : Item, .EPBook
{
public override long Id => (long)ConsumableID.3;
public override string Name => "能量饮料 Pro Max";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Purple;
public double EP { get; set; } = 200;
public 3(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, EP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class : Skill
{
public override long Id => (long)ItemActiveID.;
public override string Name => "能量饮料";
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
public (Item? item = null, double ep = 0) : base(SkillType.Item)
{
Level = 1;
Item = item;
Effects.Add(new GetEP(this, new()
{
{ "ep", ep }
}));
}
}
}

View File

@ -0,0 +1,149 @@
using Milimoe.FunGame.Core.Entity;
using Milimoe.FunGame.Core.Library.Constant;
using Oshima.FunGame.OshimaModules.Effects.ItemEffects;
using Oshima.FunGame.OshimaModules.Skills;
namespace Oshima.FunGame.OshimaModules.Items
{
public class
{
public interface MPBook
{
public double MP { get; set; }
}
public static void Init(Item item, double exp, int remainUseTimes = 1)
{
item.Skills.Active = new (item, exp);
item.RemainUseTimes = remainUseTimes;
item.IsInGameItem = false;
item.IsReduceTimesAfterUse = true;
item.IsRemoveAfterUse = true;
}
public static string UseItem(Item item, Character character)
{
if (item.Skills.Active != null)
{
item.Skills.Active.OnSkillCasted([character]);
string msg = $"对角色 [ {character} ] 使用 [ {item.Name} ] 成功!";
if (item is MPBook hpBook)
{
msg += $"回复了 {hpBook.MP} 点魔法值!";
}
return msg;
}
return "此物品没有主动技能,无法被使用!";
}
public static bool OnItemUsed(Item item, Dictionary<string, object> args)
{
string msg = "";
bool result = false;
Character[] targets = [];
string key = args.Keys.FirstOrDefault(s => s.Equals("targets", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out object? value) && value is Character[] temp)
{
if (temp.Length > 0)
{
targets = [temp[0]];
msg = UseItem(item, temp[0]);
result = true;
}
else
{
msg = $"使用物品失败,没有作用目标!";
}
}
args["msg"] = msg;
key = args.Keys.FirstOrDefault(s => s.Equals("useCount", StringComparison.CurrentCultureIgnoreCase)) ?? "";
if (key != "" && args.TryGetValue(key, out value) && value is int count && targets.Length > 0)
{
string truemsg = $"对角色 [ {targets[0]} ] 使用 {count} 个 [ {item.Name} ] 成功!";
if (item is MPBook expBook)
{
truemsg += $"回复了 {expBook.MP * count} 点魔法值!";
}
args["truemsg"] = truemsg;
}
return result;
}
}
public class 1 : Item, .MPBook
{
public override long Id => (long)ConsumableID.1;
public override string Name => "魔力填充剂Ⅰ型";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.White;
public double MP { get; set; } = 300;
public 1(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, MP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class 2 : Item, .MPBook
{
public override long Id => (long)ConsumableID.2;
public override string Name => "魔力填充剂Ⅱ型";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Green;
public double MP { get; set; } = 700;
public 2(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, MP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class 3 : Item, .MPBook
{
public override long Id => (long)ConsumableID.3;
public override string Name => "魔力填充剂Ⅲ型";
public override string Description => Skills.Active?.Description ?? "";
public override QualityType QualityType => QualityType.Blue;
public double MP { get; set; } = 1500;
public 3(User? user = null, int remainUseTimes = 1) : base(ItemType.Consumable)
{
User = user;
.Init(this, MP, remainUseTimes);
}
protected override bool OnItemUsed(Dictionary<string, object> args)
{
return .OnItemUsed(this, args);
}
}
public class : Skill
{
public override long Id => (long)ItemActiveID.;
public override string Name => "魔力填充剂";
public override string Description => Effects.Count > 0 ? Effects.First().Description : "";
public (Item? item = null, double mp = 0) : base(SkillType.Item)
{
Level = 1;
Item = item;
Effects.Add(new RecoverMP(this, new()
{
{ "mp", mp }
}));
}
}
}

View File

@ -2,10 +2,10 @@
{ {
public enum AccessoryID : long public enum AccessoryID : long
{ {
5 = 14001, 8 = 14001,
15 = 14002, 20 = 14002,
25 = 14003, 35 = 14003,
35 = 14004, 50 = 14004,
} }
public enum ConsumableID : long public enum ConsumableID : long
@ -13,6 +13,15 @@
= 15001, = 15001,
= 15002, = 15002,
= 15003, = 15003,
= 15004,
= 15005,
= 15006,
1 = 15007,
2 = 15008,
3 = 15009,
1 = 15010,
2 = 15011,
3 = 15012,
} }
public enum SpecialItemID : long public enum SpecialItemID : long

View File

@ -25,10 +25,10 @@ namespace Oshima.FunGame.OshimaModules
{ {
return id switch return id switch
{ {
(long)AccessoryID.5 => new 5(), (long)AccessoryID.8 => new 8(),
(long)AccessoryID.15 => new 15(), (long)AccessoryID.20 => new 20(),
(long)AccessoryID.25 => new 25(),
(long)AccessoryID.35 => new 35(), (long)AccessoryID.35 => new 35(),
(long)AccessoryID.50 => new 50(),
(long)ConsumableID. => new (), (long)ConsumableID. => new (),
(long)ConsumableID. => new (), (long)ConsumableID. => new (),
(long)ConsumableID. => new (), (long)ConsumableID. => new (),
@ -39,6 +39,15 @@ namespace Oshima.FunGame.OshimaModules
(long)SpecialItemID. => new (), (long)SpecialItemID. => new (),
(long)SpecialItemID. => new (), (long)SpecialItemID. => new (),
(long)SpecialItemID. => new (), (long)SpecialItemID. => new (),
(long)ConsumableID. => new (),
(long)ConsumableID. => new (),
(long)ConsumableID. => new (),
(long)ConsumableID.1 => new 1(),
(long)ConsumableID.2 => new 2(),
(long)ConsumableID.3 => new 3(),
(long)ConsumableID.1 => new 1(),
(long)ConsumableID.2 => new 2(),
(long)ConsumableID.3 => new 3(),
_ => null, _ => null,
}; };
}; };

View File

@ -105,5 +105,8 @@
public enum ItemActiveID : long public enum ItemActiveID : long
{ {
= 6001, = 6001,
= 6002,
= 6003,
= 6004
} }
} }