Commit Graph

506 Commits

Author SHA1 Message Date
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
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
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
Tamás Bálint Misius
de1fc0f906
Revise ctype-drawing (fixes #657) 2019-07-27 19:12:05 +02:00
jacob1
9faf95a858 misc whitespace changes 2019-07-23 00:11:48 -04: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
c193e88c28
Leave only the 'wants pressure' check in Simulation::Load for QRTZ/GLAS/TUNG 2019-05-07 21:15:41 +02:00
Tamás Bálint Misius
0179cefc78
Flatten include trees 2019-04-20 15:36:11 +02: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
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
28bfa9dfc9 GoL is now affected by stasis wall 2019-02-20 23:25:28 -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
d0dd9ec22f fix sim.brush being double size, fix compile warning 2018-11-21 12:38:26 -05:00
jacob1
48bc6e02ba Fix gcc 8 warnings 2018-11-03 19:36:07 -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
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
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
a121c62c3b Add some helper methods and rewrite some of the string manipulation code 2018-05-02 01:32:04 +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
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
db8b32363e remove tpt-math.h includes 2018-04-28 00:09:14 -04:00
jacob1
601af1feff fix compile warnings, remove ugly PRTI/PRTO hack 2018-04-23 21:57:30 -04:00
Saveliy Skresanov
cda029ff42 Use xoroshiro128+ random generator (everywhere besides BSON code). 2018-04-23 22:47:44 +07:00
jacob1
11b2f58db7 define M_PI in tpt-math.h 2018-04-05 23:31:28 -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
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
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
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
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
1237b49e37 allow compiling renderer with --msvc in scons 2018-02-11 14:47:36 -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
20e1abd840 update Simulation.cpp to use new macros 2017-12-29 17:34:19 -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
2ccbec1d05 include tpt-minmax header in Simulation 2017-11-23 15:12:47 -05:00
krawthekrow
62d57cc1de fix indentation 2017-11-23 00:42:42 -05:00
jacob1
77b6f44c74 fix issue with molten STKM that could break the simulation and cause crashes 2017-09-28 23:12:16 -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
1dd4b00ec6 minor gravity transition fix 2017-08-06 19:41:04 -04:00
jacob1
6fca44fd70 fix newtonian gravity state transitions flashing 2017-08-05 17:53:41 -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
541417008e fix FIGH spawning glitch: id:2165807 2017-07-24 21:44:37 -04:00
jacob1
6d141b0722 add new PhotonReflectWavelengths property, add reflection color for POLO 2017-07-16 00:07:32 -04:00
My main account
284e653aa5 Convert another if-elseif block to switch (#465) 2017-06-30 20:01:12 -04:00
jacob1
2e4617c956 GAS+CAUS+pressure = RFRG, move HEAC to solids 2017-06-18 23:32:25 -04:00
My main account
5de384cfbc Fix CRAY creating FILT 2017-06-18 21:49:47 -04:00
iczero
3336209527 Fix STOR modded element processing
fixes #460, again
2017-06-18 09:02:20 -04:00
jacob1
67b87b1dab palette now used for default elements again, with some fixes
palette now used in VIRS, fixes #460
2017-06-18 00:08:41 -04:00
jacob1
1718fe9287 HEAC is now meltable via LIGH, fix HEAC hardness, fixes #441 2017-06-11 21:10:19 -04:00
jacob1
fb2431d99e replace some if-else with switch statements, code formatting, closes #444 2017-06-11 20:39:23 -04:00
jacob1
1cb3917fcc Fix comment 2017-06-04 21:33:45 -04:00
jacob1
1fb883a450 replace E181 with SAWD (sawdust), created by hitting WOOD with high velocity particles 2017-06-04 14:50:14 -04:00
jacob1
9bc19d9933 fix elementRecount parenthesis 2017-05-10 00:11:53 -04:00
jacob1
b9c658ae20 elements are only recounted when unpaused, apparently 2017-05-09 21:52:40 -04:00
jacob1
2d7934bca6 fix elementRecount never being reset to false, fixes #417 2017-05-09 21:49:54 -04:00
jacob1
abf60508cd fix ambient heat being reset when creating saves 2017-05-06 23:57:27 -04:00
jacob1
9b954c7ed5 CRAY(LIGH) defaults to LIGH with .life 30 2017-05-06 19:40:22 -04:00
jacob1
cdc8f64896 fix clang compile warnings, fixes #406
also, sim.ambientAirTemp takes floats now
2017-04-27 23:08:06 -04:00
jacob1
c98f63bd89 save ambient heat in saves, if it is enabled 2017-04-24 22:29:45 -04:00
jacob1
ddd326eafd fix LSNS 2017-04-23 12:51:40 -04:00
jacob1
40972f9434 pressure and air velocity are now saved in saves 2017-04-22 17:06:28 -04:00
jacob1
866289c179 remove duplicate function, fix Simulation::GetParticleType, fixes #402 2017-04-21 20:24:24 -04:00
Nickolay
7078d7e528 Customizable FRAY and INVS (#390) 2017-04-20 17:37:09 -04:00
jacob1
076ec711a9 fix photon refraction on windows 2017-04-16 21:41:50 -04:00
jacob1
d3f0896599 Changes by Skylark:
Double the preciseness of photon refracting
photon refracting efficiency improvement on GCC
CRMC now slightly scatters photons when reflecting
BGLA now scatters photons
PQRT scatters photons like QRTZ does
C5 frequency doubling, id:2087410
*slight styling changes by jacob1*
2017-04-11 23:15:01 -04:00
Capacitor Set
2d4c195c86 Fix memory leaks 2017-03-19 23:05:39 -04:00
jacob1
8f4e3a56bd reduce ctrl+z snapshot memory usage 2017-02-09 22:55:05 -05:00
jacob1
85e2516a42 missed movement code fixes from my mod? b7ef4c8f2b95 2016-10-01 00:16:50 -04:00
jacob1
69d28bd7b0 Fix crash with really high speed photons, a check is needed here too 2016-09-24 10:07:53 -04:00
Mark Theng
8de12d616e fix resume simulation/reload in the middle of subframe debugging (#330) 2016-09-04 21:33:33 -04:00
jacob1
6dc1c222bc catch potential ParseExceptions when loading saves, use bson error handler to prevent exit(-5) 2016-08-14 18:18:59 -04:00