Zasadniczo będziesz potrzebować dwóch struktur danych (logicznych, natrętnych lub rzeczywistych, w zależności od reszty kodu). Pierwszy będzie śledził łańcuchy obiektów, a drugi ścieżkę.
Łańcuch Po prostu musisz wiedzieć, które obiekty podążają za innymi obiektami. W najprostszym przypadku będzie to po prostu A po B, ale może obejmować więcej obserwujących. Jest wyznaczony lider łańcuchu .
Ścieżka Dla każdego łańcucha potrzebujesz ścieżki. W zależności od tego, jak działa twoja gra, określisz, jak to będzie zorganizowane. W większości przypadków będzie to jakaś połączona lista. Spowoduje to śledzenie pozycji, które musi przestrzegać każdy w łańcuchu.
Teraz lider w łańcuchu będzie dodawał przedmioty do ścieżki . Za każdym razem, gdy się poruszy, doda coś do nagłówka listy. Każdy obiekt w łańcuchu pamięta, gdzie jest na liście. Jeśli chodzi o przenoszenie, po prostu przechodzi do następnego elementu na liście (odpowiednio interpolowanego, jeśli to konieczne). Gdy ostatni element w łańcuchu przesuwa się obok elementu na liście, element ten można upuścić (będzie na ogonie).
Metaforycznie przywódca pozostawia ślad swoim partnerom. Ostatni obserwujący na liście zużywa bułkę tartą.
To, czy twoja lista zawiera pojedyncze punkty, czy tylko wierzchołki ścieżki, czy coś innego, zależy całkowicie od twojego silnika gry. Ale w każdym razie nie widzę, że będziesz w stanie ominąć samą listę.