public bool SaveData(string path, FlexGrid2D grid)
        {
            ShipData sd = new ShipData();

            sd.gridConfig = new GridConfig(grid.cellX, grid.cellY, grid.top, grid.bottom, grid.left, grid.right);
            foreach (var kv in grid.GetPlace)
            {
                ShipItemConfig sic = new ShipItemConfig(kv.Value.name, kv.Key.x, kv.Key.y);
                sd.shipItemConfigs.Add(sic);
            }
            return(SaveData(path, sd));
        }
        void Start()
        {
            playGrid = GetComponent <FlexGrid2D> ();
            if (!string.IsNullOrEmpty(corePath))
            {
                GameObject core = ResourcesMgr.GetInstance().LoadAsset(corePath, false);
                SetGridItem(core, Vector2Int.zero);
            }
            screenSpaceZ = Camera.main.WorldToScreenPoint(transform.position).z;
            //选择效果
            selectEffect = ResourcesMgr.GetInstance().LoadAsset(ShipConst.selectPath, false);
            MyTools.SetObjActive(selectEffect, false);
            srShowGrid = traShowGrid.GetComponent <SpriteRenderer> ();
            SetSize(1, 2, 4, 3);
            bulletPool = BulletPool.GetObjectPool(preBullet, bulletCount);

            path = Application.streamingAssetsPath + @"/Config/PlayerShip.json";
        }