jacob1
6f845ed4b4
Fix unnecessary break in LSNS. Closes #713
2020-05-02 11:24:18 -04:00
QuanTech0
544c51c03f
Cast malloc() in opt_meth_setoption
2020-04-28 00:30:30 -04:00
jacob1
899a2a046c
Add ctrl+u shortcut to reset ambient heat
2020-04-27 23:20:54 -04:00
QuanTech0
4efe5875ab
Simulation::create_part sanity check
2020-04-26 21:00:41 -04:00
jacob1
323a850e16
Don't delete SPRK/METL in detector wall, don't allow drawing metal on detector wall
...
This fixes the only valid bug on the "Glitches" wiki page. All the rest were already fixed (multi-head stkm) or are not bugs (lava ice, "destroying" dmnd with dray)
2020-04-11 23:51:56 -04:00
QuanTech0
6b3d5b9ce5
Fix typo in Options UI ( #703 )
2020-03-30 18:44:02 -04:00
Tamás Bálint Misius
fe15566d2c
Only change modes when the lock is being held, see 2333786
( fixes #700 )
2020-03-23 23:08:52 +01:00
Tamás Bálint Misius
21b9e1a645
Allow everything Unicode except noncharacters and control characters
...
Thanks mniip, see a113cbe
.
2020-03-12 09:49:45 +01:00
Tamás Bálint Misius
a113cbe57d
Don't allow literally *all* code points to be entered
...
Oops, my bad. See a2a8c876b
.
2020-03-10 11:46:06 +01:00
mniip
34c0a94f98
Add a font.cpp merging utility
2020-03-10 02:13:48 +03:00
mniip
fd5867b57d
Merge branch 'font-latin-1'
2020-03-10 01:28:57 +03:00
mniip
a38d8639e7
More font editor stuff
2020-03-10 01:18:12 +03:00
mniip
6607b7e845
Make font editor more convenient
2020-03-10 01:00:41 +03:00
Tamás Bálint Misius
c40a6bf13f
Allow non-ASCII text to be pasted into textboxes
...
There is no end to the ASCII-isms >_>
2020-03-09 23:44:18 +03:00
Tamás Bálint Misius
a2a8c876b3
Finalize latin-1 supplement changes
...
Swap both versions of O with acute and grave accents
Fix a few ASCII-isms
Fix intro text; the latin-1 changes broke the line under The Powder Toy
2020-03-09 23:44:18 +03:00
jacob1
9e53612a5b
Version 95.0 (build 345)
2020-02-26 22:03:21 -05:00
jacob1
36c980ba6f
Fix --no-http compile
2020-02-23 23:06:57 -05:00
jacob1
89a5162448
restrict new LSNS features to version 95.0 also
2020-02-23 21:56:34 -05:00
Tamás Bálint Misius
82019ef020
Catch exception by reference rather than value
2020-02-23 23:43:11 +01:00
Tamás Bálint Misius
4f01130ecc
Restrict saved version to 95.0 if signs with macros are present
2020-02-23 23:37:01 +01:00
Tamás Bálint Misius
c6f653ac3c
Fix crash when overwriting existing local saves
2020-02-15 21:33:54 +01:00
jacob1
c868e79895
Fix TextPrompt::Blocking
2020-02-09 15:29:13 -05:00
jacob1
ffea880da1
Fix bug where deco renders on EMBR in save thumbnails
2020-02-09 14:10:27 -05:00
jacob1
88064970a3
whitespace fix
2020-02-08 14:22:01 -05:00
jacob1
6b73b2dd9b
Fix fighters sometimes loading from saves with no element
2020-02-08 11:10:53 -05:00
jacob1
ca8f4e3aac
replace mode: reset created element back to default properties, instead of just changing type
2020-02-08 10:40:29 -05:00
jacob1
1e23269dd4
Add "perfect circle brush" option (on by default), to allow using old circle brush
2020-02-03 00:20:46 -05:00
Tamás Bálint Misius
cb419cd85c
Failure to remove a tag shouldn't be fatal
2020-02-02 12:16:14 +01:00
Tamás Bálint Misius
3c6ae35cc4
Fix PMAPBITS compile-time sanity check
2020-01-24 22:25:15 +01:00
Tamás Bálint Misius
5dfda0c528
Only make the request a POST if POST parameters are present
...
This is a compatibility thing, eww. This also fixes handling ptsave from the command line.
2020-01-21 22:54:52 +01:00
Tamás Bálint Misius
7330d0412a
Fix random warnings from clang 8.0.0
2020-01-21 14:43:22 +01:00
jacob1
467be1dcb9
change to 1L because technically the argument is a long
2020-01-20 11:16:33 -05:00
jacob1
0c588c48fe
allow making POST requests with empty body
2020-01-20 11:11:56 -05:00
jacob1
afefd045c8
split http.request into http.get and http.post (for api reasons)
...
It's cleaner together, but it's not a good api.
2020-01-20 00:30:30 -05:00
Tamás Bálint Misius
89282806e6
Make NOHTTP transparent to the Lua API
...
Also, HTTPRequest:status would never have returned queued since
the request is started immediately on creation.
2020-01-18 01:33:40 +01:00
Tamás Bálint Misius
194c50ae3c
Much good #defining ENFORCE_HTTPS does if we don't include Config.h
2020-01-16 20:33:54 +01:00
Tamás Bálint Misius
fe87203eb4
Add HTTP API for Lua
...
Also fix a bug with Requests where any connection that took
longer to finish than 15 seconds would be killed. Should have
used CURLOPT_CONNECTTIMEOUT instead of CURLOPT_TIMEOUT when
specifying the timeout, oops.
2020-01-16 20:05:31 +01:00
Tamás Bálint Misius
4d52531889
Ditch element and tool classes
2020-01-09 19:22:11 +01:00
QuanTech0
78203fc219
Division by Zero fix ( #689 )
2020-01-01 23:03:35 -05:00
jacob1
2576175762
remove unnecessary arguments to FloodINST. Fix random warning.
2019-12-23 00:34:21 -05:00
jacob1
5b4a0bf93b
Fix MSVC compile
2019-12-21 16:17:37 -05:00
Secundario
a05e20f1bf
Do a single CoordStack allocation per thread
2019-12-21 13:14:40 -05:00
suve
110250fe6a
Guess best scale on startup ( #684 )
...
Guess best window scale at startup
2019-12-21 17:39:32 +01:00
Tamás Bálint Misius
a43463b137
If you don't assign the callback, it won't be called
2019-12-17 10:49:35 +01:00
Tamás Bálint Misius
7629c98f22
Get rid of tiny callback classes, round No.1
...
I say round No.1 because I'm not sure if there are any left.
Hopefully there aren't.
2019-12-16 21:20:33 +01:00
jacob1
131b965af2
Add Lua apis to interact with DefaultProperties, Create, CreateAllowed, and ChangeType
2019-12-09 22:32:30 -05:00
jacob1
bf7d182de5
Add CreateAllowed and ChangeType events
...
Used in create_part, kill_part, and part_change_type, allows us to remove element-specific stuff in those functions
Note: difference between Create and ChangeType is that Create is called when we want to initialize default element properties, but ChangeType is called every time a particle is changed to that type, even if it doesn't need default properties set. ChangeType is mainly used for things that need accurate state tracking, like the stkm spawn status.
ChangeType is called every time a particle is changed to or from its type, which includes if the particle is deleted, and also Lua.
Neither of these functions are called when loading saves, that's probably an oversight, will fix later
2019-11-29 19:32:33 -05:00
jacob1
9993290b72
Add Create function, handles setting default properties for elements that need randomness or special code
...
Most of the switch statement in create_part is gone. There's a few others that I will get rid of in future commits. There will also be a CreateAllowed function, and a ChangeType. ChangeType will handle stuff that is duplicated in both create_part and part_change_type. Considering making a Destroy function instead of ChangeType, though.
Later on, Lua events will be made for all 3
Credit to jacksonmj for the original design of all of this, I copied it into my mod years ago
2019-11-28 00:22:17 -05:00
Tamás Bálint Misius
5c1ea5ef0d
Blacklist SPRK in PCLN's and PBCN's ctypeDraw function
...
Apparently it used to be blacklisted before ctype-drawing got redone.
2019-11-27 21:00:47 +01:00
jacob1
0078fb4c6f
Add DefaultProperties, replaces some of the case statements in create_part
...
The rest will will in a commit soon that adds the Create event and some other stuff
Lua events will come after that
PLSM default temp lowered to MAX_TEMP
2019-11-25 22:08:18 -05:00
jacob1
459790ffe0
also allow nil here
2019-11-24 23:20:22 -05:00
jacob1
876a9b3096
Fix crashes if returning invalid arguments from graphics or ctypeDraw lua functions
2019-11-24 23:12:22 -05:00
jacob1
b09158220f
Fix crash if error happens in ctypeDraw lua function
2019-11-22 23:37:17 -05:00
Tamás Bálint Misius
d17c67b3a4
Fix unsigned integer properties being returned as signed integers from Lua functions
2019-11-14 00:28:27 +01:00
jacob1
7af51b55ac
Fix STK2 rocket boots not saving in saves
2019-11-03 10:31:18 -05:00
jacob1
9ed7f1e85a
Fix crash if any built-in scripts try to use the interface api
...
We don't have any scripts like this and never will. But if we did, this would fix the crash.
2019-10-17 23:56:40 -04:00
Tamás Bálint Misius
5f7dd033ec
Revert previous change, add NewtonianGravity element property instead
2019-10-17 22:29:24 +02:00
Tamás Bálint Misius
6b85231f23
Incorporate Gravity property into calculation of acceleration due to newtonian gravity
2019-10-16 01:27:48 +02:00
jacob1
a50b172999
Fix clang 8 compile warnings
2019-10-04 00:21:10 -04:00
Tamás Bálint Misius
ec2576d37f
Keep GameModel brush radius consistent
2019-09-30 14:55:17 +02:00
Nick Renieris
024c3c1b45
gui/game/brush: Add smooth/organic elliptical brush
...
Not sure why TPT's ellptical brush currently looks like that,
when you type "pixel circle" on Google every result is the
smooth version.
Got the idea from this post:
https://powdertoy.co.uk/Browse/View.html?ID=2464991
Signed-off-by: Nick Renieris <velocityra@gmail.com>
2019-09-26 22:25:32 +02:00
Tamás Bálint Misius
1cea59e521
Make sRGB the default colour space for deco tools, see 51e5f2b
2019-09-22 23:10:57 +02:00
Tamás Bálint Misius
742e030a13
Add gamma = 2.2 and 1.8 modes, see 51e5f2b
2019-09-21 22:16:52 +02:00
Tamás Bálint Misius
a6127bc1fb
Add Lua API for deco tool colour space, see 51e5f2b
2019-09-21 21:58:50 +02:00
Tamás Bálint Misius
51e5f2bffa
Add option to make deco tools use sRGB colour space
...
Currently only affects the smudge tool. I'd have to look
into the others to decide if they need chaging. They probably
do though, they're not exactly intuitive.
I also fixed a bug with DropDowns where their popup would
show up in some random place if the parent window was a
ScrollPanel, and changed a few alignments here and there.
Notably, DropDowns now align the popup so that the currently
selected item is vertically centered and doesn't move when
the popup is opened.
2019-09-21 21:37:34 +02:00
Tamás Bálint Misius
51b78be139
Nicer implementation of sim.parts
2019-09-15 22:14:46 +02:00
jacob1
28d5345bf9
Fix off-by-one issue in sim.parts, fixes #678
2019-09-15 15:37:54 -04:00
Tamás Bálint Misius
66ef37e778
Don't destroy the new command being entered in ConsoleView
...
Not a perfect solution as it doesn't remember the modifications
made to previous commands, but it's more common to be concerned
about the command being entered than about the changes made to
the previous commands.
2019-09-14 19:38:49 +02:00
Tamás Bálint Misius
0e237a1f4b
Remove unused variables from Simulation::FloodINST
...
These were left behind from before the CoordStack update.
2019-09-14 19:19:24 +02:00
jacob1
88d165fb24
Fix deleting stamps not working
2019-09-13 00:35:36 -04:00
Sebastián Mestre
da5f8068c0
Use CoordStack for INST Flooding ( #676 )
2019-09-07 19:56:23 -04:00
Nick Renieris
c08b333909
graphics/gldrawmethods: Fix compilation
...
Was probably broken by ff27d69424
Signed-off-by: Nick Renieris <velocityra@gmail.com>
2019-09-06 09:33:40 -04:00
Tamás Bálint Misius
f22c27e977
Fix VS warning complaining about std::fill(float *, float *, int)
2019-09-04 14:52:38 +02:00
jacob1
5dd4897fa4
Add somewhat ugly --nohttp option
...
used for the renderer to not include libcurl, because it isn't installed on the tpt server
2019-08-29 23:33:45 -04:00
jacob1
6279bbeed3
Fix missing period in update notification, --no-fft compile fix
2019-08-29 22:49:16 -04:00
mniip
f44d42dde8
Fix signedness warnings in String.h
2019-08-18 12:10:01 +03:00
mniip
33f4f54de1
Fix --nolua compilation
2019-08-18 11:54:32 +03:00
jacob1
b975dc2938
Make water equalization fill in areas slightly more naturally
2019-08-10 22:46:41 -04:00
jacob1
2e154e5ff9
Rewrite flood_water to use CoordStack and fix stack overflow, fixes #646
2019-08-10 22:38:44 -04:00
jacob1
d61db0fd63
Fix frame # not showing properly in HUD when recording
2019-08-10 20:43:00 -04:00
jacob1
0ec50951f7
LSNS: formatting changes, change if statements to switch
2019-08-10 17:22:46 -04:00
jacob1
41d54857f2
Fix cipher list on Windows. Lock cipher changes behind a define, not going to define it for now
2019-08-09 22:52:29 -04:00
jacob1
ec0be1cdc9
Fix CELL size check when loading OPS saves
2019-08-05 00:22:37 -04:00
jacob1
e280fea031
arbitrary gravity code cleanup
...
Was working on modernizing the code in my mod, copied all the changes here too
2019-08-05 00:08:06 -04:00
Tamás Bálint Misius
ee2a765758
Only allow strong ciphers to be used
...
How fun it will be to keep this list up to date...
2019-08-03 00:16:12 +02:00
Tamás Bálint Misius
0bdf7ad914
Prevent newlines from being needlessly appended ( fixes #667 )
...
That wrap_if_needed call would sometimes cause empty newlines
to appear under otherwise already well-wrapped blocks of text.
The idea is that whenever a new character is about to be appended,
the current line is checked for being too long with that character
included, and the character is only actually appended after the
wrapper makes sure that appending it won't overflow the line by
inserting a newline. This means that wrap_if_needed is only ever
called before pushing the current character to records, never
after, as was the case here.
2019-08-02 16:58:39 +02:00
Tamás Bálint Misius
7158a00f44
Prevent protocol downgrade attacks
2019-08-02 01:31:02 +02:00
Tamás Bálint Misius
89ef7ce216
Okay, it wasn't functionally equivalent (see 79f9a2d6
)
2019-08-01 16:54:28 +02:00
Tamás Bálint Misius
79f9a2d62d
Prioritise ctypeDraw functions over sparking
...
This adds an exception from brush-based sparking behaviour for
elements that have a ctypeDraw function. A functionally equivalent
exception has been removed in de1fc0f
, thus making it impossible to
ctype-draw SPRK on a few elements that otherwise aren't sparkable,
such as CONV.
2019-08-01 16:47:29 +02:00
jacob1
9327eecd7b
Update gravity mask even while paused
2019-07-31 22:28:02 -04:00
jacob1
7a3c0c1d9a
Fix tpt.eltransition.<elem>.presHighType
2019-07-31 22:10:35 -04:00
Tamás Bálint Misius
8b81023770
Replace a few occurrences of hard-coded font height with FONT_H
...
These two are all I managed to find, but there may be others.
2019-07-31 23:57:13 +02:00
Tamás Bálint Misius
de1fc0f906
Revise ctype-drawing ( fixes #657 )
2019-07-27 19:12:05 +02:00
jacob1
a73d1f97f6
Fix stamps not saving properly to stamps.def. Make "Rescan Stamps" sort stamps by time created
2019-07-26 23:09:27 -04:00
jacob1
c696a11793
Fix 'l' crash
2019-07-24 00:43:48 -04:00
Ian Bastos
4383de7ad5
Implement file drop handler ( #666 )
2019-07-24 00:04:41 -04:00
jacob1
9faf95a858
misc whitespace changes
2019-07-23 00:11:48 -04:00
jacob1
fb06e0028b
Add disable-network command line argument
2019-07-23 00:11:26 -04:00
Tamás Bálint Misius
7ad797275b
Make Renderer::ResetModes actually reset modes
...
See 2333786
.
2019-07-22 16:18:05 +02:00
Tamás Bálint Misius
23337862a4
Use current rendering modes when placing a save ( fixes #446 )
2019-07-22 10:38:13 +02:00
Tamás Bálint Misius
8223e06670
Fix selection background of formatted labels
...
The metrics of the rectangles comprising the selection background
were calculated based on the selected range and the unformatted
text, so these rectangles would be off when the formatted text
was different (i.e. had any formatting).
2019-07-19 11:28:51 +02:00
Tamás Bálint Misius
34b4665d4b
Purge the last traces of PositionAtCharIndex and CharIndexAtPosition
...
Also fix a bunch of other ugly things.
2019-07-19 09:47:15 +02:00
Tamás Bálint Misius
7c793020c6
Fix highlighting in ConsoleView
2019-07-19 09:22:55 +02:00
Tamás Bálint Misius
bea4576d89
Allow wrapping after certain punctuation characters
2019-07-19 08:58:47 +02:00
Tamás Bálint Misius
4bb85578a8
Fix text wrapping ( fixes #166 )
...
This breaks the syntax highlighting in ConsoleView.
I haven't yet thought of a way to fix that properly,
ideas anyone?
2019-07-19 02:53:54 +02:00
Tamás Bálint Misius
cf7e478ac5
Use tool desc. and relevant menu desc. in tool search ( fixes #289 )
2019-07-16 22:17:11 +02:00
Tamás Bálint Misius
dbd5999d1c
Reinstate inversion of inclusion of pressure when shift is held
...
This feature was removed temporarily in a407aba
.
Whether pressure is included when saving or loading is
determined as follows:
* load-like operations (which invoke Simulation::Load) always
include pressure;
* save-like operations (which invoke Simulation::Save) include
pressure if the Simulation.IncludePressure preference node
is true;
* finally the state of the shift key inverts the decision.
2019-07-16 19:43:52 +02:00
Tamás Bálint Misius
a407aba087
Make Simulation.IncludePressure pref node accessible from OptionsView
...
Also remove ugly and messy behaviour depending on whether
shift is being held while copying or stamping.
2019-07-10 00:35:49 +02:00
Tamás Bálint Misius
5391fc3ee0
Get widths in order, various other things
2019-07-06 09:03:07 +02:00
yarek
bc5fd4ffc8
Small UI refactor
...
nFixed category refreshing
2019-07-06 09:03:07 +02:00
yarek
803182dda4
Add horizontal separator
2019-07-06 09:03:07 +02:00
yareky
5508f0ccfd
Allows to change menu selection from hovering to mouse click
...
New option in the menu available. This new menu behaviour is disabled by default.
2019-07-06 09:03:07 +02:00
Cracker1000
b2adbb54db
Add .life serialization support to lsns ( #652 )
2019-06-25 20:57:43 +02:00
Tamás Bálint Misius
92a748bf76
Add missing standard include ( fixes #644 )
...
... which is apparently needed on some systems. I guess we might
be missing includes all over the place.
2019-06-12 22:52:12 +02:00
Tamás Bálint Misius
8897c6daea
Make elem.free rebuild menus ( fixes #649 )
...
Also make sure removed elements don't stay selected.
2019-06-11 21:12:22 +02:00
Tamás Bálint Misius
75e6ece184
Expose transition constants to Lua ( fixes #654 )
2019-06-11 20:43:34 +02:00
Tamás Bálint Misius
07b0d52f90
Add more transition type checks and fix tpt.eltransition
...
Though I'm quite sure nobody actually cares about that table. It's been broken for a
very long time.
The PROP tool now properly calls part_change_type when type is being set.
2019-06-03 19:27:06 +02:00
Tamás Bálint Misius
97bde1111d
Fix part_change_type not being called by sim.partProperty
2019-06-03 12:59:39 +02:00
Tamás Bálint Misius
8671332e60
Fix transition properties not being validated
...
Also clean up some more of the Lua API code, again. Eww.
2019-06-02 17:49:21 +02:00
jacob1
20c98e9b48
Add sim.CELL constant + some other change I made a while ago for some reason
2019-05-15 00:21:17 -04:00
Tamás Bálint Misius
c193e88c28
Leave only the 'wants pressure' check in Simulation::Load for QRTZ/GLAS/TUNG
2019-05-07 21:15:41 +02:00
Nuno Miguel
81380acc86
Fix namespace error
2019-04-20 23:12:54 -04:00
Tamás Bálint Misius
e1b3ddcbcb
Nuke using namespace std;
2019-04-20 17:03:23 +02:00
Tamás Bálint Misius
0179cefc78
Flatten include trees
2019-04-20 15:36:11 +02:00
jacob1
711453ad65
Fix crash when searching in element search ui
2019-04-17 23:49:27 -04:00
Tamás Bálint Misius
e1d32c9352
Move notification out of block locking associated mutex in Gravity.cpp
...
I don't know how it ended up inside, I wanted it outside. For the record,
signalling the CV while the associated mutex is locked is a pessimisation,
it just yields predictable scheduling.
2019-04-17 09:50:41 +02:00
Tamás Bálint Misius
5810a19dbc
Get GetUserName out of the way on Windows
2019-04-17 01:16:45 +02:00
Tamás Bálint Misius
2e76b10619
Use C++11 threads
2019-04-17 00:23:57 +02:00
Tamás Bálint Misius
9d92b77163
Clean up sign-related code a bit
...
Also draw search signs with purple text and thread signs with red.
2019-04-12 17:09:34 +02:00
Tamás Bálint Misius
59afaec70f
Fix Element::Identifier assignment leak ( closes #205 )
...
I didn't use 'fixes' because this doesn't strictly fix that specific
bug (I think?). Anyway, it does remove strdup which is mentioned in the
issue.
Also fix elem.free not allowing DEFAULTFOO_PT_STUFF and similar to
be freed.
2019-04-12 00:27:27 +02:00
jacob1
76a92d75d2
Fix POLO eating PROT ID#0 no matter where it is
2019-04-09 22:11:14 -04:00
Tamás Bálint Misius
06e2836726
Fix Lua reference leaks ( fixes #638 )
2019-04-09 15:28:40 +02:00
Tamás Bálint Misius
783310dc16
Fix a few exceptions returning pointers to temporaries in what()
...
LocalBrowserModelException and GameModelException returned pointers to
data owned by temporaries in what(). Solution: don't create a temporary
in what(), store the ByteString version of the error message in the
exception.
2019-04-08 19:18:54 +02:00
iczero
2ba0f70efd
Fix race condition in Gravity.cpp
2019-04-07 23:31:08 +02:00
Tamás Bálint Misius
ff39c82e48
Print libcurl error buffer to stderr on client error
2019-04-05 21:22:51 +02:00
Tamás Bálint Misius
e3fefe30d1
Add option to redirect cout/cerr to files
2019-04-05 20:55:05 +02:00
jacob1
ea4c355748
better capitalization
2019-04-03 20:19:25 -04:00
Tamás Bálint Misius
6468a51ac1
Add more SSL client error strings
2019-04-04 01:39:11 +02:00
Tamás Bálint Misius
79c5813ba3
Fix msvc compile error again
2019-04-02 19:53:11 +02:00
Tamás Bálint Misius
c8df51a8b3
Fix {ctype} sign macro displaying Empty for non-element ctypes
2019-04-02 19:50:01 +02:00
jacob1
58a3411255
Fix msvc compile error
2019-03-31 16:42:21 -04:00
Tamás Bálint Misius
c8960d1358
Add more sign macros ( fixes #578 )
2019-03-31 21:44:54 +02:00
Tamás Bálint Misius
3de92f5ef4
Fix pavg loading behaviour of QRTZ/GLAS/TUNG ( fixes #607 )
...
Those particles now save/load pavg if pressure is being saved/loaded.
This means they won't ever break again when being loaded as part of
a stamp.
They actually save pavg01 * 64 because pavg is saved as an integer and
these elements are too sensitive to pressure changes for integer pavg
values to be adequate.
2019-03-31 12:18:41 +02:00
jacob1
d22d22e662
Fix pressure / ambient heat being saved as 0 instead of not at all when shift is held
2019-03-30 20:25:51 -04:00
Tamás Bálint Misius
47f898ca5a
Tweak replace mode and specific delete mode ( fixes #631 )
2019-03-30 23:59:20 +01:00
jacob1
4cf0fe5aab
Fix sim.deleteStamp not updating stamps.def
2019-03-25 23:52:48 -04:00
jacob1
e9011033eb
Allow loading window positions on 2nd monitor
2019-03-24 23:17:09 -04:00
Tamás Bálint Misius
89c7d9ea02
Fix save buttons and probably other things not being cleaned up in FileBrowserActivity ( fixed #635 )
2019-03-24 21:47:31 +01:00
jacob1
c7ae820f1c
Add MotD when using a broken alternate update server
2019-03-23 11:01:32 -04:00
Tamás Bálint Misius
e07b133e5a
Another curl version-dependent feature thing
...
Seriously, who thought doubles were a good idea?
2019-03-23 10:30:26 +01:00
Tamás Bálint Misius
bd7aa33286
Only use curl mime feature if it actually exists
2019-03-22 22:27:11 +01:00
Tamás Bálint Misius
5192356b76
Fix AbandonableTask being utterly broken
2019-03-22 15:21:13 +01:00
jacob1
ed2eac627b
Fix msvc compile
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
296b758193
Follow redirects and fix save loading by ptsave parameter
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
341e75cdfe
Fix thumbnails sometimes not being resized in the save browser
...
This was because ImageRequest::Finish used its Width and Height members after calling Request::Finish,
after which the ImageRequest object may get deleted at any time by RequestManager. One solution to this
is to copy (or preferably move) important members to local variables in the Finish functions of
objects derived from Request and use only those after calling Request::Finish (or anything that
in turn calls that).
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
5916c9db9c
Fix a bunch of threading-related issues
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
263f756a20
Add STATICSCHEME macro to be used with requests to STATICSERVER
...
Make up your mind, jacob1!
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
5bc3c03082
Change scheme to https everywhere
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
e29e3481e0
Remove spinning from AbandonableTask::Finish
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
fc8740f7d5
Add curl, rework Request and RequestManager a bit
2019-03-18 23:50:38 -04:00
Tamás Bálint Misius
3d22c1ed4e
Fix dumb things that aren't necessarily lethal but are eyesores
2019-03-18 23:50:38 -04:00
jacob1
2e17b848b1
Make element names a String (unicode support)
...
This won't be used by official elements, but mods or lua scripts could and do use unicode
2019-03-12 00:10:43 -04:00
jacob1
45b391d9ea
Fix updater
2019-03-09 22:09:08 -05:00
jacob1
55e6074942
use override in all possible places
2019-03-09 21:07:32 -05:00
Tamás Bálint Misius
d3fe7e39a5
Turn ThumbnailRendererTask into an AbandonableTask
2019-03-09 20:40:11 -05:00
jacob1
c09a7bb8d9
Fix compile error in some older versions of clang
2019-03-08 00:05:05 -05:00
Tamás Bálint Misius
7fb0b52d79
More renaming, remove a few useless .c_str()s and fix a URL that had previously contained Download and thus fell victim to my mindless text replacement tricks
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
d958adf487
Fix filename field in multipart content-disposition headers
...
All the multipart stuff is going to be handled by curl so this split-by-':' code is going to move into Request.cpp later.
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
30c7f6ded7
Rename Download* to Request* and move HTTP stuff inside src/client/http
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
1864a8649d
Turn RequestBroker::Get/SaveUserInfoAsync into a request derived from Download
...
Also move everything http_ into Download and DownloadManager and nuke RequestBroker.
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
af4d022087
Add RequestMonitor
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
66c49203f2
Use the new thumbnail renderer task everywhere
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
3a76a3a514
Turn RequestBroker::RetrieveThumbnail into a request derived from Download
...
Also start moving RenderThumbnail out of RequestBroker into its own Task. Add mutex to SaveRenderer to guard Render().
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
53f2018c7e
Turn RequestBroker::RetrieveAvatar into a request derived from Download
...
Also add http namespace because classes clashed a lot.
2019-03-07 22:56:08 -05:00
Tamás Bálint Misius
8b5cf394e0
Replace http_* calls with Download calls in non-RequestBroker stuff
2019-03-07 22:56:08 -05:00
jacob1
9e110cba73
zoom api changes: throw errors instead of returning bools, zoomEnabled takes book as arg, some small refactoring
2019-03-05 23:43:41 -05:00
ssccsscc
a06124a5a9
Fixed typo
...
Fixed typo in function for detection mouse inside zoom
2019-03-05 23:43:41 -05:00
ssccsscc
1355a4363e
Added Lua function for working with zoom
2019-03-05 23:43:41 -05:00
ssccsscc
a9b862645a
Added Lua function for working with zoom
2019-03-05 23:43:41 -05:00
jacob1
d4c638869f
Increase local browser ui size
2019-03-03 23:48:12 -05:00
jacob1
3bb75ca951
Tick Client 10 times a second, makes thumbnails appear way faster
2019-03-03 23:47:54 -05:00
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
mniip
12e79ea111
Fix compilation on windows
2018-05-09 19:05:39 +03:00
mniip
f30215bb83
Merge remote-tracking branch 'origin/master'
2018-05-08 08:36:15 +03:00
mniip
f8da7452c6
Remove codecvt
2018-05-08 08:35:06 +03:00
mniip
32aaafee94
Move data into either cpp files or const arrays
2018-05-08 07:38:55 +03:00
jacob1
190107c1b2
fix CLNE
2018-05-08 00:01:34 -04:00
mniip
deaa17a947
Work around some holes in the BitmaskType specification
2018-05-08 06:05:12 +03:00
mniip
d404f4a538
Fix some C++14-isms.
...
Apparently C++11 is more strict regarding default argument and return
value conversions. Also return brace-initializer construction has had
little support.
2018-05-08 05:48:32 +03:00
mniip
ea1d574caf
Add copy-paste to the font editor
2018-05-08 03:58:30 +03:00
mniip
954086fb86
Fixx macos compilation
2018-05-08 03:10:19 +03:00
mniip
51adf37853
Fix order and composition of String(char[]) operators to make clang happy
2018-05-07 08:10:50 +03:00
mniip
e0af41350a
Add String/Format commentary
2018-05-07 06:22:24 +03:00
jacob1
56cba4595c
Merge branch 'unicode'
2018-05-06 20:15:23 -04:00
jacob1
49703404be
change almost all the rest of the rng calls to .chance/.between
2018-05-05 11:56:17 -04:00
mniip
f8586ea3a2
Remove ByteString::Stream
2018-05-04 23:10:39 +03:00
mniip
e29d2c58c2
Copy the Format interface too
2018-05-04 21:12:47 +03:00
mniip
1485ae5a21
Fix incorrect uses of String(char[])
2018-05-04 20:05:26 +03:00
mniip
d6a92bdab5
Copy the String interface to ByteString
2018-05-04 14:45:57 +03:00
jacob1
ef2a0c2c81
fix single pixel pipe, remove ugly color bit hack
2018-05-03 21:40:48 -04:00
jacob1
44a8665f6f
update rng functions in a lot of element files to use .between/.chance
...
conversion is still very incomplete
2018-05-02 23:53:15 -04:00
mniip
7f5c164d22
Fix partial name element search
2018-05-03 05:22:05 +03:00
mniip
730cf0806a
Fix number to string conversion failing after a failed string to number
...
conversion
2018-05-03 04:55:20 +03:00
mniip
5d80d77f55
Remove String::Stream and with it the locale hacks.
...
Also fixes the crash when compiled with -O
2018-05-03 04:18:40 +03:00
mniip
ecb41661f8
Fix String::{Begins,Ends}With and with it a bunch of stuff
2018-05-03 04:12:09 +03:00
mniip
5ff8cefca4
Replace String::Stream parsing with number splitting
2018-05-03 04:11:43 +03:00
mniip
1ea7a035d1
Add Number parsing facilities
2018-05-03 02:54:32 +03:00
mniip
4b92926f0d
Fix partition again
2018-05-03 00:45:22 +03:00
mniip
2f9cab7e54
Move "big" methods out of the header. Also fix Partition
2018-05-03 00:34:47 +03:00
mniip
d1610c5127
Add string partitioning methods
2018-05-02 23:42:34 +03:00
mniip
6c9cb174fb
Change some uses of String::Stream to StringBuilder
2018-05-02 22:11:41 +03:00
mniip
7523c14252
Reword the Format interface
2018-05-02 08:45:50 +03:00
mniip
eeacc90fc5
Add StringBuilder formatters
2018-05-02 06:54:28 +03:00
mniip
f864f81a76
StringBuilder mockup
2018-05-02 05:38:08 +03:00
mniip
ced7b0c993
Move the ConversionError class
2018-05-02 02:22:10 +03:00
mniip
a121c62c3b
Add some helper methods and rewrite some of the string manipulation code
2018-05-02 01:32:04 +03:00
mniip
833383b121
Move TPT's icons to the (real) Private Use Area of the unicode
2018-05-01 07:03:48 +03:00
mniip
b8c5e94a41
Add blocks/gaps to the font format
2018-05-01 05:57:03 +03:00
mniip
9d927cbd6f
Add an auxiliary font reader class to reduce code repetition
2018-05-01 02:21:34 +03:00
mniip
ff27d69424
Switch from std::string to String/ByteString in most of the code
...
Also switch SimulationData from weird arrays to std::vector
2018-04-30 21:13:24 +03:00
mniip
4912674bfe
Add unicode/byte string classes which are supposed to eventually phase
...
out std::string
2018-04-29 22:55:00 +03:00
mniip
c0c550e920
Add a new font editor
2018-04-29 18:49:40 +03:00
jacob1
d2e0986bf6
fix occasional issue where deleting the particle RAYT is detecting would delete the particle it is sparking instead
...
only happened when unpaused and only if the spark was in a certain state. part_change_type was called with the wrong coordinates, which confused pmap and put the sparked particle on top of pmap in the detected particle for a frame
2018-04-29 00:48:53 -04:00
mniip
04c875120a
fix some tools' icons breaking their bounding box
2018-04-29 04:23:03 +03:00
mniip
16acc95621
Enlarge the font by adding 2 pixels above the cap height
2018-04-29 04:08:03 +03:00
jacob1
67132c9925
fix another out of bounds crash relating to stasis wall
2018-04-28 11:45:16 -04:00
jacob1
be57130c7a
fix crash when particles are out of bounds
2018-04-28 00:27:03 -04:00
jacob1
777cb967a5
add M_PI definition back
2018-04-28 00:26:43 -04:00
jacob1
db8b32363e
remove tpt-math.h includes
2018-04-28 00:09:14 -04:00
jacob1
29920c8999
remove trig tables, they are unused and alternatives are faster
2018-04-28 00:04:42 -04:00
jacob1
d56a4ee378
make RNG a singleton, update a few calls and start using between/chance functions
2018-04-28 00:01:08 -04:00
jacob1
f9211c2f90
msvc compile fix
2018-04-23 22:46:28 -04:00
jacob1
de757bc2c3
made sure the windows version actually compiled
2018-04-23 22:32:03 -04:00
jacob1
601af1feff
fix compile warnings, remove ugly PRTI/PRTO hack
2018-04-23 21:57:30 -04:00
Saveliy Skresanov
1c600249dc
Remove a useless header.
2018-04-23 22:55:22 +07:00
Saveliy Skresanov
7afd82469e
Use vector math in cyclone.
2018-04-23 22:48:10 +07:00
Saveliy Skresanov
cda029ff42
Use xoroshiro128+ random generator (everywhere besides BSON code).
2018-04-23 22:47:44 +07:00
jacob1
fbe81baca3
make Platform::ExecutableName return std::string (fixes minor memory leak)
...
update code is untested
2018-04-21 19:28:47 -04:00
Vgr E. Barry
90cfd1f70f
Add inverted mode for TSNS and PSNS with .tmp == 2
2018-04-21 12:36:25 -04:00
jacob1
9211fab9f7
fix memory leak when saving stamps
2018-04-21 00:34:49 -04:00
jacob1
6731fa16b7
fix memory leaks when loading stamps ('l') and viewing saves
2018-04-21 00:15:15 -04:00
moonheart08
22b9bf4953
Adds RAYT ( #540 )
2018-04-10 21:32:19 -04:00
krawthekrow
64b7fcf334
fix single-particle PSTN bug
2018-04-08 20:10:51 -04:00
jacob1
70b02301ff
fix compile error
2018-04-05 23:40:21 -04:00
jacob1
11b2f58db7
define M_PI in tpt-math.h
2018-04-05 23:31:28 -04:00
jacob1
34e73e4d7d
remove asin/acos because they aren't necessary and don't work
2018-04-05 23:07:29 -04:00
jombo23
564a9dfc48
Add ultrafast semi-accurate trig functions and update Cylone to use them. ( #547 )
2018-04-05 23:04:57 -04:00
jacob1
7f985b47dc
whitespace fixes + description change
2018-04-03 22:33:25 -04:00
moonheart08
3f99a59cb2
Adds STASIS wall. ( #556 )
2018-04-03 22:24:38 -04:00
wolfy1339
27f6a6b297
Strip whitespace from files in repo ( #553 )
2018-04-03 21:46:01 -04:00
wolfy1339
31fcb1bfaa
Fix some errors produced by clang
2018-04-03 21:02:23 -04:00
jacob1
f812d7194b
fix obscure division by 0 issue that only QuanTech would ever be affected by
2018-04-02 23:06:51 -04:00
jacob1
9f1d676391
Version 93.3 build 340
2018-04-01 17:19:03 -04:00
jacob1
07868ba2b7
Adjust SOAP links to non-SOAP particles properly when saving
2018-04-01 16:04:38 -04:00
jacob1
dfc5bd1d85
don't restrict containing certain new 93.0 features to 93.0 (so renderer can render them)
2018-04-01 15:28:54 -04:00
jacob1
67bc12de97
Fix issue where TPT was bought by EA
2018-04-01 15:26:13 -04:00
jacob1
71c96dd060
fix salt issue, for future reference
2018-04-01 15:06:33 -04:00
jacob1
9c5876f0b4
fix crash when can't purchase back, fix debug info in tampering message
2018-03-31 23:38:53 -04:00
jacob1
fdd6618896
fix buying erase tool in a pack, increase price of erase tool to 5000
2018-03-31 23:09:11 -04:00
jacob1
17c79f1661
fix bug where purchases always succeeded
2018-03-31 22:44:15 -04:00
jacob1
40d2850ff7
TPT has now gone free to play! Many elements are unlocked by default, but by using Powdercoins you can unlock new elements and promote your saves to front page!
2018-03-31 22:40:23 -04:00
jacob1
1f97199df6
fix solar panels sometimes not working
2018-03-25 18:34:25 -04:00
jacob1
1b658a3022
version 93.1 build 338
2018-03-25 12:29:16 -04:00
jacob1
b89ea68acd
remove fromNewerVersion TODOs in GameSave.cpp
2018-03-24 14:38:26 -04:00
jacob1
fac996722b
save stickmen rocket boots / fan flag in saves
2018-03-24 13:09:02 -04:00
jacob1
3bd35ce83f
fix STKM + fan wall
2018-03-21 23:58:27 -04:00
jacob1
126acb7db5
change TSNS/HSWC/PSNS/PUMP .tmp to 0 in older saves
2018-03-18 19:59:48 -04:00
jacob1
f76d10df4d
remove unused cpu check
2018-03-18 10:25:52 -04:00
jacob1
f45d0d1683
save palette now works for elements stored in ctype/tmp/tmp2
2018-03-17 21:46:35 -04:00
jacob1
96de9bbc36
don't use _update in update filename because of windows "feature"
2018-03-13 22:13:15 -04:00
jacob1
01741b05ce
betas should still look for stable updates
2018-03-12 23:32:37 -04:00
jacob1
6d515c3009
remove debug thing, blame jacob1
2018-03-11 23:03:11 -04:00
jacob1
138410c41f
blame simon
...
render compatibility stuff, allow renderer to open saves with elements it doesn't understand, because something is better than nothing
2018-03-11 23:02:12 -04:00
jacob1
3b95ff7983
93.0 save loading fix (todo: remove this stuff on 93.0 release)
2018-03-10 20:30:20 -05:00
jacob1
c861d69f9c
add RESTRICT_VERSION check to digitation stuff, update readme date
2018-03-10 17:03:44 -05:00
jacob1
f2ac8a951c
add ctrl+q shortcut to exit the game from anywhere
2018-03-10 16:01:14 -05:00
jacob1
ab4cdf2aa1
minor efficiency fix
2018-03-10 15:43:25 -05:00
jacob1
ad5b12fe6d
part_change_type now returns true if it killed the particle
2018-03-10 15:39:39 -05:00
jacob1
b07e8d93d5
When finding particles, show how many were found in HUD
2018-03-07 23:19:55 -05:00
jacob1
5a61e6a619
a bunch of fixes to heat/pressure digitation
...
add limits so that you don't get impossible temp or pressures
only undigitize from FILT 1 pixel away
ensure everything only works through FILT, not sometimes PHOT or BRAY
HSWC with .tmp of 1 no longer conducts heat to FILT
2018-03-07 23:03:10 -05:00
jacob1
5eb0d1bd27
add hidden settings for not including/loading pressure in saves, closes #524
...
If I ever redo the options menu, there will be an actual checkbox for these
2018-03-06 21:01:49 -05:00
Novocain1
68efe49a5b
Digitization (PSNS) and Application of Digitized Pressure (PUMP) ( #532 )
2018-03-03 23:04:51 -05:00
jacob1
c3ff761288
my editor decided to use spaces here for some reason
2018-03-03 22:07:36 -05:00
jacob1
bd7f9fa247
prevent people from stealing the 404 save
2018-03-03 22:05:08 -05:00
jacob1
5dd01e9976
I guess if we're trying to save instructions, we should do it like this
2018-03-03 21:36:11 -05:00
jacob1
d666559481
more accurate O2 fusion calculation, fixes #505
...
seemed to only be 3% slower in my tests with a full screen of heated pressurized O2
2018-03-03 21:15:28 -05:00
jacob1
2adae64041
fix ambient heat going to high negative values with high life LIGH, fixes #536
2018-03-03 20:58:39 -05:00
jacob1
f9b5c6bb1a
use std::string instead of c strings for sign stuff, fixes #545
2018-03-03 20:44:03 -05:00
jacob1
5f4c5fb118
Fix &255 usage
2018-02-28 22:01:49 -05:00
krawthekrow
d7e26e8c03
fix free particle list messing up during particle debug
2018-02-24 18:24:07 -05:00
jacob1
a0a7281cc7
add TOOL_CYCL lua constant, change ID to 7
2018-02-14 22:19:31 -05:00
jombo23
0a63e1afb5
Add Cyclone Tool and Brush X/Y Arguments ( #542 )
2018-02-13 00:08:00 -05:00
Nikolay Marchuk
30b8078ad2
fix undoing changes in gravity mask
2018-02-13 00:06:55 -05:00
jacob1
257fe6f61b
Fix debug print in PLNT causing lag
2018-02-12 00:09:35 -05:00
jacob1
1237b49e37
allow compiling renderer with --msvc in scons
2018-02-11 14:47:36 -05:00
jacob1
0d1c3f5f49
ctrl+p shortcut to select prop tool
2018-02-03 17:39:23 -05:00
jacob1
3d66b7e263
remove hardcoded op
2018-02-03 17:38:47 -05:00
jacob1
25ef5b19fd
fix STOR to PIPE
2018-01-07 20:27:54 -05:00
jacob1
1405c10046
fix STOR->PRTI transfer
2018-01-03 00:13:06 -05:00
jacob1
5012c3cfe6
fix build error when UPDATESERVER is defined
2018-01-01 12:12:43 -05:00
jacob1
07988147b9
prevent compiling if pmap doesn't have enough space, make lua elements favor 1 byte IDs
2018-01-01 00:31:44 -05:00
jacob1
b5159ab74e
Changes to save format and PIPE
...
Update save format to optionally store type as two bits
PIPE now stores element in ctype
Disallow uploading saves using two bytes in type or other fields
update save format to store pmapbits and automatically convert data
2017-12-31 23:55:41 -05:00
jacob1
0c8c4de125
convert all of the rest of the things except GameSave.cpp and pipe/ray elements
...
also add sim.PMAPBITS and sim.PMAPMASK constants
2017-12-29 21:01:28 -05:00
jacob1
20e1abd840
update Simulation.cpp to use new macros
2017-12-29 17:34:19 -05:00
jacob1
da45e0e469
last src/simulation/element changes
...
PSTN, CRAY, and possibly some others will need to be modified to account for this without breaking saves. The save format will need to include PMAPBITS and adjust properly
2017-12-28 21:27:01 -05:00
jacob1
208cf14ce8
convert r&0xFF in src/simulation/elements
2017-12-28 13:00:23 -05:00
jacob1
4b1c929f58
use macros for the rest of the necessary >>8/<<8 in src/simulation/elements
2017-12-28 12:18:44 -05:00
jacob1
ac24810da5
add some defines to reduce usages of hardcoded r>>8
2017-12-28 12:03:26 -05:00
jacob1
fbf7210814
fix division by 0 in PHOT+C5 interaction, shoot the photon off at 90 degrees instead
2017-12-27 18:11:33 -05:00
jacob1
c31267b06f
use unique_ptr in GameSave::readPsv, rename variables
2017-12-27 16:57:32 -05:00
jacob1
ae9b416f2f
use c++11 (unique_ptr) in GameSave::readOPS
2017-12-27 13:00:48 -05:00
jacob1
70bbb16f37
sort local saves alphabetically, accounting for uppercase/lowercase
2017-12-27 11:50:28 -05:00
jacob1
887d60628d
use c++11, use unique_ptr in GameSave::SerializeOPS
2017-12-27 11:50:09 -05:00
jacob1
23c68b1db1
fix issue loading manually created SOAP bubbles in some saves
2017-12-19 22:15:32 -05:00
jacob1
553eaf9524
fix loading saves with stacked particles
2017-12-19 21:15:19 -05:00
krawthekrow
68af269b76
sort local saves alphabetically
2017-12-19 21:15:06 -05:00
jacob1
e956e7c5fd
fix issue where stamps would stack if you loaded multiple in one frame
...
sim.loadStamp in the console, or a lua script
2017-12-03 19:30:21 -05:00
jacob1
63c13bda89
fix use of deprecated luaL_getn function
2017-11-23 22:34:22 -05:00
jacob1
c2064b48c3
fix comment
2017-11-23 22:23:56 -05:00
jacob1
3529f6f468
fix ambient heat not loading in ctrl+c paste, fix pressure resetting to 0 when loading saves without pressure
2017-11-23 22:09:33 -05:00
jacob1
78fb27b354
fix SOAP links not saving/loading properly
2017-11-23 21:53:21 -05:00
jacob1
1971efe8b8
include tpt-minmax in the rest of the files it is needed in
2017-11-23 16:21:19 -05:00
jacob1
c9d9f5b71d
more include fixes (CoordStack.h)
2017-11-23 16:06:09 -05:00
jacob1
2ccbec1d05
include tpt-minmax header in Simulation
2017-11-23 15:12:47 -05:00
jacob1
a674dc93e2
include tpt-minmax header in Renderer
2017-11-23 15:01:04 -05:00
LBPHacker
a12785cd5d
Use a dropdown instead of a textbox
...
Textboxes don't mix well with error messages fired from from keypress handlers.
2017-11-23 12:24:34 -05:00
LBPHacker
be29fad7e8
Add support for window scale modes other than 1 and 2
...
Window scale can now be anything between 1 and 10 (suggest something other than 10 for maximum scale?). This required a number of subtle changes:
* made blit2 (PowderToySDL.cpp) handle scale modes correctly (it really only handled scale:2 correctly before)
* replaced `bool scale` with `int scale` everywhere in the options view/model/controller
* replaced the _large screen_ checkbox with a _window scale_ textbox in the options view
The new scale is only checked and applied when the options view is closed. There's no reason to not apply it live, I just chose not to.
This commit does *not* make TPT able to figure out an optimal scale mode at first run. It still suggests using scale:2 if it makes sense though.
I had doubts about using a second loop in blit2 but it doesn't seem to be an issue. If there's a more optimal way of going about what blit2 does, I haven't figured it out.
(Sublime seems to have eaten a few trailing spaces, hence there are a few seemingly identical pairs of lines in the diff.)
2017-11-23 12:24:34 -05:00
krawthekrow
62d57cc1de
fix indentation
2017-11-23 00:42:42 -05:00
Novocain1
db6fb5461d
Adds ways to digitize temperature and ways to turn that digitization to an actual temperature. ( #525 )
2017-11-23 00:28:12 -05:00
wolfy1339
255ca13fab
Remove unused code in src/Config.h ( Fixes #516 )
...
- Remove commented out code as it was not used anywhere in the code
2017-11-23 00:18:44 -05:00
wolfy1339
87f3ada7b0
Remove stuff from Config.h that doesn't belong
2017-11-23 00:12:48 -05:00
jacob1
6cfaed0e1b
fix compile warnings, fix tooltips fading in too slowly
2017-11-23 00:10:15 -05:00
RobertBScott
4c3b4dab47
Implemented tooltip element descriptor display in element search.
2017-11-23 00:10:15 -05:00
jacob1
b5bc4ad3d2
potential crash on exit fix (can't tell if it actually fixes it or if it is related)
2017-11-18 17:11:46 -05:00
jacob1
1b19e042b2
fix crash when using tpt.start_getPartIndex
2017-11-04 13:22:22 -04:00
Matthew Moore
7d4010d2df
Fix Newtonian Gravity Tooltip
2017-10-24 22:30:39 -04:00
jacob1
3c2de70564
fix compilation / ensure this check only runs when compiling on windows
2017-10-13 00:03:35 -04:00
wolfy1339
536b20b164
Fix pthread deprecation warning, fixes #502
2017-10-12 23:33:05 -04:00
QuanTech0
c52c2d7a6f
Expanding vocabulary.
...
:)
2017-10-07 17:32:28 -04:00
jacob1
97c4123533
translate wall grids when shifting stamps by more than 4 pixels
2017-10-04 21:07:00 -04:00
jacob1
4ff0a9f52c
only expand stamp in the direction you are moving
2017-10-04 21:07:00 -04:00
krawthekrow
ca542b1ef1
autoexpand save when particles are translated out of boundaries
2017-10-04 21:07:00 -04:00
jacob1
17c9340434
CRAY wall checking fix
2017-10-02 21:38:15 -04:00
jacob1
77b6f44c74
fix issue with molten STKM that could break the simulation and cause crashes
2017-09-28 23:12:16 -04:00
jacob1
631570cbd0
mac luajit fix, version 92.5.336
2017-09-20 20:42:24 -04:00
jacob1
834e966842
Version 92.2.333
2017-09-04 23:08:52 -04:00
jacob1
6bd068713e
recording improvements
...
remove 'r' record shortcut
add tpt.record function. Still gives the user a confirm prompt
recordings now go into recordings/<timestamp>/, where timestamp is the time the recording was started. <timestamp> is returned by the tpt.record function. Each new recording starts the filenames over at 0 again.
you probably still need a lua script to use the recording feature, this should make it easier for those
2017-09-04 14:06:28 -04:00
jacob1
e4089a276a
fix illuminati symbols appearing when rescanning stamps
2017-09-04 12:51:28 -04:00
QuanTech0
07e879e74c
fix buffer overflow in opt_meth_setoption ( #496 )
2017-09-03 19:48:28 -04:00
jacob1
c34b54d974
add sim.takeSnapshot lua function
2017-08-31 23:48:00 -04:00
MrZacbot
be786d85a7
Added a bounds check for BOMB reading pmap ( #497 )
2017-08-29 20:44:14 -04:00
jacob1
1ceae1ba43
fix interface api in lua5.2
2017-08-20 18:13:46 -04:00
LBPHacker
ce58c4aadf
Fix Simulation::Restore decrementing life values
...
Simulation::Restore used to call Simulation::RecalcFreeParticles. The problem with that was that RecalcFreeParticles does more than just what its name suggests: it also decrements life values. Restore shouldn't do that. The solution is to tie decrementing life values to an argument in RecalcFreeParticles. This is also makes to code more future-proof as it lets everyone know that they have to keep their eyes peeled when invoking RecalcFreeParticles.
2017-08-17 00:23:37 -04:00
jacob1
eb1bcf1b95
Revert "Temporarily use IP addresses instead of dns (untested)" fa322902bf
2017-08-11 20:54:36 -04:00
jacob1
fa322902bf
Temporarily use IP addresses instead of dns (untested)
2017-08-07 12:51:12 -04:00
jacob1
3045125a88
Version 92.1.332
2017-08-06 21:56:58 -04:00
jacob1
1dd4b00ec6
minor gravity transition fix
2017-08-06 19:41:04 -04:00
jacob1
55b31d6f0e
my mod uses -1 for this
2017-08-05 21:47:39 -04:00
jacob1
6fca44fd70
fix newtonian gravity state transitions flashing
2017-08-05 17:53:41 -04:00
jacob1
fd91fa4438
'enter' closes SaveIDMessage interface after uploading a save
2017-08-03 23:27:58 -04:00
jacob1
26f70331de
fix debug thing breaking pressure display in HUD, fixes #494
2017-08-03 23:12:03 -04:00
jacob1
6931f35520
hold shift when saving or loading stamps to not save / load pressure, closes #491
2017-08-03 00:13:06 -04:00
jacob1
99c568f136
ensure air doesn't "leak" out of TTAN containers when loading stamps and saves
2017-08-02 23:49:51 -04:00
jacob1
ac489c9295
hide .tmp in HUD for RFRG and RFGL
2017-07-29 22:54:39 -04:00
jacob1
7e9124033b
fix RFRG description typo (use more common spelling)
2017-07-29 22:49:40 -04:00
jacob1
c4e1f49618
fix BOMB explosion - wasn't creating circle EMBR, and too much velocity EMBR
2017-07-29 22:47:07 -04:00
jacob1
8fe3ca0f5c
don't use std::pow here
2017-07-29 11:26:53 -04:00
jacob1
2a829c2394
fix ctrl+f shortcut not working with particle debugging enabled
2017-07-29 00:32:22 -04:00
jacob1
a278892267
make XCNTR / YCNTR not hardcoded
...
Alexwall request
2017-07-29 00:15:09 -04:00
jacob1
b38b2047e6
some changes to sign handling (attempt to fix crash that I can't reproduce)
2017-07-28 21:19:06 -04:00
jacob1
adb39b91a9
attempt to reduce "script is not responding" when debugging (valgrind / breakpoints)
2017-07-28 20:32:46 -04:00
jacob1
b02a72a77b
add length limit to authors on saving/loading, fix type issue causing mass duplication
...
When making a local save, then stamping and loading the stamp (without doing anything else in between), issues with the code would cause the unsigned int in the json to turn into a normal int. It would then think the authors data from the stamp was from something else and append it. For users that do an excessive amount of stamping, this causes duplication in the authors links that shouldn't have ever happened.
2017-07-28 20:00:19 -04:00
jacob1
cbad202ac2
fix brush when CELL is changed to 1
2017-07-28 19:40:50 -04:00
jacob1
8064d3b467
remove useless debug print in !set
2017-07-25 20:11:57 -04:00
jacob1
2b3fbbd50e
fix -nan RFRG glitch
2017-07-24 21:55:16 -04:00
jacob1
541417008e
fix FIGH spawning glitch: id:2165807
2017-07-24 21:44:37 -04:00
jacob1
16323320ce
turned off HSWC acts as insulator for HEAC
2017-07-24 21:30:12 -04:00
jacob1
8c7729de85
"failed to x" messages in save browser are no longer arbitrarily yellow
2017-07-23 23:20:43 -04:00
jacob1
bf9014ac60
fix HEAC conducting to HSWC which is turned off
2017-07-23 21:17:21 -04:00
jacob1
3c4ca5cd4b
ensure DMG turns WOOD to SAWD
2017-07-23 19:39:09 -04:00
jacob1
1cfd9d8fc7
only display updates based on build number, not version number
2017-07-23 16:41:38 -04:00
jacob1
aad8eba5df
Version 92.0
...
also update README, and make ctrl+a moderator only shortcut
2017-07-23 10:58:52 -04:00
jacob1
ddce20da5b
authors clipboard fix
...
MergeStampAuthorInfo prevents some duplication now, don't need this
2017-07-16 21:33:49 -04:00
jacob1
971e405462
don't add null stuff when loading old stamps without author info
2017-07-16 15:52:18 -04:00
jacob1
ad5a2a0972
tpt.parts: only prevent writing to dead particles, not reading
2017-07-16 11:43:50 -04:00
jacob1
b8ce522779
sim.signs.delete() api function
2017-07-16 10:42:53 -04:00
jacob1
6d141b0722
add new PhotonReflectWavelengths property, add reflection color for POLO
2017-07-16 00:07:32 -04:00
jacob1
08ba035a53
fix nesting checks
2017-07-15 16:27:11 -04:00
jacob1
6efedcdd33
undo authors changes on ctrl+z, prevent excessive nesting
2017-07-15 16:21:16 -04:00
jacob1
5ee10d14e4
reduce unnecessary #include dependency chains
...
for example, elements no longer include Client.h or Graphics.h, and interface stuff won't include Window.h or Graphics.h unless requested
2017-07-13 23:24:35 -04:00
jacob1
781a90a970
CAUS.cpp whitespace fixes, closes #464
2017-07-13 21:07:08 -04:00
jacob1
711d15fe0c
fix compile error, blame @moonheart08
2017-07-13 21:02:23 -04:00
moonheart08
a76afb0bfc
Add the ability to make POLO from acceleration ( #477 )
...
tmp value of 310+ results in POLO.
2017-07-13 20:58:18 -04:00
QuanTech0
1ff280acb2
another typo fix...
2017-07-13 20:56:51 -04:00
jacob1
f3a7d966d2
potential fix in sim.partCreate, also
2017-07-13 20:55:03 -04:00
LBPHacker
7dd538b82c
Fix tpt.parts being unsafe
...
`tpt.parts` does check whether the particle ID it gets is valid, but it doesn't check whether that particle ID is used. One could potentially modify the life property of dead particles to break the linked list of free particle IDs, thus potentially gaining the ability to read from or write to arbitrary addresses in memory.
2017-07-13 20:33:46 -04:00
jacob1
8e5b0c760e
Add logging inside saves which remembers which other saves material was taken from
...
The logging is saved inside the bson data in all online saves, local saves, stamps, and clipboard pieces. It is loaded back when reloading each of those.
See #474 for the format of the data. It is the same format for the bson data. Note that "links" is an array of objects. It can be recursive.
There is some effort to not duplicate information, we don't care if you loaded a stamp 10 times or if you are using the clipboard in your own save. Extra information is mostly not saved for your own stuff, only when you take material from other saves.
Press ctrl+a in debug builds to show what info it is currently saving in Client. Also enabled in snapshots for now.
There is one unrelated change in here, which fixes a crash pointed out by QuanTech. It was also save related and it was too close to the other changes to separate it into another commit. It fixes a crash when saving signs with invalid unicode. the BSON library doesn't like this, it was returning an error but we ignored it, which caused a crash. It now notices those errors. I also had to update several Serialize calls to check if it actually returned save data, or else it then would have started crashing there instead.
Also some debug prints were removed
2017-07-13 00:19:35 -04:00
jacob1
be6ac1d91e
workaround for incorrect 404 save
2017-07-01 21:38:57 -04:00
jacob1
057435baa6
Differentiate between created date / updated date in save preview
...
still only shows most recent date, this just changes the text
2017-06-30 21:21:09 -04:00
jacob1
d0f1024f95
add BCOL + NEUT -> SAWD, closes #471 and #472
2017-06-30 20:10:15 -04:00
My main account
284e653aa5
Convert another if-elseif block to switch ( #465 )
2017-06-30 20:01:12 -04:00