Commit Graph

5957 Commits

Author SHA1 Message Date
Tamás Bálint Misius
d21c23b46e
Don't export everything for nice stack traces in release builds
Because this blows up the size of the executable. This was meant to be done only with debug builds anyway. The release stack traces are all sorts of wonky anyway, no need to complicate them further.
2024-01-13 22:47:59 +01:00
Tamás Bálint Misius
45df2ba080
Auto-detect lldb client/server paths
Probably needs some tweaking before it's actually generic enough to work for everyone though. Absolutely not going to work for windows people in its current form.
2024-01-13 22:47:07 +01:00
Saveliy Skresanov
e314e99c4c Merge branch 'resist' 2024-01-13 13:47:37 +07:00
Tamás Bálint Misius
ee2e53958a
Make android/install-apk always stale
This effectively leaves the staleness checking to adb install, as it should be done: adb has insight into the state of the system, we don't. Newer versions of android can do incremental installs too, so reinstalling the same thing is essentially free.

Also invoke android/install-apk in the debug script to make sure that the app being debugged is up to date.
2024-01-12 20:11:03 +01:00
Saveliy Skresanov
c5034dd01a Fix clone producing RSST(RSST). 2024-01-12 23:34:34 +07:00
Tamás Bálint Misius
5e35ce42b5
Add android debug helper script
Needs some documentation though. Anyway, works on my machine(tm).
2024-01-12 17:16:32 +01:00
Tamás Bálint Misius
aff12209d3
Use gh cli for managing releases
Rather than my bespoke forks of the unmaintained actions that used to do this.
2024-01-12 17:05:00 +01:00
Tamás Bálint Misius
5da4c04f35
Remove THREAD_LOCAL hack, use thread_local
We dropped support for the buggy toolchains that needed this hack.
2024-01-12 17:05:00 +01:00
Tamás Bálint Misius
bc9d43bb10
Migrate mingw builds to msys2 ucrt, update tpt-libs 2024-01-12 17:05:00 +01:00
Gyo-hyeon Lee
8a7a36bb85 Add global characters
Add Latin Extended-B, IPA Extensions, Spacing Modifier Letters, Greek and Coptic, Cyrillic Supplement, Runic, Box Drawing, CJK Symbols and Punctuation

Signed-off-by: Gyo-hyeon Lee <perssphere07@outlook.com>
2024-01-11 18:30:35 +01:00
Tamás Bálint Misius
2f302fa586
Make sure the correct android SDK and platform are installed
Make sure by checking check whether android.jar from the SDK exists.
2024-01-10 08:48:32 +01:00
Tamás Bálint Misius
608f037e68
Explain platform clipboard external dependencies in OptionsView 2024-01-10 07:41:22 +01:00
Tamás Bálint Misius
d05b0093b9
Attempt to show and demangle symbols in bluescreen stack traces 2024-01-10 07:41:11 +01:00
Saveliy Skresanov
9a05e56f15 Restore old SOAP foam behaviour and make it work with nonstandard gravity. 2024-01-09 23:59:31 +07:00
jacob1
1dc641d13f
Fix signs loading in wrong position in PSv saves 2024-01-07 17:13:19 -05:00
jacob1
99566c8003
LogoutRequest - set checkStatus to true 2024-01-06 23:31:28 -05:00
Saveliy Skresanov
c352b08d86 More resist-related comments. 2024-01-02 18:23:19 +07:00
Tamás Bálint Misius
5411269fb2
Fix bluescreen stack trace not showing exception frames 2024-01-02 10:02:03 +01:00
Tamás Bálint Misius
ba056746b8
Bump macos runner version to 12
macos-11 runners took ages to finish the macos jobs because homebrew built everything from source on them.
2024-01-01 21:06:28 +01:00
Tamás Bálint Misius
98f5a56b76
Snapshot 357 2024-01-01 20:02:55 +01:00
Tamás Bálint Misius
4a99004327
Fix requests not being marked done when they fail early
They were marked done as far as Libcurl.cpp semantics went, but they weren't noticed by the Worker loop and thus weren't actually marked done with MarkDone.

