Sorry I have taken my sweet time returning to this forum, life has been busy.
All I've done at this stage is make a to the change to the movements. Now instead of making the foot move from point A to point B, it moves in a path between point A to point B, stopping at a predetermined (set at three in this example) number of points along the path. I have done this in an attempt to create a more accurate path. The path is made from the original coordinates and mathematically added within the program.
There are still a few glitches in it and it looks quite dumb imo, but its a start.
void doTest()
{
for (h=0; h<testcount; h++) //step
{
for (e=0; e<12; e++) //servo
{
for (d=1; d<testcount; d++)
{
if (h==0) //if first step
{
move=test[e][h];
myservo[e].write(move);
}
else
{
if (h!=0 && h<=testcount) //if subsequent steps
{
if (test[e][h]==test[e][h-1]) //if move-to is equal to
{
move=test[e][h];
myservo[e].write(move);
}
else if (test[e][h]>test[e][h-1]) //if move-to is greater than
{
c=test[e][h]-test[e][h-1];
c=c/3;
move=test[e][h]-(c*d);
myservo[e].write(move);
delay(pause);
}
else if (test[e][h]<test[e][h-1]) //if move-to is less than
{
c=test[e][h-1]-test[e][h];
c=c/3;
move=test[e][h]+(c*d);
myservo[e].write(move);
delay(pause);
}
}
}
}
}
delay(pause);
}
}