Commit Graph

7173 Commits (Controls)
 

Author SHA1 Message Date
Maikel de Vries d363fda9c1 add smoke bomb
Graphics by Win, sound by ala & from freesound.
2015-08-22 19:27:22 +02:00
Clonkonaut b2cc853887 New hit sound for the lantern. Also, general glass break sound. 2015-08-22 10:45:44 +02:00
Sven Eberhardt d7a0d291e2 Fix 64 bit build. 2015-08-21 15:03:13 -04:00
Sven Eberhardt cf940d639b Fix memory leak caused by circular prop list chains.
The shapes library has such pointer chains. The leaks were getting pretty heavy because they included pointers to C4AulFuncs, which kept a lot of parts of the script engine and string tables in memory.
2015-08-20 20:19:38 -04:00
Sven Eberhardt 5ec9999d4c Fix crash on global or scenario script reload.
The string table of System.ocg scripts (except the global System.ocg) pointed to nowhere after the initial load phase, but is still required for reload. Added a ref counting option to keep these string tables alive.
2015-08-20 13:15:11 -04:00
David Dormagen 0d102d2184 explosion: fix nil-pointer when object removes itself on death
After doing damage to an object, you cannot be sure that the object persists. It might have been blown to smithereens. So, catch that case.
2015-08-20 13:47:27 +02:00
Maikel de Vries a63e8f4955 improve the AI testing scenario 2015-08-19 08:11:43 +02:00
Maikel de Vries 49effe4622 let AI handle the musket and fix tracking riding clonks 2015-08-19 08:11:43 +02:00
Armin Burgmeier 0cdafc278b Transform all mesh data to Clonk reference frame on load
Instead of doing the transformation when drawing a mesh. This allows making
the OpenGL normal matrix more consistent, since it does not include the
Ogre-To-Clonk transformation, and so that the transformation does not need
to be inverted in the shader.

