protected void Start() { uint num1 = SeedEx.Seed(((Component)this).get_transform().get_position(), World.Seed + this.Seed); if ((double)SeedRandom.Value(ref num1) > (double)this.Probability) { for (int index = 0; index < this.Candidates.Length; ++index) { GameManager.Destroy(this.Candidates[index], 0.0f); } GameManager.Destroy((Component)this, 0.0f); } else { int num2 = SeedRandom.Range(num1, 0, ((Component)this).get_transform().get_childCount()); for (int index = 0; index < this.Candidates.Length; ++index) { GameObject candidate = this.Candidates[index]; if (index == num2) { candidate.SetActive(true); } else { GameManager.Destroy(candidate, 0.0f); } } GameManager.Destroy((Component)this, 0.0f); } }
public override void Apply(ref Vector3 pos, ref Quaternion rot, ref Vector3 scale) { uint num1 = SeedEx.Seed(pos, World.Seed) + 2U; float num2 = SeedRandom.Range(ref num1, (float)this.MinRotation.x, (float)this.MaxRotation.x); float num3 = SeedRandom.Range(ref num1, (float)this.MinRotation.y, (float)this.MaxRotation.y); float num4 = SeedRandom.Range(ref num1, (float)this.MinRotation.z, (float)this.MaxRotation.z); rot = Quaternion.op_Multiply(Quaternion.Euler(num2, num3, num4), rot); }
protected void Start() { uint num = SeedEx.Seed(((Component)this).get_transform().get_position(), World.Seed + this.Seed); if ((double)SeedRandom.Value(ref num) > (double)this.Probability) { GameManager.Destroy((Component)this, 0.0f); } else { GameManager.Destroy(((Component)this).get_gameObject(), 0.0f); } }
protected void Start() { uint seed = SeedEx.Seed(((Component)this).get_transform().get_position(), World.Seed + this.Seed); if ((double)SeedRandom.Value(ref seed) > (double)this.Probability) { GameManager.Destroy((Component)this, 0.0f); } else { Prefab.LoadRandom("assets/bundled/prefabs/autospawn/" + this.ResourceFolder, ref seed, (GameManager)null, (PrefabAttribute.Library)null, true).Spawn(((Component)this).get_transform()); GameManager.Destroy((Component)this, 0.0f); } }
public ResourceDepositManager.ResourceDeposit CreateFromPosition(Vector3 pos) { Vector2i indexFrom = ResourceDepositManager.GetIndexFrom(pos); Random.State state = Random.get_state(); Random.InitState((int)SeedEx.Seed(new Vector2((float)indexFrom.x, (float)indexFrom.y), World.Seed + World.Salt)); ResourceDepositManager.ResourceDeposit resourceDeposit = new ResourceDepositManager.ResourceDeposit(); resourceDeposit.origin = new Vector3((float)(indexFrom.x * 20), 0.0f, (float)(indexFrom.y * 20)); if ((double)Random.Range(0.0f, 1f) < 0.5) { resourceDeposit.Add(ItemManager.FindItemDefinition("stones"), 1f, 100, 1f, ResourceDepositManager.ResourceDeposit.surveySpawnType.ITEM, false); } else if (true) { resourceDeposit.Add(ItemManager.FindItemDefinition("stones"), 1f, Random.Range(30000, 100000), Random.Range(0.3f, 0.5f), ResourceDepositManager.ResourceDeposit.surveySpawnType.ITEM, false); if ((double)Random.Range(0.0f, 1f) >= 1.0 - (!World.Procedural ? 0.100000001490116 : ((double)TerrainMeta.BiomeMap.GetBiome(pos, 2) > 0.5 ? 1.0 : 0.0) * 0.25)) { resourceDeposit.Add(ItemManager.FindItemDefinition("metal.ore"), 1f, Random.Range(10000, 100000), Random.Range(2f, 4f), ResourceDepositManager.ResourceDeposit.surveySpawnType.ITEM, false); } if ((double)Random.Range(0.0f, 1f) >= 1.0 - (!World.Procedural ? 0.100000001490116 : ((double)TerrainMeta.BiomeMap.GetBiome(pos, 1) > 0.5 ? 1.0 : 0.0) * (0.25 + 0.25 * (TerrainMeta.TopologyMap.GetTopology(pos, 8) ? 1.0 : 0.0) + 0.25 * (TerrainMeta.TopologyMap.GetTopology(pos, 1) ? 1.0 : 0.0)))) { resourceDeposit.Add(ItemManager.FindItemDefinition("sulfur.ore"), 1f, Random.Range(10000, 100000), Random.Range(4f, 4f), ResourceDepositManager.ResourceDeposit.surveySpawnType.ITEM, false); } float num = 0.0f; if (World.Procedural) { if ((double)TerrainMeta.BiomeMap.GetBiome(pos, 8) > 0.5 || (double)TerrainMeta.BiomeMap.GetBiome(pos, 4) > 0.5) { num += 0.25f; } } else { num += 0.15f; } if ((double)Random.Range(0.0f, 1f) >= 1.0 - (double)num) { resourceDeposit.Add(ItemManager.FindItemDefinition("hq.metal.ore"), 1f, Random.Range(5000, 10000), Random.Range(30f, 50f), ResourceDepositManager.ResourceDeposit.surveySpawnType.ITEM, false); } } this._deposits.Add(indexFrom, resourceDeposit); Interface.CallHook("OnResourceDepositCreated", (object)resourceDeposit); Random.set_state(state); return(resourceDeposit); }
public override void Apply(ref Vector3 pos, ref Quaternion rot, ref Vector3 scale) { uint num = SeedEx.Seed(pos, World.Seed) + 4U; if ((double)SeedRandom.Value(ref num) > 0.5) { return; } switch (this.FlipAxis) { case DecorFlip.AxisType.X: case DecorFlip.AxisType.Z: rot = Quaternion.op_Multiply(Quaternion.AngleAxis(180f, Quaternion.op_Multiply(rot, Vector3.get_up())), rot); break; case DecorFlip.AxisType.Y: rot = Quaternion.op_Multiply(Quaternion.AngleAxis(180f, Quaternion.op_Multiply(rot, Vector3.get_forward())), rot); break; } }
public override void Apply(ref Vector3 pos, ref Quaternion rot, ref Vector3 scale) { uint num1 = SeedEx.Seed(pos, World.Seed) + 3U; float num2 = SeedRandom.Value(ref num1); ref __Null local1 = ref scale.x;
public override void Apply(ref Vector3 pos, ref Quaternion rot, ref Vector3 scale) { uint num = SeedEx.Seed(pos, World.Seed) + 1U; ref __Null local1 = ref pos.x;