Commit Graph

1058 Commits

Author SHA1 Message Date
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
Tamás Bálint Misius
47f898ca5a
Tweak replace mode and specific delete mode (fixes #631) 2019-03-30 23:59:20 +01: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
55e6074942 use override in all possible places 2019-03-09 21:07:32 -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
jacob1
28bfa9dfc9 GoL is now affected by stasis wall 2019-02-20 23:25:28 -05:00
wolfy1339
a2bb531c46 Remove inclusion of deprecated C++ headers 2019-01-31 20:09:15 -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
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
jacob1
b41f228c10 fix a few cases where the rng calls were converted improperly 2018-11-20 21:02:20 -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
jacob1
f7e8ade347 fix another single-pixel PIPE generation issue 2018-09-30 23:46:52 -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
bbef295fe3 fix default elements disappearing when loading saves if the identifiers don't match 2018-08-24 23:10:46 -04:00
jacob1
d435f30834 fix LDTC temp/airdrag 2018-07-22 00:05:03 -04:00
krawthekrow
711d65bbd5 rewrite ldtc to be less buggy 2018-07-21 22:27:11 -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
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
jacob1
36a545124e fix setting element properties in legacy lua api 2018-05-13 16:16:14 -04:00
jacob1
8a8cbb81e4 fix getting/setting description in elements api 2018-05-10 00:27:55 -04:00
mniip
3781b36c31 Merge branch 'data' 2018-05-09 19:28:58 +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
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
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
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
6c9cb174fb Change some uses of String::Stream to StringBuilder 2018-05-02 22:11:41 +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
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
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
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
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
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
Vgr E. Barry
90cfd1f70f Add inverted mode for TSNS and PSNS with .tmp == 2 2018-04-21 12:36:25 -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
11b2f58db7 define M_PI in tpt-math.h 2018-04-05 23:31:28 -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
07868ba2b7 Adjust SOAP links to non-SOAP particles properly when saving 2018-04-01 16:04:38 -04:00
jacob1
67bc12de97 Fix issue where TPT was bought by EA 2018-04-01 15:26:13 -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
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
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
f45d0d1683 save palette now works for elements stored in ctype/tmp/tmp2 2018-03-17 21:46:35 -04:00
jacob1
c861d69f9c add RESTRICT_VERSION check to digitation stuff, update readme date 2018-03-10 17:03:44 -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
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
Novocain1
68efe49a5b Digitization (PSNS) and Application of Digitized Pressure (PUMP) (#532) 2018-03-03 23:04:51 -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
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
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
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
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
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