public CommandListener(int port) { LocalHost = NetworkCalculator.Create().LocalAddress; _listener = new SocketListener <CommandJson>(new JsonCommandFormatter(), port); _listener.DataRecieved += HandleMessage; _handlers = new Dictionary <string, Func <StringReader, Task> >(StringComparer.OrdinalIgnoreCase); }
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(); } }
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(); } } }
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(); } } }
public CommandSender() { _network = NetworkCalculator.Create(); _knownEndpoints = new ConcurrentDictionary <IPAddress, int>(); _formatter = new JsonCommandFormatter(); }