protected override void Init(MyObjectBuilder_DefinitionBase builder) { base.Init(builder); MyObjectBuilder_PhysicalMaterialDefinition definition = builder as MyObjectBuilder_PhysicalMaterialDefinition; if (definition != null) { this.Density = definition.Density; this.HorisontalTransmissionMultiplier = definition.HorisontalTransmissionMultiplier; this.HorisontalFragility = definition.HorisontalFragility; this.SupportMultiplier = definition.SupportMultiplier; this.CollisionMultiplier = definition.CollisionMultiplier; } MyObjectBuilder_MaterialPropertiesDefinition definition2 = builder as MyObjectBuilder_MaterialPropertiesDefinition; if (definition2 != null) { this.InheritFrom = MyStringHash.GetOrCompute(definition2.InheritFrom); foreach (MyObjectBuilder_MaterialPropertiesDefinition.ContactProperty property in definition2.ContactProperties) { MyStringId orCompute = MyStringId.GetOrCompute(property.Type); if (!this.CollisionProperties.ContainsKey(orCompute)) { this.CollisionProperties[orCompute] = new Dictionary <MyStringHash, CollisionProperty>(MyStringHash.Comparer); } MyStringHash hash = MyStringHash.GetOrCompute(property.Material); this.CollisionProperties[orCompute][hash] = new CollisionProperty(property.SoundCue, property.ParticleEffect, property.AlternativeImpactSounds); } foreach (MyObjectBuilder_MaterialPropertiesDefinition.GeneralProperty property2 in definition2.GeneralProperties) { this.GeneralSounds[MyStringId.GetOrCompute(property2.Type)] = new MySoundPair(property2.SoundCue, true); } } }
public static List <ShopItem> DynPrices(List <ShopItem> shopitems, long FactionID) { float worlddensity; MyObjectBuilder_PhysicalMaterialDefinition materials = new MyObjectBuilder_PhysicalMaterialDefinition(); worlddensity = materials.Density; foreach (ShopItem item in shopitems) { switch (item.ItemName) { case ("Stone"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Stone); break; } case ("Iron"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Iron); break; } case ("Silicon"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Silicon); break; } case ("Nickel"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Nickel); break; } case ("Cobalt"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Cobalt); break; } case ("Silver"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Silver); break; } case ("Gold"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Gold); break; } case ("Uranium"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Uranium); break; } case ("Magnesium"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Magnesium); break; } case ("Platinum"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.Platinum); break; } case ("UpgradedConstruction"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.UpgradedConstruction); break; } case ("AdvancedConstruction"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.AdvancedConstruction); break; } case ("QuantumConstruction"): { item.ItemPrice = GetValue(FactionID, (float)itemvalues.QuantumConstruction); break; } default: break; } } return(shopitems); }