public static T GetPrefab <T>(PickupName name) { //See if Exists if (!m_PrefabList.ContainsKey(name)) { return(default(T)); } var data = m_PrefabList[name]; T obj = (T)Activator.CreateInstance(typeof(T), data.Model, data.Body, data.TextureData); return(obj); }
public PickupPrefab(RenderContext context, PickupName name, string modelFile) { if (m_Model == null) { m_Model = context.Content.Load <Model>(modelFile); if (m_Body == null) { m_Body = BodyFactory.CreateRectangle(context.World, 100, 100, 1); m_Body.BodyType = BodyType.Static; m_Body.Enabled = false; m_Body.IsSensor = true; //pickups are always triggers } } }
public PickupPrefab(RenderContext context, PickupName name, string assetFile) { Name = name; if (m_Model == null) { if (!File.Exists("Content/Model/m_Pickup.xnb")) { m_Model = context.Content.Load <Model>("Model/Default"); Console.WriteLine("Failed to load model " + assetFile); } if (assetFile == "WindVulcano") { m_Model = context.Content.Load <Model>("Model/m_" + assetFile); } else { //m_Model = context.Content.Load<Model>("Model/m_" + assetFile); m_Model = context.Content.Load <Model>("Model/m_PickupPlane"); } } if (m_Body == null) { if (assetFile != "WindVulcano") { m_Body = BodyFactory.CreateRectangle(context.World, 100, 100, 1); } else { m_Body = BodyFactory.CreateRectangle(context.World, 200, 1000, 1); } m_Body.BodyType = BodyType.Static; m_Body.Enabled = false; m_Body.IsSensor = true; //pickups are always triggers } if (!File.Exists("Content/Textures/Models/D_" + assetFile + ".xnb")) { TextureData.Diffuse = context.Content.Load <Texture2D>("Textures/Models/D_Default"); Console.WriteLine("Failed to load Texture " + assetFile); } else { TextureData.Diffuse = context.Content.Load <Texture2D>("Textures/Models/D_" + assetFile); } }
public PickupNode(Entity parent, PickupName pickupMode, string name) { this.chestName = "Take " + name; this.parent = parent; this.mode = pickupMode; }