Esempio n. 1
0
        public void SetState(TurtleState d)
        {
            transform.position = d.position;
            transform.rotation = d.rotation;
            rb.velocity        = d.velocity;
            rb.angularVelocity = d.angularVelocity;

            SetDead(d.dead);
        }
Esempio n. 2
0
        public override void Deserialize(NetworkReader reader)
        {
            int count = reader.ReadInt32();

            units = new List <TurtleState>();

            for (int i = 0; i < count; i++)
            {
                var newUnit = new TurtleState();
                newUnit.Deserialize(reader);
                units.Add(newUnit);
            }
        }
Esempio n. 3
0
        Turtle GetTurtleFor(TurtleState state)
        {
            int           role    = state.role;
            int           index   = state.index;
            List <Turtle> turtles = GetTurtlesForRole(role);

            for (int i = 0; i < turtles.Count; i++)
            {
                var turtle = turtles[i];

                if (turtle.index == index)
                {
                    if (i != index - 1)
                    {
                        Log.Warn("Turtle with index {0} ({1}) is in position {2}", index, index - 1, i);
                    }
                    return(turtle);
                }
            }

            Log.Error("Turtle {0}:{1} not found!! ({2} in role)", role, index, turtles.Count);
            return(null);
        }