void Snake::AddBody(int x, int y, int z) { // if cube is already max size, remove the tail if(size >= MaxLength) { Voxel *temp = Body[size%MaxLength]; int tx = temp->Get_X(); int ty = temp->Get_Y(); int tz = temp->Get_Z(); Cube->SetVoxel(tx,ty,tz,0); free(temp); // frees up the tail in memory } Body[size%MaxLength] = new Voxel(Cur_x,Cur_y,Cur_z); Cube->SetVoxel(Cur_x,Cur_y,Cur_z,1); size ++; }