Moin leute.
Also ich bin jetzt noch nen stück weiter gekommen. AM Quelltext könnt ihr sehen was mein prob ist. Es sollen jetzt halt die neuen x und y werte als neue position übernommen werden. kann mir einer sagen was ich da noch reinschreiben muss. danke
PS:ich hatte mir das irgendwie gedacht, dass die werte noch mit f->move(x,y) übernommen werden müssen. kann da einer weiter machen ;P?
Also ich bin jetzt noch nen stück weiter gekommen. AM Quelltext könnt ihr sehen was mein prob ist. Es sollen jetzt halt die neuen x und y werte als neue position übernommen werden. kann mir einer sagen was ich da noch reinschreiben muss. danke
Code:
{
Fish* f = swarmIt->second;
// find the nearest fish
double minDistance = 2;
RTI::ObjectHandle minDistanceIndex;
double distance = 2;
std::map<RTI::ObjectHandle,Fish*>::iterator swarmIt2;
for (swarmIt2=swarm.begin(); swarmIt2!= swarm.end(); swarmIt2++)
{
if (swarmIt->first == swarmIt2->first) break;
Fish* f2 = swarmIt->second;
distance = abs(f->x.get() - f2->x.get()) + abs(f->y.get() - f2->y.get());
if (minDistance > distance)
{
minDistance = distance;
minDistanceIndex = swarmIt2->first;
}
}
// move f to nearest fish mith minDistanceIndex HIER MUSS NOCH WAS REIN ;P
f->move(xDir.set(x), yDir.set(y));
// ---
Zuletzt bearbeitet: