package {
	public class Continente {
		// Propriedades
		public var id:int;
		public var nome:String;
		public var bonus:int;
		
		// Cria o continente
		public function Continente (id:int, nome:String, bonus:int):void {
			this.id = id;
			this.nome = nome;
			this.bonus = bonus;
		}
		
		// Registra os territórios presentes nesse continente
		public function set_territorios(... terras:Array):void {
			var i:String;
			for (i in terras) {
				Relacao.relacionar(this, Grafica.get_territorio(terras[i]), Relacao.CONTINENTE);
			}
		}
		
		// Retorna o número de territórios do jogador nesse continente
		public function get_num(jog:Jogador):int {
			return Relacao.e(Relacao.get_relacoes(this, Relacao.CONTINENTE), Relacao.get_relacoes(jog, Relacao.DONO)).length;
		}
		
		// Retorna o número de territórios nesse continente
		public function get_max():int {
			return Relacao.get_relacoes(this, Relacao.CONTINENTE).length;
		}
		
		// Retorna se o jogador informado tem a maioria do continente
		public function tem_maioria(jog:Jogador):Boolean {
			if (get_num(jog)>get_max()/2) {
				return true;
			} else {
				return false;
			}
		}
		
		// Retorna se o jogador informado é dono de todo o continente
		public function tem_tudo(jog:Jogador):Boolean {
			return Boolean(get_num(jog) == get_max());
		}
	}
}
			