public void SetBrain(Brain_V2 brain, List <TreeData> treeDataList, Creature_V2 creature) { this.brain = brain; this.treeDataList = treeDataList; this.creature = creature; neurons = brain.GetNeurons(); connections = brain.GetWeights(); }
private void SaveWorld() { string filename = "world_snapshot.lses"; StreamWriter writer = new StreamWriter(filename); writer.Write(brainNetwork.Length + " "); for (int i = 0; i < brainNetwork.Length; i++) { writer.Write(brainNetwork[i] + " "); } writer.Write(creatureList.Count + " "); for (int i = 0; i < creatureList.Count; i++) { Creature_V2 creature = creatureList[i]; Brain_V2 brain = creature.GetBrain(); //float[][] neurons = brain.GetNeurons(); float[][][] connections = brain.GetWeights(); writer.Write(creature.GetName() + " " + creature.GetParentNames() + " " + creature.GetEnergy() + " " + creature.GetLife() + " " + creature.position.x + " " + creature.position.y + " " + creature.rotation + " " + creature.veloForward + " " + creature.veloAngular + " "); for (int j = 0; j < connections.Length; j++) { for (int k = 0; k < connections[j].Length; k++) { for (int l = 0; l < connections[j][k].Length; l++) { writer.Write(connections[j][k][l] + " "); } } } } Tile_V2[,] tiles = map_v2.GetTilesArray(); for (int j = 0; j < 100; j++) { for (int k = 0; k < 100; k++) { writer.Write(tiles[j, k].currentEnergy + " "); } } writer.Close(); }