Example #1
0
        private void FixedUpdate()
        {
            if (player)
            {
                return;
            }
            genome.Genome.AliveTime++;
            var inputs  = Settings.Instance.pixelsInput ? InputsRetriever.GetPixelsInputs(handler) : InputsRetriever.GetInputs(handler);
            var outputs = NetworkCalculator.TestNetworkGenome(genome.Network, inputs);

            if (outputs[0] > outputs[1])
            {
                Jump();
            }
        }
Example #2
0
        private void Update()
        {
            var playerPosition = transform.position;

            if (isPlayer)
            {
                transform.position = new Vector3(playerPosition.x,
                                                 Mathf.Clamp(
                                                     playerPosition.y + Input.GetAxisRaw("Vertical") * playerSpeed * Settings.Instance.gameSpeed * Time.deltaTime, -3,
                                                     3), 0);
            }
            currentDelay += Time.deltaTime;

            if (!isPlayer)
            {
                var outputs = NetworkCalculator.TestNetworkGenome(genome.Network, InputsRetriever.GetInputs(this));
                if (outputs[0] - outputs[1] > 0)
                {
                    Up();
                }
                else
                {
                    Down();
                }
                genome.Genome.Score = Math.Max(0, balloonsHit);
                if (currentDelay < spawnDelay)
                {
                    return;
                }
                if (spawnedArrows < Settings.Instance.maxArrows && outputs[2] - outputs[3] > 0f)
                {
                    SpawnArrow();
                }
            }
            else
            {
                if (currentDelay < spawnDelay)
                {
                    return;
                }

                if (spawnedArrows < Settings.Instance.maxArrows && isPlayer && Input.GetKeyDown(KeyCode.Space))
                {
                    SpawnArrow();
                }
            }
        }
Example #3
0
 private void FixedUpdate()
 {
     if (isPlayer)
     {
         UpdatePosition(Time.deltaTime * Input.GetAxisRaw("Horizontal") * speed * Settings.Instance.gameSpeed);
     }
     else
     {
         var outputs = NetworkCalculator.TestNetworkGenome(genome.Network, InputsRetriever.GetInputs(this));
         if (outputs[0] - outputs[1] > 0)
         {
             Left();
         }
         if (outputs[2] - outputs[3] > 0)
         {
             Right();
         }
     }
 }