* Refactor getting X positions of buttons in preparation for not moving the window when clicking the buttons
* Initial support for controllers
* Basic controller support
* Allow runtime download of gamecontrollerdb.txt
* Add new gamepad cursor asset, and use it.
* Various improvements
Allow saving and configuring gamepad mappings
Add gamepad sensitivity, for camera only
Adjust multipliers in usage of gamepad axes
Prompt for downloading controller mappings, and allow configuration
* Refactor startup window handling so that controller settings does not duplicate code, or have to detect if startup has finished
* Clamp cursor position to window size when changing via gamepad
* Add deadzone
* Implement changes requested
* Follow more suggestions
* Use atomics
* Use orelse for oldState in Gamepads.update
* Implement requested changes
* Fix accidental removal of whitespace on two empty lines
* Fix incorrect formatting on blank line due to Vim expanding tabs to spaces
* Fix build errors.
* Change unusual orelse usage with better if expression
* Add resettable keys
* Revert "Add resettable keys"
This reverts commit 902f032ec834161dcaac97cbe596788e0110e870.
* Update controller support
* Fix things I forgot about
* Fix more things
* Implement most requested changes and change button text to be more clear
* Update controller support
* Hopefully fix format without breaking it.
* Refactor getting X positions of buttons in preparation for not moving the window when clicking the buttons
* Initial support for controllers
* Basic controller support
* Allow runtime download of gamecontrollerdb.txt
* Add new gamepad cursor asset, and use it.
* Various improvements
Allow saving and configuring gamepad mappings
Add gamepad sensitivity, for camera only
Adjust multipliers in usage of gamepad axes
Prompt for downloading controller mappings, and allow configuration
* Refactor startup window handling so that controller settings does not duplicate code, or have to detect if startup has finished
* Clamp cursor position to window size when changing via gamepad
* Add deadzone
* Implement changes requested
* Follow more suggestions
* Use atomics
* Use orelse for oldState in Gamepads.update
* Implement requested changes
* Fix build errors.
* Change unusual orelse usage with better if expression
* Add resettable keys
* Revert "Add resettable keys"
This reverts commit 902f032ec834161dcaac97cbe596788e0110e870.
* Update controller support
* Fix things I forgot about
* Fix more things
* Implement most requested changes and change button text to be more clear
* Update controller support
* Hopefully fix format without breaking it.
* Implement suggestions
* Update controller mapping downloading to be more automatic
* Fix parameter in Window.Gamepad.ControllerMappingDownloadTask.isStillNeeded
* Revert order of window opening and opening next startup window in openStartupWindow
* Only download controller mappings the first moment a controller is plugged in
* Open controller mapping download UI when actually downloading mappings, or at startup if they have started before GUI initialization but haven't finished yet.
* Don't unnecessarily try to download controller mappings at init when it will be done once the first update happens anyways.
* Implement requested changes
* Remove debugging log output
* Implement changes to download_controller_mappings.zig
* Don't convert dotfiles, which may include editor configurations.
This means that configurations specific to this workspace in editors
don't get overwritten, which prevents accidental formatting errors
whenever the game is tested.
* Fix accidental formatting change
* Use the syntax sugar
* Update main.zig
* Tweak bricks, add stone glactite tiles, tweak grey chalk
* Sandstone + marble tiles, redo marble bricks, and tweak a bunch of textures randomly because im insane
* i hate git
* Tweaks, make glacite bricks consistent with tiles
* Add limestone tiles
* Add limestone tile texture
* Make stone bircks consistent wile stone tile
* formatting
A negative radius is interpreted as adding terrain instead of removing terrain.
This is used in the new void_roots biome and fixes#725
Until #231 is implemented I give this biome the entire area below -50000.
This is not quite the performance improvement I had planned.
On the GPU-side the raster occlusion culling step got more expensive, since there now are more chunks checked on average.
On the CPU-side the cost of traversing all the occluded chunks is roughly equal to the cost of the previous occlusion culling heuristic.
On the bright side the cost is now constant, whereas previously looking into the sky was twice as expensive.
fixes#526fixes#514fixes#259
* Refactor getting X positions of buttons in preparation for not moving the window when clicking the buttons
* Prevent moving the window by the buttons
* Use tabs instead of spaces for indentation, done using sed.
* Fix formatting actually now with sed in while loop
* Attempt to fix indentation
* Add minimum width and change return type of getButtonPositions
* Include window ID in size error
* Fix orientation lines showing when clicking button and incorrect scaling for button press detection on windows
* Don't include windows without titlebar in window size requirement
* Take into account closability of windows when calculating min width
* Add single quotes around window ID in the width error message for clarity
* Fix chat window automatic sizing, refactoring the minimum window size check in the process
* Added ability to load .obj files
* remove .mtl file
* Replaced z up with y up in obj because apparently it is better
* Make cubyz support blockbench models correctly
* Not working changes
* Segfault
* Fixed bugs because i felt like it
* Catch up
* stuff
* Stuff
* Catch up
* Remove unneccessary code
* Changes to hopefully fix things
* Remove debug log
* Remove exportModel function
* Updated new blocks
* Fixed some std.log.err calls
* aaa
* I AM SO HAPPY YEEEEESSSSSSSSSSSSSSSSSSSSSSSSS
* im silly
* remove commented line
* Remove useless code
* remove thing
* remove backgrounds
* export function just in case i make an oopsie
* add 1 to indices
* final exportModel fix before i remove
* remove export model
* i forgor to do the uv stuff
* hopefully final exportModel change
* yoo
* final changes
* fixed memory leak
* Made format_check use os.sep when checking if it should ignore a folder
* Made format_check specify utf-8 encoding when loading files.
* Fixed documentation using wrong filename for format_check.py
* Add more player debug info to debug.zig
* Made format_check use os.sep when checking if it should ignore a folder
* Made format_check log the file path if an exception occurs
* Made format_check specify utf-8 encoding when loading files.
* Extracted repeated code from player collision check
* Added back eyepos check that affected physics
* Made unstuck always unstuck upwards for the time being (affects #521)
* Added "coyote time" to eyes when you step off a ledge (fixes#636)
* Added eye data to debug info
* Use smarter eyebox check suggested by Quantum.
* Made collideOrStep return Vec3d with correct index set instead of Vec2d.
* Made sure debug loads atomic bools
* Make eye coyote debug number prettier by not showing it being less than 0
* Revert format_check.py changes to have them in a separate commit.
This reverts commit bebdaa57ce74c0d8152e9a3eedeb2ed96a1515ce.
This reverts commit 1e05bd42982ec3516a4f273a5ba3972d70efe1d8.
This reverts commit 2b4944e60c7441e29c7f96bfcc2d0f3436a01ca8.
* Fix accidentally replacing the wrong argument in a67aa290