public void Input_StartGame() { if (player1Dropdown.value == player2Dropdown.value || player1Dropdown.value == 0 || player2Dropdown.value == 0) { return; } CharacterScriptableObject player1Data = currentCharacters[player1Dropdown.value - 1]; CharacterScriptableObject player2Data = currentCharacters[player2Dropdown.value - 1]; player1.alignment = HealthEntity.Alignment.Good; foreach (var cardSO in player1Data.startingCards) { Card newCard = new Card(cardSO); player1.cards.Add(newCard); } player1.name = player1Data.name; player1.maxHealth = player1Data.health; player1.maxMana = player1Data.mana; player2.alignment = HealthEntity.Alignment.Good; foreach (var cardSO in player2Data.startingCards) { Card newCard = new Card(cardSO); player2.cards.Add(newCard); } player2.name = player2Data.name; player2.maxHealth = player2Data.health; player2.maxMana = player2Data.mana; StartGame(); }
private void SetCharacterSettings(CharacterScriptableObject characterObject, Image characterImage, bool talking, Image nameBoxImage, Text nameText) { if (characterImage != null) { SetSprite(characterObject.Sprite, characterImage); } if (talking) { if (nameBoxImage != null) { nameBoxImage.gameObject.SetActive(true); } if (nameBoxImage != null) { nameText.font = characterObject.Font; nameText.text = characterObject.Name; } if (characterImage != null) { TintSprite(characterImage, _tintColorWhenTalking); } if (characterObject.Font != null) { _dialogText.font = characterObject.Font; } if (characterObject.VoiceAudio != null) { if (_voiceAudioSource.clip != characterObject.VoiceAudio) { PlayAudioClip(_voiceAudioSource, characterObject.VoiceAudio); } _minPlayTimer.Duration = _voiceAudioSource.clip.length; } else { _minPlayTimer.Duration = MIN_BOX_TIME; } _minPlayTimer.Reset(); } else { if (nameBoxImage != null) { nameBoxImage.gameObject.SetActive(false); } if (characterImage != null) { TintSprite(characterImage, _tintColorWhenNotTalking); } } }
// Start is called before the first frame update void Start() { playerManager = GameObject.FindObjectOfType <PlayerManager>(); index = id - 1; playerObject.index = id; currentCharacter = characterList[index]; playerManager.charactersList[index] = this; UpdateUI(); }
public void NextCharacter() { index++; if (index > 3) { index = 0; } currentCharacter = characterList[index]; UpdateUI(); }
public void PreviousCharacter() { index--; if (index < 0) { index = 3; } currentCharacter = characterList[index]; UpdateUI(); }
private void Start() { actorData = this.gameObject.GetComponent <Actor>().ActorData; if (actorData != null) { Debug.Log("Data on Feedback found on " + this.gameObject.name); } else { Debug.LogError("Data on Feedback NOT found on " + this.gameObject.name); } }
private void Start() { characterData = GameManager.Instance.startingCharacter; allAreas = new List <WorkArea>(); leftHand.ClearItem(); rightHand.ClearItem(); leftHand.FinishWork(); rightHand.FinishWork(); OnWorkAreaChanged += delegate { _TryWork(); }; }
public void SetCharacter(CharacterScriptableObject charObject) { character = charObject; nameHeader.text = charObject.name; portrait.sprite = charObject.portrait; for (int i = 0; i < charObject.attacks.Length; i++) { AttackScript attackLabel = Instantiate <AttackScript>(attackPrefab); attackLabel.transform.parent = transform; attackLabel.transform.localPosition = attackPosition + Vector3.down * attackSpacing * i; attackLabel.transform.localRotation = Quaternion.identity; attackLabel.SetAttack(i, charObject.attacks[i]); } }
// Start is called before the first frame update void Start() { AllCharactersDictionary = new Dictionary <string, CharacterScriptableObject>(); AllFriendshipLevels = new Dictionary <string, int>(); GameObject[] allCharacters = GameObject.FindGameObjectsWithTag("Character"); for (int i = 0; i < allCharacters.Length; i++) { CharacterScriptableObject character = allCharacters[0].GetComponent <CharacterSO_AttachmentScript>().AssignedCharacterValues; string characterName = character.CharacterName.ToLower(); AllFriendshipLevels.Add(characterName, 0); AllCharactersDictionary.Add(characterName, character); #if DEBUG_FriendshipManager Debug.Log("FriendshipManager::Start() Name of character: " + characterName + " is character number " + i + " in the scene"); #endif } }
private void Awake() { actorData = this.gameObject.GetComponent <Actor>().ActorData; if (actorData != null) { //Debug.Log("Data on Feedback found on " + this.gameObject.name); } else { Debug.LogError("Data on Feedback NOT found on " + this.gameObject.name); } animator = this.gameObject.GetComponentInChildren <Animator>(); if (attackAnimation == null) { Debug.LogError("Attack Animation not setup in " + this.gameObject.name); } }
IEnumerator StackCards() { int cardCount = characters.Count; for (int i = 0; i < cardCount; i++) { yield return(new WaitForSeconds(cardStackInterval)); GameObject card = Instantiate <GameObject>(cardPrefab, dealerPlaceholder.position + cardSpacing * dealerCards.Count, dealerPlaceholder.rotation); card.transform.parent = transform; dealerCards.Push(card); CharacterScriptableObject character = characters[rnd.Next(characters.Count)]; card.GetComponent <CharacterCardScript>().SetCharacter(character); characters.Remove(character); } yield return(new WaitForSeconds(postInterval)); StartCoroutine(DealCards()); }
public void Initialize_Players() //inicializar tags e outras coisas necessarias dos players da cena { for (int i = 0; i < playersNumber; i++) //para cada player { Transform[] allChildren = players[i].transform.GetComponentsInChildren <Transform>(); //pegar todos os objetos do jogador i e inicializar tag e layer foreach (Transform child in allChildren) //para cada objeto filho (/child) do jogador (incluindo o objeto pai)) { child.gameObject.tag = "Player" + (i + 1); //setar tag child.gameObject.layer = LayerMask.NameToLayer("Player" + (i + 1)); //setar layer } CharacterScriptableObject playerSO = players[i].transform.GetComponent <PlayerController>().characterSO; //pegar scriptable object do jogador GameObject playerWeapon = players[i].transform.Find(playerSO.weaponPath).GetChild(0).gameObject; //pegar arma do jogador allChildren = playerWeapon.transform.GetComponentsInChildren <Transform>(); //pegar todos os objetos da arma do jogador i e inicializar tag e layer foreach (Transform child in allChildren) //para cada objeto filho (/child) da arma do jogador (incluindo o objeto pai)) { child.gameObject.tag = "Damage" + (i + 1); //setar tag child.gameObject.layer = LayerMask.NameToLayer("Damage" + (i + 1)); //setar layer } } }