コード例 #1
0
        public XEntity PlaceObjectAt(XVector2 pos)
        {
            string prefabName = "E" + ObjectName.Replace(" ", "");
            Type   prefab     = Type.GetType("RTS4.Environment.Entities.Prefabs." + prefabName);

            if (prefab == null)
            {
                Console.WriteLine("Unable to find prefab \"" + prefabName + "\"");
                return(null);
            }
            XEntity entity = prefab.GetConstructor(new Type[] { })
                             .Invoke(new object[] { }) as XEntity;
            var transform = entity.GetComponent <CTransform>();

            if (transform != null)
            {
                transform.Transform = XMatrix.CreateTranslation(new XVector3(pos.X, 0, pos.Y));
            }
            if (PlacedObjects == null)
            {
                PlacedObjects = new List <XEntity>();
            }
            PlacedObjects.Add(entity);
            return(entity);
        }