Example #1
0
    private void SaveButton()
    {
        if (_canSave)
        {
            if (GUILayout.Button("Save Model"))
            {
                HexWorld.HexTileModel model = _hexTile.Model;
                model.MaterialName = "default";
                model.TextureName  = _textureContent[_textureIndex].text;
                string file = _filename + ".json";
                string json = JsonUtility.ToJson(model);

                File.WriteAllText(_jsonPath + file, json);
                AssetDatabase.Refresh();
                _output = "File " + file + " saved";
                UpdateJsonOptions();
                _canSave = false;
            }
        }

        if (!string.IsNullOrEmpty(_output))
        {
            GUILayout.Label(_output, EditorStyles.miniLabel);
        }
    }
Example #2
0
 //---- Public
 //-----------
 public void AddHexTile(HexTileModel hexData)
 {
     if (HexTileModels == null)
     {
         HexTileModels = new List <HexTileModel>();
     }
     HexTileModels.Add(hexData);
 }
Example #3
0
        //---- Public
        //-----------
        public void CreateBoard()
        {
            HexBoardModel      model       = HexBoard.Model;
            HexBoardView       view        = HexBoard.View;
            HexTilePreferences preferences = HexBoard.Preferences;

            view.HexTiles = new List <HexTile>(model.HexTileCount);
            for (int i = 0; i < model.HexTileCount; i++)
            {
                HexTile      hexTile      = Object.Instantiate(preferences.Prefab, view.Root);
                HexTileModel hexTileModel = model.HexTileModels[i];
                hexTile.name  = "Tile_" + i;
                hexTile.Model = hexTileModel;
                hexTile.View.SetMaterial(preferences.Materials[hexTileModel.MaterialName]);
                hexTile.View.SetTexture(preferences.Textures[hexTileModel.TextureName]);
                hexTile.transform.localPosition = hexTileModel.Position.Convert();
                hexTile.transform.localRotation = Quaternion.Euler(hexTileModel.Rotation.Convert());
                hexTile.transform.localScale    = hexTileModel.Scale.Convert();
                hexTile.View.Index = i;
                view.HexTiles.Add(hexTile);
            }
        }