EverestAPI / CelesteTAS-EverestInterop

Everest interop for DevilSquirrel's CelesteTAS
https://github.com/EuniverseCat/CelesteTAS
MIT License
67 stars 28 forks source link

LevelZoom by CenterCamera vs ExtendedVariantMode #75

Open LozenChen opened 5 months ago

LozenChen commented 5 months ago

If we use the ZoomLevel variant from ExtendedVariantMode, and zoom out using CenterCamera then as shown in the picture, the FreeCameraHitbox class doesn't debug render correctly

Why we should patch this: some mod maps use the ZoomLevel variant, e.g. GalleryCollab heartside

celeste

(1) my first thought is, we should patch the FreeCameraHitbox class (or maybe the CenterCamera class), but my attempts fail. (2) then i feel that, maybe we can just block the ZoomLevel variant from working, when we are using CenterCamera. That is, we save the variant value, and set it to 1 in CenterCamera.CenterTheCamera(), then restore the variant value in CenterCamera.RestoreTheCamera().

P.S. how does the ZoomLevel variant work: it hooks Level.Render and gives a multiplier whenever Level.Zoom appears