summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/scene/cable_car.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/scene/cable_car.c b/src/scene/cable_car.c
index ee26d730b..a59862278 100644
--- a/src/scene/cable_car.c
+++ b/src/scene/cable_car.c
@@ -549,3 +549,38 @@ void sub_8123EB8(struct Sprite *sprite)
}
}
}
+
+void sub_8123F44(struct Sprite *sprite)
+{
+ if (sprite->data0 == 0)
+ {
+ sprite->pos1.y += 16 + sprite->centerToCornerVecY;
+ }
+ if (++ sprite->data0 >= sprite->data2)
+ {
+ switch (sprite->data1)
+ {
+ case 0:
+ sprite->pos1.x --;
+ if ((sprite->data0 % 4) == 0)
+ {
+ sprite->pos1.y --;
+ }
+ break;
+ case 1:
+ if ((sprite->data0 % 2) != 0)
+ {
+ sprite->pos1.x --;
+ if ((sprite->pos1.x % 4) == 0)
+ {
+ sprite->pos1.y --;
+ }
+ }
+ break;
+ }
+ if (sprite->pos1.y < 0x50)
+ {
+ DestroySprite(sprite);
+ }
+ }
+}