Example #1
0
    private ProunGenome GenGenome(int index, GenomeData data, Vector3 position)
    {
        ProunGenome newGenome = GenGenome(index, position);

        newGenome.SetData(data);
        return(newGenome);
    }
Example #2
0
    public GenomeData ToGenomeData()
    {
        GenomeData data = new GenomeData();

        data.genomeID = genomeID;
        data.body     = body;
        data.mind     = mind.GetContents();
        return(data);
    }
Example #3
0
 public static string ArrayToJson(ProunGenome[] genomes, bool prettyPrint = true)
 {
     GenomeData[] data = new GenomeData[genomes.Length];
     for (int i = 0; i < genomes.Length; i++)
     {
         if (genomes [i] != null)
         {
             data [i] = genomes [i].ToGenomeData();
         }
     }
     return(ArrayToJson(data, prettyPrint));
 }
Example #4
0
    public void SetData(GenomeData data)
    {
        body = data.body;

        mind = new AdjacencyMatrix <MuscleGene> (body.Length);
        MuscleGene[] muscles = data.mind;
        foreach (MuscleGene muscle in muscles)
        {
            mind.SetNeighbor(muscle.originNode, muscle.connectedNode, muscle);
        }

        empty = false;
    }
Example #5
0
    public static GenomeData[] LoadProunGenomeData(string dataFileName)
    {
        string filePath = Path.Combine(Application.streamingAssetsPath, dataFileName);

        if (File.Exists(filePath))
        {
            string dataAsJson = File.ReadAllText(filePath);
            return(GenomeData.GenomeDataFromArray(dataAsJson));
        }

        Debug.LogError("Could not find data file!");

        return(null);
    }
Example #6
0
    public static void SaveProunGenomes(ProunGenome[] genomes, string dataFileName, bool prettyPrint = true)
    {
        string filePath   = Path.Combine(Application.streamingAssetsPath, dataFileName);
        string dataAsJson = GenomeData.ArrayToJson(genomes, prettyPrint);

        if (File.Exists(filePath))
        {
            File.AppendAllText(filePath, dataAsJson);
        }
        else
        {
            File.WriteAllText(filePath, dataAsJson);
        }
    }
Example #7
0
    private ProunGenome InstantiateGenome(int index, GenomeData data)
    {
        GameObject obj = Instantiate(
            prounBlueprint,
            GenProunPosition(),
            Quaternion.identity
            );

        obj.name = "GARDEN_PROUN_" + data.genomeID;
        ProunGenome genome = obj.GetComponent <ProunGenome> ();

        genome.SetData(data);
        return(genome);
    }
Example #8
0
 private ProunGenome GenGenome(int index, GenomeData data)
 {
     return(GenGenome(index, data, GenProunPosition()));
 }