Commit Graph

5022 Commits (e91d4a42789bfa23945bf7c6aeaefdac48d3b1bb)
 

Author SHA1 Message Date
Nicolas Hake e91d4a4278 Update more various references to clonk.exe 2013-02-03 20:54:34 +01:00
Nicolas Hake 1f1333d5bd Update de.po to conform to standard formatting
Apparently some other software has felt like reformatting
our .po file in a different way than prescribed by docs/Makefile.

Reverted the reformat to get a clean patch for the actual
translation changes.
2013-02-03 20:31:07 +01:00
Armin Burgmeier 43a2836279 Implement texture unit blending in material scripts with a shader
This might make the rendering a bit quicker, since the whole texture
environment setup that we do every frame is no longer required --
instead only the shader is bound and a few variables uploaded. However,
this was not the main motivation behind this change.

It also simplifies the code a bit. The texture environment setup is
replaced by GLSL code generation. Another small benefit is that for
texture units in material scripts that do not use an actual texture
image no hardware TIU is being used. This reduces the number of hardware
TIUs required for rendering the Clonk from 3 to 2.

The main benefit of this change, however, is that material specific
and clonk specific color variations can be applied correctly. This mainly
concerns ClrModulation and MOD2 drawing. Before, the ClrModulation was
mixed with the material color, which could lead to incorrect results
depending on what the texture units were doing. Now it is being applied
by the shader after all texture units in the material scripts have been
processed.

Another motivation of this change is to implement support for custom
shaders, which is already foreseen by OGRE material scripts. The
specification has only to be implemented. With this change in place,
both custom shaders and "fixed" processing can share the same code in
the engine, since both end up using a shader for the mesh rendering.

