public void BuyItem(Item originalItem) { // TODO: Create a copy instead of random. var newItem = ItemGenerator.CreateItem(_owner, originalItem.ItemDefinition); _inventoryGrid.AddItem(newItem); }
void Start() { if (player == null) { player = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerNew>(); } vendorItems = new List <Item>(); int randomNumberOfItems = Random.Range(2, 7 + 1); for (int i = 0; i < randomNumberOfItems; i++) { vendorItems.Add(ItemGenerator.CreateItem("weapon", "random", player.Level)); } randomNumberOfItems = Random.Range(2, 6 + 1); for (int i = 0; i < randomNumberOfItems; i++) { vendorItems.Add(ItemGenerator.CreateItem("armor", "random", player.Level)); } randomNumberOfItems = Random.Range(0, 2 + 1); for (int i = 0; i < randomNumberOfItems; i++) { vendorItems.Add(ItemGenerator.CreateItem("socket", "random", player.Level)); } }
public List <ItemSurrogate> Select() { if (cachedGeneratedItems == null) { cachedGeneratedItems = new List <ItemSurrogate> (); } cachedGeneratedItems.Clear(); for (int i = 0; i < TableRolls.Length; i++) { ItemGenerator itemGenerator = TableRolls[i].Select(); if (itemGenerator == null) { continue; } if (itemGenerator.RewardTemplate != null) { ItemSurrogate generatedItem = itemGenerator.Generate(); cachedGeneratedItems.Add(generatedItem); } } return(cachedGeneratedItems); }
// Use this for initialization void Start() { platformWidth = thePlatform.GetComponent <BoxCollider2D>().size.x; itemGenerator = FindObjectOfType <ItemGenerator>(); selectorStore = 0; selector = 0; }
public void SetAttachItem(int itemID, int position) { string text = "1006"; if (position != 0) { text = "1007"; } this.m_GameObjData.AttachID[position] = itemID; S_Item data = GameDataDB.ItemDB.GetData(itemID); if (data == null) { Debug.LogWarning("itemData not be found : " + itemID); return; } GameObject gameObject = ItemGenerator.CreateItemGameObject(data.StoryPrefabName); if (gameObject == null) { Debug.LogWarning("item not be found : " + data.StoryPrefabName); return; } gameObject.name = data.StoryPrefabName; Transform transform = TransformTool.SearchHierarchyForBone(base.gameObject.transform, text); if (transform == null) { Debug.LogWarning("node not be found : " + text); return; } gameObject.transform.position = transform.position; gameObject.transform.rotation = transform.rotation; gameObject.transform.parent = transform; }
public void BuildOut() { // Don't attempt to create more rooms during initialization creatingRoom = true; roomWidth = new IntRange(minRoomWidth, maxRoomWidth); roomHeight = new IntRange(minRoomHeight, maxRoomHeight); corridorLength = new IntRange(minCorridorLength, maxCorridorLength); // Makes all the items yo item_generator = new ItemGenerator(); item_generator.number_of_goals = total_rooms - 1; item_generator.buildOut(); //Holds all tiles board_holder = new GameObject("Board Holder"); background_holder = new GameObject("Background Holder"); // Fill board with wall tiles fillOutBoard(); // Initial room and corridor creation CreateRoom(0, -1); CreateCorridor(0, 0); CreateRoom(1, 0); CreateCorridor(1, 1); CreateRoom(2, 1); last_created_room = 2; last_created_corridor = 1; // You can create more rooms now creatingRoom = false; }
private void GenerateTawernShopBagpack(int playerLevel) { ItemGenerator itemGenerator = new ItemGenerator(); this.TawernShopBagpack.Add(itemGenerator.GenerateGoldByLevel(playerLevel)); for (int i = 0; i < 10; i++) { int randJunk = CryptoRandom.Next(6, 10); Item armor = itemGenerator.GenerateJunk((ItemSubType)randJunk); this.TawernShopBagpack.Add(armor); } for (int i = 0; i < 6; i++) { int randJunkType = CryptoRandom.Next(0, 1); if (randJunkType == 0) { randJunkType = (int)ItemType.Food; } else { randJunkType = (int)ItemType.Potion; } int randJunk = CryptoRandom.Next(0, 5); //Debug.Log(i + " : " + (ItemType)randJunkType + " : " + (ItemSubType)randJunk); ConsumeableItem consumeItem = itemGenerator.GenerateConsumeableItem((ItemType)randJunkType, (ItemSubType)randJunk); this.TawernShopBagpack.Add(consumeItem); } }
/// <summary> /// Spanws gold for given player. /// </summary> /// <param name="player">The player.</param> /// <param name="position">The position for drop.</param> public void SpawnGold(Actor source, Player player) { // TODO: Gold should be spawned for all players in range. /raist. var item = ItemGenerator.CreateGold(player, RandomHelper.Next(1000, 3000)); // somehow the actual ammount is not shown on ground /raist. DropItem(source, player, item); }
public override void OnInspectorGUI() { serializedObject.Update(); ItemGenerator myTarget = (ItemGenerator)target; EditorGUILayout.PropertyField(state_Prop); SportType st = (SportType)state_Prop.enumValueIndex; switch (st) { case SportType.DOWNHILL: EditorGUILayout.PropertyField(dh_playerController, true, new GUILayoutOption[0]); EditorGUILayout.PropertyField(dh_standardChangeMeters, new GUIContent("dh_standardChangeMeters"), true); EditorGUILayout.PropertyField(dh_intervalMeters, new GUIContent("dh_intervalMeters"), true); EditorGUILayout.PropertyField(dh_itemAreas, new GUIContent("dh_itemAreas"), true); EditorGUILayout.PropertyField(dh_numPerGenerates, new GUIContent("dh_numPerGenerates"), true); break; case SportType.SKELETON: break; case SportType.SKIJUMP: EditorGUILayout.PropertyField(sj_playerController, true, new GUILayoutOption[0]); EditorGUILayout.PropertyField(sj_standardChangeMeter, new GUIContent("sj_standardChangeMeter"), true); EditorGUILayout.PropertyField(sj_intervalMeter, new GUIContent("sj_intervalMeter"), true); EditorGUILayout.PropertyField(sj_numPerGenerate, new GUIContent("sj_numPerGenerate"), true); break; } EditorGUILayout.PropertyField(items, new GUIContent("items"), true); EditorGUILayout.PropertyField(parent, new GUIContent("parent"), true); serializedObject.ApplyModifiedProperties(); }
// Use this for initialization void Start() { canvas = GetComponentInChildren <Canvas>(); canvas.gameObject.SetActive(false); itemData = ItemGenerator.GenerateRandomItem(); }
IEnumerator Initialize() { Database.Initialize(); SpriteManager.instance.Initialize(); LoadUnlocks(); ItemGenerator.Initialize(); PcGenerator.Initialize(); QuestGenerator.Initialize(); StockpileManager.instance.Initialize(); ModelManager.instance.Initialize(); PcManager.instance.Initialize(); //PcManager.instance.Load(); PcManager.instance.Generate(); questManager.Initialize(); PortraitRoom.instance.Initialize(PcManager.instance.PcDataList.Count); guiManager.Initialize(buildingObjects); //AudioManager.instance.PlayMusic("Back Home", 0, 5f); AudioManager.instance.PlayAmbient("Town Day", true); return(null); }
// TODO: Proper item loading from droplist? protected virtual List <Item> GetVendorItems(Player plr) { List <Item> list; if (this.ActorSNO.Id == 109467) { list = AllPotions(plr); } else { list = new List <Item> { ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateWeaponToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), ItemGenerator.GenerateArmorToVendor(this, plr), }; } return(list); }
public void GiveConsumables() { for (int i = 0; i < 100; i++) { player.AddItem(ItemGenerator.CreateItem("consum", "legendary", 100)); } }
private void PlaceItems() { foreach (var room in _map.Rooms) { if (Dice.Roll("1D10") < 3) { if (_map.DoesRoomHaveWalkableSpace(room)) { Point randomRoomLocation = _map.GetRandomLocationInRoom(room); if (randomRoomLocation != null) { Item item = ItemGenerator.CreateItem(); Point location = _map.GetRandomLocationInRoom(room); item.go = GameObject.Instantiate <GameObject>(Game.Items[item.Name], new Vector2(location.X, location.Y), Quaternion.identity); item.go.transform.SetParent(Game.itemsHolder); item.go.GetComponent <Renderer>().enabled = false; Game.ItemsTiles[location.X, location.Y] = item; _map.AddTreasure(location.X, location.Y, item); } } } } }
void AddGenerators(List <IGenerator> generators) { LevelInfo levelInfo = new LevelInfo(); levelInfo.columns = columns; levelInfo.rows = rows; levelInfo.playerHeight = playerHeight; levelInfo.maxJumpHeight = maxJumpHeight; levelInfo.maxJumpLength = maxJumpLength; levelInfo.minGroundHeight = minGroundHeight; levelInfo.minGroundLength = minGroundLength; levelInfo.maxGroundLength = maxGroundLength; levelInfo.gapProbability = gapProbability; levelInfo.steepProbability = steepProbability; levelInfo.blockProbability = blockProbability; GroundGenerator groundGenerator = new GroundGenerator(levelInfo); ObstacleGenerator obstacleGenerator = new ObstacleGenerator(levelInfo); BlockGenerator blockGenerator = new BlockGenerator(levelInfo); ItemGenerator itemGenerator = new ItemGenerator(levelInfo); generators.Add(groundGenerator); generators.Add(obstacleGenerator); generators.Add(blockGenerator); generators.Add(itemGenerator); }
public void OnMouseClick(IMapItem item) { if (ItemGenerator != null && item != null) { ItemGenerator.OnMapItemClick(item); } }
public void RenderGenerator(ItemGenerator generator) { if (generator == null) { RenderEmpty(); return; } RenderTemplate(generator.RewardTemplate); if (quantityText != null) { quantityText.gameObject.SetActive(true); if (generator.MinCount == generator.MaxCount) { if (generator.MinCount != 1) { quantityText.text = generator.MinCount.ToString(); } else { quantityText.gameObject.SetActive(false); } } else { quantityText.text = generator.MinCount.ToString() + "-" + generator.MaxCount.ToString(); } } Faded = false; }
public TreeViewSampleWpf() { InitializeComponent(); DataContext = this; var root = ItemGenerator.GetTree(); AddItem(treeView1.Items, root); AddItem(treeView2.Items, root); options = new OptionList(); options.AddOption("Enabled", treeView1, treeView2, l => l.IsEnabled); options.Add(new GenericBoolOption( "FullRowSelect", () => TreeViewService.GetFullRowSelect(treeView1), v => { TreeViewService.SetFullRowSelect(treeView1, v); TreeViewService.SetFullRowSelect(treeView2, v); })); options.Add(new GenericIntOption( "ItemHeight", () => itemHeight, v => { itemHeight = v; SetItemHeight(treeView1.Items, itemHeight > 0 ? (double?)itemHeight : null); SetItemHeight(treeView2.Items, itemHeight > 0 ? (double?)itemHeight : null); })); }
protected void SetText(/*object sender, OCRText result*/) { textView = FindViewById <TextView>(Resource.Id.showTxt); // Should be replaced by fake item generator for now //string text = result.text; ItemGenerator.Initialize(); string text = ItemGenerator.GenerateItems(); if (!String.IsNullOrEmpty(text)) { Receipt receipt = new Receipt(text); string receiptJSON = JsonConvert.SerializeObject(receipt); System.Diagnostics.Debug.WriteLine("ID: " + UserController.GetUserID + " Token: " + UserController.UserToken + " json: " + receiptJSON); textView.Text = "Shop:" + receipt.shop.ToString() + "\n\n"; textView.Text += "Items bought:\n"; foreach (Item item in receipt.shoppingList) { textView.Text += "* " + item.name + " " + item.getPrice() + "\nCategory: " + item.category + "\n\n"; } textView.Text += "Total : " + receipt.total + "\n"; Task.Run(() => ReceiptApiManager.SaveReceiptData(UserController.GetUserID, UserController.UserToken, receiptJSON)); } }
void Start() { slotAmount = 20; inventoryPanel = GameObject.Find("Inventory Panel"); characterPanel = GameObject.Find("Character Panel"); statsInfo = GameObject.Find("Stats Info"); slotPanel = inventoryPanel.transform.FindChild("Slot Panel").gameObject; for (int cnt = 0; cnt < slotAmount; cnt++) { PlayerCharacter.Inventory.Add(new Item()); slots.Add(Instantiate(inventorySlot)); slots[cnt].transform.SetParent(slotPanel.transform); slots[cnt].GetComponent <Slot>().Id = cnt; } _testItem = ItemGenerator.CreatePotion(); AddItem(_testItem); _displayCharacterWindow = false; _displayInventoryWindow = false; inventoryPanel.SetActive(_displayInventoryWindow); characterPanel.SetActive(_displayCharacterWindow); }
public void EnemyDrops() { // Debug.Log("checking for enemy drops"); WeaponGenerator weaponGenerator = gameObject.GetComponent <WeaponGenerator>(); ArmorGenerator armorGenerator = gameObject.GetComponent <ArmorGenerator>(); ItemGenerator itemGenerator = gameObject.GetComponent <ItemGenerator>(); CheckItemDrop(); if (isWeaponDrop) { // check for preset weapon chance CheckPresetWeapon(); weaponGenerator.GenerateWeapon(presetWeapon); isWeaponDrop = false; } if (isArmorDrop) { // check for preset armor chance CheckPresetArmor(); armorGenerator.GenerateArmor(); isArmorDrop = false; } if (isItemDrop) { itemGenerator.GenerateItem(); isItemDrop = false; } }
public void PopulateChest() { loot = new List <Item>(); bool isNum = int.TryParse(itemsInChest, out numToPopulate); if (!isNum) { if (itemsInChest == "random") { int randomNum = Random.Range(0, 100 + 1); if (randomNum < 55) { numToPopulate = 0; } else { numToPopulate = Random.Range(0, 1 + 1); } } else { numToPopulate = 1; } } for (int cnt = 0; cnt < numToPopulate; cnt++) { loot.Add(ItemGenerator.CreateItem(chestSpawnType, chestRarity, chestItemLevel)); } }
IEnumerator BeginReturningIDS() { yield return(new WaitForSeconds(.3f)); foreach (string id in actor.data.ids) { ids.Add(id); } foreach (EEquipmentType equipmentType in actor.data.itemTypes) { types.Add(equipmentType); } for (int i = 0; i < ids.Count; i++) { Item item = ItemGenerator.IDToItem(ids[i]); InventoryItemDisplay display = (InventoryItemDisplay)Instantiate(inventoryItemDisplayPrefab); display.transform.SetParent(targetTransform, false); Debug.Log("Item " + i + " Name " + item.Name + " id " + item.ID + " level " + item.Level + "stats" + item.Stats); display.textName.text = item.Name; display.flavorText.text = item.FlavorText; display.strength.text = "STR: " + (int)item.Stats.Strength; display.dexterity.text = "Dex: " + (int)item.Stats.Dexterity; display.intellect.text = "Int: " + (int)item.Stats.Intelect; display.gold.text = "Gold: " + (int)item.Stats.GoldValue; display.scrap.text = "Scrap: " + (int)item.Stats.ScrapValue; display.health.text = "Health " + (int)item.Stats.Health; display.sprite.sprite = item.GetSprite(); } }
private void GenerateShopInventory() { ItemGenerator itemGenerator = ScriptableObject.CreateInstance <ItemGenerator>(); List <string> applicableItems = itemGenerator.GetItemListByLevelAndType(playerLevel, currentShopType); // COMMENT OUT FROM HERE UNTIL NEXT MARKER TO GENERATE UNFILTERED ITEM LIST // Only put in shop items that the player does not own foreach (Item item in ownedItems) { if (applicableItems.Contains(item.GetItemName()) && item.GetItemType() != Item.ItemTypes.Arm && item.GetItemType() != Item.ItemTypes.Leg) { applicableItems.Remove(item.GetItemName()); } } // Here we limit the amount of items in the shop to 5 if over 5 applicable items are available if (applicableItems.Count > 5) { List <string> newList = new List <string>(); while (newList.Count < 5) { int index = Random.Range(0, applicableItems.Count); if (!newList.Contains(applicableItems[index])) { newList.Add(applicableItems[index]); } } applicableItems = newList; } // END COMMENT ZONE FOR UNFILTERED ITEM LIST AttemptToCreateShopItems(applicableItems); }
private int height = 0; // CSVの行数 public EnemyGenerator(GameController gameController) { this.gameController = gameController; itemGenerator = gameController.ItemGenerator; skillGenerator2 = gameController.SkillGenerator; //Init(); }
/// <summary> /// Spanws a health-globe for given player. /// </summary> /// <param name="player">The player.</param> /// <param name="position">The position for drop.</param> public void SpawnHealthGlobe(Actor source, Player player, Vector3D position) { // TODO: Health-globe should be spawned for all players in range. /raist. var item = ItemGenerator.CreateGlobe(player, RandomHelper.Next(1, 28)); // somehow the actual ammount is not shown on ground /raist. DropItem(source, player, item); }
public void AddItem(int value) { Item newItem = ItemGenerator.GenerateItem(value); playerControl.PlayerClass.AddItem(newItem); GameObject go = EntitySpawnManager.InstantSpawn(UIItemPoolName, Vector3.zero, Quaternion.identity, countEntity: false); go.transform.parent = UIItemHolder.transform; float y = (int)((playerControl.PlayerClass.items.Count - 1) / 4) * 0.05f; float x = (int)((playerControl.PlayerClass.items.Count - 1) % 4) * 0.25f; go.GetComponent <UIButton>().Text = newItem.Description; go.GetComponent <UIButton>().RelativePosition.x = x; go.GetComponent <UIButton>().RelativePosition.y = y; UIItemHolder.GetComponent <UIRect>().AddChild(go.GetComponent <UIButton>()); UIItemHolder.GetComponent <UIRect>().UpdateChildren(); if (UIItemHolder.GetComponent <UIScrollPanel>()) { UIItemHolder.GetComponent <UIScrollPanel>().RelHeight = (y + 0.05f); } }
void Test() { Debug.Log("Test starts"); // example flexibility Item item = new Item(); item.ItemType = Itemtype.Weapon; if (item.ItemType == Itemtype.Weapon) { Debug.Log(item.WeaponProperties.GetDps(item)); } item.ItemType = Itemtype.Armor; if (item.ItemType == Itemtype.Armor) { Debug.Log(item.ArmorProperties.Defense); } switch (item.ItemType) { case ItemType.Weapon: Debug.Log("Do Weapon Stuff - instantiate at weapon spawnpoint"); break; case ItemType.Armor: Debug.Log("Do Armor Stuff - instantiate at spawnpoint"); break; default: Debug.Log("what ever..."); break; } // example item generator Item item2 = new ItemGenerator(ItemType.Weapon); Debug.Log(item2.Name); Item item3 = new ItemGenerator(ItemType.Armor, "New Armor Item"); Debug.Log(item3.Name); item3.ItemType = ItemType.Weapon; item3.Name = "Ultra Sword"; Debug.Log(item3.Name); Item item4 = new ItemGenerator(ItemType.Weapon, "New Weapon Item", UnityEngine.Random.Range(1, 100), UnityEngine.Random.Range(1, 100)); Debug.Log(item3.Name); Item item5 = new ItemGenerator().GetRandomItem(); Debug.Log(item2.Name); Debug.Log(item2.ItemType); // clone item Item item6 = item5.Clone(); Debug.Log(item2.Name); Debug.Log("Test ends"); }
public Dungeon ( Logger logger, ItemController itemController, LadderGenerator ladderGenerator, MonsterController monsterController, ItemGenerator itemGenerator, MonsterGenerator monsterGenerator, GameObject tile, int dungeonX, int dungeonY, int maxRoomSize, int minRoomSize, int maxRooms, int dungeonLevel ) { this.Logger = logger; this.ItemController = itemController; this.LadderGenerator = ladderGenerator; this.MonsterController = monsterController; this.ItemGenerator = itemGenerator; this.MonsterGenerator = monsterGenerator; this.Tile = tile; this.DungeonX = dungeonX; this.DungeonY = dungeonY; this.MaxRoomSize = maxRoomSize; this.MinRoomSize = minRoomSize; this.MaxRooms = maxRooms; this.DungeonLevel = dungeonLevel; }
/// <summary> /// ダンジョン生成 /// </summary> public void GenerateDungeon() { _floorNum++; floorText.GetComponent <Text> ().text = "B" + _floorNum; if (_floorNum % BattleCycle == EntryCycle) { Instantiate(Boss, new Vector2(0, 0), new Quaternion()); } if (_floorNum % BattleCycle == 0) { GenerateBossFloor(); return; } width = (int)Random.Range(20, 50); height = (int)Random.Range(10, 25); _floor = new Layer2D(width, height); _divList = new List <DgDivision> (); // すべてを壁に _floor.Fill(WALL); // 一つ目の区画 CreateDivision(0, 0, width - 1, height - 1); _divList[0].start = _divList[0].goal = true; // 区画を分割 SplitDivision(false); // 部屋を作る CreateRoom(); // 部屋を繋ぐ ConnectRooms(); // スタートとゴールを決める DgDivision startRoom = _divList[Random.Range(0, _divList.Count - 1)]; int start = Random.Range(startRoom.Room.Left + 1, startRoom.Room.Right); DgDivision goalRoom = _divList[Random.Range(0, _divList.Count - 1)]; int goal = Random.Range(goalRoom.Room.Left + 1, goalRoom.Room.Right); // スタートとゴールの穴を開ける BitFloor(start, goal); // タイルを配置 Setblock(_floor, start, goal); SetBigWall(start, goal); // 主人公を配置 GameObject.Find("Player").transform.position = new Vector2(start, wallSize * 2 / 3); // spawnerの設定 EnemySpawner.StartSpawn(_floor, _floorNum); // アイテムを設置 ItemGenerator.RandomDeploy(_floor, 5); }
/*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(); }