Commit Graph

1525 Commits

Author SHA1 Message Date
jacksonmj
ded23cfa94 Fix minor bug with deco sample tool
If particles are not being drawn with blendpixel, then it is possible for the
R/G/B component of a pixel to be 255. Adding 1 gives 256, which does not
produce the right colour when combined into a RRGGBB value
2012-06-21 11:06:27 +01:00
jacksonmj
79614a9719 Use eval_move(PT_FIGH, ...) when fighters are checking for obstacles
Also stop fighters being included in the stacking check
2012-06-20 22:40:08 +01:00
jacksonmj
fed8b7b2cc Save an extra tmp2 byte, for EXOT 2012-06-20 22:21:10 +01:00
jacksonmj
1d5b081942 Replace all explosion sparks with new element (EMBR)
Replaces: BOMB sparks and flash, electrons + glass sparks, sparks from
IGNC, sparks from TNT explosion, and sparks from FWRK and FIRW.
2012-06-20 22:15:45 +01:00
jacksonmj
9b2c2a78a6 Make ELEC+water form H2 and O2 in the correct proportions 2012-06-18 22:47:38 +01:00
jacksonmj
ae5470ca78 Prevent stacking from ELEC+NEUT, ELEC+water, and CO2 from BUBW
Also conserve number of particles when CO2 from BUBW is absorbed by
water, and when splitting water into H2+O2 using ELEC.
2012-06-18 00:44:37 +01:00
jacksonmj
c14704ae49 Fix STKM causing stacking and falling through some powders 2012-06-17 23:54:47 +01:00
jacksonmj
06d2d5267e Correct freezing temperature for SLTW (-21.1 C) 2012-06-17 22:38:33 +01:00
Simon Robertshaw
4b073de82a Revert "Moved soap and stick men graphics things to special functions."
This reverts commit 7f5408f196.

Conflicts:

	includes/powder.h
2012-06-17 22:34:17 +01:00
jacksonmj
36de2f19f5 Move INST flood fill into a separate function
Since there were so many if statements for INST in flood_parts. Also, allow
INST inside walls to be sparked.
2012-06-15 13:45:55 +01:00
jacksonmj
e7fabd8601 Fix bug with the improvement to text wrapping
Cursor was sometimes in the wrong place
2012-06-14 11:56:40 +01:00
jacksonmj
1f05aa7f21 Minor improvement to text wrapping
When text flows onto a new line, don't put the space between words at
the start of the new line.
2012-06-14 01:13:17 +01:00
Catelite
a83a995f23 Added a tmp=1 flag to PLNT so that VINE will actually function like intended when VINE_MODE is disabled. Plant touching wood is unaffected, but vine that touches wood will grow. 2012-06-13 18:28:27 +01:00
Catelite
12cf2a3145 Updated FRZZ element to behave somewhat like SNOW, since it has roughly the same physical properties. Also changed its element description, since it actually appears on a menu. Leftover FRZZ will eventually become ICE if touching ICE with FRZW ctype. 2012-06-13 18:28:13 +01:00
Catelite
a104696620 Update to EXOT that makes it permeable to neutrons as well as electrons. Neutrons cause a water>distilled water spread that enables EXOT's copy function, at its original speed. Electrons reset mode, but not tmp2. Trippy monochrome colors for copy mode.
Conflicts:

	src/elements/exot.c
2012-06-13 13:51:24 +01:00
jacksonmj
6c3034acff Make ambient heat convection work a bit better
Previously, it was comparing the temperature of the current cell to the
average of the cells around it (plus some advection affecting the
average, but that makes no difference if the air starts out stationary),
and basing the velocity change on this temperature difference.

If the cell below is hotter and the cell above is cooler, the air should
rise. But in this case, the average of surrounding cells tends to be
near the temperature of the current cell, so not much happens.

Just using the temperature difference between the current cell and the
cell above makes convection work a lot better.
2012-06-13 00:56:22 +01:00
jacksonmj
35d125cf53 Remove sdl_scale from update_O2
Particle coords are not affected by sdl_scale, only mouse coords
2012-06-13 00:45:35 +01:00
Simon Robertshaw
99edca6d07 STOR should not conduct heat 2012-06-12 12:53:11 +01:00
jacksonmj
7707943981 Remember ctype when cloning lava 2012-06-10 22:57:26 +01:00
jacksonmj
3c14787064 Prevent THDR from counting towards stacked particle limit 2012-06-10 22:31:01 +01:00
jacksonmj
6d307b47b5 Revert "Make THDR TYPE_ENERGY again, so it goes in photon map"
This reverts commit 8b20bfd764.

