krzys-h
073191d1ea
Small CPathManager refactoring
2018-05-16 13:28:06 +02:00
José Robson Mariano Alves
dbd1f601da
Translation to Brazilian Portuguese
2018-05-15 18:31:41 -03:00
José Robson Mariano Alves
2b933264fc
Translation to Brazilian Portuguese
2018-05-15 16:07:03 -03:00
krzys-h
f538b4f477
What did I say about commiting in a hurry
2018-05-10 11:32:33 +02:00
krzys-h
12cf57409c
Support more buttonX.png files in other places than just buttons
2018-05-10 11:24:59 +02:00
krzys-h
05bc65a90b
Add support for more buttonsX.png textures (for modders)
2018-05-10 11:12:45 +02:00
krzys-h
8095dc14f7
Add support for custom button= for View cameras
2018-05-10 11:12:22 +02:00
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
AbigailBuccaneer
e481905a25
Do less state setting in gl14 and gl21
2018-05-09 21:03:08 +01:00
AbigailBuccaneer
c9a8a242a0
Remove CGL14Device's support for display lists
...
Closes #1153 .
2018-05-09 21:03:08 +01:00
AbigailBuccaneer
f8ebc6ec21
Remove code for drawing dynamic vertex formats
...
It's unused, and it's a bad idea - it's important for authoring tools
and for performance that vertex formats are well-defined instead of
dynamically created.
2018-05-09 21:03:08 +01:00
AbigailBuccaneer
94b30c00a0
Remove code duplication in CGLxxDevice
2018-05-09 21:03:08 +01:00
krzys-h
10fc47476b
Fix code style
2018-05-09 18:34:27 +02:00
krzys-h
85772376fa
Merge ScoreboardSortType with main Scoreboard command
2018-05-09 18:33:27 +02:00
krzys-h
1ed3f4b215
Add EndMissionTeams immediateWin=true; make the teams on win screen sorted
2018-05-09 18:28:25 +02:00
AbigailBuccaneer
c027b54add
Don't create a color renderbuffer for shadow map
...
When rendering the shadow map offscreen using framebuffer objects, it's
not necessary to create a color renderbuffer. Currently
FramebufferParams only lets you choose between a renderbuffer and a
texture for both color and depth attachments. This changes that, and now
you can ask for a texture, a renderbuffer, or nothing.
This improves performance. On my computer, with an 8192x8192 shadow map,
this improves overall frame time by 8.0%.
2018-05-09 17:25:52 +01:00
krzys-h
abe489e294
Add EndMissionTimeout
2018-05-09 17:47:21 +02:00
krzys-h
a3def6d683
Disallow firendly fire in ScoreboardKillRule
2018-05-08 23:57:13 +02:00
krzys-h
0baf9f8077
Don't commit code in a hurry like that...
2018-05-08 23:47:50 +02:00
krzys-h
f03c3dbc10
Implement ScoreboardObjectRule
2018-05-08 23:44:23 +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
db72a36315
Fix code style
2018-05-08 19:44:24 +02:00
Fiftytwo
caf58c8ab8
Merge branch 'dev' of https://github.com/colobot/colobot into dev
2018-05-07 21:48:48 +02:00
krzys_h
5283865a5c
Merge pull request #1136 from colobot/dev-cbot-optimizations
...
Some CBot code optimizations
2018-05-07 20:53:52 +02:00
krzys_h
182c4c5cbf
Merge pull request #1154 from AbigailBuccaneer/shadow-shimmering
...
Fix shadow shimmering
2018-05-07 20:53:28 +02:00
krzys_h
a54f65f71b
Merge pull request #1152 from AbigailBuccaneer/consistent-shadow-antialiasing
...
Improve shadow quality and performance in gl33
2018-05-07 20:53:21 +02:00
krzys_h
50ed675acd
Merge pull request #1150 from AbigailBuccaneer/debug-rendering
...
Add generic debug rendering functions
2018-05-07 20:53:12 +02:00
krzys_h
f146d2885b
Merge pull request #1149 from AbigailBuccaneer/tighter-visibility-checking
...
Improve object visibility culling with tighter bounding spheres
2018-05-07 20:53:00 +02:00
krzys_h
44f2684c70
Merge pull request #1148 from AbigailBuccaneer/text-batching
...
Improve text rendering performance
2018-05-07 20:52:50 +02:00
krzys-h
6e273e7e33
Declare CBotVar::m_token as const
2018-05-07 20:51:44 +02:00
krzys_h
05fe7431c4
Merge pull request #1143 from AbigailBuccaneer/fix/1087-positional-sounds
...
Fix global sounds being positioned at camera
2018-05-07 20:43:03 +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
b9e2edce6c
Merge pull request #1146 from colobot/dev-scene-camera
...
Implement viewpoint feature
2018-05-07 20:42:18 +02:00
krzys_h
35640b8e3f
Merge branch 'dev' into dev-scoreboard-sort
2018-05-07 20:41:40 +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
krzys-h
6ccf32ec68
fixup! Fix code style in #1150
2018-05-07 20:28:31 +02:00
AbigailBuccaneer
abeb7fceb2
Fix shadow shimmering
...
Shadow shimmering is a visual artefact where the outlines of shadow
mapped objects don't stay stable when the camera is moved or rotated.
The reason is that as the shadow map's origin moves, the objects
rendered to the shadow map have temporal aliasing around their edges.
The solution is to only move the shadow map in texel-sized increments.
Because the shadow map's projection is orthographic, moving the shadow
map origin in texel increments ensures that objects that aren't moving
don't show any temporal aliasing, as the position of the samples of the
object in worldspace stay the same.
2018-05-04 10:56:37 +01:00
AbigailBuccaneer
0d6fffd91f
Improve shadow quality and performance in gl33
...
If CONFIG_QUALITY_SHADOWS is defined (which it always is) then the
fragment shader code that samples the shadow map will take five samples
in a cross shape around the point to be sampled, to apply antialiasing.
Currently, the offset of these samples is hardcoded to 0.00025× the
shadow map resolution. This is very inconsistent: if the shadow map
resolution is 128×128, then these samples are 0.032 texels apart, which
is a waste of four texture samples, and essentially means that no
antialiasing is applied. If the shadow map resolution is 8192×8192, then
these samples are 2.048 texels apart, which causes visual artefacts
around shadow edges, instead of giving smoother shadows.
The correct thing to do is to always sample exactly one texel away from
the original position. This is easy in GLSL 3.30, as it includes a
textureOffset function which offsets a texture fetch by an exact number
of texels. This is faster than manually calculating an offset ourselves,
it fixes visual artefacts at high resolutions, and it properly applies
antialiasing at low resolutions.
2018-05-02 16:30:45 +01:00
krzys-h
38a34829af
Fix code style in #1150
2018-05-01 21:27:49 +02:00
melex750
a918fcabb4
Fix save/load NewScript programs for factory bots
...
Fixes #797
2018-04-30 13:43:03 -04:00
AbigailBuccaneer
6f6cfb136a
Batch draw calls from CText to improve performance
...
This significantly speeds up text rendering. On my computer, looking at
the program editor with a full screen of text, this commit takes the
framerate from under 30 to 60 (hitting vsync).
Performance could be further improved in the gl33 renderer by using
instancing or glPrimitiveRestartIndex instead of glMultiDrawArrays, but
that would be a more invasive change.
All of the interface rendering could use a unified quad batching system,
instead of it being limited to CText, but that would require some
refactoring in CText as it currently draws using a different coordinate
space to the rest of the interface.
Fixes #1104 .
2018-04-30 10:18:51 +01:00
AbigailBuccaneer
c445d7d9a9
Add generic debug rendering functions
...
Currently the engine can draw debug spheres to show crash sphere
positions. This extends this to draw arbitrary spheres and cuboids,
transformed arbitrarily. With these in place it's now very quick and
easy to create a debug visualisation - for example, it's a one-line code
change to render the bounding box or sphere of every EngineObject.
2018-04-29 23:41:53 +01:00
AbigailBuccaneer
282a793a13
Improve object vis with tighter bounding spheres
...
This commit improves rendering performance by doing a better job of
checking whether an object is visible via its bounding sphere or not.
The engine maintains a bounding box for each EngineBaseObject that's
exactly large enough to fit every vertex. From this, it computes a
bounding sphere, and only draws objects if the sphere is within the view
frustum. Previously, the bounding sphere was always centered on the
EngineBaseObject's origin, even for models where the bounding box center
is significantly offset from the origin. Now, the bounding sphere is
always the tightest sphere which fits the bounding box.
2018-04-29 19:35:02 +01:00
AbigailBuccaneer
c49c815ea5
Set uniforms less often during text rendering
...
We now call SetWindowCoordinates and SetInterfaceCoordinates once per
string, rather than once or twice per character.
2018-04-27 10:43:26 +01:00
krzys_h
db90fcd2ef
Merge pull request #1118 from nextghost/dev
...
Czech translation
2018-04-24 14:17:23 +02:00
krzys_h
64ab5e3308
Merge pull request #1053 from colobot/dev-a-thing
...
added a thing
2018-04-24 14:13:42 +02: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
krzys_h
289b6577d5
Merge pull request #1139 from AbigailBuccaneer/clang-7
...
Fix building under clang-7
2018-04-24 14:12:15 +02:00
AbigailBuccaneer
4bca2b2243
Fix global sounds being positioned at camera
...
Certain sounds - such as those coming from the UI - aren't supposed to
sound as if they're coming from a given position. This is currently
accomplished by positioning the OpenAL source at the camera position.
This works, but if the camera position drastically moves during the
sound being played then it's possible to hear the sound fade out.
This pull request makes camera movement no longer affect global sounds,
by specifying their position as being (0, 0, 0) relative to the listener
position.
The easiest way to test this is to start a mission, press E to grab when
there's nothing in front of you, and scroll the mouse wheel quickly.
Pressing E will show the nothing-to-grab message which plays a beep
sound, and scrolling will quickly move the camera. Prior to this pull
request, the sound will fade, after this pull request it won't.
Fixes #1087 .
2018-04-24 11:43:11 +01:00
tomangelo2
5e8be5f6bc
Better align of viewpoint UI
2018-04-23 08:12:33 +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
AbigailBuccaneer
4119e669d1
Remove central tracking of SystemTimeStamp
...
SystemTimeStamp used to be an opaque class, as it was provided by
`system_{linux/other/windows}.h`. Because of this, code dealt in
SystemTimeStamp pointers, and getting the current timestamp required a
memory allocation. Now SystemTimeStamp is just a
`std::chrono::time_point`, we can make the code cleaner and faster by
just directly keeping SystemTimeStamp instead of pointers around.
2018-04-20 09:57:10 +01:00
AbigailBuccaneer
285350464f
Remove platform-specific handling of times
...
Now all platforms use std::chrono::high_resolution_clock and
std::this_thread::sleep_for instead of platform-specific timestamp and
sleep methods.
2018-04-20 09:56:57 +01:00
AbigailBuccaneer
2a003a27b1
Use C++11 threads, mutexes and condition variables
2018-04-20 09:56:57 +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
krzys-h
9f1bd2176f
Jenkinsfile: Run colobot-lint
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
AbigailBuccaneer
5cec29f4e6
Fix building under clang-7
...
Currently the build fails because of -Wdelete-non-virtual-dtor warnings.
This catches when an object is destructed, has a non-virtual destructor,
and is an abstract base class or a non-final class with virtual
functions. The warning happens inside unique_ptr<T>::~unique_ptr.
The warning is to prevent somebody writing code like this:
class MySceneEndCondition : public CSceneEndCondition {
~MySceneEndCondition() { /* some complex logic */ }
};
// this won't call MySceneEndCondition's destructor, potentially
// leading to leaks or segfaults:
std::unique_ptr<CSceneEndCondition> p{new MySceneEndCondition()};
2018-04-19 10:19:05 +01:00
tomangelo2
2f71cce9c9
Fix camera behaviour when switching to viewpoint
2018-04-15 00:06:04 +02:00
tomangelo2
b04d8d205b
Added viewpoints feature
...
This allows you to set fixed viewpoints in specific location, without attaching to any object, enabling you to track the game from any location.
Proper camera handling will be implemented in next commits.
2018-04-11 21:24:20 +02:00
tomangelo2
ad6dd00275
Change new functions return type and switch to enum class
...
As suggested by @krzys_h
2018-04-08 23:43:22 +02:00
krzys-h
477dc0cae7
Some CBot code optimizations
2018-04-06 15:02:06 +02:00
B-CE
da1b7e8c2d
Fixes #274 : pasting tabs
2018-03-12 12:58:43 +01:00
B-CE
0e6d22a549
Fix clang compilation, fixes #1113
2018-03-12 12:42:22 +01:00
tomangelo2
d371338920
Fix scoreboard sorting parameters
2018-03-11 17:00:17 +01:00
tomangelo2
1b79e8409f
Add switch to determine sort type
...
You can set it in scene file with ScoreboardSortType SortBy="Name" or "Points"
2018-03-07 21:25:35 +01:00
tomangelo2
ff0f22ef44
Sort scoreboard
...
First, the team with more points, then which team scored points faster
2018-03-07 15:46:30 +01:00
Martin Doucha
81b4d0e28b
Add Czech translation
2018-02-24 20:39:29 +01:00
tomangelo2
5e606336ca
Fixed TrackedTrainer tracks allignement
2018-02-12 15:11:14 +01:00
tomangelo2
f51f457023
Narrowed TrackedTrainer tracks
...
TrackedTrainers now have same width as other bots
2018-02-10 20:58:14 +01:00
Fiftytwo
bd0c6d4344
Add PracticeBot helpfile
2017-12-22 17:02:37 +01:00
Fiftytwo
a15b3e4dd4
Add Trainer icons
2017-12-22 16:51:25 +01:00
Fiftytwo
0fddd79501
Add PracticeBot alias detection in search() and detect()
2017-12-21 14:44:43 +01:00
Fiftytwo
ca0ff013d4
Update Trainer bots
2017-12-21 01:49:56 +01:00
Fiftytwo
94aa76e7a1
Add auto object detection for takeoff, destroy, camerafocus
2017-11-30 20:41:44 +01:00
Fiftytwo
e01a6bd0ef
Add Builder documentation
2017-11-30 08:00:17 +01:00
Fiftytwo
7eb1df4119
Add aim recalibration during falling
2017-11-29 13:24:05 +01:00
Fiftytwo
db23c6eecf
Change Builder default camera type
2017-11-25 14:35:45 +01:00
Fiftytwo
5f8b7a8149
Update BotFactory interface
2017-11-25 12:30:16 +01:00
Fiftytwo
e8b93f6cda
Add Builder interface
2017-11-25 03:09:47 +01:00
Fiftytwo
614dc5e591
Builder research
2017-11-23 00:11:29 +01:00
krzys-h
7f6c0cd31e
added a thing
2017-11-22 18:29:09 +01:00
Fiftytwo
03c7d2e7ee
WingedBuilder full implementation; new aiming method, better particle alignment
2017-11-22 02:05:36 +01:00
Fiftytwo
d06116eb49
Attached proper particles to the neutron gun
2017-11-21 19:09:38 +01:00
Fiftytwo
b72e802ff7
Neutron gun now aims
2017-11-17 19:57:08 +01:00
Mateusz Przybył
46bef8fd92
Add button4.png drawing (builder icons)
2017-11-17 18:59:14 +01:00
Fiftytwo
0b36bdf37f
Quick fix for 9a33551
since I broke sth
2017-11-17 12:00:49 +01:00
Fiftytwo
9a33551a03
Reverted factory() to its original design; reworked syntax of other object.functions() accordingly; improved compatibility with CeeBot4 SCHOOL
2017-11-17 11:32:50 +01:00
Fiftytwo
b04d8ca99d
Clean up redundant files
2017-11-16 20:32:10 +01:00
Fiftytwo
a024866fd3
Builder bots base implementation
2017-11-16 18:43:45 +01:00
tomangelo2
f01e2b7e01
Moved fonts maps from header file to source file
2017-11-07 19:29:51 +01:00
krzys-h
5f5e5234fc
Fix CEdit background margins, closes #1029
...
This mismatch happened after changes in 08d87fa975
2017-11-04 11:56:15 +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
krzys_h
17d47e9b63
Merge pull request #1040 from melex750/dev
...
Saved game bug fix
2017-11-04 11:24:09 +01:00
krzys-h
387b7b5396
Fix non-scoreboard code battles, closes #1023
2017-11-04 11:23:17 +01:00
tomangelo2
0179e4c786
Cleaned unused values from CFontConfig
2017-10-28 22:24:11 +02:00
tomangelo2
ff97df74c6
Added support for italic and bold variants of studio and satcom fonts
...
They aren't currently used anywhere
2017-10-28 22:22:22 +02:00
melex750
d357de1438
Save object lifetime and abstime
...
Fixes #1006
2017-10-24 05:12:19 -04:00
melex750
1eee06d9f9
Keep mission history after loading a crashsave
...
Fixes #812
2017-10-24 04:55:22 -04:00
melex750
a9e0874abc
Fix 'this' for object:: functions
...
Fixes #672
Fixes #1026
2017-10-24 04:46:07 -04:00
tomangelo2
3801ab87a2
Changed m_font map to const fontType map
2017-10-23 19:08:28 +02:00
krzys_h
6b1dd5dd8b
Merge pull request #994 from DavivaD/dev-issue-658
...
Thumper & Recycler Enhancements.
2017-10-22 18:22:06 +02:00
krzys_h
ee0f3ff5fd
Merge pull request #1022 from immibis/dev
...
Fix horizontal scrolling of planets and background images
2017-10-22 18:21:49 +02:00
krzys_h
9448f6712f
Merge pull request #1004 from melex750/dev-cbot
...
Escape codes for strings in CBOT
2017-10-22 18:20:50 +02:00
krzys_h
0a83508547
Merge pull request #985 from melex750/dev
...
Bug fix for CStudio
2017-10-22 18:20:35 +02:00
tomangelo2
1539e94b09
Changed defaultFont to const map
2017-10-18 20:40:07 +02:00
tomangelo2
76a8335501
Reworked GetFont method
2017-10-18 12:01:34 +02:00
DavivaD
2a0c2c38f0
Make shortcut blink in red
2017-10-17 02:35:33 +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
94cacdae96
Removed singletone from FontConfig
...
Also renamed class so it now matches better with class file name
2017-10-15 23:46:15 +02:00
tomangelo2
1e614d64d0
Removed unnecessary variable
2017-10-15 23:35:09 +02:00
tomangelo2
52d9330114
Replaced multiple methods with one
2017-10-15 23:31:06 +02:00
tomangelo2
dd9439aed2
Renamed font_file to font_config
2017-10-15 22:47:32 +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
tomangelo2
054d1c3e54
Changed in-engine fonts names
2017-10-11 17:10:04 +02:00
tomangelo2
cf46c2457a
Moved file font.ini to /fonts/ directory
...
Separated SatCom font from Colobot font
2017-10-11 17:02:09 +02:00
tomangelo2
250c934b9e
Added fonts configurability by a separate file
2017-10-09 00:36:31 +02:00
immibis
8b0ccf6667
Fix horizontal scrolling of background images.
2017-08-05 20:08:00 +12:00
immibis
2e8798b33d
Make planets stay in one place in the sky - at least in the X direction.
2017-08-05 20:08:00 +12:00
immibis
2751db3245
Add horizontal FoV to CEngine
2017-08-05 19:45:08 +12: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
melex750
e3c44e956f
Add syntax highlighting for escape codes
2017-07-22 14:30:05 -04:00
melex750
c03dfc1284
Add escape codes for string literals
2017-07-22 14:29:05 -04: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
melex750
86870167a6
Fix moving and resizing open/save dialog
...
* Fixed buffer overflow when resizing
* Stop hard drive thrashing when moving/resizing
2017-06-26 14:19:53 -04:00
melex750
2d2990ff91
Fix moving and resizing editor/debugger window
...
* Stop hard drive thrashing when moving/resizing
* Also fixed #691 .
2017-06-26 14:11:47 -04:00
DavivaD
a29a4f93ac
Damage Alert Implementation (2th Stage)
2017-06-20 23:35:33 +02:00
tomangelo2
75d9f8573b
Display warning if no quicksave slot is found
2017-06-11 23:29:50 +02:00
tomangelo2
d63ed865f4
Added QuickSave/QuickLoad feature #929
...
Also rearranged a bit speed control buttons to make some space for it
F5 - QuickSave
F6 - lower speed (current/2)
F7 - reset speed
F8 - higher speed (current*2)
F9 - QuickLoad
2017-06-11 17:50:21 +02:00
krzys-h
d860a08d21
Merge long first frame rendering fix from #898
...
Also did some changes to make sure the "F1 to open SatCom" appears immediately (not after 0.1s),
and that mission timer won't start ticking in the first simulation frame (mainly for code battle initial pause)
2017-06-04 13:10:50 +02:00
krzys-h
bb35585194
Fix object.factory() code type detection, closes #938
2017-06-03 21:43:10 +02:00
krzys-h
4faabf2185
Apply shadow mapping performance counter patch from #923
2017-06-03 21:11:18 +02:00
krzys-h
a95f736cbe
Fix delete(this.id), closes #925
2017-06-03 20:05:54 +02:00
krzys_h
bf94bd7130
Merge pull request #965 from melex750/dev
...
Improved search() and searchall()
2017-06-03 18:56:29 +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
melex750
15b8cf7f78
Update object variable when concatenating strings
2017-05-25 02:09:44 -04:00
melex750
30210d0de7
Add searchall() and improve search() function
2017-05-25 02:01:42 -04: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
28081bfd3e
Fix clang builds
...
see #955
2017-05-24 14:00:34 +02:00
krzys-h
1f477bbc86
Fix error in edit.cpp in 08d87fa975
2017-05-24 12:46:30 +02:00
krzys-h
7216d8d12e
Fix crash after exiting a code battle
2017-05-24 12:42:37 +02:00
krzys-h
08d87fa975
Make initial scoreboard values editable
2017-05-24 12:39:05 +02:00
krzys-h
f60108f367
Prevent enforcement of ObligatoryToken for level controller scripts
2017-05-24 10:50:43 +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
d8b0bd4df8
Make TargetBots explode when they run into something
2017-05-23 22:02:00 +02:00
krzys-h
149d1f8156
Fix aliens not appearing on the minimap, closes #901
2017-05-23 20:51:37 +02:00
krzys-h
004106eb19
Don't limit types of objects visible on minimap with fixed image
2017-05-23 20:47:03 +02:00
krzys-h
648dfd75c4
Fix handling of particle 'father' objects when they are destroyed
2017-05-23 20:31:55 +02:00
krzys-h
904b7e580b
Prevent giving scoreboard points to team 0
2017-05-23 20:20:46 +02:00
krzys-h
2d7911f155
Fix delete() in CBot not destroying PowerCells properly
2017-05-23 20:19:47 +02:00
MatiRg
417301ff06
Fix rendering glasses in FPP camera, closes #775 ( #959 )
2017-05-23 18:57:41 +02:00
krzys-h
108551c199
Fix @tomangelo2's code style
...
see 47a8f70f0f
2017-05-22 11:11:44 +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
DavivaD
df12f87b47
Implement damage alarm ( #916 )
...
Implements part of #320
2017-05-22 11:01:36 +02:00
krzys_h
cd808ac59f
Merge pull request #920 from melex750/dev
...
Fix default arguments
2017-05-22 10:58:16 +02:00
MatiRg
a0e5cc25e1
Allow ctrl + backspace in the editor. ( #839 )
2017-05-22 10:57:30 +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
tomangelo2
47a8f70f0f
Display warning if there is not enough energy to shoot
...
Fix issue #949
2017-05-20 20:41:30 +02:00
krzys-h
681d5203e5
Make code battle start button header translatable
2017-05-19 21:23:14 +02:00
krzys-h
c68f5e276f
Add live scoreboard display
2017-05-19 21:11:43 +02:00
krzys-h
b3ea687d32
Minor documentation fixes
2017-05-19 20:15:13 +02:00
krzys-h
8948da0612
Add Barricade objects
2017-05-19 15:33:44 +02:00
krzys-h
327eafddb7
Add order= parameter for ScoreboardEndTakeRule
2017-05-18 20:39:32 +02:00
krzys-h
6bebbb3f70
Fix sky rendering artifact
2017-05-18 19:03:19 +02:00
krzys-h
f6cc629054
Log correct terrain relief resolution
2017-05-18 18:32:22 +02:00
krzys-h
cf7c19ef62
Make teams and scoreboard translatable
2017-05-17 19:00:40 +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
6cd72543c4
Fix amount of damage from OrgaShooters
...
I messed it up in previous commit, 0.002/2 is 0.001 not 0.0005 :P
2017-04-29 13:18:01 +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
melex750
f80db9e8fb
Fix using negative numbers in default arguments
...
Issue #919
2017-03-03 02:11:10 -05:00
melex750
b032dad578
Fix execution of default arguments
2017-03-03 01:09:09 -05:00
tomangelo2
588bf30b94
Fixed some functions doesn't returning 0 if no error
...
Fix issue #917
2017-03-02 23:01:55 +01:00
krzys-h
9eae1e151d
Fix Shooter target getting stuck on not selectable objects ( #900 )
2017-01-28 12:56:42 +01: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
melex750
92a8c48953
Add syntax for parameters with default values
...
Also fixes #642
2017-01-24 15:19:03 -05:00
melex750
baba6081b3
Add checking for return statements in functions
...
issue #30
2017-01-24 14:41:22 -05:00
melex750
2ff8251a81
Fix game crashing with syntax errors
2017-01-24 13:47:00 -05:00
melex750
8e54f7ca9c
Fix memory leaks in CBOT engine
2017-01-16 21:16:59 +01:00
melex750
64bc1f1afb
Fix constructor/destructor and field syntax
2017-01-16 21:16:59 +01:00
melex750
8fc0151444
Fix increment and decrement syntax
2017-01-16 21:16:59 +01:00
piotrwalkusz1
d7fae300b9
Fix crash on class redefinition, closes #703 ( #890 )
2017-01-15 20:28:52 +01:00
Smok94
8a0c7279dc
Command history for cheat console, closes #316 (PR #869 )
...
Adds console command history. Browsable by up and down arrow keys.
2017-01-02 20:23:19 +01:00
piotrwalkusz1
6ec13017eb
Fix apperance camera position, closes #802 ( #880 )
2017-01-02 18:43:19 +01:00
Tomasz Kapuściński
9bdd83771e
Optimizations and changes in OpenGL 2.1 device.
...
* Limited number of lights to 4
* Only directional lights
* Per-pixel lighting
* Improved dynamic shadows a bit
2017-01-02 16:35:40 +01:00
krzys-h
7b3b257580
Fix code style
2017-01-02 14:54:38 +01:00
Tomasz Kapuściński
7bb3245092
Optimizations and changes in OpenGL 3.3 device.
...
* Limited number of lights to 4
* Only directional lights
* Per-pixel lighting
* Improved dynamic shadows a bit
* Optimized texture changes
2017-01-01 17:16:54 +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
6a382830a9
Allow selectinsect to select other objects with selectable=0
2016-12-27 22:20:58 +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
5722fdb163
Fix bug (?) related to lost cutscenes
...
This was here since the original game, probably unused but I fixed it anyway
2016-12-27 15:21:49 +01:00
krzys-h
8d52e27c2b
Add coordinates under cursor overlay and copy function ( #868 )
2016-12-27 14:58:41 +01:00
krzys-h
b6cda6cd4c
Add error when object is busy ( #871 )
2016-12-27 13:36:46 +01:00
krzys-h
e325efa447
Fix crash after precompiling a CBot class with errors ( #881 )
2016-12-27 13:23:41 +01:00
tomangelo2
5dc38f1526
Objects outside BuildType list cannot be build anymore
...
Fix issue #863
2016-12-05 14:16:11 +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
88c6818cfd
Fix code style issues
2016-11-26 13:48:12 +01:00
krzys-h
7190c8518e
Fix destructors not being called when program execution ended, closes #859
2016-11-11 23:07:22 +01:00
krzys-h
b49fbf0cd6
Another this==nullptr fix ( #828 )
2016-11-11 22:58:39 +01:00
krzys-h
48f703282e
Refactor CBotCallMethode -> CBotExternalCall
2016-11-11 21:58:25 +01:00
krzys-h
6b7233c6ae
Remove CBotLinkedList from CBotFunction
...
Fixup for 191151eb7b
No idea how I managed to forget that
2016-11-11 19:47:59 +01:00
krzys-h
35d60aaae5
Remove remaining occurences of "this == nullptr" ( #828 )
2016-11-11 19:45:57 +01:00
krzys-h
191151eb7b
Refactor CBotClass and CBotFunction list to std::list
2016-11-11 19:37:19 +01:00
krzys-h
266b34d578
Make CBotFunction implement CBotLinkedList
2016-11-11 18:16:12 +01:00
krzys-h
8764d28e9e
Remove remaining "this != nullptr" checks in CBOT, closes #828
2016-11-11 18:03:46 +01:00
krzys-h
3bac0aabd9
Fix buffer overrun when rendering goto() debug texture, closes #841
2016-11-11 17:26:37 +01:00
krzys-h
856ee9a0fe
Don't allow whitespace player names, closes #840
2016-11-11 17:13:32 +01:00
krzys-h
6e4764b97c
Fix GroundSpot blending, closes #846
2016-11-11 17:06:53 +01:00
krzys-h
1b074bd94d
Fix crash on loading saves with produce()d objects ( #765 )
...
Thanks @melex750!
2016-11-11 13:38:43 +01:00
Tomasz Kapuściński
e7c41ae9e6
Correction in changing wrap mode in SetState
2016-11-10 13:00:42 +01:00
Tomasz Kapuściński
9fe85e280a
Code simplification in CGL14Device
2016-11-10 12:34:30 +01:00
Unknown
3c71354b42
Fix MSVC2015 compilation error
2016-11-07 21:08:02 +01:00
Tomasz Kapuściński
5aa5d91ecb
Fix compilation errors in half.cpp
2016-11-04 18:34:49 +01:00
Tomasz Kapuściński
993d9e9ed6
Added rendering with generic vertex formats
2016-11-04 14:13:16 +01:00
Tomasz Kapuściński
ae3b2b8572
Added types and vertex format specification
2016-11-04 11:59:57 +01:00
Tomasz Kapuściński
c5b5435b4a
Added half-precision floating-point format implementation
2016-11-04 11:35:55 +01:00
krzys-h
bb9d1c8265
Remove "this == nullptr" checks in CBOT, fixes #828
2016-10-02 21:36:59 +02:00
krzys-h
a96835e35f
Change CBot file log messages
...
Open mode is logged now. Additionally fixed incorrect file path in log when deleting files.
2016-09-30 17:08:37 +02:00
MatiRg
d107605007
Add file append mode in CBot ( #838 )
2016-09-30 17:03:13 +02:00
krzys-h
73be03161f
Fix infinite pause when cloning program with errors, closes #837
2016-09-27 18:57:24 +02: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
krzys-h
ca548e2902
Update CBotFieldExpr::ProtectionError docs
2016-09-24 17:04:47 +02:00
melex750
9ab7f7d140
Fix access to protected and private variables
2016-09-17 08:00:34 -04:00
melex750
3debfb9182
Fix finding in-class methods when searching by ID
2016-09-17 07:59:34 -04:00
melex750
4a14a44f3f
Add implicit cast and null for passing arguments
2016-09-17 07:58:39 -04:00
krzys_h
84c98546df
Merge pull request #819 from melex750/dev
...
Method chaining for constructor calls in CBOT
2016-09-09 19:37:37 +02:00
krzys_h
8dc03f40d5
Merge pull request #817 from CyborgMaster/radarall-equidistant-objects
...
radarall can return multiple objects with exactly the same distance
2016-09-09 19:17:40 +02:00
MrSimbax
514829de60
Normalize dir parameter when copying to clipboard
2016-08-20 13:22:53 +02:00
MrSimbax
92b1e544ec
Remove default lambda parameters
...
They cause compilation error on MSVC and should give errors, as it's explicitly stated in the C++11 standard: http://stackoverflow.com/questions/6281472/why-does-a-default-argument-for-a-lambda-argument-trigger-a-pedantic-gcc-warni
2016-08-18 10:02:54 +02:00
melex750
3146d4ef35
Add method chaining for class constructor calls
2016-08-14 16:56:17 -04: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
krzys-h
d411c5ebc0
Allow circular references from different classes ( #814 )
...
Conflicts:
test/unit/CBot/CBot_test.cpp
2016-08-09 21:10:07 +02:00
krzys-h
b9d4d57e33
Syntax sugar: Accessing members of returned objects ( #808 )
...
Conflicts:
src/CBot/CBotInstr/CBotInstrMethode.h
2016-08-09 20:28:37 +02:00
krzys_h
d83553ca14
Merge pull request #809 from melex750/dev
...
Fixes and unit tests for inheritance
2016-08-09 19:23:49 +02:00
krzys-h
0ecdee08cc
Merge branch 'dev-async-music-load' (PR #801 )
2016-08-09 19:20:46 +02:00
melex750
66218319dd
Add support for circular references
...
Issue #433
2016-08-09 11:59:07 -04:00
Jeremy Mickelson
6b8e240d26
Fix implicit downcast with variable initialization
2016-08-07 08:27:01 -04:00
melex750
a205eace38
Add missing license headers
2016-08-06 16:29:02 -04:00
melex750
e48188b429
Fix failed assert when literal null is returned
2016-08-06 04:56:57 -04:00
krzys-h
c03d8beb8b
Import documentation from old dev wiki
...
I also updated all outdated information I could find, please tell me if I missed something
Model format documentation needs an update
2016-08-05 17:04:16 +02:00
melex750
fad38cd0e9
Add accessing members to function calls
2016-08-04 03:16:59 -04:00
melex750
c9c02f5461
Fix assigning instance to pointer for inheritance
2016-08-04 01:06:37 -04:00
melex750
860cdb0aea
Fix calling multi-level inherited methods
2016-08-03 19:13:21 -04:00
melex750
d0a8a32a57
Fix RestoreMethode when calling inherited methods
2016-08-03 18:34:39 -04:00
melex750
397e312424
Fix RestoreState for subclass instance vars
2016-08-03 17:52:53 -04:00
melex750
48666c4604
Fix not calling destructors after save/reload
2016-08-03 17:42:10 -04:00
krzys-h
210b5c295d
Fix memory leak related to performance counters
...
This commit actually fixes two problems causing the leak:
* DestroyTimeStamp not being called in CProfiler (my stupid mistake in 5fea22ff03
)
* DestroyTimeStamp leaving null pointers in CSystemUtils::m_timeStamps (this was introduced by @piotrdz long ago when introducing smart pointers)
2016-07-24 22:51:41 +02:00
krzys-h
dbe7fd6ef0
Added performance counter for UI particles
2016-07-24 18:19:37 +02:00
krzys-h
716218aa37
Fixed compile error on Windows
2016-07-24 18:19:34 +02:00
krzys-h
ffd688e2d7
Do not render the shadow map when pause blur is active
2016-07-24 16:56:47 +02:00
krzys-h
fef050f6dd
Fixed loading apperance scene, closes #802
2016-07-24 16:44:27 +02:00
krzys-h
2c3e90b126
Added CBot performance counter
2016-07-24 16:36:13 +02:00
krzys-h
5fea22ff03
Moved performance counters to a separate class
2016-07-24 16:18:25 +02:00
krzys-h
81b7bcc5bc
Moved system modules from app/ to common/system/
2016-07-24 14:38:49 +02:00
krzys-h
19cc25f716
Fixed sound channels not being unmuted properly
2016-07-10 20:12:44 +02:00
krzys-h
29f0631a2c
Asynchronous sound/music loading
...
This improves the loading time a lot. Time from starting the app to opening game window decreased by almost 5 seconds (it's almost instant now). Mission loading times are significantly better too. As a bonus, the playmusic() CBot function doesn't hang the game if you don't preload the files with CacheAudio in scene file.
2016-07-10 14:56:34 +02:00
krzys-h
9e545d0d39
Fixed colobot-lint warnings
2016-07-09 20:39:18 +02:00
krzys-h
8a17bc901c
Added pause blur config setting, enabled by default
2016-07-09 12:13:51 +02:00
krzys-h
6f412df232
Fixed lockups when calling StartSuspend multiple times
2016-07-04 17:02:39 +02:00
krzys-h
fb3245977c
Added logging to CPauseManager
2016-07-04 17:01:48 +02:00
krzys-h
58815059ea
Added warnings about planned changes to EndMisisonTake ( #759 )
2016-07-04 16:30:22 +02:00
melex750
d0d0c4f197
Fix class not unlocked when program is stopped
...
#626
2016-06-24 17:29:32 -04:00
melex750
64157090e6
Fix crash when calling method on a null object
2016-06-24 17:18:11 -04:00
melex750
51665e8396
Fix "new" keyword syntax checking
2016-06-24 17:03:50 -04:00
melex750
66984a4bb3
Fix using compound-assignment with an array
...
...that was initialized in the definition
2016-06-24 17:00:41 -04:00
melex750
0d74b4f36b
Fix initializing an array using variables
...
Resolves a conflict between CBotListArray and CBotExprVar
2016-06-24 16:56:17 -04:00
krzys-h
3b9b9b322a
Changed mouse scaling (again)
2016-06-21 13:07:40 +02:00
krzys-h
0fbd2d107c
Allow using the CBot debugger during code battles
2016-06-21 13:06:55 +02:00
krzys-h
c304ecd0ca
Changed arrays to use {} when converted to string; added tests
2016-06-21 12:58:43 +02:00
krzys-h
5f7a8dbd5d
Fixed string values with spaces ( closes #791 )
2016-06-21 12:57:45 +02:00
krzys-h
8ad53ce327
Fixed pause blur in main menu
2016-06-19 22:18:03 +02:00
krzys-h
bd4362e26c
Fixed dynamic textures not being reloaded properly
2016-06-19 19:57:55 +02:00
Tomasz Kapuściński
a0b3f7a769
Fixed problem with pause blur after changing some graphic settings
2016-06-19 16:52:01 +02:00
krzys-h
125d1a32c7
Fixed pause blur blinking for one frame
...
issue #656
2016-06-19 12:23:57 +02:00
krzys-h
9d9131c3fb
Fixed pause blur with MSAA
...
issue #656
2016-06-19 11:45:59 +02:00
krzys-h
bf2e3cdfae
Merge pull request #783 from melex750/dev
...
[INFO] Conversion to string
2016-06-17 22:41:53 +02:00
krzys-h
7ce23fdf52
Do not rotate after changing autosave settings
...
See https://github.com/colobot/colobot/pull/789#discussion_r67570610
2016-06-17 22:39:45 +02:00
krzys-h
439a416a66
Merge pull request #789 from Erihel/dev-boost-filesystem-removal
...
Dev boost filesystem removal
2016-06-17 22:38:41 +02:00
krzys-h
9017e5a25b
Fixed links in CBot listings in SatCom
2016-06-17 21:13:16 +02:00
Krzysztof Dermont
32629a2f2a
Refactor autosave rotation.
...
In order to remove boost:filesystem from CResourceManager Move()
function has to be removed or rewrited. Since Move is only used in
autosave rotation it's simpler to change autosave rotation and remove
Move().
Now oldest autosaves (with lowest timestamp) will be removed in rotation.
2016-06-09 19:30:08 +02:00
Krzysztof Dermont
2168b57cac
Remove part of boost::filesystem usage.
2016-06-09 19:30:08 +02:00
melex750
37ab015c8d
Fix conversion to string with = operator
2016-05-29 06:55:28 -04:00
melex750
6db2832577
Fix conversion to string with + operator
2016-05-29 06:45:08 -04:00
melex750
0165e8f348
Fix and document TypeCompatible
2016-05-29 06:40:42 -04:00
krzys-h
b56cd11c98
Added C++ operator overloads to CBotVar
2016-05-29 00:06:34 +02:00
krzys-h
df111dbf98
Refactored CBotVar to templates
2016-05-28 23:28:12 +02:00
krzys-h
0e101debe0
Removed CAM_TYPE_INFO
2016-05-28 18:52:30 +02:00
krzys-h
646e5104f6
Some CCamera cleanup and docs
2016-05-28 18:44:38 +02:00