QOL features for https://geopixels.net/ with color palette management
A bunch of QOL features for GeoPixels :
GeoPxels++ with the these buttons :
🎯 "Go to Coordinates" : moves to given coordinates (accepts coordinates or GeoPixels URLs)🧪 "Set Both Palettes" : sets user and ghost palettes simultaneously🎵 "Change Sound" : change the sounds of the website🚫 "Censor" : ability to censor part of the canvas⚙️ "Settings"Feel free to fork the repository and submit pull requests.\ If you find any issues or have suggestions for new features, please open an issue on GitHub.\ If you want to contribute but aren't sure what to do, check the todo list.
Or here's a list of easy things to do :
Adding Keyboard shortcuts => add a key/value to the KEY_BINDINGS global const :
text : String that will be shown on editing modalsdefaultKey (optional) : single lowerCase char to be used as the default keybindkeydown (optional) : function to trigger on "keydown" event (will be given the event as an argument)keyup (optional) : same as above for "keyup" eventAdding Themes => Add a key/value to the THEMES global const :
name : String that will be shown on editing modalsstyle : String or function returning a string to put into a <style></style> element on the page (the css)Adding Settings => Add a key/value to the SETTINGS global const :
name : String that will be shown on editing modalselement : HTML element to use to edit this setting
options arraycategory : category to use for this setting
SETTINGS_CATEGORIES
default (optional) : default value (adds a "reset" button to the setting in the UI)reset (optional) : if this function is defined, is used when clicking the "reset" button that gets added to the settings (if not, the "default" value is used)value (optional) : function that returns the value for the element to be initialized with (useful to set the value of the element if it's not a saved setting)
init (optional) : function called with the created element as an argument when it is initializedapply (optional) : if this function is defined, is called at the start of the script with the saved value as an argument for init purposesattributes : an object that will be assigned to the element as it's attributes\
examples :
type : often needed if element is "input" to set the type of inputonchange : function that will be called when the element is changed (often here that you will have your saveSetting("censorAlpha", e.target.value); function called)
oninput : function that will be called when the element receives an inputThis project uses ZeroVer (0-based Versioning) as described at 0ver.org.
What this means:
See CHANGELOG.md
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
If you like this project and want to support its development, consider giving it a star on GitHub! Your support is greatly appreciated. ⭐
You can also support me on Ko-fi:\
Or using cryptocurrencies:
| FUpwyXmyjTGCUbmJfcPze6rijJYBgCHPyVCNKxr6MswG | 1ENy88PLJ3g7HKYmm7vSgCSbWBkSVGmVV3 | 0x74F9021A2f8Cd4Aa5e15360eF008aA2725214BcD | TVLy2r4ZsUvazkPB6f8v3qfH8vH9VPPwu8 |
Thank you for your support! 🙌