Commit Graph

699 Commits (dbd1f601da7e7468662aca9c173edf15de667da0)

Author SHA1 Message Date
krzys-h ed397d2b0f Make sure aliens hatched from eggs are not selectable by default, closes #1054 2018-05-09 23:25:52 +02:00
krzys-h 319d8e6854 Fix delete() not returning sometimes, closes #1067 2018-05-09 23:12:26 +02:00
krzys-h dd40c4d4ee Make magnifyDamage=0 for fragile objects actually work
This fixes a bug in 36d2cf14b8
2018-05-08 19:54:25 +02:00
krzys_h b36d40a509
Merge pull request #1151 from melex750/dev-savegame
Fix saving/loading "NewScript" programs for factory bots
2018-05-07 20:42:51 +02:00
krzys-h 36d2cf14b8 Make magnifyDamage influence fragile objects 2018-05-07 20:31:36 +02:00
krzys-h 1d09ee9b3c Fix transportable object damage rules
This makes the rules match the original Colobot like they were supposed to
2018-05-07 20:31:36 +02:00
melex750 a918fcabb4 Fix save/load NewScript programs for factory bots
Fixes #797
2018-04-30 13:43:03 -04:00
krzys_h 8b86a1f222
Merge pull request #1142 from AbigailBuccaneer/Wmissing-declarations
Compile with -Wmissing-declarations
2018-04-24 14:12:43 +02:00
krzys_h 6289ea91b1
Merge pull request #1140 from AbigailBuccaneer/Wsuggest-override
Compile with -Wsuggest-override under GCC
2018-04-24 14:12:31 +02:00
AbigailBuccaneer ea64edaa0b Compile with -Wmissing-declarations
-Wmissing-declarations enforces that every function (except for static
functions) must be declared separately before it's defined. This
essentially enforces that every function must be either static, or
declared in a header elsewhere.

This helps the optimizer, as it can do a better job of inlining if it
knows that a function won't be used outside of a given file. It also
helps -Wunused-function (which is enabled by -Wall) find more unused
functions.

Note that Clang spells this option -Wmissing-prototypes, which
confusingly is the name of a related but different warning option under
GCC.
2018-04-21 16:49:27 +01:00
krzys-h e964d3e48c Fix colobot-lint warnings 2018-04-20 02:21:12 +02:00
krzys-h 1c2bdc9cab Update license headers 2018-04-20 02:08:50 +02:00
AbigailBuccaneer 6978c28ee0 Compile with -Wsuggest-override under GCC
Clang by default compiles with -Winconsistent-missing-override, which
warns when a class declares virtual functions that override those in the
base class, and some but not all of them are explicitly declared
`override`.

GCC doesn't support this option, but has a stronger version,
-Wsuggest-override. In combination with -Werror, this means that any
virtual function that overrides another *must* be explicitly declared as
`override`.

This commit enables -Wsuggest-override where available. This means that
GCC users can't break the Clang build with inconsistent overrides (see
 #1113 and #1114) and consequently that any build that passes the pull
