Esempio n. 1
0
    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);
            }
        }
    }
Esempio n. 2
0
    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;
    }
Esempio n. 3
0
    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);
    }
Esempio n. 4
0
    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;
        }
    }
Esempio n. 5
0
 public MapObject()
 {
     Props = new MapObjectState();
 }
Esempio n. 6
0
        //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)
 {
 }
Esempio n. 8
0
 public static void SerializeMapObjectState(BinaryWriter Writer, MapObjectState ObjectState)
 {
 }