public WeaponEffect(MyModelDummy dummy, int effectId, MyWeaponDefinition.WeaponEffectAction action, MyParticleEffect effect) { this.Dummy = dummy; this.EffectId = effectId; this.Effect = effect; this.Action = action; }
public MyUseObjectCryoChamberDoor(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { CryoChamber = owner as MyCryoChamber; Debug.Assert(CryoChamber != null, "MyUseObjectCryoChamberDoor should only be used with MyCryoChamber blocks!"); LocalMatrix = dummyData.Matrix; }
/// <summary> /// ReadDummies /// </summary> /// <param name="reader"></param> /// <returns></returns> static Dictionary <string, MyModelDummy> ReadDummies(BinaryReader reader) { Dictionary <string, MyModelDummy> dummies = new Dictionary <string, MyModelDummy>(); int nCount = reader.ReadInt32(); for (int i = 0; i < nCount; ++i) { string str = reader.ReadString(); Matrix mat = ReadMatrix(reader); MyModelDummy dummy = new MyModelDummy(); dummy.Name = str; dummy.Matrix = mat; dummy.CustomData = new Dictionary <string, object>(); int customDataCount = reader.ReadInt32(); for (int j = 0; j < customDataCount; ++j) { string name = reader.ReadString(); string value = reader.ReadString(); dummy.CustomData.Add(name, value); } dummies.Add(str, dummy); } return(dummies); }
public static IMyUseObject CreateUseObject(string detectorName, MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int shapeKey) { Type type; if (!m_useObjectTypesByDummyName.TryGetValue(detectorName, out type) || type == null) return null; return (IMyUseObject)Activator.CreateInstance(type, owner, dummyName, dummyData, shapeKey); }
public MyUseObjectPanelButton(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { m_buttonPanel = owner as MyButtonPanel; m_localMatrix = dummyData.Matrix; int orderNumber = 0; var parts = dummyName.Split('_'); int.TryParse(parts[parts.Length - 1], out orderNumber); m_index = orderNumber - 1; if (m_index >= m_buttonPanel.BlockDefinition.ButtonCount) { MyLog.Default.WriteLine(string.Format("{0} Button index higher than defined count.", m_buttonPanel.BlockDefinition.Id.SubtypeName)); Debug.Fail(string.Format("{0} Button index higher than defined count.", m_buttonPanel.BlockDefinition.Id.SubtypeName)); m_index = m_buttonPanel.BlockDefinition.ButtonCount - 1; } }
public static bool GetSubpartFromDummy(string modelPath, string dummyName, MyModelDummy dummy, ref Data outData) { if (!dummyName.Contains(MyModelDummy.SUBPART_PREFIX)) return false; Debug.Assert(dummyName.Substring(0, MyModelDummy.SUBPART_PREFIX.Length).Equals(MyModelDummy.SUBPART_PREFIX), string.Format("Subpart name should start with prefix '{0}'", MyModelDummy.SUBPART_PREFIX)); Debug.Assert(dummy.CustomData.ContainsKey(MyModelDummy.ATTRIBUTE_FILE), "Subpart dummy must have 'file' attribute specified."); string subpartPath = Path.Combine(Path.GetDirectoryName(modelPath), (string)dummy.CustomData[MyModelDummy.ATTRIBUTE_FILE]); subpartPath += ".mwm"; // Temporary fix outData = new Data() { Name = dummyName.Substring(MyModelDummy.SUBPART_PREFIX.Length), File = subpartPath, InitialTransform = Matrix.Normalize(dummy.Matrix) }; return true; }
public MyUseObjectDoorTerminal(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) : base(owner, dummyData) { Door = (MyDoor)owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectCockpitDoor(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) { Cockpit = owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectTextPanel(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) : base(owner, dummyData) { m_textPanel = (MyTextPanel)owner; m_localMatrix = dummyData.Matrix; }
public MyUseObjectAirtightDoors(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) : base(owner, dummyData) { Door = (MyAirtightDoorGeneric)owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectTextPanel(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { m_textPanel = (MyTextPanel)owner; m_localMatrix = dummyData.Matrix; }
public MyUseObjectWardrobe(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) : base(owner, dummyData) { Block = owner as MyCubeBlock; LocalMatrix = dummyData.Matrix; }
public MyUseObjectMedicalRoom(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) { m_medicalRoom = (MyMedicalRoom)owner; m_localMatrix = dummyData.Matrix; }
public MyUseObjectMedicalRoom(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { m_medicalRoom = (MyMedicalRoom)owner; m_localMatrix = dummyData.Matrix; }
/// <summary> /// ReadDummies /// </summary> /// <param name="reader"></param> /// <returns></returns> private static Dictionary<string, MyModelDummy> ReadDummies(BinaryReader reader) { var dummies = new Dictionary<string, MyModelDummy>(); var nCount = reader.ReadInt32(); for (var i = 0; i < nCount; ++i) { var str = reader.ReadString(); var mat = ReadMatrix(reader); var dummy = new MyModelDummy { Matrix = mat, CustomData = new Dictionary<string, object>() }; var customDataCount = reader.ReadInt32(); for (var j = 0; j < customDataCount; ++j) { var name = reader.ReadString(); var value = reader.ReadString(); dummy.CustomData.Add(name, value); } dummies.Add(str, dummy); } return dummies; }
public MyCubeBlockParticleEffect(CubeBlockEffect effectData, MyEntity entity) { MyParticlesLibrary.GetParticleEffectsID(effectData.Name, out m_particleId); if (m_particleId == -1) m_canBeDeleted = true; else { m_loop = effectData.Loop; m_delay = effectData.Delay; m_spawnTimeMin = Math.Max(0f, effectData.SpawnTimeMin); m_spawnTimeMax = Math.Max(m_spawnTimeMin, effectData.SpawnTimeMax); m_timer = m_delay; m_entity = entity; m_originPoint = GetEffectOrigin(effectData.Origin); m_duration = effectData.Duration; if (m_spawnTimeMax > 0f) m_timer += MyUtils.GetRandomFloat(m_spawnTimeMin, m_spawnTimeMax); } }
public MyUseObjectCockpitDoor(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { Cockpit = owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectTerminal(MyCubeBlock owner, string dummyName, MyModelDummy dummyData, int key) { Block = owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectAdvancedDoorTerminal(IMyEntity owner, string dummyName, MyModelDummy dummyData, int key) { Door = (MyAdvancedDoor)owner; LocalMatrix = dummyData.Matrix; }
public MyUseObjectInventory(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) : base(owner, dummyData) { Entity = owner as MyEntity; LocalMatrix = dummyData.Matrix; }
public MyUseObjectTerminal(IMyEntity owner, string dummyName, MyModelDummy dummyData, uint key) { Block = owner as MyCubeBlock; LocalMatrix = dummyData.Matrix; }
public MyUseObjectBase(IMyEntity owner, MyModelDummy dummy) { Owner = owner; Dummy = dummy; }