/*public static void AddEquipmentSlot(RPGEquipmentSlot slot, List<RPGEquipmentSlot> slots) { List<IItem> items = new List<IItem>(); foreach(IItem item in slots) items.Add((IItem)item); slot.ID = EditorUtils.IntPopup(slot.ID, items, "Eq slot ID", 200, FieldTypeEnum.BeginningOnly); }*/ /*public static void AddWeapon(RPGWeapon weapon) { EditorUtils.Separator(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Melee / range"); weapon.Attack = (WeaponCombatSkillType)EditorGUILayout.EnumPopup(weapon.Attack ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Minimum dmg"); weapon.MinimumDmg = EditorGUILayout.IntField(weapon.MinimumDmg ,GUILayout.Width(100)); EditorGUILayout.PrefixLabel("Maximum dmg"); weapon.MaximumDmg = EditorGUILayout.IntField(weapon.MaximumDmg ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Attack speed"); weapon.AttackSpeed = EditorGUILayout.FloatField(weapon.AttackSpeed ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Minimum range"); weapon.MinimumRange = EditorGUILayout.IntField(weapon.MinimumRange ,GUILayout.Width(100)); EditorGUILayout.PrefixLabel("Maximum range"); weapon.MaximumRange = EditorGUILayout.IntField(weapon.MaximumRange ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Is ammo"); weapon.IsAmmo = EditorGUILayout.Toggle(weapon.IsAmmo ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Need ammo"); weapon.NeedAmmo = EditorGUILayout.Toggle(weapon.NeedAmmo ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Weapon type"); weapon.WeaponType = (WeaponCategoryType)EditorGUILayout.EnumPopup(weapon.WeaponType ,GUILayout.Width(100)); EditorGUILayout.EndHorizontal(); }*/ public static void ItemGenerator(RPGItem item, ItemGenerator generator) { EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Lvl increase"); generator.Frequency = EditorGUILayout.IntSlider(generator.Frequency,1,20, GUILayout.Width(100)); if (GUILayout.Button("Generate", GUILayout.Width(200))) { generator.Calculate(item); } EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Use adjective"); generator.UseNames = EditorGUILayout.Toggle(generator.UseNames, GUILayout.Width(300)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Names", generator.GetNames); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Increasing price"); generator.Price = EditorGUILayout.Toggle(generator.Price, GUILayout.Width(100)); if (generator.Price) { generator.PriceType = (IncresingTypeEnum)EditorGUILayout.EnumPopup(generator.PriceType, GUILayout.Width(100)); EditorGUILayout.PrefixLabel("amount"); generator.IncreasingPrice = EditorGUILayout.FloatField(generator.IncreasingPrice, GUILayout.Width(100)); } EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Prices", generator.GetPrices); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Increasing effect"); generator.Effects = EditorGUILayout.Toggle(generator.Effects, GUILayout.Width(100)); if (generator.Effects) { generator.EffectType = (IncresingTypeEnum)EditorGUILayout.EnumPopup(generator.EffectType, GUILayout.Width(100)); EditorGUILayout.PrefixLabel("amount"); generator.IncreasingEffect = EditorGUILayout.FloatField(generator.IncreasingEffect, GUILayout.Width(100)); } EditorGUILayout.EndHorizontal(); }
/*public static void AddEquipmentSlot(RPGEquipmentSlot slot, List<RPGEquipmentSlot> slots) * { * List<IItem> items = new List<IItem>(); * * foreach(IItem item in slots) * items.Add((IItem)item); * * slot.ID = EditorUtils.IntPopup(slot.ID, items, "Eq slot ID", 200, FieldTypeEnum.BeginningOnly); * }*/ /*public static void AddWeapon(RPGWeapon weapon) * { * EditorUtils.Separator(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Melee / range"); * weapon.Attack = (WeaponCombatSkillType)EditorGUILayout.EnumPopup(weapon.Attack ,GUILayout.Width(100)); * * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Minimum dmg"); * weapon.MinimumDmg = EditorGUILayout.IntField(weapon.MinimumDmg ,GUILayout.Width(100)); * * EditorGUILayout.PrefixLabel("Maximum dmg"); * weapon.MaximumDmg = EditorGUILayout.IntField(weapon.MaximumDmg ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Attack speed"); * weapon.AttackSpeed = EditorGUILayout.FloatField(weapon.AttackSpeed ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Minimum range"); * weapon.MinimumRange = EditorGUILayout.IntField(weapon.MinimumRange ,GUILayout.Width(100)); * * EditorGUILayout.PrefixLabel("Maximum range"); * weapon.MaximumRange = EditorGUILayout.IntField(weapon.MaximumRange ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Is ammo"); * weapon.IsAmmo = EditorGUILayout.Toggle(weapon.IsAmmo ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Need ammo"); * weapon.NeedAmmo = EditorGUILayout.Toggle(weapon.NeedAmmo ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Weapon type"); * weapon.WeaponType = (WeaponCategoryType)EditorGUILayout.EnumPopup(weapon.WeaponType ,GUILayout.Width(100)); * EditorGUILayout.EndHorizontal(); * }*/ public static void ItemGenerator(RPGItem item, ItemGenerator generator) { EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Lvl increase"); generator.Frequency = EditorGUILayout.IntSlider(generator.Frequency, 1, 20, GUILayout.Width(100)); if (GUILayout.Button("Generate", GUILayout.Width(200))) { generator.Calculate(item); } EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Use adjective"); generator.UseNames = EditorGUILayout.Toggle(generator.UseNames, GUILayout.Width(300)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Names", generator.GetNames); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Increasing price"); generator.Price = EditorGUILayout.Toggle(generator.Price, GUILayout.Width(100)); if (generator.Price) { generator.PriceType = (IncresingTypeEnum)EditorGUILayout.EnumPopup(generator.PriceType, GUILayout.Width(100)); EditorGUILayout.PrefixLabel("amount"); generator.IncreasingPrice = EditorGUILayout.FloatField(generator.IncreasingPrice, GUILayout.Width(100)); } EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Prices", generator.GetPrices); EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.PrefixLabel("Increasing effect"); generator.Effects = EditorGUILayout.Toggle(generator.Effects, GUILayout.Width(100)); if (generator.Effects) { generator.EffectType = (IncresingTypeEnum)EditorGUILayout.EnumPopup(generator.EffectType, GUILayout.Width(100)); EditorGUILayout.PrefixLabel("amount"); generator.IncreasingEffect = EditorGUILayout.FloatField(generator.IncreasingEffect, GUILayout.Width(100)); } EditorGUILayout.EndHorizontal(); }