Example #1
0
    private void UpdateNodes()
    {
        nodesToGoal.Clear();
        List <List <Vector3> > temp = new List <List <Vector3> >();

        foreach (Goal goal in StageManager.Instance.BattleManager.GoalList)
        {
            int lowestNodes = int.MaxValue; int lowestIndex = 0;
            temp.Clear();

            for (int i = 0; i < StageManager.Instance.PathTilemap.Count; i++)
            {
                UnityEngine.Tilemaps.Tilemap pathMap = StageManager.Instance.PathTilemap[i];
                temp.Add(Pathfinding.FindPath(transform.position, goal.transform.position, pathMap, false));
                if (temp[i].Count > 1 && temp[i].Count < lowestNodes)
                {
                    lowestNodes = temp[i].Count;
                    lowestIndex = i;
                }
            }

            nodesToGoal.Insert(goal.goalIndex, temp[lowestIndex]);
        }
        nodesAreOutdated = false;
    }
Example #2
0
    public void Init()
    {
        tilemap   = GetComponentInChildren <UnityEngine.Tilemaps.Tilemap>();
        startTile = GetComponentInChildren <StartTile>();

        int count = tilemap.gameObject.GetChildCount();
    }
Example #3
0
        public static T Create <T>(Map map, TM.Tilemap tilemap) where T : VirtualTileBase
        {
            T vtile = CreateInstance <T>();

            vtile.map     = map;
            vtile.tilemap = tilemap;
            return(vtile);
        }
Example #4
0
    // Use this for initialization
    void Start()
    {
        sp  = GetComponent <SpriteRenderer>();
        pos = transform.position;
        tm  = FindObjectOfType <UnityEngine.Tilemaps.Tilemap>();

        nextFadeTime = Time.time;
    }
Example #5
0
    Start()
    {
        // Set outside of the map
        m_LastTileCoordinate = new Vector3Int(-1, -1, -1);

        // Assigns the correct tilemaps / layers
        foreach (UnityEngine.Tilemaps.Tilemap tilemap in m_Grid.GetComponentsInChildren <UnityEngine.Tilemaps.Tilemap>())
        {
            if (tilemap.name == "Background")
            {
                m_Background = tilemap;
            }
            else if (tilemap.name == "Minerals")
            {
                m_Minerals = tilemap;
            }
            else if (tilemap.name == "Buildings")
            {
                m_Buildings = tilemap;
            }
            else if (tilemap.name == "UILayer")
            {
                m_UILayer = tilemap;
            }
        }

        // Initializes dictionary
        m_MineralDeposits = new Dictionary <Vector3Int, Transform>();
        // Stores the position and object in dictionary
        foreach (Transform transform in m_Minerals.GetComponentInChildren <Transform>())
        {
            Vector3Int objPos = m_Grid.WorldToCell(transform.position);
            m_MineralDeposits.Add(objPos, transform);
        }

        // Assigns the UI elements
        foreach (UnityEngine.UI.Text text in m_Panel.GetComponentsInChildren <UnityEngine.UI.Text>())
        {
            if (text.name == "ResourceTypeEntry")
            {
                m_TypeEntry = text;
            }
            else if (text.name == "ResourceAmountEntry")
            {
                m_AmountEntry = text;
            }
            else if (text.name == "OwnerEntry")
            {
                m_OwnerEntry = text;
            }
        }
    }
Example #6
0
        public override void Erase(GridLayout grid, GameObject brushTarget, Vector3Int position)
        {
            // Do not allow editing palettes
            if (brushTarget.layer == 31)
            {
                return;
            }

            UnityEngine.Tilemaps.Tilemap tilemap = brushTarget.GetComponent <UnityEngine.Tilemaps.Tilemap>();
            if (tilemap != null)
            {
                SetColor(tilemap, position, Color.white);
            }
        }
