public void SpawnEnemy(Vector2 firstDestination) { // List<Vector2> enemyRoute = GenerateRoute(); List <Vector2> enemyRoute = new List <Vector2>(); //enemyRoute.Add(GetSpawnPoint()); enemyRoute.Add(firstDestination); enemyRoute.Add(ClosestPoint(firstDestination)); GameObject newEnemy = Instantiate(Globals.ENEMY, GetSpawnPoint(), Quaternion.identity); newEnemy.transform.SetParent(ObjectContainer.instance.enemies.transform); AutoMover autoMover = newEnemy.GetComponent <AutoMover>(); Inventory inventory = newEnemy.GetComponent <Inventory>(); autoMover.route = enemyRoute; autoMover.randomPatrol = true; autoMover.pointMemory = PRNG.Range(0, 3); Inventory.ItemType[] types = (Inventory.ItemType[])System.Enum.GetValues(typeof(Inventory.ItemType)); Inventory.ItemType dropType = types[PRNG.Range(0, types.Length)]; Inventory.InventoryEntry item = new Inventory.InventoryEntry(dropType, 1); inventory.Add(item); StartCoroutine(DelayedCall(autoMover, firstDestination)); //autoMover.SoundToPosition(firstDestination, true, Noise.Source.Gun, Vector2.zero); }
private void SpawnEnemy(Vector2 cell) { List <Vector2> enemyRoute = new List <Vector2>(); enemyRoute.Add(RandomTileFromCell(cell)); foreach (Vector2 neighbor in neighborList[cell]) { enemyRoute.Add(RandomTileFromCell(neighbor)); } GameObject newEnemy = Instantiate(Globals.ENEMY, enemyRoute[0], Quaternion.identity); // newEnemy.name = newEnemy.name + i; newEnemy.transform.SetParent(ObjectContainer.instance.enemies.transform); AutoMover autoMover = newEnemy.GetComponent <AutoMover>(); Inventory inventory = newEnemy.GetComponent <Inventory>(); autoMover.spawnsWounded = true; autoMover.route = enemyRoute; autoMover.randomPatrol = PRNG.Range(0, 2) == 0; autoMover.pointMemory = PRNG.Range(0, 3); Inventory.ItemType[] types = (Inventory.ItemType[])System.Enum.GetValues(typeof(Inventory.ItemType)); Inventory.ItemType dropType = types[PRNG.Range(0, types.Length)]; Inventory.InventoryEntry item = new Inventory.InventoryEntry(dropType, 1); inventory.Add(item); // Position, route, weaponequipped, leashlength, randompatrol, pointmemory, inventory }
public void ObjectClicked(Inventory.InventoryEntry item) { var selectedItem = item.Item; if (selectedItem.itemType == ItemType.Weapon) { if (selectedItem != data.CurrentWeapon.weaponConfiguration) { Tooltip.UseItemButton.gameObject.SetActive(true); Tooltip.WeaponEquipedText.gameObject.SetActive(false); Tooltip.ButtonText.text = "Equip"; } else { Tooltip.UseItemButton.gameObject.SetActive(false); Tooltip.WeaponEquipedText.gameObject.SetActive(true); } } else { Tooltip.UseItemButton.gameObject.SetActive(true); Tooltip.WeaponEquipedText.gameObject.SetActive(false); Tooltip.ButtonText.text = "Use"; } }
public GameData(SetupRouter sr) { PlayerTeam = new List <PlayerLunen>(); //Debug.Log("Found " + sr.battleSetup.PlayerLunenTeam.Count + " Lunen!"); foreach (GameObject monster in sr.battleSetup.PlayerLunenTeam) { PlayerTeam.Add(GeneratePlayerLunen(monster.GetComponent <Monster>(), sr)); } StorageLunen = sr.storageSystem.StoredLunen; InventoryItems = new List <InventoryItem>(); //Debug.Log("Found " + sr.inventory.listOfItems.Count + " Item" + (sr.inventory.listOfItems.Count == 1 ? "" : "s") + "!"); for (int i = 0; i < sr.inventory.listOfItems.Count; i++) { Inventory.InventoryEntry currentItem = sr.inventory.listOfItems[i]; InventoryItem a = new InventoryItem(); a.itemIndex = sr.database.ItemToIndex(currentItem.item); a.itemAmount = currentItem.amount; InventoryItems.Add(a); } SaveTriggers = new List <TriggerSet>(); for (int i = 0; i < sr.database.GlobalStoryTriggerList.Count; i++) { TriggerSet set = new TriggerSet(); set.setName = sr.database.GlobalStoryTriggerList[i].name; foreach (TriggerPart part in sr.database.GlobalStoryTriggerList[i].triggerParts) { TriggerSave save = new TriggerSave(); save.triggerTITLE = part.title; save.triggerType = part.type; save.triggerBool = part.triggerBool; save.triggerInt = part.triggerInt; save.triggerFloat = part.triggerFloat; save.triggerDouble = part.triggerDouble; save.triggerString = part.triggerString; set.triggerParts.Add(save); } SaveTriggers.Add(set); } GuidList = sr.battleSetup.GuidList; positionX = sr.playerLogic.transform.position.x; positionY = sr.playerLogic.transform.position.y; currentScene = sr.battleSetup.lastOverworld; facingDirection = (int)sr.playerLogic.move.lookDirection; gold = sr.inventory.gold; respawnX = sr.battleSetup.respawnLocation.x; respawnY = sr.battleSetup.respawnLocation.y; respawnScene = sr.battleSetup.respawnScene; respawnDirection = (int)sr.battleSetup.respawnDirection; }
private void SpawnPlayer() { PlayerMover.instance.transform.position = RandomTileFromCell(new Vector2(2, 2)); Inventory inventory = PlayerMover.instance.GetComponent <Inventory>(); Inventory.ItemType[] types = (Inventory.ItemType[])System.Enum.GetValues(typeof(Inventory.ItemType)); int startingItems = PRNG.Range(0, 5); for (int i = 0; i < startingItems; ++i) { Inventory.ItemType dropType = types[PRNG.Range(0, types.Length)]; Inventory.InventoryEntry item = new Inventory.InventoryEntry(dropType, 1); inventory.Add(item); } }
public void SetInventoryEntry(Inventory.InventoryEntry _entry) { entry = _entry; if (entry != null) { button.interactable = true; nameText.text = entry.item.name; amountText.text = entry.amount + "x"; } else { button.interactable = false; nameText.text = ""; amountText.text = ""; } }