Esempio n. 1
0
        public static Snapshot createInterpolationSnapshot(Snapshot previous, Snapshot next, float time, int id, ClientMessenger cm)
        {
            List <CubeEntity> cubeEntities = new List <CubeEntity>();

            for (int i = 0; i < previous.entities.Count; i++)
            {
                int nextId = previous.entities[i].Id;
                if (!nextId.Equals(id))
                {
                    if (cm.isIdRegistered(nextId))
                    {
                        var cubeEntity = next.getEntityById(nextId);
                        if (cubeEntity != null)
                        {
                            cubeEntities.Add(CubeEntity.createInterpolationEntity(previous.entities[i], cubeEntity, time));
                        }
                        else
                        {
                            cm.deletePlayer(nextId);
                        }
                    }
                }
            }
            return(new Snapshot(-1, cubeEntities));
        }