using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using System.Linq; public class Temporary : MonoBehaviour { public Dropdown Choose; private int allowedPartyCount = 6; #region Variables Player private PokemonEntity entityPlayer; private SelectedMove selectedPlayer; private PokemonSet pokemonSetsPlayer; private MoveSet moveSetPlayer; private PokemonDatabase pokemonDatabasePlayer; private MovesDatabase movesDatabasePlayer; List currentPokemonSetPlayer = new List(); List currentMoveSetPlayer = new List(); private Dropdown PokemonSetDropdownPlayer; private SpriteRenderer previewSpriteRendererPlayer; private Text namePokemonPlayer; private Text typePokemonPlayer; private Text hpPlayer; private Text attackPlayer; private Text deffencePlayer; private Text specialAttackPlayer; private Text specialDeffencePlayer; private Text speedPlayer; private Text movesPlayer; private Dropdown MoveSetDropdownPlayer; private Text nameMovesPlayer; private Text typeMovesPlayer; private Text ppPlayer; private Text powerPlayer; private Text accuracyPlayer; public GameObject MoveSelectorPlayer; #endregion #region Variables Enemy private PokemonEntity entityEnemy; private SelectedMove selectedEnemy; private PokemonSet pokemonSetsEnemy; private MoveSet moveSetEnemy; private PokemonDatabase pokemonDatabaseEnemy; private MovesDatabase movesDatabaseEnemy; List currentPokemonSetEnemy = new List(); List currentMoveSetEnemy = new List(); private Dropdown PokemonSetDropdownEnemy; private SpriteRenderer previewSpriteRendererEnemy; private Text namePokemonEnemy; private Text typePokemonEnemy; private Text hpEnemy; private Text attackEnemy; private Text deffenceEnemy; private Text specialAttackEnemy; private Text specialDeffenceEnemy; private Text speedEnemy; private Text movesEnemy; private Dropdown MoveSetDropdownEnemy; private Text nameMovesEnemy; private Text typeMovesEnemy; private Text ppEnemy; private Text powerEnemy; private Text accuracyEnemy; public GameObject MoveSelectorEnemy; #endregion private void Start() { #region Define variables Player entityPlayer = GameObject.Find("Player").GetComponent(); selectedPlayer = GameObject.Find("Player").GetComponent(); pokemonSetsPlayer = GameObject.Find("Player").GetComponent(); moveSetPlayer = GameObject.Find("Player").GetComponent(); pokemonDatabasePlayer = GameObject.Find("Database").GetComponent(); movesDatabasePlayer = GameObject.Find("Database").GetComponent(); PokemonSetDropdownPlayer = GameObject.Find("PokemonSetDropdownPlayer").GetComponent(); MoveSetDropdownPlayer = GameObject.Find("MoveSetDropdownPlayer").GetComponent(); namePokemonPlayer = GameObject.Find("namePokemonPlayer").GetComponent(); typePokemonPlayer = GameObject.Find("typePokemonPlayer").GetComponent(); hpPlayer = GameObject.Find("hpPlayer").GetComponent(); attackPlayer = GameObject.Find("attackPlayer").GetComponent(); deffencePlayer = GameObject.Find("deffencePlayer").GetComponent(); specialAttackPlayer = GameObject.Find("specialAttackPlayer").GetComponent(); specialDeffencePlayer = GameObject.Find("specialDeffencePlayer").GetComponent(); speedPlayer = GameObject.Find("speedPlayer").GetComponent(); movesPlayer = GameObject.Find("movePlayer").GetComponent(); nameMovesPlayer = GameObject.Find("nameMovesPlayer").GetComponent(); typeMovesPlayer = GameObject.Find("typeMovesPlayer").GetComponent(); ppPlayer = GameObject.Find("ppPlayer").GetComponent(); powerPlayer = GameObject.Find("powerPlayer").GetComponent(); accuracyPlayer = GameObject.Find("accuracyPlayer").GetComponent(); #endregion #region Define Variable Enemy entityPlayer = GameObject.Find("Enemy").GetComponent(); selectedPlayer = GameObject.Find("Enemy").GetComponent(); pokemonSetsPlayer = GameObject.Find("Enemy").GetComponent(); moveSetPlayer = GameObject.Find("Enemy").GetComponent(); pokemonDatabasePlayer = GameObject.Find("Enemy").GetComponent(); movesDatabasePlayer = GameObject.Find("Enemy").GetComponent(); PokemonSetDropdownEnemy = GameObject.Find("PokemonSetDropdownEnemy").GetComponent(); MoveSetDropdownEnemy = GameObject.Find("MoveSetDropdownEnemy").GetComponent(); namePokemonEnemy = GameObject.Find("namePokemonEnemy").GetComponent(); typePokemonEnemy = GameObject.Find("typePokemonEnemy").GetComponent(); hpEnemy = GameObject.Find("hpEnemy").GetComponent(); attackEnemy = GameObject.Find("attackEnemy").GetComponent(); deffenceEnemy = GameObject.Find("deffenceEnemy").GetComponent(); specialAttackEnemy = GameObject.Find("specialAttackEnemy").GetComponent(); specialDeffenceEnemy = GameObject.Find("specialDeffenceEnemy").GetComponent(); speedEnemy = GameObject.Find("speedEnemy").GetComponent(); movesEnemy = GameObject.Find("movesEnemy").GetComponent(); nameMovesEnemy = GameObject.Find("nameMovesEnemy").GetComponent(); typeMovesEnemy = GameObject.Find("typeMovesEnemy").GetComponent(); ppEnemy = GameObject.Find("ppEnemy").GetComponent(); powerEnemy = GameObject.Find("powerEnemy").GetComponent(); accuracyEnemy = GameObject.Find("accuracyEnemy").GetComponent(); #endregion choiceCheck(); } public void chooseIfPlayer(int index) { if (Choose.options[Choose.value].text == "Player") { PokemonEntity.playerTurn = true; } else { PokemonEntity.playerTurn = false; } } private void choiceCheck() { List choices = new List(); string[] choicesArray = { "Player", "Enemy" }; int choicesDropdownIndex = 0; choices.Clear(); for (int i = 0; i < choicesArray.Length; i++) { string choicesText = choicesArray[i]; choices.Add(choicesText); } Choose.ClearOptions(); Choose.AddOptions(choices); Choose.value = choicesDropdownIndex; Choose.RefreshShownValue(); } #region Player functions public void createPokemonSetPlayer() { MoveSelectorPlayer.SetActive(true); pokemonSetsPlayer.pokemonSet.Clear(); for (int i = 0; i < allowedPartyCount; i++) { int pokemonID = Random.Range(0, 6); pokemonSetsPlayer.pokemonSet.Add(pokemonDatabasePlayer.pokemons[pokemonID]); pokemonSetsPlayer.pokemonSet[i].Equals(pokemonDatabasePlayer.pokemons[pokemonID]); } pokemonDropDownPlayer(); chooseCurrentPokemonPlayer(1); } public void createMoveSetPlayer() { moveSetPlayer.moveSet.Clear(); for (int i = 0; i < 4; i++) { int moveID = Random.Range(0, 40); if (movesDatabasePlayer.movesDatabase[moveID].categoy == "Physical") { for (int a = 0; a < entityPlayer.Pokemon[0].types.Length; a++) { if (entityPlayer.Pokemon[0].types[a] == movesDatabasePlayer.movesDatabase[moveID].type) { moveSetPlayer.moveSet.Add(movesDatabasePlayer.movesDatabase[moveID]); entityPlayer.Pokemon[0].moves[i] = movesDatabasePlayer.movesDatabase[moveID].name; } } } } movesDropDownPlayer(); chooseCurrentMovePlayer(1); chooseCurrentPokemonPlayer(1); } public void chooseCurrentPokemonPlayer(int pokemonIndex) { foreach (var pokemon in pokemonDatabasePlayer.pokemons) { if (pokemonSetsPlayer.pokemonSet.Count == 0) { namePokemonPlayer.text = "Name:"; hpPlayer.text = "HP:"; attackPlayer.text = "Attack:"; deffencePlayer.text = "Deffence:"; specialAttackPlayer.text = "SpecialAttack:"; specialDeffencePlayer.text = "SpecialDeffence:"; speedPlayer.text = "Speed:"; movesPlayer.text = "Moves:"; previewSpriteRendererPlayer.sprite = null; } else if (pokemon.name == PokemonSetDropdownPlayer.options[PokemonSetDropdownPlayer.value].text) { namePokemonPlayer.text = "Name: " + pokemon.name; for (int i = 0; i < pokemon.types.Length; i++) { string text = string.Join(", ", pokemon.types); typePokemonPlayer.text = "Type/s: " + text.Replace(", Normal", " "); } hpPlayer.text = "HP: " + pokemon.health; attackPlayer.text = "Attack: " + pokemon.attack; deffencePlayer.text = "Deffence: " + pokemon.deffence; specialAttackPlayer.text = "SpecialAttack: " + pokemon.specialAttack; specialDeffencePlayer.text = "SpecialDeffence: " + pokemon.specialDeffence; speedPlayer.text = "Speed: " + pokemon.speed; for (int i = 0; i < pokemon.moves.Length; i++) { string text = string.Join(", ", pokemon.moves); movesPlayer.text = "Moves: " + text; } previewSpriteRendererPlayer.sprite = pokemon.sprite; entityPlayer.Pokemon[0] = pokemon; } } } public void chooseCurrentMovePlayer(int moveIndex) { foreach (var move in movesDatabasePlayer.movesDatabase) { if (moveSetPlayer.moveSet.Count == 0) { nameMovesPlayer.text = "Name: "; typeMovesPlayer.text = "Type: "; ppPlayer.text = "PP: "; powerPlayer.text = "Power: "; accuracyPlayer.text = "Accuracy: "; } else if (move.name == MoveSetDropdownPlayer.options[MoveSetDropdownPlayer.value].text) { nameMovesPlayer.text = "Name: " + move.name; typeMovesPlayer.text = "Type: " + move.type; ppPlayer.text = "PP: " + move.pp; powerPlayer.text = "Power: " + move.power; accuracyPlayer.text = "Accuracy: " + move.accuracy; selectedPlayer.selected[0] = move; } } } public void pokemonDropDownPlayer() { int PokemonSetDropdownIndex = 0; currentPokemonSetPlayer.Clear(); if (pokemonSetsPlayer.pokemonSet.Count == 0) { PokemonSetDropdownPlayer.ClearOptions(); PokemonSetDropdownPlayer.RefreshShownValue(); } else { for (int i = 0; i < pokemonSetsPlayer.pokemonSet.Count; i++) { string pokemonSet = pokemonSetsPlayer.pokemonSet[i].name; currentPokemonSetPlayer.Add(pokemonSet); PokemonSetDropdownIndex = i; } PokemonSetDropdownPlayer.ClearOptions(); PokemonSetDropdownPlayer.AddOptions(currentPokemonSetPlayer); PokemonSetDropdownPlayer.value = PokemonSetDropdownIndex; PokemonSetDropdownPlayer.RefreshShownValue(); } } public void movesDropDownPlayer() { int MoveSetDropdownIndex = 0; currentMoveSetPlayer.Clear(); if (moveSetPlayer.moveSet.Count == 0) { MoveSetDropdownPlayer.ClearOptions(); MoveSetDropdownPlayer.RefreshShownValue(); } else { for (int i = 0; i < moveSetPlayer.moveSet.Count; i++) { string moveSetText = moveSetPlayer.moveSet[i].name; currentMoveSetPlayer.Add(moveSetText); MoveSetDropdownIndex = i; } MoveSetDropdownPlayer.ClearOptions(); MoveSetDropdownPlayer.AddOptions(currentMoveSetPlayer); MoveSetDropdownPlayer.value = MoveSetDropdownIndex; MoveSetDropdownPlayer.RefreshShownValue(); } } #endregion #region Enemy functions public void createPokemonSetEnemy() { MoveSelectorEnemy.SetActive(true); pokemonSetsEnemy.pokemonSet.Clear(); for (int i = 0; i < allowedPartyCount; i++) { int pokemonID = Random.Range(0, 6); pokemonSetsEnemy.pokemonSet.Add(pokemonDatabaseEnemy.pokemons[pokemonID]); pokemonSetsEnemy.pokemonSet[i].Equals(pokemonDatabaseEnemy.pokemons[pokemonID]); } pokemonDropDownEnemy(); chooseCurrentPokemonEnemy(1); } public void createMoveSetEnemy() { moveSetEnemy.moveSet.Clear(); for (int i = 0; i < 4; i++) { int moveID = Random.Range(0, 40); if (movesDatabaseEnemy.movesDatabase[moveID].categoy == "Physical") { for (int a = 0; a < entityEnemy.Pokemon[0].types.Length; a++) { if (entityEnemy.Pokemon[0].types[a] == movesDatabaseEnemy.movesDatabase[moveID].type) { moveSetEnemy.moveSet.Add(movesDatabaseEnemy.movesDatabase[moveID]); entityEnemy.Pokemon[0].moves[i] = movesDatabaseEnemy.movesDatabase[moveID].name; } } } } movesDropDownEnemy(); chooseCurrentMoveEnemy(1); chooseCurrentPokemonEnemy(1); } public void chooseCurrentPokemonEnemy(int pokemonIndex) { foreach (var pokemon in pokemonDatabaseEnemy.pokemons) { if (pokemonSetsEnemy.pokemonSet.Count == 0) { namePokemonEnemy.text = "Name:"; hpEnemy.text = "HP:"; attackEnemy.text = "Attack:"; deffenceEnemy.text = "Deffence:"; specialAttackEnemy.text = "SpecialAttack:"; specialDeffenceEnemy.text = "SpecialDeffence:"; speedEnemy.text = "Speed:"; movesEnemy.text = "Moves:"; previewSpriteRendererEnemy.sprite = null; } else if (pokemon.name == PokemonSetDropdownEnemy.options[PokemonSetDropdownEnemy.value].text) { namePokemonEnemy.text = "Name: " + pokemon.name; for (int i = 0; i < pokemon.types.Length; i++) { string text = string.Join(", ", pokemon.types); typePokemonEnemy.text = "Type/s: " + text.Replace(", Normal", " "); } hpEnemy.text = "HP: " + pokemon.health; attackEnemy.text = "Attack: " + pokemon.attack; deffenceEnemy.text = "Deffence: " + pokemon.deffence; specialAttackEnemy.text = "SpecialAttack: " + pokemon.specialAttack; specialDeffenceEnemy.text = "SpecialDeffence: " + pokemon.specialDeffence; speedEnemy.text = "Speed: " + pokemon.speed; for (int i = 0; i < pokemon.moves.Length; i++) { string text = string.Join(", ", pokemon.moves); movesEnemy.text = "Moves: " + text; } previewSpriteRendererEnemy.sprite = pokemon.sprite; entityEnemy.Pokemon[0] = pokemon; } } } public void chooseCurrentMoveEnemy(int moveIndex) { foreach (var move in movesDatabaseEnemy.movesDatabase) { if (moveSetEnemy.moveSet.Count == 0) { nameMovesEnemy.text = "Name: "; typeMovesEnemy.text = "Type: "; ppEnemy.text = "PP: "; powerEnemy.text = "Power: "; accuracyEnemy.text = "Accuracy: "; } else if (move.name == MoveSetDropdownEnemy.options[MoveSetDropdownEnemy.value].text) { nameMovesEnemy.text = "Name: " + move.name; typeMovesEnemy.text = "Type: " + move.type; ppEnemy.text = "PP: " + move.pp; powerEnemy.text = "Power: " + move.power; accuracyEnemy.text = "Accuracy: " + move.accuracy; selectedEnemy.selected[0] = move; } } } public void pokemonDropDownEnemy() { int PokemonSetDropdownIndex = 0; currentPokemonSetEnemy.Clear(); if (pokemonSetsEnemy.pokemonSet.Count == 0) { PokemonSetDropdownEnemy.ClearOptions(); PokemonSetDropdownEnemy.RefreshShownValue(); } else { for (int i = 0; i < pokemonSetsEnemy.pokemonSet.Count; i++) { string pokemonSet = pokemonSetsEnemy.pokemonSet[i].name; currentPokemonSetEnemy.Add(pokemonSet); PokemonSetDropdownIndex = i; } PokemonSetDropdownEnemy.ClearOptions(); PokemonSetDropdownEnemy.AddOptions(currentPokemonSetEnemy); PokemonSetDropdownEnemy.value = PokemonSetDropdownIndex; PokemonSetDropdownEnemy.RefreshShownValue(); } } public void movesDropDownEnemy() { int MoveSetDropdownIndex = 0; currentMoveSetEnemy.Clear(); if (moveSetEnemy.moveSet.Count == 0) { MoveSetDropdownEnemy.ClearOptions(); MoveSetDropdownEnemy.RefreshShownValue(); } else { for (int i = 0; i < moveSetEnemy.moveSet.Count; i++) { string moveSetText = moveSetEnemy.moveSet[i].name; currentMoveSetEnemy.Add(moveSetText); MoveSetDropdownIndex = i; } MoveSetDropdownEnemy.ClearOptions(); MoveSetDropdownEnemy.AddOptions(currentMoveSetEnemy); MoveSetDropdownEnemy.value = MoveSetDropdownIndex; MoveSetDropdownEnemy.RefreshShownValue(); } } #endregion }