6496 Commits

Author SHA1 Message Date
UnknownShadow200
8406571804 Separate gamepad Start/Select from Enter/Escape keys 2023-08-04 18:48:10 +10:00
UnknownShadow200
ed67758d79 WIP on making menus controllable from controllers 2023-08-03 21:24:25 +10:00
UnknownShadow200
5cd4123bff Fix in singleplayer if physics was enabled and water/lava had their collide type changed to None, that the game would get stuck in an infinite loop
Should address #1048

In more detail, normally water won't propagate into neighbouring water blocks. However, when the collide type was changed to None, water blocks would instead constantly propagate into neighbouring water blocks, causing the water queue to grow and grow until the game runs out of memory

The same reasoning would apply with lava too
2023-08-02 23:46:01 +10:00
UnknownShadow200
2d58ce3893 Move widgets disabled field to be a flag
3DS: Fix trying to connect to server using Direct Connect menu always showing 'invalid IP'
2023-08-02 20:41:50 +10:00
UnknownShadow200
e070201c94 Wii/GameCube: Several fixes
Fix not generating root classicube directory on SD card
Fix camera jumping when B is pressed with wii control to begin dragging
Restrict maximum amount camera moves due to wii control being used in dragging mode
2023-08-01 20:47:28 +10:00
UnknownShadow200
48211f9b47 Wii/GameCube: Some small improvements in input
GameCube: Increase deadzone range (thanks GK6475)
Wii: Changed classic controller mapping (thanks SuperMYL)

Also in general, start adding separate input buttons for gamepad buttons
2023-08-01 17:28:24 +10:00
UnknownShadow200
3b2ffa010c Change chat log files to be .txt instead of .log so that they're easier to open on some platforms, also try stubbing out Gfx_Draw functions for 3DS 2023-08-01 08:40:44 +10:00
UnknownShadow200
522fc17f68 3DS: See if this helps with system freezes
GameCube: Invert vertical joystick direction for bettera camera movement (Thanks GK6475)
2023-07-31 21:57:44 +10:00
UnknownShadow200
736d28946d Split up IPT enum into CCKEY and CCMOUSE enums
Also start building GameCube build with github actions again
2023-07-31 18:44:45 +10:00
UnknownShadow200
89c31c70af Wii/GameCube: Add untested Wii Classic controller support, try adding a deadzone for GameCube controller, try fixing camera movement from GameCube controller being too slow 2023-07-30 17:33:09 +10:00
UnknownShadow200
9ca9977999 3DS: Fix controls being inverted, make camera movement more sensitive to circle pad, allow using cstick to control camera movement too 2023-07-30 16:10:24 +10:00
UnknownShadow200
dd3a39568a Wii/GameCube: Input refactor part 1
- Wii/GameCube now use simpler input mode with just A/B when in the launcher, inspired by what the 3DS port does (Thanks Pear for the idea originally)
- GameCube now uses secondary control stick for camera input (Thanks GK6475)
2023-07-29 20:52:59 +10:00
UnknownShadow200
d3783eec8b 3DS: Fix facing opposite direction, fix some rendered chunks getting unexpectedly frustum culled 2023-07-29 20:02:29 +10:00
UnknownShadow200
347658254b Wii/3DS: Try to add opening web browser support 2023-07-29 17:33:56 +10:00
UnknownShadow200
1a1473ad4d 3DS: Try to fix system font being slightly clipped
Also tidy up and slightly optimise system font rendering for 3DS/Wii/GameCube
2023-07-29 15:08:00 +10:00
UnknownShadow200
5df976cc5e Wii/GameCube: Add system font support by using IPL font 2023-07-29 13:45:45 +10:00
UnknownShadow200
d43dbefab4 Wii/GameCube: Fix broken due to last commit, and respond to wiit shutdown signal 2023-07-29 10:26:25 +10:00
UnknownShadow200
c47f48d187 Wii/GameCube: Don't hardcode root path to SD card, might help with #1044
It's quite possible that FAT mounting succeeds, but on a different device such as a memory card or USB

However, trying to call mkdir/open would then crash as mkdir/open will behave improperly if you call them with a path that specified device which isn't found - and previously ClassiCube always hardcoded for the 'sd' device
2023-07-29 00:47:39 +10:00
UnknownShadow200
1eb54f1273 3DS: Simplify launcher controls to just A and B (Thanks Pear) 2023-07-28 23:06:17 +10:00
UnknownShadow200
c8e8f53b7c 3DS: Fix sky and translucent blocks not rendering properly 2023-07-28 22:30:01 +10:00
UnknownShadow200
e9d897499d Move hotbar rendering mostly over to the new rendering method 2023-07-28 21:23:19 +10:00
UnknownShadow200
ddec30a59d 3DS: Various fixes for touch input
1) Fixed can't really control camera (it resets position when you release touch)
2) Fix 'mouse' position being wrong for initial frame after touch begins
3) Fix 'mouse' position using coordinates of bottom screen instead of top screen
2023-07-28 09:06:46 +10:00
UnknownShadow200
2f8da40409 Wii: Try to support keyboard and older controller
Also try to fix camera slowly drifting on 3DS
2023-07-27 23:35:35 +10:00
UnknownShadow200
8bf0e1aa87 3DS/Wii/PSP/GameCube: Some improvements
3DS: Now also supports using circle pad for moving camera
Wii/PSP/GameCube: Falls back to using default.png from texture pack for fonts in launcher, instead of never displaying any text at all
2023-07-26 23:56:59 +10:00
UnknownShadow200
2aa9e65262 Let's give Github Actions a go 2023-07-26 21:42:42 +10:00
UnknownShadow200
8967f17973 Windows 9x: Fix crash logs missing modules list, and module/symbol names for stacktrace addresses 2023-07-25 19:59:56 +10:00
UnknownShadow200
3251d08ff8 3DS: Various fixes (Thanks Pear)
Fix not being able to create/open files/directories on a real 3DS
Try to fix clicking Home button not doing anything
Fix not returning the right error code when socket creation fails due to being unable to resolve hostname
2023-07-25 18:28:50 +10:00
UnknownShadow200
205b7c97ec 3DS: Fix down/up being swapped (Thanks Pear), remove spammy 'draw framebuffer' log message, also log whether creating root directories succeeds or not 2023-07-25 08:41:10 +10:00
UnknownShadow200
e76fb5e95f Workaround a codegen bug in x64 TCC 0.9.27 that caused the camera to constantly shake up and down, and use custom ldexp like function rather than relying on libm
TCC was generating the problematic instruction sequence:

