public static string SpriteNameOfCreature(IconSymbol.IconSymbolData iconData) { switch (iconData.critType) { case CreatureTemplate.Type.Slugcat: return("Kill_Slugcat"); case CreatureTemplate.Type.PinkLizard: case CreatureTemplate.Type.BlueLizard: case CreatureTemplate.Type.RedLizard: case CreatureTemplate.Type.CyanLizard: case (CreatureTemplate.Type)patch_CreatureTemplate.Type.GreyLizard: return("Kill_Standard_Lizard"); case CreatureTemplate.Type.GreenLizard: return("Kill_Green_Lizard"); case CreatureTemplate.Type.YellowLizard: return("Kill_Yellow_Lizard"); case CreatureTemplate.Type.WhiteLizard: return("Kill_White_Lizard"); case CreatureTemplate.Type.BlackLizard: return("Kill_Black_Lizard"); case CreatureTemplate.Type.Salamander: return("Kill_Salamander"); case CreatureTemplate.Type.Fly: return("Kill_Bat"); case CreatureTemplate.Type.Leech: case CreatureTemplate.Type.SeaLeech: return("Kill_Leech"); case CreatureTemplate.Type.Snail: return("Kill_Snail"); case CreatureTemplate.Type.Vulture: return("Kill_Vulture"); case CreatureTemplate.Type.GarbageWorm: return("Kill_Garbageworm"); case CreatureTemplate.Type.LanternMouse: return("Kill_Mouse"); case CreatureTemplate.Type.CicadaA: case CreatureTemplate.Type.CicadaB: return("Kill_Cicada"); case CreatureTemplate.Type.Spider: return("Kill_SmallSpider"); case CreatureTemplate.Type.JetFish: return("Kill_Jetfish"); case CreatureTemplate.Type.BigEel: return("Kill_BigEel"); case CreatureTemplate.Type.Deer: return("Kill_RainDeer"); case CreatureTemplate.Type.TubeWorm: return("Kill_Tubeworm"); case CreatureTemplate.Type.DaddyLongLegs: case CreatureTemplate.Type.BrotherLongLegs: return("Kill_Daddy"); case CreatureTemplate.Type.TentaclePlant: return("Kill_TentaclePlant"); case CreatureTemplate.Type.PoleMimic: return("Kill_PoleMimic"); case CreatureTemplate.Type.MirosBird: return("Kill_MirosBird"); case CreatureTemplate.Type.Centipede: return("Kill_Centipede" + Custom.IntClamp(iconData.intData, 1, 3)); case CreatureTemplate.Type.RedCentipede: return("Kill_Centipede3"); case CreatureTemplate.Type.Centiwing: return("Kill_Centiwing"); case CreatureTemplate.Type.SmallCentipede: return("Kill_Centipede1"); case CreatureTemplate.Type.Scavenger: return("Kill_Scavenger"); case CreatureTemplate.Type.Overseer: return("Kill_Overseer"); case CreatureTemplate.Type.VultureGrub: return("Kill_VultureGrub"); case CreatureTemplate.Type.EggBug: return("Kill_EggBug"); case CreatureTemplate.Type.BigSpider: case CreatureTemplate.Type.SpitterSpider: return("Kill_BigSpider"); case CreatureTemplate.Type.SmallNeedleWorm: return("Kill_SmallNeedleWorm"); case CreatureTemplate.Type.BigNeedleWorm: return("Kill_NeedleWorm"); case CreatureTemplate.Type.DropBug: return("Kill_DropBug"); case CreatureTemplate.Type.KingVulture: return("Kill_KingVulture"); case CreatureTemplate.Type.Hazer: return("Kill_Hazer"); case (CreatureTemplate.Type)patch_CreatureTemplate.Type.WalkerBeast: return("Kill_WalkerBeast"); case (CreatureTemplate.Type)patch_CreatureTemplate.Type.SeaDrake: return("Kill_SeaDrake"); } return("Futile_White"); }
// Token: 0x06000670 RID: 1648 RVA: 0x000356E4 File Offset: 0x000338E4 public static Color ColorOfCreature(IconSymbol.IconSymbolData iconData) { switch (iconData.critType) { case CreatureTemplate.Type.Slugcat: return(PlayerGraphics.SlugcatColor(iconData.intData)); case CreatureTemplate.Type.PinkLizard: return((StaticWorld.GetCreatureTemplate(iconData.critType).breedParameters as LizardBreedParams).standardColor); case CreatureTemplate.Type.GreenLizard: return((StaticWorld.GetCreatureTemplate(iconData.critType).breedParameters as LizardBreedParams).standardColor); case CreatureTemplate.Type.BlueLizard: return((StaticWorld.GetCreatureTemplate(iconData.critType).breedParameters as LizardBreedParams).standardColor); case CreatureTemplate.Type.YellowLizard: case CreatureTemplate.Type.Centipede: case CreatureTemplate.Type.SmallCentipede: return(new Color(1f, 0.6f, 0f)); case CreatureTemplate.Type.WhiteLizard: return((StaticWorld.GetCreatureTemplate(iconData.critType).breedParameters as LizardBreedParams).standardColor); case CreatureTemplate.Type.RedLizard: return(new Color(0.9019608f, 0.05490196f, 0.05490196f)); case (CreatureTemplate.Type)patch_CreatureTemplate.Type.GreyLizard: return(new Color(0.686f * 1.1f, 0.698f * 1.1f, 0.643f * 1.1f)); case CreatureTemplate.Type.BlackLizard: return(new Color(0.368627459f, 0.368627459f, 0.435294122f)); case (CreatureTemplate.Type)patch_CreatureTemplate.Type.SeaDrake: return(new Color(0.368627459f, 0.368627459f, 0.435294122f)); case CreatureTemplate.Type.Salamander: return(new Color(0.933333337f, 0.78039217f, 0.894117653f)); case CreatureTemplate.Type.CyanLizard: case CreatureTemplate.Type.Overseer: return(new Color(0f, 0.9098039f, 0.9019608f)); case CreatureTemplate.Type.Leech: case CreatureTemplate.Type.SpitterSpider: return(new Color(0.68235296f, 0.156862751f, 0.117647059f)); case CreatureTemplate.Type.SeaLeech: case CreatureTemplate.Type.TubeWorm: return(new Color(0.05f, 0.3f, 0.7f)); case CreatureTemplate.Type.CicadaA: return(new Color(1f, 1f, 1f)); case CreatureTemplate.Type.CicadaB: return(new Color(0.368627459f, 0.368627459f, 0.435294122f)); case CreatureTemplate.Type.DaddyLongLegs: return(new Color(0f, 0f, 1f)); case CreatureTemplate.Type.BrotherLongLegs: return(new Color(0.454901963f, 0.5254902f, 0.305882365f)); case CreatureTemplate.Type.RedCentipede: return(new Color(0.9019608f, 0.05490196f, 0.05490196f)); case CreatureTemplate.Type.Centiwing: return(new Color(0.05490196f, 0.698039234f, 0.235294119f)); case CreatureTemplate.Type.VultureGrub: return(new Color(0.831372559f, 0.7921569f, 0.435294122f)); case CreatureTemplate.Type.EggBug: return(new Color(0f, 1f, 0.470588237f)); case CreatureTemplate.Type.SmallNeedleWorm: case CreatureTemplate.Type.BigNeedleWorm: return(new Color(1f, 0.596078455f, 0.596078455f)); case CreatureTemplate.Type.Hazer: return(new Color(0.211764708f, 0.7921569f, 0.3882353f)); } return(Menu.Menu.MenuRGB(Menu.Menu.MenuColors.MediumGrey)); }
private void SpawnEntity(SandboxEditor.PlacedIconData placedIconData) { IconSymbol.IconSymbolData data = placedIconData.data; WorldCoordinate pos = new WorldCoordinate(0, -1, -1, -1); pos.x = Mathf.RoundToInt(placedIconData.pos.x / 20f); pos.y = Mathf.RoundToInt(placedIconData.pos.y / 20f); EntityID entityID = (!base.GameTypeSetup.saveCreatures) ? this.game.GetNewID() : placedIconData.ID; if (data.itemType == AbstractPhysicalObject.AbstractObjectType.Creature) { AbstractCreature abstractCreature = null; if (base.GameTypeSetup.saveCreatures) { for (int i = 0; i < this.arenaSitting.creatures.Count; i++) { if (this.arenaSitting.creatures[i].creatureTemplate.type == data.critType && this.arenaSitting.creatures[i].ID == entityID) { abstractCreature = this.arenaSitting.creatures[i]; this.arenaSitting.creatures.RemoveAt(i); for (int j = 0; j < 2; j++) { abstractCreature.state.CycleTick(); } string creatureString = SaveState.AbstractCreatureToString(abstractCreature); abstractCreature = SaveState.AbstractCreatureFromString(this.game.world, creatureString, false); abstractCreature.pos = pos; break; } } } if (abstractCreature == null) { abstractCreature = new AbstractCreature(this.game.world, StaticWorld.GetCreatureTemplate(data.critType), null, pos, entityID); } CreatureTemplate.Type critType = data.critType; switch (critType) { case CreatureTemplate.Type.TentaclePlant: case CreatureTemplate.Type.PoleMimic: abstractCreature.pos.x = -1; abstractCreature.pos.y = -1; abstractCreature.pos.abstractNode = data.intData; this.game.world.GetAbstractRoom(0).entitiesInDens.Add(abstractCreature); break; default: switch (critType) { case CreatureTemplate.Type.Fly: case CreatureTemplate.Type.Leech: case CreatureTemplate.Type.SeaLeech: for (int k = 0; k < 5; k++) { this.game.world.GetAbstractRoom(0).AddEntity(new AbstractCreature(this.game.world, StaticWorld.GetCreatureTemplate(data.critType), null, pos, entityID)); } break; default: if (critType == CreatureTemplate.Type.Slugcat) { if (this.playerSpawnDens == null) { this.playerSpawnDens = new List <int>(); } this.playerSpawnDens.Add(data.intData); } if (critType != CreatureTemplate.Type.Spider) { this.game.world.GetAbstractRoom(0).AddEntity(abstractCreature); } break; } break; case CreatureTemplate.Type.Centipede: { float num = 0f; if (data.intData == 2) { num = Mathf.Lerp(0.265f, 0.55f, Mathf.Pow(Custom.ClampedRandomVariation(0.5f, 0.5f, 0.7f), 1.2f)); } else if (data.intData == 3) { num = Mathf.Lerp(0.7f, 1f, Mathf.Pow(UnityEngine.Random.value, 0.6f)); } abstractCreature.spawnData = "{" + num.ToString() + "}"; this.game.world.GetAbstractRoom(0).AddEntity(abstractCreature); break; } } } else { AbstractPhysicalObject.AbstractObjectType itemType = data.itemType; if (itemType != AbstractPhysicalObject.AbstractObjectType.Spear) { if (itemType != AbstractPhysicalObject.AbstractObjectType.WaterNut) { if (itemType != AbstractPhysicalObject.AbstractObjectType.SporePlant) { if (itemType != AbstractPhysicalObject.AbstractObjectType.BubbleGrass) { if (AbstractConsumable.IsTypeConsumable(data.itemType)) { this.game.world.GetAbstractRoom(0).AddEntity(new AbstractConsumable(this.game.world, data.itemType, null, pos, entityID, -1, -1, null)); } else { this.game.world.GetAbstractRoom(0).AddEntity(new AbstractPhysicalObject(this.game.world, data.itemType, null, pos, entityID)); } } else { this.game.world.GetAbstractRoom(0).AddEntity(new BubbleGrass.AbstractBubbleGrass(this.game.world, null, pos, entityID, 1f, -1, -1, null)); } } else { this.game.world.GetAbstractRoom(0).AddEntity(new SporePlant.AbstractSporePlant(this.game.world, null, pos, entityID, -1, -1, null, false, true)); } } else { this.game.world.GetAbstractRoom(0).AddEntity(new WaterNut.AbstractWaterNut(this.game.world, null, pos, entityID, -1, -1, null, false)); } } else { this.game.world.GetAbstractRoom(0).AddEntity(new AbstractSpear(this.game.world, null, pos, entityID, data.intData == 1)); } } }