TYPE_ENERGY makes THDR move like photons, and means adjacent particles
don't conduct as much heat from it (since the heat conduction code only
looks for particles in pmap, not photons).

Heat transfer could be fixed by increasing THDR's heat conductivity, but
gas or powder movement is probably better than photon movement for THDR.
2012-06-10 21:29:16 +01:00
jacksonmj
303a32f290 Avoid stacking in INVS and FILT, and fix pressurised INVS graphics
Collisions now always work for particles inside INVS and FILT, so
particles don't stack (just a single particle on top of each INVS/FILT).

Pressurised INVS was being drawn using PMODE_FLAT (with no alpha
blending), which sometimes hid particles inside INVS.

Also limit BHOL tmp value to make sure it saves correctly.
2012-06-09 16:09:14 +01:00
jacksonmj
601766a3a0 Run stacking check less often
But force it to be run after loading a save so that really extreme
numbers of stacked particles form BHOL immediately
2012-06-09 12:37:52 +01:00
jacksonmj
5d4c21d83b Create BHOL when particles are stacked excessively 2012-06-09 12:37:44 +01:00
jacksonmj
8ca13238d0 Prevent solid particles stacking in E-Hole
Such as occurs when cloning a solid in E-Hole
2012-06-09 11:18:21 +01:00
jacksonmj
8b20bfd764 Make THDR TYPE_ENERGY again, so it goes in photon map
Will simplify checking for excessive stacking
2012-06-09 11:08:11 +01:00
Simon Robertshaw
d1bd90e4c9 Fix session check on startup - Session check was looking at the response code from the version check, should the session check request complete before the version check, the response code would not be valid and the response would be discarded. 2012-06-08 01:01:44 +01:00
Simon Robertshaw
46d43d3020 Unnecessary optimisation 2012-06-07 19:54:13 +01:00
Simon Robertshaw
1d7b77b144 Neighbour check should be less or equal to 6 to find 2 TTAN 2012-06-07 19:31:45 +01:00
Simon Robertshaw
04a09d997d Titanium only blocks air when it is connected 2012-06-07 19:17:50 +01:00
cracker64
bacde18e33 Should return out after changing type. 2012-06-07 14:03:20 -03:00
Catelite
a717f67f62 Tweaks to glow colors. EXOT now mimicks Heat View's color scale, and its irradiated color scheme uses tmp2 instead of temp so it appears to cycle. 2012-06-07 17:55:08 +01:00
Catelite
a360c28135 ...Slowed down replication a ton. Interferes with making bombs a ton, and makes the element seem less like insta-paste. Will still be usable for machines, though. 2012-06-07 14:03:53 +01:00
Catelite
4e3d87737e Added condition so that EXOT does not automatically replicate WARP to avoid confusion, and changed spawn tmp value to avoid instant copying on spawn. 2012-06-07 14:03:44 +01:00
Catelite
dfb0357382 Changed EXOT to change into touching particles in the five frames at the top of every tmp cycle. Also, changed BREC references into BREL for consistency since it isn't often mentioned. 2012-06-07 14:03:38 +01:00
Catelite
b5202ad38a ...Doubled pressure generating limit, so it doesn't explode out of containers -quite- as much. 2012-06-07 14:03:31 +01:00
Catelite
f77f1ab485 Added diffusion code for tmp2 in EXOT starting at >100 so that electron patterns won't cause abrupt fission reactions. Also, rearranged air generation line that depends on tmp already so that it doesn't abruptly switch on past 5000 and then violenly explode, but slowly increments instead. 2012-06-07 14:03:22 +01:00
Catelite
c07afe4c89 Ton of changes to make EXOT work as expected. Added graphics to WARP to make it actually invisible besides BLOB mode, EXOT now makes rainbows and explodes with too many electrons o__o 2012-06-07 14:03:16 +01:00
Catelite
fe39fdb0e5 Oops. +2 files. 2012-06-07 14:03:08 +01:00
Catelite
6d465b207d omg EXOT element, made from BREL element sparked repeatedly while under >10 pressure. Not at all finished, but looks cool :D 2012-06-07 14:03:00 +01:00
cracker64
c1d7aa229f Tron wasn't keeping its NODIE flag. 2012-06-07 01:04:51 -03:00
Savely Skresanov
bdd0a32fa2 Fix the bug with not-spawning fighter. 2012-06-05 21:51:06 +07:00
Savely Skresanov
29f3500ba3 Put ifs into switch in create_part. Delete useless PSv saving function. 2012-06-05 16:06:52 +07:00
Savely Skresanov
7f5408f196 Moved soap and stick men graphics things to special functions. 2012-06-02 21:59:25 +07:00
Simon Robertshaw
939265a77d Deferred loading of save files 2012-06-01 20:34:17 +01:00
jacksonmj
8dcccbc4fc Fix command line save opening (save was being cleared immediately after loading) 2012-06-01 19:29:30 +01:00
jacksonmj
a36d79c701 Check fire colour values are within the range 0-255
Fixes flashing dust
2012-05-31 17:15:37 +01:00
Savely Skresanov
ae79297a9b Don't draw wall frame in loaded saves. 2012-05-31 18:23:38 +07:00
Savely Skresanov
19ae18c059 Added a settings option to draw a wall frame around screen. 2012-05-31 17:49:40 +07:00
Simon Robertshaw
65e79b4b8f Prevent allocation of particles with type==0
bleep bloop
2012-05-31 11:10:45 +01:00
jacksonmj
10e553be03 Fix PROP_NEUTPENETRATE, particles weren't being moved into empty space 2012-05-30 22:07:57 +01:00
Savely Skresanov
58620a9529 Fixed the bug with snow, where it melted without taking it's ctype into
account.
2012-05-30 17:25:37 +07:00
Savely Skresanov
274a7fe582 No rounding errors with triangle brush, so no need for epsilon (I hope). 2012-05-28 21:20:21 +07:00
jacksonmj
b6d813a54d Fix SLTW boiling temperature typo 2012-05-27 01:31:23 +01:00
jacksonmj
ebda0f9b4d Don't show disabled elements in element search 2012-05-26 22:24:02 +01:00
Savely Skresanov
ab8eeb6dd9 Soap bubbles are easily formed now. Also they inherit soap's
decoration color.
2012-05-26 19:01:14 +07:00
Simon Robertshaw
fd868032fe Download progress bar for save opening 2012-05-24 21:31:04 +01:00
Simon Robertshaw
7e681ffce1 Fix bug that causes ptsave URL parsing to fail if there is no '#' 2012-05-24 20:38:02 +01:00
Simon Robertshaw
2f145e8188 Add DISPLAY_EFFE back after it was removed by 0799c2e09d 2012-05-24 20:01:07 +01:00
Jacob1
4da9a26502 remove lastx/lasty variables when OGLR is disabled
Conflicts:

	src/graphics.c
