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
Simon Robertshaw
b8e2113b05
Another experimental element, floats on water, supports other structures
2016-08-07 16:15:30 +01:00
jacksonmj
f6615deed2
Fix uninitialised variable (sim->player(2).rocketBoots)
2016-07-24 20:09:28 +01:00
SopaXorzTaker
17398dd201
RPEL's ctype sets the element it repels
2016-07-17 16:47:43 -04:00
SopaXorzTaker
c85ac21d84
Fix gravity field appearing after ctrl+z even if gravity is off, Fixes #293
2016-06-11 10:29:09 -04:00
jacob1
d63c6012c6
force a stacking check when undoing (id:1997880)
2016-06-11 10:21:25 -04:00
jacob1
15068552b5
really fix the remainders in loop edge mode
2016-03-12 13:54:50 -05:00
jacob1
ccec5fbff4
that .5f should have been ouside the remainder_p
...
also fix random compile warning (error?)
2016-03-12 13:24:59 -05:00
jacob1
d334209027
loop edge mode: allow particles to have velocities greater than the size of the screen
...
Also, added terminal velocity for stickmen
2016-03-12 13:14:34 -05:00
jacob1
f6d82b6f8a
separate t and v argument in create_part, fix LIGH not defaulting to .life of 30 with clones / console
2016-01-11 22:38:42 -05:00
jacob1
adf0fa72df
Actually use .Properties instead of .Falldown for wall blocking
2015-12-30 23:45:05 -05:00
jacob1
c76ec2be43
PHOT going through turned off GPMP turns into GRVT
...
GRVT .tmp depends on the GPMP temp
2015-12-26 01:24:22 -05:00
jacob1
5ba34021bc
jacksonmj: Reduce ETRD lag e7c4b989654e
...
Improvement isn't as good as the EMP one in normal cases, but for intentional lag bomb saves it is much better. Tested it and confirmed it worked just like before this commit. etrd_life0_count is hopefully valid, the accuracy may not be as good as in jacksonmj's fork
2015-12-19 01:39:03 -05:00
jacob1
bb9b35f01d
jacksonmj: EMP lag is hereby banished. eeef50c0fcba
...
EMP destruction loop now happens once per frame instead of once per EMP
particle.
2015-12-18 23:10:28 -05:00
jacob1
f1ea32516d
jacksonmj: Stop using Element.State 618c4b5ce5cd
2015-12-18 01:14:31 -05:00
jacob1
3226ce0ac2
jacksonmj: Always use Properties instead of Falldown to decide whether particles can pass through walls e52a62354473
2015-12-18 00:51:04 -05:00
jacob1
9cab6959b6
fix flood fill delete on normal particles also deleting photons
2015-11-30 14:20:37 -05:00
jacob1
7fcc056cb6
fix really fast particles moving through EHOLE
2015-10-15 00:26:57 -04:00
jacksonmj
d0445258c5
CONV tmp value can now be used to restrict which elements get converted. Requires version bump to 92.
2015-10-13 01:33:19 +01:00
jacksonmj
d88c18adaf
Fix collision detection for liquids on top of streamlines
2015-10-13 00:49:42 +01:00
jacob1
bc112b54df
initialize GoL variables, add sim.gspeed function
2015-10-10 00:03:04 -04:00
jacob1
9b9555226b
fix compiling in visual studio, fix maybe bug with updates?
2015-09-20 00:59:37 -04:00
jacob1
5433766311
fix ETRD creating plasma as if it were created by the brush (-2)
2015-09-01 12:26:06 -04:00
jacob1
48dbc4182d
Add CRMC from my mod 3dd3fb2f7801 92f0301295f6
2015-08-30 18:29:21 -04:00
jacob1
ed4678c9a8
add deco flood fill, flood fills based on color being close enough
...
flood fill brush is hidden when deco tools are selected like this because it gets in the way. Renderer::vid is compared here so there could definitely be issues, but it works fine when used under normal conditions
2015-08-30 01:38:32 -04:00
jacob1
2ebc522c36
add ERASEALL wall from my mod (erases walls, particles, and signs)
2015-08-30 00:18:06 -04:00
jacob1
37794c01af
.tmp2 for CRAY now sets creation offset (just like DRAY)
...
LIFE info moved into .ctype, no reason to use a whole extra variable for it
2015-08-29 22:02:05 -04:00
jacob1
f95db0278e
really fix coordinates when placing stamps ...
2015-07-07 00:44:06 -04:00
jacob1
8e7e8e0670
some changes to LIGH creation (mostly from lua)
2015-05-11 20:50:10 -04:00
jacob1
b1fc134204
fix crash with high speed photons in loop edge mode
2015-05-10 21:48:09 -04:00
jacob1
aa854557f7
fix WOOD sometimes creating water when burning
2015-05-10 20:55:03 -04:00
jacob1
fc5f3671f1
new function sim.clearRect, plus fix rounding errors breaking ctrl+x
2015-03-12 00:54:27 -04:00
jacksonmj
84f6ede2b8
Fix for commit d71a0d98
: also adjust melting point of BRMT(TUNG) based on TUNG HighTemperature value
2015-03-05 00:14:26 +00:00
jacksonmj
d71a0d98eb
Allow TUNG melting point to be changed from Lua
...
Also set lava LowTemperature threshold to MAX_TEMP, to simplify changing melting points from Lua.
2015-02-23 13:24:27 +00:00
jacob1
03e07945e3
fix lua element update bugs, fixes #244
...
also add new mode for functions run before the normal update function
2015-02-13 14:18:55 -05:00
jacob1
2c0287b71d
PARTICLEDEBUG define which turns on some particle debugging key shortcuts
...
Also fix particle updating bug
2015-02-06 20:33:10 -05:00
jacob1
b1a3c404b6
fix platform / sconscript flag specific warnings, --no-warnings no longer defaults to true
2015-01-16 23:39:42 -05:00
jacob1
efd69b208d
fix a ton more errors in the interface code, including all the -Wreorder ones
2015-01-16 19:58:39 -05:00
jacob1
3a52453561
move more stuff around, remove loop through particles to decrease life and put it in the pmap one instead (like in my mod)
2015-01-11 14:36:40 -05:00
jacob1
577ae3400f
move some stuff around (without changes) in Simulation.cpp, add sim.updateParticles function
2015-01-11 13:17:18 -05:00
jacob1
dce874484a
fix all the gcc warnings in the element files (except one in PSTN) + all the unused variable warnings
2015-01-10 22:43:33 -05:00
jacksonmj
236ff08da9
Fix some problems noted in http://www.viva64.com/en/b/0298/
...
I've left some of the less important items, like SearchView.cpp "'then' statement is equivalent to the 'else' statement", and RequestBroker::Request::~Request, because I don't feel like spending a few days entirely rewriting those files at the moment (which is what I'd end up doing if I started fixing minor problems and refactoring...)
GameSave::readOPS - not changed. At some point we may have to move to a larger type for element IDs (probably two or four bytes), but PT_NUM isn't likely to be raised to the maximum value of that type immediately, so this check will be needed then. There should be an elements[partsData[i]].Enabled check in there too, but it might be a bit difficult - I'm not sure how to access a Simulation object from GameSave::readOPS...
Notes on changes:
Graphics::textsize, Element_FRZW::Element_FRZW - typos
Button::Draw - the extra case was originally used to invert the icon (draw it in black instead of in white) when the button was clicked. However, the icon colour is now automatically set depending on the background colour. (Note similar conditions "if(Enabled) { if(isButtonDown || (isTogglable && toggle)) " near the start of the function - same logic but in a different place, setting icon colour indirectly).
Simulation::transform_save - unused redundant function, everything uses GameSave::Transform which does much the same thing.
PreviewView::NotifySaveChanged - should be height==YRES/2, it's checking whether the preview image is the correct size, and resizing it if it isn't.
Element_FWRK::update - no idea why that line was there, even though it was my commit that originally added it...
2014-12-25 17:09:35 +00:00
cracker64
a115e78952
More element optimizations!
...
ACEL, changed a range check
DRAY, Fixed repetitive checking
GOLD, less rand()
PLNT, removed range checks, less rand()
PROT, used a switch()
VIBR, less rand()
VINE, less rand(), fixed growing along WOOD
VIRS, less rand()
2014-12-06 15:43:11 -05:00
jacob1
6da5b08fd2
fix for fast particles moving through VOID
2014-11-22 13:04:04 -05:00
jacob1
16ce3a68c0
more jacksonmj suggestions: save edgeMode in saves, BVBR absorption fix, life saving fix, DEUT graphics change, PROT fix, SOAP graphics fix
2014-11-21 15:41:22 -05:00
jacob1
e20f6b101b
jacksonmj: "Allow ELEC to pass through GLOW, fixes ELEC->PHOT reaction in GLOW." f162984e22e5 + some parts of "Misc small fixes" 95cf5bd67c2b
2014-11-21 15:41:22 -05:00
jacob1
a182e925fe
some elementpallete fixes + fix SPAWN2 ToolButton
2014-11-20 22:44:02 -05:00
jacob1
6ce2d5fe92
#define MAX_FIGHTERS + some fixes
2014-11-20 22:11:20 -05:00
jacob1
c9cc2a1a6b
more accurate elementCount (part_change_type, pasting stamps, lua), prevent having multiple STKM / SPWN even more
2014-11-20 21:51:45 -05:00
jacob1
6066ae8341
prevent having multiple stickmen on the screen, also add playerst.spawnID
2014-11-20 18:51:33 -05:00
jacob1
a31f4df0a1
fix being unable to draw METL/PSCN/INST ctype on CRAY
2014-11-07 12:28:49 -05:00
jacksonmj
1eeed277a0
Fix initialisation of transitionOccurred
2014-11-06 00:46:15 +00:00
jacksonmj
829e2cca7d
Flatter surface when liquids solidify
2014-11-06 00:32:25 +00:00
jacksonmj
9e7ead9bcc
Change melting point for snow with wrong ctype back to 273.15
2014-11-05 23:32:49 +00:00
jacksonmj
57409b0b41
Change order in which particles are created by the rectangle and brush tools
...
to make liquid movement look less weird in normal gravity
2014-11-01 15:38:39 +00:00
jacksonmj
02e1969ef2
Fix SNOW(WATR) melting temperature
...
Broken by fixing SNOW(SLTW) melting temperature in a78bd78bfc
2014-10-31 16:39:30 +00:00
jacksonmj
f7b53d0231
Prevent fast particles from skipping over DESTROYALL wall
2014-10-27 17:50:58 +00:00
jacob1
12f00db240
loop edge mode from my mod (also works with stickmen)
2014-10-24 00:18:51 -04:00
jacob1
b59ecf2d65
add airblock wall
2014-07-03 14:30:12 -04:00
jacob1
f68fadb3f4
make PHOT only able to move 2 pixels at a time through things again
2014-07-03 12:05:26 -04:00