public override void CheckPointLoaded() { base.CheckPointLoaded(); MapObjectState state = MapObjectState.Blocked; if (!string.IsNullOrEmpty(data) && instnace != null) { StateMapObjectData smod = JsonUtility.FromJson <StateMapObjectData>(data); state = smod.objectState; } else { RegisterChanges(new StateMapObjectData() { shouldSpawn = true, objectState = MapObjectState.Blocked }); } if (instnace != null) { IStateGameObject isgo = instnace.GetComponentInChildren <IStateGameObject>(); if (isgo != null) { isgo.SetState(state); } } }
public void SetState(MapObjectState state) { wall.SetActive(false); switch (state) { case MapObjectState.Blocked: break; case MapObjectState.Activated: Debug.Log("Battle was already complete!"); // Elevator should appear here! Elevator[] elev = FindObjectsOfType <Elevator>(); foreach (Elevator ev in elev) { if (ev.gameObject.tag == "BossOpen") { ev.Activate(); } } break; } this.state = state; }
public virtual void Interact(Player player) { switch (currentStatus) { case MapObjectState.Activated: //currentStatus = MapObjectState.Blocked; break; case MapObjectState.Blocked: currentStatus = MapObjectState.Activated; break; } GetComponentInParent <MapObject>().RegisterChanges(new StateMapObjectData { objectState = currentStatus }); SetState(currentStatus); }
public void SetState(MapObjectState state) { currentStatus = state; GetComponent <SpriteRenderer>().DOFade(1, 0f); GetComponent <SpriteRenderer>().sortingOrder = originalOrdering; switch (state) { case MapObjectState.Blocked: GetComponent <SpriteRenderer>().enabled = true; doorCollider.enabled = true; break; case MapObjectState.Activated: doorCollider.enabled = false; GetComponent <SpriteRenderer>().DOFade(0, 2f); GetComponent <SpriteRenderer>().sortingOrder -= 2; break; } }
public MapObject() { Props = new MapObjectState(); }
//public static Biome Ocean = new Biome("Ocean", "363661"); //public static Biome ShallowWater = new Biome("ShallowWater", "364671"); //public static Biome Ice = new Biome("Ice", "364671"); //public static Biome Lake = new Biome("Lake", "364671"); //public static Biome Beach = new Biome("Beach", "ac9f8b"); //public static Biome Snow = new Biome("Snow", "FFFFFF"); //public static Biome Tundra = new Biome("Tundra", "c4ccbb"); //"c4ccbb" //public static Biome Bare = new Biome("Beach", "bbbbbb"); //public static Biome Scorched = new Biome("Beach", "999999"); //public static Biome Marsh = new Biome("Marsh", "c4ccbb"); //public static Biome Cliff = new Biome("Cliff", "8B4513"); //public static Biome Taiga = new Biome("Taiga", "ccd4bb"); //"ccd4bb" //public static Biome Shrubland = new Biome("Shrubland", "99a68b"); //public static Biome TemperateDesert = new Biome("TemperateDesert", "e4e8ca"); //public static Biome TemperateRainForest = new Biome("TemperateRainForest", "a4c4a8"); //"a4c4a8" //public static Biome TemperateDeciduousForest = new Biome("TemperateDeciduousForest", "b4c9a9"); //"b4c9a9" //public static Biome Grassland = new Biome("Grassland", "99b470"); //public static Biome SubtropicalDesert = new Biome("SubtropicalDesert", "e9ddc7"); //public static Biome TropicalRainForest = new Biome("TropicalRainForest", "9cbba9"); //"9cbba9" //public static Biome TropicalSeasonalForest = new Biome("TropicalSeasonalForest", "ff0000"); //"558b70" public static Biome BiomeSelector(MapObjectState props, int mapHeight, float elevation, float moisture) { if (props.Has(ObjectProp.Water) && elevation < -0.1d) { return(BiomeTypes.Ocean); } else if (props.Has(ObjectProp.Water) && elevation > -0.1d) { return(BiomeTypes.ShallowWater); } else if (props.Has(ObjectProp.Water)) { //if (elevation < 0.1 * mapHeight / 6) //{ // return BiomeTypes.Marsh; //} if (elevation > 0.8 * mapHeight / 12) { return(BiomeTypes.Ice); } else { return(BiomeTypes.Lake); } } else if (props.Has(ObjectProp.Shore)) { return(BiomeTypes.Beach); } else if (elevation > 0.45 * mapHeight) { if (moisture > 0.8) { return(BiomeTypes.Snow); } else if (moisture > 0.33) { return(BiomeTypes.Tundra); } else if (moisture > 0.16) { return(BiomeTypes.Bare); } else { return(BiomeTypes.Scorched); } } else if (elevation > 0.7 * mapHeight) { if (moisture > 0.66) { return(BiomeTypes.Taiga); } else if (moisture > 0.33) { return(BiomeTypes.Shrubland); } else { return(BiomeTypes.TemperateDesert); } } else if (elevation > 0.5 * mapHeight) { if (moisture > 0.83) { return(BiomeTypes.TemperateRainForest); } else if (moisture > 0.50) { return(BiomeTypes.TemperateDeciduousForest); } else if (moisture > 0.16) { return(BiomeTypes.Grassland); } else { return(BiomeTypes.TemperateDesert); } } else { if (moisture > 0.66) { return(BiomeTypes.TropicalRainForest); } else if (moisture > 0.33) { return(BiomeTypes.TropicalSeasonalForest); } else if (moisture > 0.16) { return(BiomeTypes.Grassland); } else { return(BiomeTypes.SubtropicalDesert); } } }
public static void SerializeMapObjectState(BinaryWriter Writer, MapObjectState ObjectState) { }