The shader currently works only for directional lights, but should be
easy to extend to also support point lights.
2013-02-03 16:26:01 +01:00
Sven Eberhardt 7f14d6bdef Experimental EvilCastle: Message when you enter the mushroom cave + misc landscape/object stuff 2013-01-31 22:42:15 +01:00
Sven Eberhardt bf8655ab1d Fix Call() in global context (required for ScheduleCall) 2013-01-31 22:38:16 +01:00
Nicolas Hake d20ee02ad6 Abort SimFlight if no more movement can occur (#914)
In no-gravity situations, SimFlight would enter an endless
loop when trying to project an unmoving object, waiting for
a collision that would never happen.

Similarly, in negative gravity, SimFlight would continue
calculating objects that left the top boundary of the land-
scape, only aborting the simulation once the coordinates
underflowed to values below the landscape.
2013-01-30 14:00:08 +01:00
Oliver Schneider 3c3621072c cmake: properly removed gtest from the all target 2013-01-30 13:06:22 +01:00
Günther Brammer 9ece8df04e autotools: Remove autogen.sh, use autoreconf instead
autogen.sh was only ever needed on some broken msys installations where
autoreconf didn't work. Those may still be around, but one can probably use
cmake for them instead.
2013-01-29 01:07:22 +01:00
Oliver Schneider c43a682785 tests: Compile gtest from source, add a few new tests
GTest does not ship precompiled binaries anymore. They are now compiled
using the CMakelists.txt from gtest.

Add basic unit tests for C4Value, DirectExec and C4StringTable.
2013-01-29 01:07:22 +01:00
Oliver Schneider e45a569aa3 cmake: Use libraries to avoid compiling files multiple times 2013-01-29 01:02:05 +01:00
Oliver Schneider 14369b509f cmake: Check for convert at configure step 2013-01-29 01:01:58 +01:00
Sven Eberhardt 320b0f4672 Experimental: HotIce. A short, new arena scenario. 2013-01-28 22:25:40 +01:00
David Dormagen c8e6b84319 it is now easier to hit objects with the club (#905) 2013-01-28 21:10:18 +01:00
Nicolas Hake f897e95071 Rename game binary to "openclonk" (#830)
Since the name of the game is OpenClonk, having the binary named
differently is at least confusing. At worst it conflicts with the
trademark license granted by RedWolf Design.

The Mac build will still have to be fixed because the installer
template .dmg file is not editable on non-Macintosh systems.
2013-01-28 13:57:29 +01:00
Armin Burgmeier 2a1ba0f8fe Split the mesh drawing into C4DrawMeshGL.cpp 2013-01-27 23:52:57 +01:00
Sven Eberhardt 3b73955e6f Experimental EvilCastle Horax moar stronk! 2013-01-27 18:40:45 +01:00
David Dormagen 6395e77e6a added remaining files for Rule_EnergyBarsAboveStructures 2013-01-27 18:24:45 +01:00
Sven Eberhardt 82cf8a0892 Experimental EvilCastle: Mushroom poison improvement. Upside-down shrooms now work as well! 2013-01-27 18:06:23 +01:00
Sven Eberhardt c87a40f28d Placeholder graphics for EnergyBarsAboveStructures
Zapper: Please commit yours! At the moment, the engine spits out tons of errors for every structure.
2013-01-27 17:22:46 +01:00
Sven Eberhardt 0b5e5cd020 AI test scenario 2013-01-27 17:21:30 +01:00
Sven Eberhardt 237e44034b Experimental Enemy AI: Evasion and shield usage. EvilCastle: EnergyBars 2013-01-27 17:17:55 +01:00
Sven Eberhardt b44466729a Experimental EvilCastle: Some more textures for castle materials 2013-01-26 23:39:14 +01:00
Sven Eberhardt 63a34ab9ba Experimental: Lots of small improvements on EvilCastle and EnemyAI.
EnemyAI:
* Try to avoid shooting allies standing between AI and target. Jump to get free path.
* Fix some cases of AI stuck in wall scaling action
* Ranged enemies face their targets when they shoot
* Catapult handling: If catapult is empty, let go and attack with melee weapon
* Change ranged targets if current is unreachable
* Encounter callbacks to game script and ally wakeup

EvilCastle:
* Lock player view (Prohibit mouse scrolling)
* Encounter messages for some enemies
* Enemy aggro ranges tweaked
* Some landscape reworks
* Icon changed
2013-01-26 17:24:48 +01:00
David Dormagen 990b8efc90 tools: added python script to extract functions from the docs for the C4Highlight MediaWiki plugin 2013-01-25 00:19:39 +01:00
Günther Brammer 9d34c4e30d gtk: Make the window fullscreen even when not changing the resolution 2013-01-24 19:36:59 +01:00
Günther Brammer 1e67a6fb24 Fix missing mouse cursor in fullscreen without resolution change
The mouse cursor was about the only thing affected by fZoom, and fZoom
should have been always 1 at the moment anyway.
2013-01-24 19:36:59 +01:00
Günther Brammer db81cf193d gtk: Bump minimum required versions to the oldest versions we test with 2013-01-24 19:36:59 +01:00
Günther Brammer a62e556b63 Script: Reimplement GameCall in C4Script 2013-01-23 21:36:21 +01:00
Günther Brammer f38670abc3 Script: Functions can shadow global variables
Previously, declaring a global variable could break another script that had
a function with the same name.
2013-01-23 21:36:21 +01:00
Günther Brammer 42608c5209 Remove C4DirectExecScript, use an existing scripthost for the eval function
Since the scripthost isn't used to store the bytecode anymore,
Parse_Expression doesn't modify it anymore. So there is no need for a
temporary one.
2013-01-23 21:36:21 +01:00
Günther Brammer 57c01ac537 Rename C4AulParse::a to C4AulParse::Host and add C4AulParse::Engine
C4AulParse::Host is now only used for local variables and named functions.

Global directexec functions have neither, so they won't need a scripthost
at all anymore.
2013-01-23 21:36:21 +01:00
David Dormagen 50fd0ebc39 added Rule_EnergyBarsAboveStructures and adjusted Krakatoa to use that 2013-01-22 18:44:29 +01:00
David Dormagen 8970913fc7 added System.ocg/EnergyBar.c which provides AddEnergyBar() to show an energy bar over any object, adjusted Tutorial04 to use that 2013-01-22 18:44:29 +01:00
David Dormagen ddeb338dc9 added progress bar style: GUI_ShadedSimpleProgressBar which looks like the currently used HP bar 2013-01-22 18:44:28 +01:00
Armin Burgmeier 682e315ea1 mape: Fix an endless loop when enumerating available drives on Windows 2013-01-22 00:28:42 +01:00
Armin Burgmeier 0d4703e6a8 mape: Change "close window" shortcut from alt+F4 to ctrl+q
Alt+F4 will be caught by the window manager and close the program as
well.
2013-01-20 23:56:00 +01:00
Armin Burgmeier 2dcd26521d mape: Fix directory listing for directories with non-readable files 2013-01-20 22:28:30 +01:00
Nicolas Hake 8a9926ccc4 CMake: Ensure compatibility with cmake <2.8.6 2013-01-20 22:10:26 +01:00
Nicolas Hake 6bb595f842 CMake: Use GTK+ cflags as reported by pkg-config
Ignoring CFLAGS/LDFLAGS makes GTK+ not work correctly
if the libraries are compiled with -mms-bitfields (as
is the case with the prebuilt binaries from gnome.org).
2013-01-20 21:53:56 +01:00
Günther Brammer 211634cf15 mape: Even more windows fixes 2013-01-20 20:36:51 +01:00
Günther Brammer 414cb8a4c7 gtk: GDK_KEY_* constants require at least GTK+ 2.21.8 2013-01-20 18:41:07 +01:00
Günther Brammer bf12980ccb mape: Further windows compilation fix 2013-01-20 18:39:56 +01:00
Günther Brammer cd19aff059 mape: Correct openclonk file extensions some more 2013-01-20 17:54:27 +01:00
Günther Brammer 78c39530a2 mape: Make group.c compile on windows 2013-01-20 17:53:52 +01:00
Günther Brammer 7dade553e8 Remove unused clonk.anjuta 2013-01-20 17:25:02 +01:00
Günther Brammer 019ea36ee9 Remove unused C4Object::GetActionByName 2013-01-20 17:25:02 +01:00
Sven Eberhardt 1ed3e9d648 Experimental EvilCastle now has a goal! 2013-01-20 17:12:07 +01:00
Sven Eberhardt 34831fd821 Experimental EvilCastle: Intro, startup materials, relaunch, enemies. Still no goal :( 2013-01-20 13:26:34 +01:00
Sven Eberhardt 4b189cacd1 Added Scenario [Landscape] FlatChunkShapes. If set to true, all chunks are drawn flat. Useful for scenario editing to fix little holes in your static landscape. 2013-01-20 12:51:33 +01:00
Sven Eberhardt c8edaab426 Experimental: EvilCastle scorching ruins and some enemies 2013-01-20 01:45:00 +01:00