Broken by 0cc179ae4e where I quietly (i.e. no mention of this in the commit message >_>) replaced curl_multi_wait with curl_multi_poll, the former of which would return after some time even if nothing happened and the latter of which doesn't. Thus, the request manager loop kept iterating, if slowly, and masked this issue: these half-baked requests ended up being noticed in the iteration of the Worker loop that came after the one during which they were marked done.

Also fix the MotD being finalized improperly in Client.
2024-01-01 17:17:43 +01:00
Tamás Bálint Misius
70f6b68fc5
Add platform clipboard option to settings 2024-01-01 12:29:03 +01:00
Tamás Bálint Misius
6160a6b7d5
Add stack trace to bluescreen on some systems
This is still complete nonsense on posix systems where bluescreen runs in a signal handler, but what can you do.
2024-01-01 09:34:44 +01:00
Saveliy Skresanov
929b7ee525 Resist and bcoal now make fuse powder. 2023-12-31 22:53:56 +07:00
jacob1
c60e87870a
Add includePressure to saveStamp as well
Also removed in a407aba087, as part of cleanup. Restoring it now that loadStamp also has this same parameter.
2023-12-30 21:10:28 -05:00
jacob1
cdc3eb8663
Fix "does not exist" showing up when loading stamps by id or filepath in console
SetLastError will always cause the error to show up in the console. Use tempfile->GetError() instead, which will return the same error message anyway unless the stamp doesn't exist.
2023-12-30 20:34:22 -05:00
jacob1
2619050824
sim.loadStamp: default includePressure to 1
It doesn't make much sense for a Lua function to vary depending on whether the user holds shift or not.

This restores the original behavior of includePressure in 6931f35520, which was accidentally removed later in a407aba087. Since I doubt anyone used this parameter, I'll just keep it at position 6 instead of moving it back to 4.
2023-12-30 19:46:12 -05:00
jacob1
a471a0de1f
Fix http.post using wrong argument as POST data 2023-12-30 16:03:45 -05:00
jacob1
5a762524b8
Fix header return value from HTTPRequest:finish, now returns both name and value again 2023-12-30 15:40:46 -05:00
Tamás Bálint Misius
25c65310bd
Clear stamp browser selection when page contents change 2023-12-29 14:35:59 +01:00
git4rker
7623f45e6e Implement stamp renaming 2023-12-29 10:20:55 +01:00
Tamás Bálint Misius
d84e0a0c3e
Sample properties when shift is held
Rather than when the active tool is the property tool. Solves the problem of not being able to sample "away" from the property tool when it's already selected. Also bring up the property window after each such sampling of properties.
2023-12-26 13:17:21 +01:00
Tamás Bálint Misius
c5b72b213b
Add beforesimdraw and aftersimdraw events
These fire just after RenderBegin (read: really early) and just before RenderEnd (read: really late, but before the zoom window is drawn), respectively.

Lua graphics calls now also decide whether they should draw using simulation graphics or user interface graphics based on which event is being handled. This fixes element graphics functions being unable to draw with graphics calls.
2023-12-24 13:37:54 +01:00
Tamás Bálint Misius
ccd7bef1ed
Snapshot 356 2023-12-23 22:00:33 +01:00
Tamás Bálint Misius
eececdbc83
Fix label sizes in PreviewView
Enabling clipping in 151bc4c9cd made the ill-sized nature of these labels visible.
2023-12-23 21:31:52 +01:00
Tamás Bálint Misius
24fb11aed6
Add tpt.version.beta 2023-12-23 19:33:48 +01:00
Tamás Bálint Misius
bbe84e3505
Add sim.listStamps 2023-12-23 19:26:19 +01:00
Tamás Bálint Misius
62b116cb8f
Fix link region detection in RichLabels 2023-12-23 14:20:48 +01:00
jacob1
d2655fa195
PHOT reflection now works as it did prior to 920f7646e4
This fixes many saves that use 1-px mirrors, for example, id:1077513 id:828603 id:2845200 id:30082

