boolean makeCombat(Monster enemy) {
		// Sanity check
		if(roll(Token.Horror, Monster.get(enemy, Token.Horror))==0)
			apply(Token.Sanity, -Monster.get(enemy, Token.Sanity));
		if(get(Token.Sanity)<=0)
			return false;
		int toughness = Monster.get(enemy, Token.Toughness);
		// Stamina fight
		while(get(Token.Stamina)>0) {
			changeWeapon(enemy);
			int r = roll(Token.Combat, Monster.get(enemy, Token.Combat));
			if(r>=toughness) {
				trophis.add(enemy);
				return true;
			}
			apply(Token.Stamina, -Monster.get(enemy, Token.Stamina));
			// Try to escape
			if(get(Token.Stamina)==1) {
				if(makeStealth(enemy))
					return true;
			}
		}
		return false;
	}