All pastes #809735 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-12-09 05:17 UTC
rendered paste body
package model;

import java.util.Random;

public abstract class AbstractFink implements Fink {
	
	
	protected String id;
	protected int maxAge;
	private int age;
	private int energy;
	private Random random;
	protected boolean lastPruned;
	private int offspring;

	public AbstractFink( String id, int maxAge, Random random )
	{
		this.id = id;
		this.maxAge = maxAge;
		this.age = 0;
		this.energy = 20;
		this.random = random;
	}
	
	@Override
	public void addEnergy(int n) {
		energy = energy + n;
	}

	@Override
	public boolean alive() {
		return ( age <= maxAge ) && ( energy > 0 );
	}

	@Override
	public void birthday() {
		age = age + 1;
	}

	@Override
	public int energy() {
		return energy;
	}

	@Override
	public void giveBirth() {
		if( energy > 25 )
		{
			offspring += 1;
			energy -= 10;
		}
	}

	@Override
	public boolean lastPruned() {
		return lastPruned;
	}

	@Override
	public String name() {
		return id;
	}

	@Override
	public int offspringProduced() {
		return offspring;
	}

	@Override
	public void removeEnergy(int n) {
		energy = energy - n;
	}

	
}