MOVD XMM0, dword ptr [zero_zero_eight]
MOVD XMM2, dword ptr [RAX]=>velocityY
ADDSS XMM2, XMM0
MOVD XMM0, dword ptr [RBP + stored_t_arg]
MOVAPS XMM2, XMM0

or in pseudocode:

XMM0 = 0.08f
XMM2 = velocityY
XMM2 = XMM2 + XMM0

XMM0 = t
XMM2 = XMM0

at which, it can be seen what the codegen bug is - XMM2 (which holds the value of e->Velocity.Y + 0.08) is overwritten with the value of 't' in preparation for calling Math_Lerp, but the prior value in XMM2 is not stored to another register like XMM1 first
2023-07-24 20:54:47 +10:00
UnknownShadow200
ca02f5e4a4 Improve readme TCC and console compiling instructions (Thanks uneven) 2023-07-23 13:53:40 +10:00
UnknownShadow200
cc7ce465c4 If attempting to create a default system font returns 'file not found' error, clerar the fonts cache and completely reload it
This usually happens when a platform's system fonts completely changed. One common case where this happened was updating Android operating system version on some devices
2023-07-21 09:12:49 +10:00
UnknownShadow200
df4bd6ed8c Use explicit Mem_Copy for copying http requests rather than relying on the compiler to generate a builtin memory copy, also remove some unnecessary code 2023-07-18 22:57:10 +10:00
UnknownShadow200
2f989fca4f Update copyright year to 2023 2023-07-17 22:56:16 +10:00
UnknownShadow200
b27e078d95 Add Google Sans as a supported fallback system font
Seems that on some Android devices, the Droid Sans font has been renamed to Google Sans
2023-07-17 22:41:36 +10:00
UnknownShadow200
d10df783e8 Various build improvements for 3DS, GameCube, Wii, PSP, Haiku
Fix PSP build not compiling, and makefile not working due to not having -I and -L paths
Fix GameCube build not compiling
Change Haiku build to avoid using libexecinfo
Add github action workflows for 3DS, PSP, GameCube/Wii, Haiku
2023-07-16 16:56:11 +10:00
UnknownShadow200
0ef0e2bd9f WIP better BeOS support 2023-07-15 11:30:47 +10:00
UnknownShadow200
259147d6ef Add readme note to change app ID on android/ios to avoid installation conflict between modified versions and original classicube client, also fix SChannel SSL backend not compiling on some MinGW versions 2023-07-15 09:41:40 +10:00
UnknownShadow200
b5f0076d46 Fix 'some resources need to be downloaded' menu mistakenly always appearing (Thanks TomCube2) 2023-07-11 11:37:30 +10:00
UnknownShadow200
4b8599b235
Merge pull request #1039 from UnknownShadow200/ResourcesFixup
Resources and texture pack fixup
2023-07-10 20:57:17 +10:00
UnknownShadow200
70230bc7d4 Fix touch.png not being created in default.zip 2023-07-10 20:07:37 +10:00
UnknownShadow200
9b7dd188c5 HttpClient: WIP on basic connection cache 2023-07-09 14:13:47 +10:00
UnknownShadow200
0f5b32c0b9
Merge pull request #1038 from ymndoseijin/master
Add Wii controls
2023-07-07 08:33:52 +10:00
Kauê 地球の土星人
acaee522a2 add delta to scroll wheel emulation 2023-07-06 14:28:14 -03:00
Kauê 地球の土星人
3048385129 add parens 2023-07-06 14:10:22 -03:00
Kauê 地球の土星人
cef1bf82e6 fix spacing 2023-07-06 14:10:22 -03:00
Kauê 地球の土星人
15896f7b38 fix angle delta 2023-07-06 14:10:22 -03:00
Kauê 地球の土星人
5a9d220823 remove debug stuff 2023-07-06 14:10:22 -03:00
Kauê 地球の土星人
3c7ef24b86 added various controls and fix physical wii
added support for nunchuck, camera dragging with the wiimote,
third person view and flying controls.

it can also be actually run on real hardware now!
2023-07-06 14:10:14 -03:00
UnknownShadow200
333e7dcc05 Bump android build gradle versions, also provide delta to Window_ProcessEvents for windowing backends that require knowing how much time has elapsed 2023-07-06 22:57:09 +10:00
UnknownShadow200
182d3d0644 Support fallback default texture packs 2023-07-05 19:35:46 +10:00