public void Reverse() { for (int i = 0; i < 5; i++) { SelfRobots[i].Position = -SelfRobots[i].Position; SelfRobots[i].Rotation = Native.Robot.FlipRotation(SelfRobots[i].Rotation); OpponentRobots[i].Position = -OpponentRobots[i].Position; OpponentRobots[i].Rotation = Native.Robot.FlipRotation(OpponentRobots[i].Rotation); } CurrentBall = new Ball { Position = -CurrentBall.Position }; }
public Environment(Native.Field field, V5RPC.Proto.Team whosball, ResultType gamestate, IntPtr userData) { WhosBall = ToLegacyWhosball(whosball); GameState = ToLegacyGameState(gamestate); SelfRobots = new Legacy.Robot[5]; OpponentRobots = new Legacy.OpponentRobot[5]; for (int i = 0; i < 5; i++) { SelfRobots[i] = new Legacy.Robot(field.SelfRobots[i]); OpponentRobots[i] = new Legacy.OpponentRobot(field.opponentRobots[i]); } CurrentBall = new Legacy.Ball() { Position = new Legacy.Vector3(field.ball.position) }; UserData = userData; // Useless field, just become 0 LastBall = new Legacy.Ball(); PredictedBall = new Legacy.Ball(); FieldBounds = new Legacy.Bounds(); GoalBounds = new Legacy.Bounds(); }