Ejemplo n.º 1
0
 /// <summary>
 /// 木のマップチップを通常地形に
 /// </summary>
 public void Felling()
 {
     treeLength         = 0;
     nowMapChipType     = MapChipType.Nomal;
     nowPlayerEnterType = PlayerEnterType.All;
     isCanWoodEnter     = true;
     nowSprite          = MapChipSprite.Nomal;
     ChangeSprite();
 }
Ejemplo n.º 2
0
 private void SetRiver(int num)
 {
     nowMapChipType     = MapChipType.River;
     nowPlayerEnterType = PlayerEnterType.AutoOnlyAll;
     isCanWoodEnter     = true;
     nowSprite          = MapChipSprite.River;
     riverDirection     = (Direction.DirectionState)num;
     ChangeSprite();
     RiverLookAtDir(riverDirection);
 }
Ejemplo n.º 3
0
 /// <summary>
 /// 指定本数の木のマップチップを作成
 /// </summary>
 /// <param name="length"></param>
 private void SetTree(int length)
 {
     nowMapChipType     = MapChipType.Rock;
     nowPlayerEnterType = PlayerEnterType.None;
     treeLength         = length;
     isCanWoodEnter     = false;
     nowSprite          = MapChipSprite.Tree;
     riverDirection     = Direction.DirectionState.None;
     ChangeTreeSprite(length);
 }
Ejemplo n.º 4
0
        public GameObject(IGameObjectManager gameObjectManager, Map map, Vector2Int position, MapChipType mapChipType)
        {
            this.map               = map;
            this.mapChipType       = mapChipType;
            this.gameObjectManager = gameObjectManager;

            currentPosition = position;
            nextPosition    = currentPosition;

            animePosition = (Vector2)currentPosition;
        }
Ejemplo n.º 5
0
        public List <GameObject> GetGameObjects(MapChipType mapChipType)
        {
            List <GameObject> temp = new List <GameObject>();

            foreach (var obj in gameObjects)
            {
                if (obj.GetMapChip() == mapChipType)
                {
                    temp.Add(obj);
                }
            }
            return(temp);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// マップチップからゲームオブジェクトを生成
        /// </summary>
        private void GameObjectGeneration(MapChipType mapChipType, Vector2Int position)
        {
            switch (mapChipType)
            {
            case MapChipType.Box:
                manager.AddGameObject(new Box(manager, map, position));
                break;

            case MapChipType.Player:
                manager.AddGameObject(new Player(manager, map, position));
                break;
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 指定の場所のマップチップを変更
        /// </summary>
        /// <param name="position"></param>
        /// <param name="chipType"></param>
        public void SetMapChip(Vector2Int position, MapChipType chipType)
        {
            if (CheckOutOfRange(position))
            {
                return;
            }

            if (chipType == MapChipType.None)
            {
                // 全ビットフラグを折る
                map[position.y, position.x] &= ~map[position.y, position.x];
            }
            else
            {
                // マップチップに対応した場所にフラグを立てる
                map[position.y, position.x] |= (int)chipType;
            }
        }
Ejemplo n.º 8
0
 public static void DrawMapChip(float x, float y, MapChipType mapChip)
 {
     DX.DrawGraphF(x * Map.MAP_CHIP_WIDTH_SIZE, y * Map.MAP_CHIP_HIGHT_SIZE, GetMapChipGraphHandle(mapChip), DX.TRUE);
 }
Ejemplo n.º 9
0
 public static void DrawMapChip(Vector2 position, MapChipType mapChip)
 {
     DX.DrawGraphF(position.x * Map.MAP_CHIP_WIDTH_SIZE, position.y * Map.MAP_CHIP_HIGHT_SIZE, GetMapChipGraphHandle(mapChip), DX.TRUE);
 }
Ejemplo n.º 10
0
 public static int GetMapChipGraphHandle(MapChipType mapChipType)
 {
     return(mapChipImageHandle[mapChipType]);
 }
Ejemplo n.º 11
0
 private static void ResourceLoad(MapChipType mapChipType, string fileName)
 {
     mapChipImageHandle.Add(mapChipType, DX.LoadGraph("Resources/Image/" + fileName));
 }
Ejemplo n.º 12
0
    /// <summary>
    /// 番号から状態を変化させる
    /// </summary>
    /// <param name="num"></param>
    public void SetMapChipType(int num)
    {
        MapChipSelecterSetting();
        switch (num)
        {
        case 0:    //通常地形
            nowMapChipType     = MapChipType.Nomal;
            nowPlayerEnterType = PlayerEnterType.All;
            isCanWoodEnter     = true;
            nowSprite          = MapChipSprite.Nomal;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;

        case 1:    //壁用
            nowMapChipType     = MapChipType.Rock;
            nowPlayerEnterType = PlayerEnterType.None;
            isCanWoodEnter     = false;
            nowSprite          = MapChipSprite.Rock;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;

        case 3:    //スタート位置
            nowMapChipType     = MapChipType.Nomal;
            nowPlayerEnterType = PlayerEnterType.All;
            isCanWoodEnter     = true;
            nowSprite          = MapChipSprite.Nomal;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;

        case 4:    //穴
            nowMapChipType     = MapChipType.Hole;
            nowPlayerEnterType = PlayerEnterType.AutoOnlyAll;
            isCanWoodEnter     = true;
            nowSprite          = MapChipSprite.Hole;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;

        case 5:    //ゴール
            nowMapChipType     = MapChipType.Nomal;
            nowPlayerEnterType = PlayerEnterType.All;
            isCanWoodEnter     = true;
            nowSprite          = MapChipSprite.Goal;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;

        case 11:    //木1つ分
            SetTree(1);
            break;

        case 12:    //木2つ分
            SetTree(2);
            break;

        case 13:    //木3つ分
            SetTree(3);
            break;

        case 14:    //木4つ分
            SetTree(4);
            break;

        case 15:    //木5つ分
            SetTree(5);
            break;

        case 20:    //上向き川
            SetRiver(0);
            break;

        case 21:    //下向き川
            SetRiver(1);
            break;

        case 22:    //右向き川
            SetRiver(2);
            break;

        case 23:    //左向き川
            SetRiver(3);
            break;

        case 24:    //川の岩
            nowMapChipType     = MapChipType.Rock;
            nowPlayerEnterType = PlayerEnterType.None;
            isCanWoodEnter     = false;
            nowSprite          = MapChipSprite.RiverRock;
            riverDirection     = Direction.DirectionState.None;
            ChangeSprite();
            break;
        }
    }