function [new_agent] = Control( t, dt, agent, k, coords, n)
%UNTITLED Summary of this function goes here
%   Detailed explanation goes here
    x = agent(t-1, 1);
    y = agent(t-1, 2);
    v = agent(t-1, 3);
    theta1 = agent(t-1, 4);
    u = agent(t-1, 5);  
    
    theta2 = theta1 + u*v*dt;
    agent(t, 1) = x + v*dt*cos(theta1);
    agent(t, 2) = y + v*dt*sin(theta1);

	agent(t, 3) = v;
	agent(t, 4) = theta2;
    agent(t, 5) = Uk(k, n, coords);

    new_agent = agent;
end



% MORE ACCURATE CONTROL FOR X AND Y COORDS:
%     if u == 0
%         agent(t, 1) = x + v*dt*cos(theta1);
%         agent(t, 2) = y + v*dt*sin(theta1);
%     elseif u > 0
%         r = abs(1/u);
%         agent(t, 1) = x + 2*r*sin(v*dt/r)*cos((theta1+theta2)/2);
%         agent(t, 2) = x + 2*r*sin(v*dt/r)*sin((theta1+theta2)/2);
%     else
%         r = abs(1/u);
%         agent(t, 1) = x + 2*r*sin(v*dt/r)*sin((theta1+theta2)/2);
%         agent(t, 2) = x + 2*r*sin(v*dt/r)*cos((theta1+theta2)/2);
% %     else
% %         agent(t, 1) = x + 2*sin(v*dt*u)*cos(theta-(v*dt*u/2))/u;
% %         agent(t, 2) = y + 2*sin(v*dt*u)*sin(theta-(v*dt*u/2))/u;
%    end