Adaptation: Player.m
index = [neighbors begin: [self getZone]];
while ((neigh = [index next])) {
currentPayoff = [neigh getAveragePayoff];
if ((currentPayoff > bestPayoff)) {
bestPayoff = currentPayoff;
bestType = [neigh getPlayerType];
} else if (currentPayoff == bestPayoff)
if ([uniformDblRand getDoubleWithMin:0.0 withMax: 1.0]< 0.5){
bestPayoff = currentPayoff;
bestType = [neigh getPlayerType];
if (bestPayoff > [self getAveragePayoff])