protected string GetItemDescription(ItemDefinition item) { if (item == null) { return(null); } string description = string.Empty; if (item is AttackItemDefinition) { AttackItemDefinition attackItem = item as AttackItemDefinition; description = string.Format(@"+AP {0}", StringUtils.Digit2(attackItem.Ap)); if (attackItem.Dp > 0) { description += string.Format(@" +DP {0}", StringUtils.Digit2(attackItem.Dp)); } if (attackItem.Dp < 0) { description += string.Format(@" -DP {0}", StringUtils.Digit2(-attackItem.Dp)); } return(description); } if (item is DefendItemDefinition) { DefendItemDefinition defendItem = item as DefendItemDefinition; description = string.Format(@"+DP {0}", StringUtils.Digit2(defendItem.Dp)); return(description); } if (item is ConsumableItemDefinition) { ConsumableItemDefinition consumableItem = item as ConsumableItemDefinition; string prefix = string.Empty; switch (consumableItem.UseType) { case ItemUseType.Hp: prefix = "HP"; break; case ItemUseType.Mp: prefix = "MP"; break; case ItemUseType.HpMax: prefix = "HP"; break; case ItemUseType.MpMax: prefix = "MP"; break; case ItemUseType.Dx: prefix = "DX"; break; case ItemUseType.Mv: prefix = "MV"; break; default: break; } description = string.Format(@"+{0} {1}", prefix, consumableItem.Quantity); return(description); } return(string.Empty); }
private void DebugStuff() { var tx2d = EditorGUIUtility.FindTexture("console.erroricon"); var debugSprite = Sprite.Create(tx2d, new Rect(0, 0, tx2d.width, tx2d.height), new Vector2(0.5f, 0.5f), 100f); var debugSprite2 = Sprite.Create(tx2d, new Rect(0, 0, tx2d.width, tx2d.height), new Vector2(0.5f, 0.5f), 100f); var def = new ArmorDefinition() { ArmorType = ArmorType.Chest, DisplayName = "Chest", Description = "debug Chest", Icon = new SpriteModel(debugSprite), Id = ObjectId.GenerateNewId(), Rarity = Rarity.Common, }; def.Stats.Add(new StatModifier(ModifierType.Constant, -10, "Strength")); def.Stats.Add(new StatModifier(ModifierType.PercentOnCurrent, 2, "Strength")); def.Stats.Add(new StatModifier(ModifierType.PercentOnDefault, 10, "Strength")); var weadef = new WeaponDefinition() { WeaponType = WeaponType.MainHand, DisplayName = "MainHand", Description = "MainHand debug", Icon = new SpriteModel(debugSprite2), Id = ObjectId.GenerateNewId(), Rarity = Rarity.Legendary }; weadef.Stats.Add(new StatModifier(ModifierType.Constant, 10, "Health")); weadef.Stats.Add(new StatModifier(ModifierType.PercentOnCurrent, 5, "Health")); weadef.Stats.Add(new StatModifier(ModifierType.PercentOnDefault, 10, "Health")); var codef = new ConsumableItemDefinition() { DisplayName = "Consumable", Description = "Consumable", Icon = new SpriteModel(debugSprite2), Id = ObjectId.GenerateNewId(), Rarity = Rarity.Legendary }; Weapons[WeaponType.MainHand].Add(new WeaponItem(weadef)); Equipment[ArmorType.Chest].Add(new ArmorItem(def)); this[0, 0].Add(new ConsumableItem(codef)); }
private void LoadItemDefinitions() { itemDefinitions = new Dictionary <int, ItemDefinition>(); ResourceDataFile fileReader = new ResourceDataFile(@"Data/Item"); int usableItemCount = fileReader.ReadInt(); for (int i = 0; i < usableItemCount; i++) { ConsumableItemDefinition def = ConsumableItemDefinition.ReadFromFile(fileReader); itemDefinitions[def.ItemId] = def; } int attackItemCount = fileReader.ReadInt(); for (int i = 0; i < attackItemCount; i++) { AttackItemDefinition def = AttackItemDefinition.ReadFromFile(fileReader); itemDefinitions[def.ItemId] = def; } int defendItemCount = fileReader.ReadInt(); for (int i = 0; i < defendItemCount; i++) { DefendItemDefinition def = DefendItemDefinition.ReadFromFile(fileReader); itemDefinitions[def.ItemId] = def; } int specialItemCount = fileReader.ReadInt(); for (int i = 0; i < specialItemCount; i++) { SpecialItemDefinition def = SpecialItemDefinition.ReadFromFile(fileReader); itemDefinitions[def.ItemId] = def; } int moneyItemCount = fileReader.ReadInt(); for (int i = 0; i < moneyItemCount; i++) { MoneyItemDefinition def = MoneyItemDefinition.ReadFromFile(fileReader); itemDefinitions[def.ItemId] = def; } }
public ConsumableItem(ConsumableItemDefinition itemDefinition) { Definition = new ConsumableItemDefinition(itemDefinition); }
public ConsumableItemDefinition(ConsumableItemDefinition itemDefinition) : base(itemDefinition) { }