2012-05-24 19:57:29 +01:00
Simon Robertshaw
8196d2a645 Merge pull request #66 from jacob1/Modstuff
Code structure improvements for graphics/drawing, improvements to prevent accidental infinite loops in Lua, Fixes for fusion, improvements for VOID types. And other minor improvements
2012-05-24 11:53:50 -07:00
Simon Robertshaw
5a117c2d27 Element search interface by pressing 'e'
First search is for element names, second search looks at the
description, pressing enter will give you the first result the the left
button selection, left click and right click can also be used to select.
2012-05-24 19:38:58 +01:00
Jacob1
1fb7787243 VOID & PVOD can be set to only eat/not eat certain things 2012-05-24 14:07:31 -04:00
Jacob1
9a179651ee energy type particles automatically go into photons, not pmap 2012-05-24 13:13:28 -04:00
Jacob1
bdc94208d2 finish custom lua graphics functions 2012-05-24 13:09:32 -04:00
Jacob1
5edd224344 custom graphics functions with lua (not finished yet) 2012-05-24 13:08:55 -04:00
Jacob1
f49f4ea241 fix crash, spark reset set type without checking if it was a valid number. Also disable another way to create invalid elements 2012-05-24 12:42:19 -04:00
Jacob1
4368ded197 Fix lua console compiling with visual studio (I thought this was fixed already) 2012-05-24 11:57:05 -04:00
Jacob1
82b60ba5ca fix lua console freeze/bugs 2012-05-24 11:26:25 -04:00
Jacob1
e95bcb6fcc fix alt select being off by one every time, turn on deco before entering the deco editor (not after) 2012-05-24 11:13:10 -04:00
Jacob1
e4686724ac limit amount of ELEC produced to prevent infinite reactions 2012-05-24 11:02:42 -04:00
Jacob1
e79d18c58c small o2 fusion change, add my name to contibuters (it is ok for me to do that, right?) 2012-05-24 11:01:30 -04:00
Jacob1
3959db4c38 console doesn't enable hud, fast heat for PUMP/GPMP/ANIM, GPMP activated at draw 2012-05-24 10:51:21 -04:00
Jacob1
1c7fdb0c26 oxygen fusion, fix two small bugs 2012-05-24 10:37:19 -04:00
Jacob1
be2fe943c0 Prevent accidental infinite loops in lua
Also fix glitch when step_functions[0] is unregistered but others aren't
2012-05-23 20:08:53 -04:00
Jacob1
1026963293 fusion changes 2012-05-23 19:53:50 -04:00
Jacob1
0799c2e09d fix emp flash, better live parts rendering in (render_ui &) deco editor 2012-05-23 19:45:16 -04:00
Jacob1
2656bcec2b fix compiling 2012-05-23 18:54:25 -04:00
Simon Robertshaw
a1b7b02f81 Windows installation, register ptsave URL protocol 2012-05-23 18:37:11 +01:00
Simon Robertshaw
4771b91d51 ptsave protocol
ptsave:<id>#<name>~<username>, only ID is read, it must be the last
argument (all arguments after ptsave are ignored for safety reason to
prevent injecting other arguments links.
2012-05-23 18:18:10 +01:00
Savely Skresanov
393d247312 Check for version before enabling movable flag for sponge. 2012-05-23 22:21:36 +07:00
Savely Skresanov
d0a1b14409 Fix the bug with stickman standing on the screen edge. 2012-05-23 20:47:38 +07:00
Savely Skresanov
0cf636ad24 Fix the bug where gel didn't transfer water from sponge. 2012-05-23 10:19:54 +07:00
cracker64
c5b9b8d28a Make tron follow TRON_NOGROW , thought that was in there.... (github edit because cate is annoying me) 2012-05-22 23:26:28 -03:00
jacksonmj
0fb6b85706 Update gravity mask when loading OPS saves 2012-05-21 00:15:51 +01:00
jacksonmj
eb0b2f9ca3 Fix infinite loop when trying to detach soap with extra ctype bits set 2012-05-20 23:22:47 +01:00
jacksonmj
089ea8b7a0 Change order of bomb loops - delete particles before creating sparks
Fixes pressurised INVS being immune to bomb, as the sparks were being
deleted instead of the INVS.
2012-05-20 23:22:37 +01:00
jacksonmj
a11202313d New flood_parts function, should fix crashing due to too much recursion 2012-05-17 21:56:21 +01:00
jacksonmj
9a30a580d2 Spelling
("gases" seems to be the more popular version of the plural noun)
2012-05-17 21:56:20 +01:00
Savely Skresanov
66b946d5c6 Move SDL_GetVideoInfo before SDL_SetVideoMode so it will probably fix
sizing issues for people.
2012-05-16 21:46:36 +07:00
Simon Robertshaw
17229ead05 URI handling for MacOS 2012-05-13 13:01:29 +01:00
jacksonmj
58ea2b2acf Make TTAN block pressure when framestepping 2012-05-12 17:07:52 +01:00
jacksonmj
137903f809 Fix crash after closing display options (vid_buf was being freed) 2012-05-12 13:04:09 +01:00
jacksonmj
9f0cb4857e Don't hide stickman when energy particles pass through his head 2012-05-12 13:00:29 +01:00
Savely Skresanov
da6d5b348a Added a GUI error box for window resizing failure. 2012-05-12 18:45:26 +07:00
savask
9b8e0280eb Check screen resolution before scaling game window. 2012-05-12 18:05:22 +07:00
Simon Robertshaw
81f84c4678 Allow TTAN to conduct more than once 2012-05-12 03:27:45 +01:00
Simon Robertshaw
d69fc052fa Fancy motion blur for OpenGL, fix a lot of dialogues in OpenGL, fix gravity lensing in OpenGL, ensure Phot and Neut are PMODE_ADD, not FLAT 2012-05-12 01:35:55 +01:00
Simon Robertshaw
d7fa0b139e New element: Titanium, absorbs some neutrons, acts as a solid wall to air. Move blockair filling into update_particles so it can be used by elements 2012-05-11 21:02:58 +01:00
jacksonmj
de6203e049 Fix TNT not exploding if multiple TNT particles are in the same place
flood_prop only changes the tmp value of one TNT particle at each
coordinate. So some TNT particles can retain tmp=1 and keep running
flood_prop, stopping the TNT from exploding.
2012-05-11 20:40:08 +01:00