mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2026-01-30 01:48:15 +03:00
Unify all queries to map size to map.getwidth and map.getheight
It's becoming pretty clear that the size of the map is important enough to be queried a lot, but each time it's something like `map.custommode ? map.customwidth : 20` and `map.custommode ? map.customheight : 20` which is not ideal because of copy-pasting. Furthermore, even `map.customwidth` and `map.customheight` are just duplicates of `cl.mapwidth` and `cl.mapheight`, which are only set in `customlevelclass::generatecustomminimap`. This is a bit annoying if you want to, say, add checks that depend on the width and height of the custom map in `mapclass::initcustommapdata`, but `map.customwidth` and `map.customheight` are out of date because `generatecustomminimap` hasn't been called yet. And doing the ternary there requires a `#ifndef NO_CUSTOM_LEVELS` to reference `cl.mapwidth` and `cl.mapheight` which is just awful. So I'm axing `map.customwidth` and `map.customheight`, and I'm axing all the ternaries that are duplicating the source of truth in `MapRenderData`. Instead, there will just be one function to call for the width and height, `mapclass::getwidth` and `mapclass::getheight`, and everyone can simply call those without needing to do ternaries or duplication.
This commit is contained in:
@@ -23,6 +23,10 @@ class mapclass
|
||||
public:
|
||||
mapclass(void);
|
||||
|
||||
int getwidth(void);
|
||||
|
||||
int getheight(void);
|
||||
|
||||
int intpol(int a, int b, float c);
|
||||
|
||||
void setteleporter(int x, int y);
|
||||
@@ -129,7 +133,6 @@ public:
|
||||
//Variables for playing custom levels
|
||||
bool custommode;
|
||||
bool custommodeforreal;
|
||||
int customwidth, customheight;
|
||||
int custommmxoff, custommmyoff, custommmxsize, custommmysize;
|
||||
int customzoom;
|
||||
bool customshowmm;
|
||||
|
||||
Reference in New Issue
Block a user