Commit Graph

6667 Commits (issue1247)
 

Author SHA1 Message Date
Nicolas Hake 57044a9eeb Move STATUS_ASSERTION_FAILURE definition to where it's actually needed 2015-01-18 21:55:16 +01:00
Nicolas Hake 4060991124 CMake: Add support for Boost 1.57.0
For some reason, even the most recent (as of this writing) CMake 3.1.0
doesn't know about Boost 1.57.0, which was released two months before
CMake. Add it to the known version list.
2015-01-18 20:50:33 +01:00
Nicolas Hake ee62586013 CMake: Fallback to the system FindFreetype if pkg-config fails
Instead of shipping our own copy of FindFreetype.cmake, use the system
one if pkg-config is not available or can't find FreeType.
2015-01-18 20:50:32 +01:00
Nicolas Hake 2b2d70d02a CMake: Update for 3.1 compatibility
CMake 3.1's if() by default now interprets quoted variable names as
strings. This is a good idea from a strictness perspective, so make it
do this even if we're in 2.8.9 compatibility mode.
2015-01-18 20:50:31 +01:00
Nicolas Hake fad70eb204 Increase required CMake version to 2.8.9
Debian Wheezy is shipping 2.8.9, and nobody is testing older versions
anyway.
2015-01-18 20:50:30 +01:00
Sven Eberhardt 9ac3bd6c1b Some new weapons for DarkCastle enemies. 2015-01-18 19:21:48 +01:00
Sven Eberhardt 3286095755 AI can use grenade launcher. 2015-01-18 19:13:10 +01:00
Sven Eberhardt 282b937a60 Fix null pointer when coniferous burns down. 2015-01-18 15:20:25 +01:00
Sven Eberhardt 4c4d4233bf Fix non-free BaseRespawn on neutral flagpoles.
It would try to buy clonks from player -1, which never worked.
2015-01-18 15:19:46 +01:00
Sven Eberhardt caec5939b0 Fix right-click buying when many items are available. 2015-01-18 15:18:39 +01:00
Sven Eberhardt 7e45475cbe Scenario saving: Concatenate multiple equal calls to CreateContents. 2015-01-18 14:28:10 +01:00
Sven Eberhardt c5af9bc7f2 Fix bomb arrow name. 2015-01-18 13:45:28 +01:00
Maikel de Vries 26aca1abe2 make the lava chunk a small light source 2015-01-18 12:50:53 +01:00
Maikel de Vries 8b5a1f7e18 fix AI test scenario 2015-01-18 12:47:00 +01:00
Sven Eberhardt 763f9de0ec Fix player knowledge in DeepSeaMining (#1239)
The section is switched when the first player joins, so the second player will initialize from the Scenario.txt of the intro section.
2015-01-17 23:10:55 +01:00
Sven Eberhardt f815d7ea6c Fix EditCursor selection and deselection callbacks when duplicating objects. 2015-01-17 22:53:21 +01:00
Sven Eberhardt 6fac0f0567 Clip AI guard range to landscape size. 2015-01-17 22:39:09 +01:00
Sven Eberhardt 4d1d869760 Add editor commands to clonks to enable enemy AI. 2015-01-17 22:36:19 +01:00
Sven Eberhardt f69872c401 AI guard range can be adjusted via drag+drop in editor.
Just select the clonk and move the corner markers.
2015-01-17 21:22:29 +01:00
Sven Eberhardt 7c19f0e0c3 Elevator adjusts case and rope position when moved in editor. 2015-01-17 21:21:27 +01:00
Sven Eberhardt 2cde706611 Object movement in editor respects Def->HorizontalFix and attachment procedure.
When moving attached objects, it will now move the attachment target along with the object. This makes moving elevator cases and wind generators a lot easier.
2015-01-17 21:19:56 +01:00
Sven Eberhardt cf9aca70fe Add callback EditCursorMoved. 2015-01-17 20:53:45 +01:00
Sven Eberhardt c00d8c7a4d Add next_selection parameter to EditCursorDeselection.
If an object is deselected due to a new object selection, that newly selected object is passed as next_selection.
2015-01-17 20:37:54 +01:00
Sven Eberhardt 49c5b22591 Remove some empty graphics files. 2015-01-17 18:22:06 +01:00
Sven Eberhardt f0cbe45afb Remove mention of "fire monsters" from docs.
Since, sadly, we don't have those :(
2015-01-17 18:10:56 +01:00
Sven Eberhardt 8dddbe5a10 Allow definitions without graphics. 2015-01-17 18:10:21 +01:00
Sven Eberhardt d33dfd6c55 Scenario Saving: Select between CreateObject/CreateObjectAbove and fix some unnecessery property saving issues.
* CreateObject for goals/rules/environment, rotated, contained and earth objects
* Allow properties to overwrite default behavior of CreateObject vs CreateObjectAbove
* Random initialization of seaweed phase instead of saving it
* Do not save color of ColorByOwner objects that have their owner color
* Fix block spacing between objects of same type if objects of different type occur inbetween but are not saved
2015-01-17 17:00:58 +01:00
David Dormagen 7e7bbf17fa fixed additive blitting of particles (#1213)
This was accidentally removed by ck in 526b97c60c
2015-01-17 11:13:08 +01:00
Pyrit 742390fe92 Change default granite texture from rock to granite. 2015-01-16 01:03:11 +01:00
Pyrit e2f50324ee Add normal maps to landscape materials. 2015-01-16 01:02:21 +01:00
Sven Eberhardt 6e99843fec Add editor helper functions to open and close stone doors and connect spin wheels. 2015-01-15 22:06:05 +01:00
Armin Burgmeier 166b5de519 Fix mape build 2015-01-15 14:42:22 -05:00
Nicolas Hake df7d19c7c5 Improve C4Landscape const correctness 2015-01-15 19:13:36 +01:00
Nicolas Hake f943866d36 Remove unused and unimplemented C4Landscape::FindMatPathPull
The function has been stubbed since we imported the code from CR.
2015-01-15 19:13:33 +01:00
Maikel de Vries e993b0725e lorry ejects contents on destuction from explosion 2015-01-15 18:34:35 +01:00
Maikel de Vries 75cb5ce800 more tests for exploding containers 2015-01-15 18:31:23 +01:00
Maikel de Vries 91cd68d641 improve explosions propagating inside containers
This fixes the double damage done to containers and iterates through all parent containers until one is found which contains the blast
2015-01-15 17:46:54 +01:00
Maikel de Vries a0faaf9082 add Test scenario for explosions in containers 2015-01-15 17:46:54 +01:00
Maikel de Vries 615b26b453 RemoveObject(true) first tries to put contents into parent container before exiting them 2015-01-15 17:46:54 +01:00
Maikel de Vries 4ea0cb0ca6 make ContainBlast a property instead of DefCore entry 2015-01-15 17:46:53 +01:00
Nicolas Hake aa6b1384a7 Fix build with C4NET2IO_DUMP_LEVEL > 1
Instead of using the preprocessor to filter out debugging code, we might
want to make more use of the optimizer's DCE. That way, renaming and
moving a function or variable won't immediately break a rarely tested
configuration.
2015-01-15 16:33:20 +01:00
Nicolas Hake f351e903ee Don't reset gamma with uninitialized graphics
When OC fails while in startup code, resetting the gamma ramp was trying
to use an uninitialized C4Draw, which would result in writes to invalid
memory.
2015-01-15 16:00:01 +01:00
Peter Wortmann 1aa8585fa1 Cosmetic light improvements
- Increase light fade-in/fade-out quite a bit (4 times stronger)
- Fixed normal jump when multiple lights intersect (will make things a
  little less nice with only one light, but this takes priority)
- Don't draw objects without light in light-debug mode
2015-01-15 12:30:50 +01:00
Nicolas Hake 8a729b4c6f Crash handler: Use PRIdPTR format where available
Printing pointers from the crash handler has been broken starting
with an update to MinGW at some point in the past, when they stopped
using printf from MSVCRT, instead replacing it with a private
implementation. Fix this by checking for inttypes.h availability, and
using it (and its format macro) when possible.
2015-01-15 10:18:37 +01:00
Armin Burgmeier f2830311a6 Fix crash on scenario section change (#1221) 2015-01-14 12:03:05 -05:00
Peter Wortmann e8bf04840f Fix some refactoring bugs (#1227)
The "b" value returned by the new find_cross function had basically
nothing to do with what the old version did (it was for the other
pair of coordinates *and* sign-switched). This is not cosmetical - the
algorithm depends quite a bit on this being consistent.

Additionally, most of the list modifications in CalculateTriangles were
wrong (didn't reprocess last triangle for ascend shadowing, and the descend
case was removing the wrong triangle). I admit the old code was probably a
bit too tricky with how it handled "i", so I attempted to refactor it to
make it less easy to screw up in future.
2015-01-14 14:23:26 +01:00
Sven Eberhardt b2501ed0e5 SetPlrKnowledge(nil, ...) sets/removes knowledge for all players (#1236)
Useful e.g. for ingame scripting when you want to grant extra construction plans. Additionally, this kind of behavior is known from some other functions with per-player parameters like e.g. Sound().
2015-01-14 00:36:44 +01:00
Mark deadfcf099 Initialize newzoom variable (#1217)
Fixes a problem with zoom in debug mode.
2015-01-13 21:29:01 +01:00
Mark f9369f9eb4 Different implementation of CreateObject() (#1214)
CreateObject() now does not reposition an object after it has been created, but rather grows it around the center of said object.
To that end a new parameter has been added to DoCon() and SetCon() and the documentation has been updated.
2015-01-13 21:03:27 +01:00
Armin Burgmeier a5c2e762f7 Fix memory leak when a viewport is re-initialized 2015-01-13 07:48:43 -05:00