Ejemplo n.º 1
0
    public void OnCreate()
    {
        PlayerData[] myPlayers = GetPlayers();

        MapCreateInfo info = new MapCreateInfo
        {
            sizeX              = mapSize,
            sizeY              = mapSize,
            mapName            = mapNameInput.text,
            players            = myPlayers,
            brownianMotionData = brownianMotionData
        };


        if (CheckMapCreateInfo(info) == false)
        {
            return;
        }

        if (GetPlayerCount() < 1)
        {
            GetPopup("ZeroPlayers"); return;
        }

        mapUtility.Create(info);

        mainMenu.gameObject.SetActive(true);
        gameObject.SetActive(false);
    }
Ejemplo n.º 2
0
    private void SetInitialMapInfo(MapCreateInfo info)
    {
        int starterGold = Economy.Instance.StarterGold;

        foreach (PlayerData data in info.players)
        {
            data.gold = starterGold;
        }
    }
    public void Create(MapCreateInfo info)
    {
        info.savePath = savePath + "/" + info.mapName + ".json";

        string save = JsonUtility.ToJson(info);

        File.WriteAllText(info.savePath, save);

        SceneChanger changer = FindObjectOfType <SceneChanger>();

        changer.CreateMap(info.savePath);
    }
Ejemplo n.º 4
0
    public string[] GetNamesFromInfo(MapCreateInfo info)
    {
        string[] names = new string[info.players.Length];

        PlayerData[] playerData = info.players;

        for (int i = 0; i < playerData.Length; i++)
        {
            names[i] = playerData[i].playerName;
        }

        return(names);
    }
Ejemplo n.º 5
0
 public bool CheckMapCreateInfo(MapCreateInfo info)
 {
     if (CheckPlayerNames(GetNamesFromInfo(info)) == false)
     {
         return(false);
     }
     if (CheckMapNames(GetMapNames(), info.mapName) == false)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
Ejemplo n.º 6
0
    public void GenerateMap(string path)
    {
        savePath = path;
        info     = JsonUtility.FromJson <MapCreateInfo>(System.IO.File.ReadAllText(path));

        sizeX = info.sizeX;
        sizeY = info.sizeY;

        nodes = new Node[sizeX, sizeY];

        SetInitialMapInfo(info);
        players = GeneratePlayers(info.players);

        GenerateNodes(null);
        LayoutNewBases(info);
        StartCoroutine(OnNodesAddedDelay());

        //Save Map in TurnManager
    }
Ejemplo n.º 7
0
    public void LayoutNewBases(MapCreateInfo info)
    {
        List <Node> nodeList = GetEquidistantSpread(info.players.Length);

        StartCoroutine(LayoutCircle(nodeList));
    }