Commit Graph

2624 Commits

Author SHA1 Message Date
jacob1
772148900e Fix stamp and local save thumbnails being stretched 2019-03-03 23:45:33 -05:00
jacob1
d021cbb5cf USE_SDL is no longer used 2019-03-01 09:58:07 -05:00
jacob1
dd3d9dfaad change a bunch of virtual to override (should fix annoying mac compile warnings) 2019-03-01 00:07:31 -05:00
jacob1
79aef1dab6 prevent weirdness when ctrl/shift/alt key event is canceled 2019-02-24 15:29:02 -05:00
jacob1
1536736b33 allow using element names as argument 2 to tpt.set_property again 2019-02-23 18:05:11 -05:00
jacob1
768202ca9b Version 94.1 2019-02-21 00:23:45 -05:00
jacob1
28bfa9dfc9 GoL is now affected by stasis wall 2019-02-20 23:25:28 -05:00
jacob1
45ee6780d9 Recreate window when toggling "altFullscreen" while fullscreen is enabled
Fixes bug where half of the window gets cut off
2019-02-20 22:20:49 -05:00
jacob1
3fb134f814 Fix issue on qwertz keyboard layouts where the first key input after opening the console would be ignored
This seems like a hack, but I think it's the intended way to do this?
2019-02-20 22:12:22 -05:00
jacob1
646935edb3 Fix local saves with "." having their name cut off, add a warning for a few invalid file names 2019-02-19 23:24:39 -05:00
jacob1
16d686e949 fix replace mode semicolon shortcut 2019-02-19 21:53:44 -05:00
jacob1
08cd32abbe use scancode instead of keycode for most keyboard shortcuts
keys like 0-9, tab, enter, ctrl/shift/alt, ins, and del are still looking for keys instead of scan codes, just in case (but I expect them to be always equivalent anyway)
2019-02-19 21:46:56 -05:00
jacob1
0c6ce20880 Add "Force Integer Scaling" option for fullscreen
Also:
recreate the window when enabling resizable window, same workaround I applied to my mod for jacob1/The-Powder-Toy#24
recreate the window when toggling fullscreen, to work around some bugs where the window is sized incorrectly or the mouse position doesn't match where the cursor is
Don't capture mouse cursor when this is a debug build
2019-02-18 22:18:29 -05:00
jacob1
a979917744 Version 94.0.342 2019-02-17 14:08:04 -05:00
jacob1
46cd49ba24 Fix uncaught exception in console when trying to parse invalid numbers 2019-02-16 19:20:55 -05:00
jacob1
25c1b13bd4 improve find tool handling with GoL, can now find specific life elements
Reverts most of LBPHacker's previous commit, lol
2019-02-16 19:13:05 -05:00
Tamás Bálint Misius
4ff1dc0bc3 Fix a few more random PMAPBITS issues 2019-02-16 18:57:51 -05:00
jacob1
240bb3bd92 restrict saves to version 94.0 when they use newer elements / features 2019-02-10 22:02:17 -05:00
jacob1
edba703aab don't allow right click -> select a save when you aren't logged in 2019-02-07 23:30:09 -05:00
wolfy1339
a2bb531c46 Remove inclusion of deprecated C++ headers 2019-01-31 20:09:15 -05:00
jacob1
abce030d5d ignore mouse button 4/5 when drawing, fixes #626
perhaps in the future we'll add a use to these
2019-01-31 20:06:09 -05:00
jacob1
82bdf4a777 Fix macOS data directory (for real this time, I think) 2019-01-22 00:26:29 -05:00
jacob1
af20029e08 Files for new icon
Still not entirely final, may change android (circle) icon a bit, and not sure if the mac icon works
2019-01-20 12:53:39 -05:00
jacob1
87f17fd7c3 in mac version, download the update file using a browser
not possible to update executable inside app packages anymore
TODO: update website to serve .dmg link instead
2019-01-19 11:54:43 -05:00
jacob1
e8b4256503 Fix gravity sometimes persisting a frame after ctrl+z / clearing sim, fixes #571 2019-01-14 21:11:06 -05:00
jacob1
50a88c9c26 Fix whitespace 2019-01-12 12:50:28 -05:00
jacob1
655f4bb6d0 chdir to data directory on mac
May change this later if I decide to go back to using objective-c (or swift?) later to reimplement the rest of the mac features
2019-01-12 12:08:18 -05:00
jacob1
cc93479c4b Fix incorrect time format being used sometimes when not in UTC timezone, add day of month to "previous year" time format 2018-12-31 21:49:44 -05:00
jacob1
2d838087b5 minor fix 2018-12-30 13:49:00 -05:00
jacob1
08c22031e2 Add tpt.unregister_keypress to eventcompat.lua 2018-12-30 13:47:57 -05:00
jacob1
f3f1fbf77f switch back to normal dns (was only intended as a quick fix in a snapshot) 2018-12-29 14:00:04 -05:00
jacob1
10bee577a2 eventcompat.lua: Add shift mapping for us keyboard layout 2018-12-28 19:16:22 -05:00
jacob1
3b3775addf Add blur lua event, called when opening another interface window 2018-12-27 21:17:24 -05:00
Caeleron
9e94abb150 Transfer properties of COAL breaking into BCOL (Fixes #602)
Fixing a problem where decoration is not transferred from COAL to BCOL when broken. All properties of COAL should now be copied to the new BCOL particle, including if it is burning, decoration and discoloration caused from heating.
2018-12-25 17:12:56 -05:00
jacob1
87fb94ce94 Delete unused Thumbnail handling code 2018-11-27 22:13:29 -05:00
jacob1
d0dd9ec22f fix sim.brush being double size, fix compile warning 2018-11-21 12:38:26 -05:00
Tamás Bálint Misius
5a57c37ae9 Make close event trigger consistently 2018-11-20 21:06:59 -05:00
jacob1
b41f228c10 fix a few cases where the rng calls were converted improperly 2018-11-20 21:02:20 -05:00
jacob1
a3eae58120 fix (msvc) compile error 2018-11-17 19:33:16 -05:00
jacob1
2929264885 embed event api compatibility lua script
probably temporary, can't deprecate and remove an extremely common api in the same version.
lua script embed code mostly copied from my mod
2018-11-17 00:09:48 -05:00
Tamás Bálint Misius
e48bd482f6 Add close event 2018-11-16 23:02:05 -05:00
Tamás Bálint Misius
3de68c4346 Fix event objects not being freed 2018-11-16 23:02:05 -05:00
Tamás Bálint Misius
531229daa9 Move EventTypes inside LuaEvents to prevent global scope pollution 2018-11-16 23:02:05 -05:00
jacob1
a8489ba6f5 add new events api, replaces legacy event functions
event.register(event.mousedown, function(...) print(...) end)
event.unregister(event.mousedown, somefunc)

mouseclick event split into mousedown, mouseup, mousemove, mousewheel
keypress event split into keypress, keyrelease, textinput. key* events only contain keycode and scancode, don't attempt to represent a letter (was very broken at this before). Also have helpful shift/ctrl/alt flags passed in. textinput just represents inserted text, can probably even handle foreign characters.
register_step replaced with event.tick event

All legacy register_* and unregister_ functions are removed. There is a compatibility lua script, might embed it later. tpt.set_shortcuts / tpt.test also removed. event.getmodifiers added, just a misc function to get the currently held modifiers

Lots of code duplication to handle each event is removed, it's not handled in a more generic way. Although the Event class / child classes could use some work.
2018-11-16 00:07:26 -05:00
jacob1
48bc6e02ba Fix gcc 8 warnings 2018-11-03 19:36:07 -04:00
LBPHacker
5733073c33 Fix dray with tmp=0 acting weirdly 2018-10-30 21:28:57 -04:00
EchoHowardLam
813cab7af7 Hotfix endless air current
Fix issue #580
2018-10-30 21:04:52 -04:00
nunom2005
31b45312b2 Add a message a message while fetching the motd (#603) 2018-10-30 21:01:17 -04:00
jacob1
f7e8ade347 fix another single-pixel PIPE generation issue 2018-09-30 23:46:52 -04:00
jacob1
276098f9db fix crash when using elem.element on windows 2018-09-17 23:03:05 -04:00
jacob1
7f215a6a17 fix particle #0 not being removed from the photons map when moving 2018-09-09 10:53:02 -04:00
jacob1
3707ecd563 fix "publish" button in save browser 2018-08-24 23:11:09 -04:00
jacob1
bbef295fe3 fix default elements disappearing when loading saves if the identifiers don't match 2018-08-24 23:10:46 -04:00
jacob1
c1e4644dc8 It's that time of year again 2018-08-07 09:24:11 -04:00
jacob1
d435f30834 fix LDTC temp/airdrag 2018-07-22 00:05:03 -04:00
krawthekrow
bdc3f300ba show conv tmp as element name in hud 2018-07-21 22:36:06 -04:00
krawthekrow
d42d7486e7 allow prop tool to parse particle type for tmp 2018-07-21 22:36:06 -04:00
krawthekrow
d05e4b2d0b show ldtc tmp2 in hud 2018-07-21 22:27:11 -04:00
krawthekrow
711d65bbd5 rewrite ldtc to be less buggy 2018-07-21 22:27:11 -04:00
jacob1
1c1bcb0cdc fix stasis wall not having any blob mode effects 2018-07-21 21:26:14 -04:00
jacob1
92244f78bb initialize some variables to fix -Werror=maybe-uninitialized warnings
most aren't actually bugs, but gcc isn't able to determine that the paths it can follow guarantee they are initialized
2018-07-08 00:49:35 -04:00
jacob1
8e09edd188 fix typo in favorites menu 2018-07-07 21:41:36 -04:00
krawthekrow
143ba20191 check for correct prefix in hex property decoding 2018-07-07 19:12:12 -04:00
LBPHacker
a3a3b3be1a Make ctrl+shift+click toggle favorite status 2018-07-07 19:10:41 -04:00
LBPHacker
27f5ba199d Fix PIPE being reversed 2018-06-24 10:37:19 -04:00
krawthekrow
11d33d5b77 call rayt linear detector 2018-06-24 10:37:11 -04:00
Mrprocom
2935a94b27 Update in-game rules to match the new TPT rules 2018-06-24 10:37:01 -04:00
jacob1
9a707003aa fix blue line in smudge tool texture 2018-06-05 23:15:09 -04:00
jacob1
969e99c78c also fix SplitFromEndBy in String 2018-06-05 00:26:31 -04:00
jacob1
53f6807ea6 make fps update less often in hud 2018-06-04 23:48:40 -04:00
jacob1
01b9a7c7e8 fix Saves/ appearing before all saves in local save browser 2018-06-04 23:34:40 -04:00
jacob1
0e383e1045 fix scrolling in browsers being reversed 2018-06-01 00:22:06 -04:00
mniip
48a333f0de Fix some scrolling issues 2018-05-30 13:35:44 +03:00
jacob1
7393c577f8 fix double scale firstrun check. We shouldn't need this popup anymore though 2018-05-28 14:02:50 -04:00
jacob1
3ce906b25d even better desktop size detection, now accounts for taskbars / panels 2018-05-28 13:55:49 -04:00
jacob1
a40ab1e50d don't load invalid window positions, only load window pos on first run 2018-05-28 13:33:01 -04:00
jacob1
324602fe26 adjust for window border when loading window position too
fixes window moving up every time on windows, on linux the border size gets reported as 0 so nothing changes there
2018-05-26 17:38:01 -04:00
jacob1
743ec98e3f add resizable window and original fullscreen options 2018-05-25 21:19:44 -04:00
jacob1
58127f355b fix windows / renderer compile (renderer requires sdl for now) 2018-05-25 21:19:44 -04:00
jacob1
841022c907 recenter linux icon 2018-05-25 21:19:44 -04:00
jacob1
002ab799c5 whitespace fixes 2018-05-25 21:19:44 -04:00
jacob1
7ac7eec6cf more sdl2 fixes:
don't recreate window every scale / fullscreen change
better renderer handling, input scaling no longer needed even if window resizing is enabled
load/save window position (replaces old windows code to do this)
calculate initial mouse position on startup because sdl no longer does this for us
2018-05-25 21:19:44 -04:00
jacob1
802ec4d252 remove icon debug stuff 2018-05-25 21:19:44 -04:00
jacob1
bd8550c2d5 fix a few more sdl 2 bugs:
mouse movement captured outside the window when mouse is down
fullscreen now focuses the window (there is a bug where you have to click once to get mouse input, though)
add linux icon, will need to be redone properly because it's offcentered with a black border (mask isn't present)
allow typing ~ into the console + some other fixes
2018-05-25 21:19:44 -04:00
jacob1
ba362c1ab7 fix options menu crash 2018-05-25 21:19:44 -04:00
jacob1
e5230b5b9f upgrade to SDL 2
Still currently in process, there are some issues:
Windows version doesn't work, mac version might not work, opengl might not work
Icon doesn't work (on Linux at least)
Lua will need some changes, there are some sdl 1.2 hacks in there
When entering fullscreen, the window loses focus
When holding down mouse out of bounds, mouse move events stop being sent
When letting go of mouse out of bounds, mouseup event doesn't take into account double scale mode
Clicking on startup without moving mouse will draw at 0,0 for a frame
Renderer probably won't compile because USE_SDL doesn't entirely work

... and maybe others

Some nice things were done though:
no more blit2, sdl can do the scaling itself
3d effect removed, no reason to support this joke any longer
No need to support copy/paste ourselves, sdl does it now
text handling done much better now, separate events for key presses and text input
when a new window is shown, all events ignored until next tick (ignore textinput event if window shown from key press event like console)
2018-05-25 21:19:44 -04:00
jacob1
38fac7046a add #define NOMINMAX before windows.h includes 2018-05-17 21:49:46 -04:00
jacob1
e8373ffa4c mac compile fix 2018-05-17 21:31:26 -04:00
jacob1
3b428789c7 fix selecting another element turning off find tool 2018-05-17 20:59:37 -04:00
jacob1
6ef0f065a6 fix .what methods on exceptions 2018-05-17 20:55:29 -04:00
mniip
aa389dbbfd Add missing locale header 2018-05-14 05:38:10 +03:00
mniip
30dd49235d Add ToLower/ToUpper 2018-05-14 05:12:32 +03:00
jacob1
36a545124e fix setting element properties in legacy lua api 2018-05-13 16:16:14 -04:00
mniip
9f6f43cf90 Fix float parsing in the PROP tool 2018-05-13 04:49:31 +03:00
mniip
22e1de3fe8 Work around a thread_local bug in MinGW with the WIN32 threading model 2018-05-13 04:32:28 +03:00
mniip
a87acf56b7 Replace strdup with mystrdup 2018-05-10 10:34:45 +03:00
jacob1
8a8cbb81e4 fix getting/setting description in elements api 2018-05-10 00:27:55 -04:00
mniip
b8c9888d87 ...Fix opengl renderer compilation too 2018-05-09 20:16:28 +03:00
mniip
67df4fd963 Fix renderer compilation 2018-05-09 20:15:26 +03:00
mniip
3781b36c31 Merge branch 'data' 2018-05-09 19:28:58 +03:00