Skip to content
This repository has been archived by the owner on Nov 30, 2021. It is now read-only.

Residence

Matthew Pohlmann edited this page Jan 1, 2014 · 1 revision

####Description A general residence in SimCity201. Inhabited by a Resident and potentially administered by a Landlord.

####Class Signature

public class Residence extends Structure {}

####Data

Resident resident;
List<Food> fridge;
boolean hasFood;
Role owner; // either a landlord or a resident
class Food {
	String type;
	int amount;

	public Food(String t, int amt) {
		type = t;
		amount = amt;
	}
	public void addMore(int amt) {
		amount += amt;
	}
	public void minusOne() {
		amount--;
	}
	public boolean noneLeft() {
		if (amount==0) {
			return true;
		}
	}
        public String getType(){
			return type;
	}
	public int getAmount(){
			return amount;
	}
}

####Constructors

public Residence(int x, int y, int width, int height, int id) {
    super(x, y, width, height, id);
    owner = NULL;
    resident = NULL;
}

####Methods

public void setOwner(Role p) {
	owner = p;
}
public void setResident(Resident r) {
	resident = r;
}
public void removeResident(Resident r) {
	if(resident == r) {
                resident = NULL;
        }
}
public boolean hasFood() {
	return hasFood;
}
public void addFood(String t, int amt) {
	if Ǝ Food f in  fridgef.getType() == t then,
		f.addMore(amt);
	Food f = new Food(t, amt);
	fridge.add(f);
	hasFood = true;
}
public void removeFood(String t) {
	if Ǝ Food f in  fridgef.getType() == t then, {
		f.minusOne();
		if (f.noneLeft()) {
			fridge.remove(f);
			if (fridge.empty()) {
				hasFood = false;
			}
		}
	}
}
public void performMaintenance() {

	//perform maintenance actions

}
public Resident getResident() {
	return resident;
}
public Role getOwner() {
	return owner;
}
public boolean isApartment() {
	return owner!=resident;
}

Wiki Home | Design Home

Clone this wiki locally