Example #7
0
 static int ClearAllEditorPreviewTiles(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         obj.ClearAllEditorPreviewTiles();
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #8
0
 static int CompressBounds(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         obj.CompressBounds();
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #9
0
    /// <summary>
    /// 国战创建一个地图层
    /// </summary>
    /// <param name="parent">父Transform节点</param>
    /// <param name="lJMapLayer">层的数据对象</param>
    /// <param name="baseTileConfig">图块对象</param>
    /// <param name="mapDefaultTilemapMat">地图所用的材质球</param>
    /// <param name="renderMode">0 Chunk 1 Individual </param>
    /// <returns>返回一个tilemap</returns>
    public static UnityEngine.Tilemaps.Tilemap CreateLayerByNation(Transform parent, LJTilemaps.LJMapLayer lJMapLayer,
                                                                   LJTilemaps.LJBaseTileConfig baseTileConfig, Material mapDefaultTilemapMat, int renderMode)
    {
        GameObject layerGameObj = new GameObject(lJMapLayer.layerName);

        UnityEngine.Tilemaps.Tilemap         tilemap         = layerGameObj.AddComponent <UnityEngine.Tilemaps.Tilemap>();
        UnityEngine.Tilemaps.TilemapRenderer tilemapRenderer = layerGameObj.AddComponent <UnityEngine.Tilemaps.TilemapRenderer>();
        Transform layerTran = layerGameObj.transform;

        layerTran.SetParent(parent);
        layerTran.position   = lJMapLayer.worldPosition;
        tilemapRenderer.mode = (UnityEngine.Tilemaps.TilemapRenderer.Mode)renderMode;
        //tilemapRenderer.mode = UnityEngine.Tilemaps.TilemapRenderer.Mode.Chunk;//合并DC模式 0
        //tilemapRenderer.mode = UnityEngine.Tilemaps.TilemapRenderer.Mode.Individual;// 测试模式 1
        tilemapRenderer.sortingOrder   = lJMapLayer.orderInLayer;
        tilemapRenderer.sortingLayerID = lJMapLayer.sortingLayer;
        tilemap.origin            = lJMapLayer.origin;
        tilemap.size              = lJMapLayer.size;
        tilemap.orientation       = lJMapLayer.orientation;
        tilemap.orientationMatrix = lJMapLayer.orientationMatrix;

        if (mapDefaultTilemapMat != null)
        {
            tilemapRenderer.sharedMaterial = mapDefaultTilemapMat;
        }
        if (baseTileConfig == null)
        {
            return(tilemap);
        }
        List <LJTilemaps.LJTileData> tileDatas = lJMapLayer.tileDatas;

        for (int i = 0, imax = tileDatas.Count; i < imax; i++)
        {
            LJTilemaps.LJTileData v = tileDatas[i];
            if (v.tileId < 0)
            {
            }
            else
            {
                UnityEngine.Tilemaps.TileBase tileBase = baseTileConfig.GetTileBaseById(v.tileId);
                if (tileBase != null)
                {
                    tilemap.SetTile(v.position, tileBase);
                }
            }
        }
        tilemap.CompressBounds();
        return(tilemap);
    }
Example #10
0
        /// <summary>
        /// 次のレベルに移動する
        /// </summary>
        public void ChangeNextLevel(UnityEngine.Tilemaps.Tilemap tilemap, Map.MapData mapData, int level)
        {
            // 元のマップからPlayerを削除する
            var playerPos = PlayerModel.CellPosition.Value;

            _eventManager.Trigger(Map.EventTileFlagUpdate.CreateAtRemove(PlayerModel.MapLevel, playerPos.x, playerPos.y, Const.TileFlag.Player));

            // 座標をもとに戻す
            ResetPlayerUpPosition();

            PlayerModel.SetMapLevel(level, mapData);

            // 移動後のTilemapをPlayerに登録し直す
            Player.SetTilemap(tilemap, level);
        }
Example #11
0
 static int GetUsedTilesCount(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         int o = obj.GetUsedTilesCount();
         LuaDLL.lua_pushinteger(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #12
0
 static int SwapTile(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         UnityEngine.Tilemaps.Tilemap  obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         UnityEngine.Tilemaps.TileBase arg0 = (UnityEngine.Tilemaps.TileBase)ToLua.CheckObject <UnityEngine.Tilemaps.TileBase>(L, 2);
         UnityEngine.Tilemaps.TileBase arg1 = (UnityEngine.Tilemaps.TileBase)ToLua.CheckObject <UnityEngine.Tilemaps.TileBase>(L, 3);
         obj.SwapTile(arg0, arg1);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #13
0
 static int SetTiles(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         UnityEngine.Tilemaps.Tilemap    obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         UnityEngine.Vector3Int[]        arg0 = ToLua.CheckStructArray <UnityEngine.Vector3Int>(L, 2);
         UnityEngine.Tilemaps.TileBase[] arg1 = ToLua.CheckObjectArray <UnityEngine.Tilemaps.TileBase>(L, 3);
         obj.SetTiles(arg0, arg1);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #14
0
    static int RefreshTile(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            obj.RefreshTile(arg0);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #15
0
 static int ContainsTile(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         UnityEngine.Tilemaps.Tilemap  obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
         UnityEngine.Tilemaps.TileBase arg0 = (UnityEngine.Tilemaps.TileBase)ToLua.CheckObject <UnityEngine.Tilemaps.TileBase>(L, 2);
         bool o = obj.ContainsTile(arg0);
         LuaDLL.lua_pushboolean(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Example #16
0
    static int GetTilesBlock(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.BoundsInt        arg0 = StackTraits <UnityEngine.BoundsInt> .Check(L, 2);

            UnityEngine.Tilemaps.TileBase[] o = obj.GetTilesBlock(arg0);
            ToLua.Push(L, o);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #17
0
    static int GetInstantiatedObject(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.GameObject o = obj.GetInstantiatedObject(arg0);
            ToLua.PushSealed(L, o);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #18
0
    static int HasEditorPreviewTile(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            bool o = obj.HasEditorPreviewTile(arg0);
            LuaDLL.lua_pushboolean(L, o);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #19
0
    static int get_color(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)o;
            UnityEngine.Color            ret = obj.color;
            ToLua.Push(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o, "attempt to index color on a nil value"));
        }
    }
Example #20
0
    static int get_animationFrameRate(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)o;
            float ret = obj.animationFrameRate;
            LuaDLL.lua_pushnumber(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o, "attempt to index animationFrameRate on a nil value"));
        }
    }
Example #21
0
    static int GetCellCenterLocal(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.Vector3 o = obj.GetCellCenterLocal(arg0);
            ToLua.Push(L, o);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #22
0
    static int AddTileFlags(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 3);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.Tilemaps.TileFlags arg1 = (UnityEngine.Tilemaps.TileFlags)ToLua.CheckObject(L, 3, typeof(UnityEngine.Tilemaps.TileFlags));
            obj.AddTileFlags(arg0, arg1);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #23
0
    static int SetEditorPreviewColor(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 3);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.Color arg1 = ToLua.ToColor(L, 3);
            obj.SetEditorPreviewColor(arg0, arg1);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #24
0
    static int GetEditorPreviewTransformMatrix(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 2);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.Matrix4x4 o = obj.GetEditorPreviewTransformMatrix(arg0);
            ToLua.PushValue(L, o);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #25
0
    static int SetTilesBlock(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 3);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.BoundsInt        arg0 = StackTraits <UnityEngine.BoundsInt> .Check(L, 2);

            UnityEngine.Tilemaps.TileBase[] arg1 = ToLua.CheckObjectArray <UnityEngine.Tilemaps.TileBase>(L, 3);
            obj.SetTilesBlock(arg0, arg1);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #26
0
    static int get_layoutGrid(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)o;
            UnityEngine.Grid             ret = obj.layoutGrid;
            ToLua.PushSealed(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o, "attempt to index layoutGrid on a nil value"));
        }
    }
Example #27
0
    static int EditorPreviewFloodFill(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 3);
            UnityEngine.Tilemaps.Tilemap obj  = (UnityEngine.Tilemaps.Tilemap)ToLua.CheckObject(L, 1, typeof(UnityEngine.Tilemaps.Tilemap));
            UnityEngine.Vector3Int       arg0 = StackTraits <UnityEngine.Vector3Int> .Check(L, 2);

            UnityEngine.Tilemaps.TileBase arg1 = (UnityEngine.Tilemaps.TileBase)ToLua.CheckObject <UnityEngine.Tilemaps.TileBase>(L, 3);
            obj.EditorPreviewFloodFill(arg0, arg1);
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #28
0
    static int get_cellBounds(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.Tilemaps.Tilemap obj = (UnityEngine.Tilemaps.Tilemap)o;
            UnityEngine.BoundsInt        ret = obj.cellBounds;
            ToLua.PushValue(L, ret);
            return(1);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o, "attempt to index cellBounds on a nil value"));
        }
    }
Example #29
0
    public bool IsLocationTargetable(Vector3 position)
    {
        UnityEngine.Tilemaps.Tilemap highlightTilemap = StageManager.Instance.HighlightMap.tilemap;
        if (highlightTilemap.GetTile(Helpers.ReturnTilePosition_Int(highlightTilemap, position)) == null)
        {
            return(false);
        }

        var correctedPosition = Helpers.ReturnTilePosition(highlightTilemap, position, -3);

        if (StageManager.Instance.BattleManager.activeHeroes.FindAll(x => Vector2.Distance(x.transform.position, correctedPosition) < 0.2f).Count > 0)
        {
            return(false);
        }

        return(true);
    }
Example #30
0
    static int set_orientation(IntPtr L)
    {
        object o = null;

        try
        {
            o = ToLua.ToObject(L, 1);
            UnityEngine.Tilemaps.Tilemap             obj  = (UnityEngine.Tilemaps.Tilemap)o;
            UnityEngine.Tilemaps.Tilemap.Orientation arg0 = (UnityEngine.Tilemaps.Tilemap.Orientation)ToLua.CheckObject(L, 2, typeof(UnityEngine.Tilemaps.Tilemap.Orientation));
            obj.orientation = arg0;
            return(0);
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e, o, "attempt to index orientation on a nil value"));
        }
    }