Open Tubular-Bells opened 1 year ago
Do you (or anyone reading this) have an idea on how this should be tackled? I looked at the file and nothing sprung to mind that could be done cleanly with a param.
Would it be possible to store the information about which "mode" the fish spawner should be in in the oBehParam? You would obviously want it to default to the non-Secret Aquarium behavior as to not break existing stuff. This should also make it possible to have both kinds of behaviors present in a single level. Using oBehParams like this admittedly feels a little hacky, but it is consistent with the current implementation of things like warp floors.
There are currently 5 separate
#ifdef ENABLE_VANILLA_LEVEL_SPECIFIC_CHECKS
checks insrc/game/behaviors/fish.inc.c
. This results in a lot of ugly code duplication, and makes the Secret Aquarium fish behavior unusable in hacks without vanilla level checks. This problem is mentioned in thefish.inc.c
file already (in the form of TODO comments), but I'm adding it to the issue tracker because there isn't one yet.