Exemple #1
0
    public override List <float> CollectState()
    {
        var result = res;

        res.Clear();
        int team = GetTeam();

        result.AddRange(map.GetStates(team));
        // result.AddRange(map.GetVelocities());

        result.Add(transform.localPosition.x);
        result.Add(transform.localPosition.y);

        result.Add(rigid.velocity.x);
        result.Add(rigid.velocity.y);

        if (team == 0)
        {
            result.Add(map.Team2.transform.localPosition.x);
            result.Add(map.Team2.transform.localPosition.y);
            result.Add(map.Team2.GetComponent <Rigidbody2D>().velocity.x);
            result.Add(map.Team2.GetComponent <Rigidbody2D>().velocity.y);
        }
        else
        {
            result.Add(map.Team1.transform.localPosition.x);
            result.Add(map.Team1.transform.localPosition.y);
            result.Add(map.Team1.GetComponent <Rigidbody2D>().velocity.x);
            result.Add(map.Team1.GetComponent <Rigidbody2D>().velocity.y);
        }
        return(result);
    }