public void RegisterDeath(FlappyController flappy) { var aIController = flappy.GetComponent <FlappyAIController>(); if (aIController == null) { return; } _contestants.Add(new SContestants() { _score = CalculateFitness(flappy), _genome = aIController.Genome }); _alives.Remove(flappy); if (_alives.Count == 0) { var tmpContestants = new List <SContestants>(_contestants); _contestants.Clear(); _contestants = new List <SContestants>(tmpContestants.OrderBy((x) => x._score)); //_contestants = new List<SContestants>(_contestants.OrderBy((x) => x._score)); Debug.Log($"MaxScore: {_contestants.Last()._score}"); if (_contestants.Last()._score > _maxDistance) { _maxDistance = _contestants.Last()._score; } Debug.Log(_contestants.Last()._genome.ToString()); var champions = _contestants.Skip(Mathf.Max(0, _contestants.Count() - _championCount)).Select(c => c._genome).ToList(); //var champions = _contestants.Take(_championCount).Select(c=>c._genome).ToList(); Reset(); Generate(champions); } }
// Use this for initialization void Start() { adManager = FindObjectOfType <AdManager>(); GetScore(); Debug.Log("playCount: " + playCount); Time.timeScale = 0; if (playCount > 3) { int randomChance = Random.Range(0, 2); Debug.Log(randomChance); if (randomChance == 1) { adManager.ShowStandardVideoAd(); playCount = 0; } } Time.timeScale = 1; flappy = GameObject.Find("Flappy"); flappyController = flappy.GetComponent <FlappyController>(); flappyRB = flappy.GetComponent <Rigidbody2D>(); startCanvas = GameObject.Find("StartCanvas"); gameOverCanvas = GameObject.Find("GameOverCanvas"); gameOverCanvas.SetActive(false); obstacleSpawner = GameObject.Find("ObstacleSpawner"); os = obstacleSpawner.GetComponent <ObstacleSpawner>(); sc = gameOverCanvas.GetComponent <ScoreCounter>(); score = 0; UpdateScore(); }
// Use this for initialization void Start() { mainCamera = Camera.main; playerCharacter = GameObject.Find("Flappy"); fc = playerCharacter.GetComponent <FlappyController>(); }
private float CalculateFitness(FlappyController flappy) { return(flappy.Score); }
// Start is called before the first frame update void Awake() { _controller = GetComponent <FlappyController>(); }
// Use this for initialization void Start() { rb = GetComponent <Rigidbody2D>(); fc = GetComponent <FlappyController>(); }
void Start() { death = GameObject.Find("DickButt").GetComponent <FlappyController> (); }