public bool AnyCollisionDetected(Transform objectTransform)
    {
        if (_manager.GetAgents().Any(agent => CollisionBetweenTwo(objectTransform, agent.transform)))
        {
            return(true);
        }

        if (_manager.GetMovables().Any(movable => CollisionBetweenTwo(objectTransform, movable.transform)))
        {
            return(true);
        }

        return(false);
    }
Пример #2
0
    public void ResetEnv()
    {
        _agents   = _manager.GetAgents();
        _movables = _manager.GetMovables();

        Debug.Log("Trying reset");
        if (!_agents.All(agent => agent.GetIsPrepared()))
        {
            return;
        }
        Debug.Log("All ready");
        // Randomize holes in the room walls
        _wallsSpawner.Respawn();

        // Place boxes and ramp
        foreach (var movable in _movables)
        {
            movable.Respawn();
        }

        _reset_timer = 0;
    }