//---------------------------------------------------------- //Construction public void Initialize(MindBodyDNDNA <ResourceFightDNCreature> p_dna, ResourceFightGameController p_controller) { m_is_initialized = true; ObjectLogger.log(gameObject, "CREATURE"); m_dna = p_dna.Clone(); MindBodyDN mindbody = p_dna.express(this); m_traits = mindbody.m_body; InitializeBrain(mindbody.m_mind); m_health = new LimitedNumber(m_traits["HEALTH"] * 5); m_energy = new LimitedNumber(m_traits["ENERGY"] * 10); m_speed = m_traits["SPEED"]; m_damage = m_traits["DAMAGE"]; m_attack_speed = m_traits["ATTACKSPEED"]; m_controller = p_controller; }
public override MindBodyDNDNA <T> crossover(MindBodyDNDNA <T> p_crossover_object) { return(new MindBodyDNDNA <T>(m_species_id, m_body.crossover(p_crossover_object.m_body), m_mind.crossover(p_crossover_object.m_mind))); }
//Logs DNA and fitness in evolution controller public void logDNA(MindBodyDNDNA <ResourceFightDNCreature> dna, float fitness) { m_evolution.addDNA(dna, fitness); }