Exemplo n.º 1
0
    public void HaltAgent(DCAgentSolo doomCube)
    {
        Rigidbody rigidbody = doomCube.GetComponent <Rigidbody>();

        rigidbody.velocity        = Vector3.zero;
        rigidbody.angularVelocity = Vector3.zero;
    }
Exemplo n.º 2
0
    public void ResetArea(DCAgentSolo doomCubeAgent)
    {
        foreach (DCDummy doomCubeDummy in doomCubeAgents)
        {
            PlaceDummy(doomCubeDummy, Random.Range(0, 9));
        }

        PlaceAgent(doomCubeAgent, Random.Range(0, 9));
    }
Exemplo n.º 3
0
    public void ResolveHit(DCAgentSolo winnerAgent, DCDummy loserAgent, int score)
    {
        winnerAgent.AddReward(score);
        PlaceDummy(loserAgent, 8 + score);

        if (score > 2)
        {
            winnerAgent.EndEpisode();
        }
    }
Exemplo n.º 4
0
    public void PlaceAgent(DCAgentSolo doomCube, int zone)
    {
        // Physics
        HaltAgent(doomCube);

        // Spawn position
        doomCube.transform.position = ChooseRandomPosition(zone);

        // Spawn direction
        doomCube.transform.rotation = ChooseRandomRotation();
    }