// Start is called before the first frame update void Start() { _dnaSequenceGenerator = new DnaSequenceGenerator(); char[] bases = _dnaSequenceGenerator.GenerateSequence(_size); correct = new bool[_size]; pairs = new Dictionary <int, String[]>(); for (var i = 0; i < bases.Length; i++) { bool isWrong = Random.value <= mistakeRate; GameObject b = Instantiate(baseTemplate, new Vector2(i * 1.2f, this.transform.position.x), this.transform.rotation); b.name = bases[i].ToString() + i.ToString(); b.GetComponentInChildren <BaseButoonAppearance>().label = bases[i].ToString(); b.GetComponentInChildren <BaseButoonAppearance>().color = DnaSequenceGenerator.getBaseColor(bases[i]); b.GetComponentInChildren <BaseButoonAppearance>().id = i; b.GetComponentInChildren <SpriteRenderer>().sprite = (bases[i].Equals('A') || bases[i].Equals('T') ? tx2d : tx3d); b.transform.parent = this.gameObject.transform; char match = _dnaSequenceGenerator.BaseMatch(bases[i], isWrong); GameObject c = Instantiate(baseTemplate, new Vector2(i * 1.2f, this.transform.position.y - 2f), this.transform.rotation); c.name = match.ToString() + i.ToString(); c.GetComponentInChildren <BaseButoonAppearance>().label = match.ToString(); c.GetComponentInChildren <BaseButoonAppearance>().color = DnaSequenceGenerator.getBaseColor(match); c.GetComponentInChildren <BaseButoonAppearance>().id = i; c.GetComponentInChildren <SpriteRenderer>().sprite = (match.Equals('A') || match.Equals('T') ? tx2d : tx3d); c.GetComponentInChildren <SpriteRenderer>().flipY = true; c.GetComponentInChildren <SpriteRenderer>().gameObject.transform.Translate(0, 0.5f, 0); c.transform.parent = this.gameObject.transform; correct[i] = isWrong; pairs[i] = new string[] { bases[i].ToString(), match.ToString() }; } }
private void OnTriggerExit2D(Collider2D other) { Debug.Log("Triggered"); Debug.Log(_gameObjects.Count); if (_gameObjects.Count >= 2) { var base1 = _gameObjects.Dequeue().GetComponentInChildren <BaseButoonAppearance>().label.ToCharArray()[0]; var base2 = _gameObjects.Dequeue().GetComponentInChildren <BaseButoonAppearance>().label.ToCharArray()[0]; if (_dnaSequenceGenerator.BaseMatch(base1) == base2) { Debug.Log("CORRECT"); } else { Debug.Log("WRONG"); score -= 5; scoreLabel.text = score.ToString(); } } if (score <= 0) { SceneManager.LoadScene("GameOverScene"); PlayerPrefs.SetInt("totalScore", totalScore / 2); } }