Beispiel #1
0
 public override Sprite GetSprite(Position position)
 {
     if (Random.value < 0.5f)
     {
         return SpriteManager.Instance.Get("outside_6");
     }
     return SpriteManager.Instance.Get("outside_63");
 }
Beispiel #2
0
        public override GameObject DecorateGameObject(Position position, GameObject gameObject)
        {
            gameObject.AddComponent<ItemBehaviour>().Item = new Items.Stone();

            base.DecorateGameObject(position, gameObject);

            return GameObject;
        }
Beispiel #3
0
        public override GameObject DecorateGameObject(Position position, GameObject gameObject)
        {
            base.DecorateGameObject(position, gameObject);

            GameObject.AddComponent<CircleCollider2D>();

            return GameObject;
        }
Beispiel #4
0
        public override GameObject DecorateGameObject(Position position, GameObject gameObject)
        {
            base.DecorateGameObject(position, gameObject);

            GameObject.GetComponent<SpriteRenderer>().color = Color;

            return GameObject;
        }
        public bool Build(Position bottomLeft, Position topRight)
        {
            foreach (Position position in LoopOverArea(bottomLeft, topRight))
            {
                Build(position);
            }

            return true;
        }
 public override void OnLeftDragRelease(Position pos1, Position pos2)
 {
     //if(_room.BuildHelper.Validate(pos1, pos2))
     //{
     //    foreach (Position position in LoopOverArea(pos1, pos2))
     //    {
     //        Map.Instance.AddWorldObject(position, (WorldObject)Activator.CreateInstance(_room.GetType()));
     //    }
     //}
 }
Beispiel #7
0
        public override GameObject DecorateGameObject(Position position, GameObject gameObject)
        {
            gameObject.AddComponent<StorageContainerBehaviour>();

            base.DecorateGameObject(position, gameObject);

            GameObject.AddComponent<BoxCollider2D>();

            return GameObject;
        }
        public override void OnLeftRelease(Position pos1)
        {
            GameObject go = GameObjectUnderMouse();

            //if (go != null)
            //{
            //    WorldObjectFsm worldObjectFsm = go.GetComponent<WorldObjectFsm>();

            //    if (worldObjectFsm != null)
            //    {
            //        worldObjectFsm.Interact();
            //    }
            //}
        }
        public override void OnLeftDragRelease(Position pos1, Position pos2)
        {
            List<WorldObject> worldObjects = Map.Instance.GetObjectsInRange(pos1, pos2, Map.Layer.Vegitation);

            foreach (WorldObject worldObject in worldObjects)
            {
                FsmBehaviour fsmBehaviour = worldObject.GameObject.GetComponent<FsmBehaviour>();

                if (fsmBehaviour != null && fsmBehaviour.CurrentState is WorldObjectFsm)
                {
                    ((WorldObjectFsm)fsmBehaviour.CurrentState).Action();
                }
            }
        }
        public bool Validate(Position bottomLeft, Position topRight)
        {
            bool valid = false;

            foreach (Position position in LoopOverArea(bottomLeft, topRight))
            {
                valid = Validate(position);

                if(!valid)
                    break;
            }

            return valid;
        }
        public override GameObject DecorateGameObject(Position position, GameObject gameObject)
        {
            gameObject.AddComponent<StorageDepositBehaviour>();

            base.DecorateGameObject(position, gameObject);

            GameObject child = Object.Instantiate(new GameObject(), GameObject.transform.position, Quaternion.identity) as GameObject;

            if (child != null)
            {
                child.transform.parent = GameObject.transform;
                child.AddComponent<SpriteRenderer>().sortingLayerName = "Drops";
            }

            return GameObject;
        }
        public override void OnLeftDragRelease(Position pos1, Position pos2)
        {
            List<Map.Layer> layers = new List<Map.Layer>();

            layers.Add(Map.Layer.Vegitation);
            layers.Add(Map.Layer.Objects);
            layers.Add(Map.Layer.Structures);

            if (Map.Instance.ClearOnLayers(pos1, pos2, layers))
            {
                foreach (Position position in LoopOverArea(pos1, pos2))
                {
                    Map.Instance.SetFoundation(position, true);

                    if (position.X == pos1.X || position.X == pos2.X || position.Y == pos1.Y || position.Y == pos2.Y)
                        Map.Instance.AddWorldObject(position, new Wall());
                    else
                        Map.Instance.AddWorldObject(position, new WoodenFloor());
                }
            }
        }
 public override Sprite GetSprite(Position position)
 {
     return SpriteManager.Instance.Get("outside_119");
 }
Beispiel #14
0
 public override GameObject DecorateGameObject(Position position, GameObject gameObject)
 {
     base.DecorateGameObject(position, gameObject);
     
     return GameObject;
 }
 public bool Build(Position position)
 {
     return Map.Instance.AddWorldObject(position, (WorldObject)Activator.CreateInstance(WorldObject.GetType())) != null;
 }
 public override void OnLeftRelease(Position pos1)
 {
     OnLeftDragRelease(pos1, pos1);
 }
 public bool Validate(Position position)
 {
     return Map.Instance.ClearOnLayers(position, position, new List<Map.Layer>() { WorldObject.Layer, Map.Layer.Objects, Map.Layer.Rooms, Map.Layer.Structures, Map.Layer.Vegitation });
 }
        public override void OnRightDragRelease(Position pos1, Position pos2)
        {

        }
        public override void OnRightRelease(Position pos1)
        {

        }
Beispiel #20
0
 public override Sprite GetSprite(Position position)
 {
     return Resources.Load<Sprite>("Graphics/selector");
 }
        public override void OnLeftRelease(Position pos1)
        {

        }
 protected bool Equals(Position other)
 {
     return X == other.X && Y == other.Y;
 }