PHOT refraction, which was wildly broken in 97.0, is unchanged, and still works. In Simulation::get_normal, I simply check if REFRACT is set, and if it is, apply the new logic
2023-12-22 22:28:35 -05:00
Tamás Bálint Misius
3ecc1c6c6f
Retire tpt.beginGetScript in favour of tpt.installScriptManager
There had never been a legit use of tpt.beginGetScript (or indeed, tpt.getscript) that didn't involve the exact parameters 1, "autorun.lua", 1. The most infamous alternative parametrization was 2, "autorun.lua", 1, which would install TPTMP where you'd normally install the script manager. Absolute madness.

The callback parameter also goes away with this change, because no other script needs to know when the script manager is done being installed. I also fixed a problem where the function might be called from the wrong context and thus get delayed in handling the completion of the HTTP request. With the earlier removal of checking for existing destination files and bailing out if found, this function is now bullet-proof(tm).

This restores the tpt.getscript(1, "autorun.lua", 1) usage pattern, albeit only from the console.
2023-12-20 20:03:57 +01:00
Tamás Bálint Misius
95b83ffd61
Allow tpt.beginGetScript to overwrite existing files unconditionally
It's not worth the trouble to ask questions (this was the old behaviour), the next best thing (in terms of preserving old behaviour) is to overwrite unconditionally. There is no situation in which the file name would be specified but the user wouldn't want the file to be written to.
2023-12-20 19:13:37 +01:00
Tamás Bálint Misius
e20312a672
Make marking events as "sim events" slightly harder to mess up
A sim event being an event that takes place in the context of the simulation. Currently, this simply means that the RNG math.random uses is the sim's rather than the UI's.
2023-12-20 19:11:33 +01:00
Tamás Bálint Misius
0143a0a41f
Add link to the registration form to LoginView
It's meant to show up when you're not logged in and also haven't yet gotten any response from the server.
2023-12-16 11:06:26 +01:00
Tamás Bálint Misius
4ab2a032af
Clean up RichLabel 2023-12-16 11:05:45 +01:00
Tamás Bálint Misius
151bc4c9cd
Fix Textbox width limiting content length 2023-12-15 22:36:41 +01:00
Tamás Bálint Misius
7083f67979
Add includePressure parameter to sim.loadStamp
Defaults to what it's always been doing, that is, checking shift state.
2023-12-15 22:36:40 +01:00
Tamás Bálint Misius
c75451b34c
Fix pasting sometimes getting interrupted by the particle limit
More precisely, fix reaching the particle limit while pasting onto a sim with no stacking, which shouldn't be possible at all, because pasting removes stacking at any position that has particles, and if the sim doesn't already have stacking, in the worst case we should end up filling the screen, which would use exactly as many particles as the limit allows.

The problem was that the removal of stacking happened after all particles were done being pasted, which meant that the particle limit could be reached halfway into the process. The solution is to remove on demand the particles wherever we're pasting one.

This works because assuming there is no stacking in the sim (this is the only case we care about) and that pmap is up to date (it is, we call RecalcFreeParticles early), then a spot that is being pasted over is either free (and therefore there are also slots free in Simulation::parts) or has exactly one particle, which we remove before creating the one we're pasting.
2023-12-15 22:36:37 +01:00
Tamás Bálint Misius
c6c4b1de76
Fix some pasted particles not getting cut off at the edges of the simulation
The problem is that .x and .y may get rounded toward 0 when being converted to an int, the fix is to floor first.
2023-12-15 19:26:12 +01:00
Tamás Bálint Misius
b4d7d276a2
Complain when pasting save data with missing elements 2023-12-15 19:06:19 +01:00
Tamás Bálint Misius
324745f24d
Mark saves as being from the next version in dev builds
That is, undo the decoupling of the effective save version from what is today the upstream display version done in 7fc3fb4c15. This enables taking advantage of new features, for example the comprehensive palette, in saves that do come with a comprehensive palette, which is a 98.0-and-above feature.

Also fully populate GameSave::version before making checks against it and fix GameSave::fromNewerVersion reflecting the relationship between only the major components of version numbers.
2023-12-15 18:58:37 +01:00