request CI build on Jenkins won't break because of inconsistent
overrides.
2018-04-19 19:58:44 +01:00
B-CE 0e6d22a549 Fix clang compilation, fixes #1113 2018-03-12 12:42:22 +01:00
krzys_h d3b969fb4d
Merge pull request #992 from DavivaD/dev-dmgalarm-st2
Damage Alarm Implementation (2th Stage)
2017-11-04 11:27:14 +01:00
melex750 d357de1438 Save object lifetime and abstime
Fixes #1006
2017-10-24 05:12:19 -04:00
krzys_h 6b1dd5dd8b Merge pull request #994 from DavivaD/dev-issue-658
Thumper & Recycler Enhancements.
2017-10-22 18:22:06 +02:00
melex750 bf69b86233 Fixed shortcut not changing to normal state 2017-10-17 02:33:05 +02:00
tomangelo2 dab223e6ce Clamp energy level to standard values for OrgaShooters
Fix issue #1009
2017-10-16 20:29:59 +02:00
tomangelo2 f40756bc46 Fix turn(1) doesn't draining energy
Fix using @Melex750 example, thanks!
Fix issue #136
2017-10-11 18:50:57 +02:00
DavivaD ee35d35db3 Correct Small Mistake 2017-07-27 02:02:46 +02:00
DavivaD 959854ec59 'Make Thumper Great Again' 2017-07-26 23:05:53 +02:00
tomangelo2 0de347d430 Fixed goto() behaviour on 32-bit binaries
Closes issue #844
2017-07-26 14:54:04 +02:00
DavivaD a4482f1a7c Decrease radius of squashing items. 2017-07-24 23:20:21 +02:00
DavivaD b5e0f9966f Make Recycler Recycle small Building Ruins. 2017-07-21 20:37:18 +02:00
DavivaD bef6e9eceb Make Thumper Squash transportable/small objects. 2017-07-21 20:36:31 +02:00
DavivaD a29a4f93ac Damage Alert Implementation (2th Stage) 2017-06-20 23:35:33 +02:00
krzys-h bb35585194 Fix object.factory() code type detection, closes #938 2017-06-03 21:43:10 +02:00
Abigail f4614658cf Fix -Wundefined-var-template warning (#963)
This avoids specializing CSingleton<T>::m_instance for each type, and
instead just defines it once in the header. This is allowed by the
standard, multiple definitions are merged in the same way that inline
functions are.
2017-05-29 20:46:11 +02:00
krzys-h 02aa281d30 Remove unnecessary m_instance declarations
They don't do anything at all in gcc and clang, but cause compile errors in MSVC
see #955
2017-05-24 14:00:34 +02:00
krzys-h 935b789d02 Fix alien animations after 5d4dfd8cb5 2017-05-24 10:45:31 +02:00
krzys-h 5d4dfd8cb5 Fix scoreboard points sometimes being added multiple times 2017-05-23 22:25:40 +02:00
krzys-h 648dfd75c4 Fix handling of particle 'father' objects when they are destroyed 2017-05-23 20:31:55 +02:00
MatiRg 417301ff06 Fix rendering glasses in FPP camera, closes #775 (#959) 2017-05-23 18:57:41 +02:00
Abigail 11d950221b Fix all compiler warnings and enable -Werror (#955)
This removes all compilation warnings on:
* g++ 4.7.4, 4.8.5, 4.9.4, 5.4.1, 6.3.0, 7.0.1-svn246759
* clang++ 3.9.1, 4.0.0, 5.0.0-svn303007
2017-05-22 11:10:35 +02:00
krzys-h 7b328fbfc3 Make UraniumOre not destroyable, closes #777
This was likely a mistake during object interface refactoring
2017-05-21 21:45:46 +02:00
krzys-h 8948da0612 Add Barricade objects 2017-05-19 15:33:44 +02:00
krzys-h 880f31a7c6 Add basics of scoreboard implementation; better support for multiple teams 2017-05-17 18:22:58 +02:00
krzys-h fda58a6008 Change bullet collision logic to allow for collisions with non-damageable objects
For now, you have to add bulletWall=true to objects you want bullets to collide with.
It's ugly but will work for now. This is needed mostly for compatibility
with exercises which use barriers to block movement but not bullets.

I also made the collision checks run more often because otherwise the bullets
would sometimes miss the objects (but only visually)
2017-04-29 13:14:10 +02:00
krzys-h 7fadf7bad5 Fix aliens being selectable by default (#900)
Broken in 6a382830a9
This change also allows you to make selectable insects with selectable=1 in scene file
2017-01-28 12:53:28 +01:00
krzys-h 7b3b257580 Fix code style 2017-01-02 14:54:38 +01:00
krzys-h 46aa6fc907 Some CRobotMain cleanup
* improved documentation
* renamed cheat variables to include the word "cheat" to make it clearer what they do
* removed some useless members
2016-12-27 23:38:57 +01:00
krzys-h 17511ddb6a Fix some code style 2016-12-27 15:54:52 +01:00
krzys-h f33ffaf18b Fix mission end before astronaut death scene is finished (#848) 2016-12-27 15:32:38 +01:00
krzys-h b6cda6cd4c Add error when object is busy (#871) 2016-12-27 13:36:46 +01:00
krzys-h eb2a1857dc Fix goto() with multiple objects at the exact same position (#732) 2016-12-04 16:07:41 +01:00
krzys-h 3472ec6613 Revert CParticle::CheckChannel changes
I misinterpreted this as being a bug, while actually it seems to be an explicit CParticle design choice (maybe not the best one, but whatever). We DO need better docs for some old code like this :/

Fixes #806

This reverts commit 99a831a03b.
2016-09-27 18:34:54 +02:00
MatiRg dc415c3d2a Remove character limit in CEdit (#836) 2016-09-25 19:13:04 +02:00
Jeremy Mickelson 859cec774a Added comment explaining container choice 2016-08-13 12:18:54 -06:00
Jeremy Mickelson 88227a3647 Allow multiple objects with exactly the same distance to be returned by `radarall` 2016-08-13 12:13:41 -06:00