Ja, da macht das Ganze natürlich SInn.
Du speicherst vor CreateVehicleEx den Wert den die Distanz hat (so wie ich es in dem Befehl gemacht habe) und danach setzt du es wieder. Wobei es ja eigentlich auch klappen sollte, wenn du es in dem Befehl lässt, weil der ja alles beinhaltet.
Grundsätzlich muss ich aber dazusagen, dass es keine gute Idee ist, auf die Indizes mit der vehicle id zuzugreifen, da sich diese ändern kann. Es ist besser, wenn du mit dem "i" zugreifst, aber überall. Das ist zwar etwas ressourcenlastiger an manchen Stellen, aber dafür fehlerfrei. Dafür müsstest du eben dein ganzes System umschreiben.