private Action MoveCommandAction(List <string> args) { UInt32 id; Vector3 vector; if (args.Count < 4) { _logger.LogError($"Move command requires >= 4 args: EntityId XDelta YDelta ZDelta"); return(null); } if (!ValidateId(args[0], out id)) { return(null); } if (!ParseVector(args.GetRange(1, args.Count - 1), out vector)) { return(null); } TransformComponentManager manager = _collection.GetManagerByName("transform") as TransformComponentManager; if (manager != null) { return(() => manager.Translate(Convert.ToInt32(args[0]), vector)); } else { return(null); } }
private static void Main(string[] args) { var factory = createLoggerFactory(); EntityManager entityManager = new EntityManager(factory); TransformComponentManager transformManager = new TransformComponentManager(factory, entityManager); Entity entity0 = entityManager.Create(); Entity entity1 = entityManager.Create(); transformManager.RegisterComponent(entity0.Id); transformManager.Translate(0, new Vector3(1, 1, 1)); transformManager.RegisterComponent(entity1.Id, transformManager.EntityToInstanceIndex(entity0.Id)); transformManager.Translate(0, new Vector3(1, 1, 1)); Console.ReadKey(); }