evaera / Cmdr

Extensible command console for Roblox developers
https://eryn.io/Cmdr/
MIT License
375 stars 109 forks source link

Make "mash to enable" independent of CmdrClient:SetEnabled #298

Open autonordev opened 1 year ago

autonordev commented 1 year ago

Currently, the mash to enable feature will override any developer-made calls to CmdrClient:SetEnabled. For instance, to disable the console. Enabling the mash to open feature will also disable the console. Similarly, any calls to SetEnabled after SetMashToEnable is called will override mash to enable (i.e. calling SetEnabled(true) will bypass mash to enable, calling SetEnabled(false) will require mashing before the console re-opens).

This could be a problem for games which use CmdrClient:SetEnabled to restrict console access, but which also use mash to enable to avoid accidental console opening.

While this does not break any API contracts, it does change behaviour, so we should be mindful about developer and user needs here. We don't need to take any special steps to notify developers of this change in behaviour aside from a clear bullet in the changelog.