As a side effect, all Attach transformations were updated, since before
they were specified in the OGRE reference frame, not the Clonk reference
frame.
2015-08-18 20:30:20 -04:00
Armin Burgmeier 035cbb01b2 mape: draw mattex indices above 127 2015-08-18 19:37:38 -04:00
Armin Burgmeier 5d047d4e44 mape: Move second texture map read pass before crossmapping materials
Otherwise the default textures are not set correctly.
2015-08-18 19:36:58 -04:00
Armin Burgmeier 1827ed53ca Enhance mapscript functions for use with background materials
Add GetBackPixel, GetDefaultBackgroundIndex, GetMaterialTextureIndex, and make
SetPixel accept a background color.
2015-08-18 19:20:36 -04:00
Maikel de Vries 2aa753c6a5 acid gold mine: map script and scenario parameters
The landscape and difficulty settings still require some fine tuning.
2015-08-18 18:41:26 +02:00
Maikel de Vries a61a91798b move DrawMaterial to map library functions 2015-08-18 12:36:59 +02:00
Armin Burgmeier dfebd7996c Make sure mape loads texture map indices as specified in TexMap.txt
What happens is that mape first loads the TexMap.txt, however adding all the
texmap entries internally fails, because the materials and textures are not
yet loaded. However, mape must first load the TexMap to see if
OverloadMaterials or OverloadTextures are present in it, to know what
materials/textures to actually load.
2015-08-17 21:52:59 -04:00
David Dormagen b3f81ef3ed increased lava damage
The lava now does not only do the damage via the fire system but also does some direct damage. Further increasing it might be good. Test it now.
2015-08-16 23:14:16 +02:00
David Dormagen d1ceafea16 interaction menu: added possibility to repair a damaged building 2015-08-16 17:40:28 +02:00
Nicolas Hake 5ef76d63a9 Log the same shader code as is actually compiled
For whatever reason, the shader code that was passed to the compiler was
different from the code that got written to the shader log. This is a
huge pain in the ass when trying to debug shader errors because the line
information is completely wrong. I assume this decision was a premature
optimization, so I've removed it and we'll now log the exact same code
as the shader compiler sees.
2015-08-16 14:20:50 +02:00
Sven Eberhardt 0d16e67066 Order mat-tex combinations by appearance in texture map instead of by palette index when zooming map to landscape.
This should simplify insertion of new textures at arbitrary drawing orders without reassigning palette indices (the latter would invalidate all old maps).
2015-08-10 00:34:43 -04:00
Sven Eberhardt 5e03c9a8db The Raid: Minor fixes, decoration, dialogue and map adjustments. 2015-08-09 23:26:56 -04:00
Sven Eberhardt 53d1ac8eac Fix angle adjustment for instant-flight command of airplane.
It was wrong for planes flying to the left, which caused planes to fly too low in the Raid.ocs intro.
2015-08-09 23:13:32 -04:00
Sven Eberhardt 134fc2799b Do not remove looping sounds on inaudibility in OpenAL.
This caused some sounds to not play at all when the object was inaudible at the position the sound was initially launched, but then moved into view (e.g. elevator cases or the planes in The Raid).
2015-08-09 21:28:29 -04:00
Sven Eberhardt a45c5afe60 Fix mape build. 2015-08-09 19:41:16 -04:00
Sven Eberhardt f873e81bf0 Fade airplane sound pitch when motor is turned on and off. 2015-08-09 19:28:07 -04:00
Sven Eberhardt 042d00c1d2 Fade airship sound pitch when motor is turned on and off. 2015-08-09 19:04:29 -04:00
Sven Eberhardt d92df758a8 Added pitch parameter to Sound() script function and allow pitch and sound level to be modified for sounds that have already been started.
Sound() called when the instance is already running used to fail. Now, it always succeeds (also for script sync safety) but updates the sound level and pitch parameters. SoundAt has not been modified since it allows creation of multiple concurrent sound instance of the same effect without object context.
2015-08-09 18:40:42 -04:00
Sven Eberhardt 8ca07b7bc4 Fix left/right audio pan in OpenAL build. 2015-08-09 17:36:54 -04:00
Sven Eberhardt 638ed81608 Implement background material controls in Windows editor.
Also removed auto-sort from the material combo boxes (so sky is on top in both) and put true background materials (i.e. sky and tunnel) on top.
2015-08-09 13:36:44 -04:00
Nicolas Hake 8e5aed4bea Update TRADEMARK and add trademark reference to credits (#1370)
I don't like that the FMOD and Clonk trademarks are separated, but we
don't have enough space in the credits screen to do it differently.
2015-08-09 19:20:53 +02:00
Sven Eberhardt 8ec159d755 Remove some unnecessary restrictions from /script message board command (#1369). 2015-08-08 21:52:13 -04:00
David Dormagen d8b99b8a41 interaction menu: visually disable containers on one side if they are already open on the other 2015-08-07 16:48:28 +02:00
David Dormagen a27888a623 the Clonk now performs a roll when pressing [down] (even when walking)
People have complained that the implicit roll (if you don't know how it worked) could lead to death and severe injury. The roll is now explicit. Always and everywhere.
It doesn't have any other effect though; todo: reduce hit area and/or squash vertices of Clonk during roll
2015-08-07 16:12:41 +02:00
Tobias Zwick 20f95bf018 buildfix for MSVC compiler 2015-08-06 20:06:13 +02:00
Armin Burgmeier cd2d525b5b Rename C4Landscape::TRANSPARENT to C4Landscape::Transparent
Some stupid windows header seems to have a #define for TRANSPARENT.
2015-08-04 23:15:52 -04:00
Armin Burgmeier ad57b5a9c9 Fix fill tool in developer mode 2015-08-04 23:15:16 -04:00
Armin Burgmeier 94ce958e4c editor: sort background textures differently than foreground textures
The sort order in the combo boxes depends on the selected material.
2015-08-04 21:39:23 -04:00
Armin Burgmeier bc177e8f8b Documentation updates 2015-08-04 21:21:24 -04:00
Armin Burgmeier 3ec53c2c40 Update GTK+ editor so that one can draw background materials 2015-08-04 21:21:24 -04:00
Armin Burgmeier 08ae643c2c Add a draw mode which shows the background 8-bit surface 2015-08-04 21:21:24 -04:00
Armin Burgmeier 0d806fbcbf Add syntax for drawing background materials with Map.c 2015-08-04 21:21:24 -04:00
Armin Burgmeier 51986b68ef Allow script functions to access background landscape
Add GetBackMaterial() and GetBackTexture(), and allow DrawMaterialQuad to
specify a background mat-tex combination.
2015-08-04 21:21:24 -04:00
Armin Burgmeier 1f6825fb4b Make solidmask not overwrite background material
Also, remove Landscape.SetPix in favor of Landscape.SetPix2
2015-08-04 21:21:24 -04:00
Armin Burgmeier c43ca4ce9a Increase maximum number of material-texture combinations to 255
This is the maximum we can do. One value is reserved for diff / transparency,
and we have 8bpp surfaces.
2015-08-04 21:21:24 -04:00
Armin Burgmeier 56d48f5300 Fix mape 2015-08-04 21:21:24 -04:00
Armin Burgmeier b8343786b6 Make MapScript create a background map
This removes the last occurence of the IFT flag
2015-08-04 21:21:23 -04:00
Armin Burgmeier 006cf68874 Some refactoring, and restore support for Map.bmp
The new behaviour that allows 255 mat-tex combinations (once we increased
C4M_MaxTexCount...) is enabled with MapFg.bmp, and then MapBg.bmp can be
used to draw IFT or other fancy things.
2015-08-04 21:21:23 -04:00
Armin Burgmeier fe74cac663 Make the C4MapCreatorS2 create background maps 2015-08-04 21:21:23 -04:00
Armin Burgmeier eb98e73b76 Introduce background map
The background landscape is generated from the background map.
2015-08-04 21:21:23 -04:00
Armin Burgmeier b1e9c3924d Make the Map field private in C4Landscape 2015-08-04 21:21:23 -04:00
Armin Burgmeier 92f3a3e749 Remove GBackIFT in favor of a lookup in the background surface 2015-08-04 21:21:23 -04:00