Ejemplo n.º 1
0
    public void GoalTouched(AgentMiniSoccer.Team scoredTeam)
    {
        foreach (var ps in playerStates)
        {
            if (ps.agentScript.team == scoredTeam)
            {
                RewardPlayer(ps, m_Academy.strikerReward, m_Academy.goalieReward);
            }
            else
            {
                RewardPlayer(ps, m_Academy.strikerPunish, m_Academy.goaliePunish);
            }

            if (scoredTeam == AgentMiniSoccer.Team.Purple)
            {
                StartCoroutine(GoalScoredSwapGroundMaterial(m_Academy.purpleMaterial, 1));
            }
            else
            {
                StartCoroutine(GoalScoredSwapGroundMaterial(m_Academy.blueMaterial, 1));
            }

            ps.agentScript.Done();
        }
    }
Ejemplo n.º 2
0
    public Vector3 GetRandomSpawnPos(AgentMiniSoccer.AgentRole role, AgentMiniSoccer.Team team)
    {
        var xOffset = 0f;

        if (role == AgentMiniSoccer.AgentRole.Goalie)
        {
            xOffset = 13f;
        }
        if (role == AgentMiniSoccer.AgentRole.Striker)
        {
            xOffset = 7f;
        }
        if (team == AgentMiniSoccer.Team.Blue)
        {
            xOffset = xOffset * -1f;
        }
        var randomSpawnPos = ground.transform.position +
                             new Vector3(xOffset, 0f, 0f)
                             + (Random.insideUnitSphere * 2);

        randomSpawnPos.y = ground.transform.position.y + 2;
        return(randomSpawnPos);
    }