| Code: | function [dRow,dCol,action,mark] = solver(mainMap,foodMap,myAntMap,opAntMap, ...
myScentMap,opScentMap,myDeathMap,opDeathMap)
action = 0;
if opAntMap(3,3)>0
action = -1; %-1 attack, 1 carry
end
foodMap(3,3)
if foodMap(3,3)>=1
action = 1;
end
dRow=0;
dCol=0;
oi=1;
oj=1;
if action > -1
if action == 1
for i = 1:5
for j = 1:5
if myScentMap(i,j) > myScentMap(oi,oj)
if mainMap(i,j) ~= NaN
oj=j;
oi=i;
end
end
end
end
else
for i = 1:5
for j = 1:5
if myScentMap(i,j) < myScentMap(oi,oj)
if mainMap(i,j) ~= NaN
oj=j;
oi=i;
end
end
end
end
end
oj=oj-3;
oi=oi-3;
oj=sign(oj);
oi=sign(oi);
if (isnan([mainMap(3+oi,3+oj)]))
dRow = round(rand*2) - 1;
dCol = round(rand*2) - 1;
elseif mainMap(3+oi,3+oj)==0
dRow = round(rand*2) - 1;
dCol = round(rand*2) - 1;
else
dRow = oi;
dCol = oj;
end
end
mark = 5; % scent
end
|