Piotr Dziwinski
fdb594b9f7
Fix crash when replacing power cell
2015-07-12 13:19:41 +02:00
Piotr Dziwinski
a1e5812740
Make object deletion safe while iterating through their list
...
Perhaps a bit of a hack but there is no other way to implement this now
2015-07-12 13:16:07 +02:00
Piotr Dziwinski
4dc40a8853
Fix missing curly braces
2015-07-12 12:38:25 +02:00
Piotr Dziwinski
37b0d5796d
Fix PNGSaveSurface not closing file sometimes
2015-07-12 12:33:30 +02:00
Piotr Dziwinski
9a7c1961a4
GetPostion(), GetRotation() and GetScale() in CObject interface
...
Also replace old calls like GetPosition(0) to GetPosition()
2015-07-12 11:05:50 +02:00
Piotr Dziwinski
57e3e16517
Added check to avoid possible object deletion bug
...
Objects must not be deleted while iterating through their list
2015-07-12 10:34:00 +02:00
Piotr Dziwinski
fcbbbcb83c
Fix some more CObject interface issues
...
* fix mission 1.3
* fix saving/loading missions
* fix compile warnings
2015-07-12 00:03:57 +02:00
krzys-h
03717e11d4
Added aspect ratio in resolution list ( #501 )
2015-07-11 23:53:25 +02:00
Piotr Dziwinski
e8582d214c
CStaticObject subclass using new model framework
...
* added reading/writing working version of new model format V3
* added CStaticObject with minial interface intended for
non-interactive static objects like trees
* converted first model, tree0, to new format
2015-07-11 19:52:38 +02:00
krzys-h
639de56e6c
Fixed file.readln() help file
2015-07-11 18:36:36 +02:00
Piotr Dziwinski
6dcef71802
GlobalSphere -> CameraCollisionSphere refactoring
2015-07-11 13:52:04 +02:00
Piotr Dziwinski
f4b2f3468d
CPoweredObject interface
2015-07-11 13:38:27 +02:00
krzys-h
36d08e852c
Better splashscreen scaling on widescreen resolutions
2015-07-11 12:57:18 +02:00
Piotr Dziwinski
0a85fae9b5
Fix crash in appearance menu
2015-07-10 23:58:53 +02:00
krzys-h
9537048964
Cleaned up GetHelpFilename
2015-07-10 23:30:11 +02:00
Piotr Dziwinski
4c10730f87
CCarrierObject interface
2015-07-10 23:16:55 +02:00
Piotr Dziwinski
8d5ddd848d
CJostleableObject interface
2015-07-10 23:04:30 +02:00
Piotr Dziwinski
5d30de0d09
CProgrammableObject interface
2015-07-10 20:46:33 +02:00
Tomasz Kapuściński
17ae31e639
Added 'speed ###' cheat for changing simulation speed to arbitrary value
2015-07-10 20:45:50 +02:00
krzys-h
24db675d3f
Added x6 speed option
2015-07-10 20:17:00 +02:00
Piotr Dziwinski
0dfbb00491
Remove unused variable
2015-07-10 19:55:18 +02:00
Piotr Dziwinski
93479af188
CTransportableObject interface
2015-07-10 19:51:49 +02:00
krzys-h
52f809b8bb
Removed cmdline limit
2015-07-10 13:40:29 +02:00
Piotr Dziwinski
b84130e067
Fix not updating track texture mapping
2015-07-10 12:22:00 +02:00
krzys-h
ad08d50bea
Renamed some CAuto and CMotion classes
2015-07-10 12:18:21 +02:00
krzys-h
26619e3f88
Removed old level parser functions (cmdtoken.cpp)
2015-07-10 11:51:59 +02:00
krzys-h
e6c6b77be2
Removed old Teen objects
...
The models for them were removed a looong time ago, but the code was left for no reason
2015-07-10 11:37:32 +02:00
krzys-h
c63efeca46
Fixed EndMissionTake conditions (again)
2015-07-10 10:45:30 +02:00
krzys-h
d3c3a51ede
Don't open joystick if it's not enabled in ChangeJoystick
2015-07-10 10:28:04 +02:00
krzys-h
20a367783b
Added joystick settings in colobot.ini
2015-07-10 10:25:31 +02:00
krzys-h
7e41e9fe23
Refactored keybindings storage
2015-07-10 10:11:40 +02:00
krzys-h
3d5bc5c563
Fixed unused variable warnings
2015-07-10 10:11:40 +02:00
Piotr Dziwinski
b0ac2f8326
Refactor CObject interface related to crash spheres
2015-07-10 09:38:53 +02:00
krzys-h
5a68558f4c
Implemented basic joystick selection
...
You can select joystick in the config file, there is still no GUI. By default, the first available joystick is used.
issue #171
2015-07-10 00:05:43 +02:00
krzys-h
bd4a661a06
Made autosave timer independent from simulation speed, closes #485
2015-07-09 23:23:38 +02:00
krzys-h
b7c3a8a30b
Don't hardcode script4Runnable=in exercises, closes #493
2015-07-09 23:09:08 +02:00
krzys-h
978fc8f1fb
Remove program limit in scene files, closes #494
2015-07-09 23:01:18 +02:00
Piotr Dziwinski
c585922a45
Use boost::lexical_cast instead of std::to_string
2015-07-09 22:53:58 +02:00
Piotr Dziwinski
93e950584a
Refactor model-related code
...
* refactored model loading code based on code from dev-models
* support new model format V2 (without LOD levels)
* removed LOD levels support in CEngine and from model files
* preparations for new model format V3:
- support for multiple meshes in one model file
- support for saving crash spheres and shadow spots
- removed all direct dependencies on CEngine enum values
- quantized model rendering states to new flags and enums
2015-07-09 21:37:04 +02:00
Piotr Dziwinski
9b232ee3f5
Sound enum refactoring
...
* rename Sound -> SoundType
* add parsing string to SoundType
2015-07-09 21:32:25 +02:00
krzys-h
c84ce92a86
Fixed F12 debug screen background
2015-07-09 18:50:11 +02:00
krzys-h
dae7cdf229
Fixed build() particles
2015-07-09 18:45:52 +02:00
krzys-h
7c20bb4bf6
Fixed counting of nautral objects in EndMissionTake
2015-07-09 18:28:09 +02:00
krzys-h
ce760aa9a3
Added All back to ObjectType parser
...
I throught this was unused, but it's actually used in NewScript
2015-07-08 20:21:30 +02:00
krzys-h
1361473358
Renamed Mission -> Level, MissionController -> LevelController
...
As suggested by @CoLoRaptor
2015-07-08 20:20:46 +02:00
krzys-h
c18b5daf57
Don't use binary literals in radar filters
...
@tomaszkax86 noticed that this syntax is valid only in C++14 and Visual Studio 2013 doesn't support that
2015-07-08 19:05:11 +02:00
krzys-h
b75ab7d8f6
Fixed radar() detecting neutral objects as enemies
2015-07-07 22:27:44 +02:00
Piotr Dziwinski
b0b313f707
Fix for issue #492
2015-07-07 21:36:37 +02:00
krzys-h
a6ccd7f270
Added TeamName
2015-07-07 21:25:44 +02:00
krzys-h
5da4adad41
Added Any constant in CBot
2015-07-07 19:01:18 +02:00
krzys-h
79c5fabfe6
Support for team filters in radar()
2015-07-07 18:54:36 +02:00
krzys-h
9a873c9bea
Added object.team in CBot
2015-07-07 18:11:28 +02:00
krzys-h
f94519b240
Don't finish mission if there are no win conditions
...
This replaces the old EndMissionNever hack
2015-07-07 18:04:17 +02:00
krzys-h
a3726799c4
Added support for teams in EndMissionTake
...
Also fixed a bug in previous commit that caused lost= conditions to be skipped if previous min= max= condition was not met
2015-07-07 17:48:49 +02:00
krzys-h
a32efc09a2
Refactored EndMissionTake and AudioChange
2015-07-07 16:17:19 +02:00
dreamer.dead
958ef43c1e
Address review remarks, fix names and errors in code.
2015-07-06 22:00:33 +03:00
dreamer.dead
b3c2d2c450
Set CBotVar::m_binit type to specific enum instead of plain int.
2015-07-05 23:39:55 +03:00
Piotr Dziwinski
f1684f85be
Introduce new CObject base class and mixin class framework
2015-07-02 23:50:50 +02:00
Piotr Dziwinski
80d93c0fea
Fix comment changed by mistake
2015-06-30 18:47:35 +02:00
Piotr Dziwinski
f6bc8f94bf
Rename fret/truck to cargo/transporter
2015-06-29 23:11:02 +02:00
Piotr Dziwinski
b00d62b9bb
Further cleaning of CObject interface
...
* remove unused functions/members
* delegate some functions to other objects
* change some names to be more meaningful
2015-06-29 22:46:13 +02:00
Tomasz Kapuściński
c7ccb29d6a
Removed spoiler from tooltip in options menu ( fixes #489 )
2015-06-28 23:07:42 +02:00
Tomasz Kapuściński
ac291f5bea
Fix for issue #488
2015-06-28 21:05:12 +02:00
Piotr Dziwinski
f871ba4729
Create CExchangePost subclass
2015-06-27 23:22:55 +02:00
Tomasz Kapuściński
1ccb807091
Fix for issues #486 and #487
2015-06-27 18:06:49 +02:00
krzys-h
78e09c757d
Basic support for teams and code battle missions
2015-06-26 22:07:55 +02:00
krzys-h
2a672482a5
Vault now locks only objects created during level loading ( fixed #164 )
2015-06-26 20:19:16 +02:00
Tomasz Kapuściński
195667ab2c
Potential fix for rendering problems in OpenGL 2.1 engine under Linux
2015-06-26 19:55:46 +02:00
krzys-h
4fc8364136
Fixed Destroyer object destruction ( fixes #308 )
2015-06-26 19:20:16 +02:00
krzys-h
2509f99776
Fixed program arguments not being parsed on restart ( #483 )
2015-06-26 18:51:39 +02:00
Tomasz Kapuściński
efd0b2b28f
Corrected energy cell's angle when created with robot
2015-06-26 18:07:54 +02:00
Tomasz Kapuściński
ba3c049077
Corrected problem with loading level background images
2015-06-26 14:32:44 +02:00
Piotr Dziwinski
88ec9aaae3
Drop GCC 4.6 support
2015-06-26 00:24:32 +02:00
Piotr Dziwinski
7e21d3bd79
Get rid of some more manual memory management
2015-06-26 00:24:05 +02:00
Piotr Dziwinski
67be6fca2a
CObject interface cleanup
...
* remove unused functions and members
* make protected functions used only locally or in factory
* rename some functions to be more meaningful
* refactor some enums to enum classes
2015-06-25 20:43:50 +02:00
Piotr Dziwinski
7814c0c7bd
Remove unused field "material" from CObject class in CBot
2015-06-25 18:07:48 +02:00
Tomasz Kapuściński
37e2f24fbc
Corrected small rendering problem
2015-06-25 11:47:42 +02:00
Tomasz Kapuściński
3cc2857372
Small corrections in MSAA implementation
2015-06-22 23:42:01 +02:00
Tomasz Kapuściński
90bf51ba54
Possible fix for #458
2015-06-22 22:53:55 +02:00
Piotr Dziwinski
8806d1708d
Proper CAuto, CBrain, CMotion, CPhysics, CPyro lifetime management
...
* change manual memory manament to std::unique_ptr
* create CPyroManager
* finally get rid of CInstanceManager
2015-06-22 21:58:58 +02:00
Piotr Dziwinski
7ae308cc75
Fix saving addresses instead of data in user profile
2015-06-22 21:25:00 +02:00
Tomasz Kapuściński
f2318803e5
Added Multisample anti-aliasing (MSAA)
2015-06-22 00:56:47 +02:00
Piotr Dziwinski
02ffdcfe23
Refactor level parser code
...
* replace manual memory management with std::unique_ptr
* remove unnecessary dynamic allocations
* make coding style consistent
2015-06-21 20:59:23 +02:00
Piotr Dziwinski
5f1d3c21d4
Fix some more warnings reported by Clang
2015-06-21 19:46:01 +02:00
Piotr Dziwinski
2d623b4427
Fix introduced compilation warnings
2015-06-21 19:38:07 +02:00
Tomasz Kapuściński
dabfdf1ea0
Merge branch 'dev' of https://github.com/colobot/colobot into dev
2015-06-21 18:51:24 +02:00
Tomasz Kapuściński
7d57ec634e
Refactored framebuffer implementations
2015-06-21 18:48:31 +02:00
Piotr Dziwinski
2513052260
Fix setting position of power cells
2015-06-21 16:29:46 +02:00
Piotr Dziwinski
304542afe2
Some syntax sugar for iterating through all objects
2015-06-21 16:22:09 +02:00
Piotr Dziwinski
0c9a9bce98
Proper CObject lifetime management
...
CObjectManager is now the only class responsible for storing CObjects
2015-06-21 15:13:55 +02:00
Piotr Dziwinski
fed67e6640
Rename objman.h/cpp -> object_manger.h/cpp
2015-06-20 20:02:40 +02:00
Tomasz Kapuściński
94851c2694
Merge branch 'dev' of https://github.com/colobot/colobot into dev
2015-06-20 20:02:11 +02:00
Tomasz Kapuściński
ec3069eea7
Defaulted shadow color value to 0.5
2015-06-20 20:02:06 +02:00
Piotr Dziwinski
f9b09d08f0
Create CObjectFactory
...
* move functions creating objects to new class CObjectFactory
* replace calls to CObject::Create*() with CObjectManager::Create()
* move creation/deletion of some objects to better places
* make CModelManager non-singleton
* clean up some code in changed functions
2015-06-20 19:37:25 +02:00
Tomasz Kapuściński
74a31c9fb4
Corrected compilation errors on Linux builds
2015-06-16 19:30:35 +02:00
Tomasz Kapuściński
ff44637d49
Removed VBO override switch and some unnecessary code
2015-06-16 18:00:42 +02:00
Tomasz Kapuściński
26ec927b37
Corrected compilation errors and warning
2015-06-15 20:27:44 +02:00
Tomasz Kapuściński
012eb10e19
Added automatic graphics detection (-graphics auto)
2015-06-15 20:20:03 +02:00
Tomasz Kapuściński
a880210b3d
Added ShadowRange option
2015-06-15 18:41:31 +02:00
Tomasz Kapuściński
6434ff55dd
Ending splashscreen enhancement ( fixes #472 )
2015-06-05 20:20:06 +02:00
Tomasz Kapuściński
ae29ebead3
Defaulted shadow color to 0.5 in OpenGL 2.1 engine
2015-06-05 19:48:28 +02:00
Tomasz Kapuściński
66d865942c
Added OpenGL 2.1 shaders for per-pixel lighting
2015-06-02 16:55:03 +02:00
Tomasz Kapuściński
d477caed3e
Second attempt at correcting compilation error
2015-06-01 18:41:14 +02:00
Tomasz Kapuściński
7acca9feb8
Corrected compilation error and unsigned comparison warnings
2015-06-01 17:45:51 +02:00
Tomasz Kapuściński
d112971c3e
Corrected shadow mapping and added experimental self-shadowing
2015-06-01 17:22:49 +02:00
Tomasz Kapuściński
a0c56f54cb
Shader and buffer optimizations
2015-06-01 17:21:10 +02:00
Tomasz Kapuściński
d33ddae15a
Added warnings and information what shader files are not available
2015-05-29 12:39:14 +02:00
Tomasz Kapuściński
f69dfe3421
shield() rejects incorrect robots that try to invoke it (should fix #475 )
2015-05-28 14:03:05 +02:00
Tomasz Kapuściński
e1a0f5b1c7
Added OpenGL 2.1 engine
2015-05-27 22:12:02 +02:00
Tomasz Kapuściński
08bf066f78
Added shadow color setting
2015-05-27 21:58:32 +02:00
Tomasz Kapuściński
55b4e73a7a
Corrected a problem with strmid()
2015-05-22 20:34:35 +02:00
Tomasz Kapuściński
fa67e815b8
Implemented per-vertex lighting and set it as default in OpenGL 3.3 engine
2015-05-22 18:53:51 +02:00
Tomasz Kapuściński
8abdd4b740
Improved shadow mapping
2015-05-21 18:18:46 +02:00
Tomasz Kapuściński
f67c01e5e7
Added proper render to texture support
2015-05-21 18:03:17 +02:00
Tomasz Kapuściński
a045bf3830
Added shadow ambient support
2015-05-21 16:47:24 +02:00
Piotr Dziwinski
b1e8341475
Move OpenGL 3.3 shaders to main repository
2015-05-20 23:30:46 +02:00
Piotr Dziwinski
619ac3cf8d
Fixed glew linking problem on MXE
2015-05-19 23:03:32 +02:00
Piotr Dziwinski
35ce6c228a
Fix gcc warning
2015-05-19 23:03:32 +02:00
Tomasz Kapuściński
361a8c4ddd
Another fix to warning
2015-05-19 17:24:07 +02:00
Tomasz Kapuściński
3a1dffd8df
Fixing some warnings
2015-05-19 17:15:08 +02:00
Tomasz Kapuściński
df8223700b
Corrected compilation error
2015-05-19 16:26:41 +02:00
Tomasz Kapuściński
933609967a
Added OpenGL 3.3 graphics implementation
2015-05-19 14:29:31 +02:00
Tomasz Kapuściński
d210dcf70e
Implemented graceful degradation of shadow quality when not enough texture units are available
2015-05-15 10:12:35 +02:00
Tomasz Kapuściński
e747443312
Increased quality of dynamic shadows
2015-05-14 15:31:57 +02:00
Piotr Dziwinski
0ddfdebab3
Remove unused system utils functions
2015-05-13 20:52:19 +02:00
Piotr Dziwinski
ccaac2c544
Rewrite unit tests to use HippoMocks
2015-05-13 00:52:18 +02:00
Tomasz Kapuściński
03244ecdfd
Corrected assertion error when changing offscreen rendering
2015-05-12 20:20:57 +02:00
Tomasz Kapuściński
2665847c41
Added support for offscreen rendering and high resolution shadow maps
2015-05-12 13:09:31 +02:00
Tomasz Kapuściński
b033e35385
Transparent textures no longer cast shadows in transparent parts
2015-05-11 18:00:02 +02:00
Tomasz Kapuściński
0b2f00530b
Added experimental support for dynamic shadows (shadow mapping)
2015-05-11 15:21:17 +02:00
Tomasz Kapuściński
1e3c2cc2df
Increased the height of text area for displaying authors.txt (should fix #465 )
2015-05-09 20:36:32 +02:00
Tomasz Kapuściński
c945afafc8
Added bounds checking to CBotString type methods (should fix issue #429 )
2015-05-07 13:53:53 +02:00
Tomasz Kapuściński
619b3f2e45
Fixes recent mistake (- instead of +)
2015-05-07 13:05:20 +02:00
Tomasz Kapuściński
3164e7256e
Changed terrain UV mapping ( fixes #306 for OpenGL engine, will cause similar problem on Direct3D)
2015-05-07 12:58:05 +02:00
Tomasz Kapuściński
c28e1f6150
Added CBot functions for rounding: floor(), ceil(), round(), and trunc()
2015-05-06 23:29:55 +02:00
Tomasz Kapuściński
1c655aeda0
Corrected the problem with pendown() hanging the game ( fixes #203 )
2015-05-06 21:59:29 +02:00
Tomasz Kapuściński
1db9d8bdca
Changed CBot file handling, potentially solved problems with 64-bit executables
2015-05-06 20:39:09 +02:00
Tomasz Kapuściński
d3b052f19b
Implemented trilinear filtering, mipmap level setting and anisotropic filtering
2015-05-06 17:55:10 +02:00
Tomasz Kapuściński
05bf5be6f4
Added atan2() function to CBot
2015-05-06 13:02:44 +02:00
Piotr Dziwinski
6c87144ae8
Merge branch 'ManuelBlanc-dev-osx' into dev
2015-04-28 15:18:37 -07:00
Piotr Dziwinski
4c8127c6ec
Fix two bugs uncovered by MSVC
2015-04-27 20:04:01 +02:00
Piotr Dziwinski
bca9a019ae
Suppress some MSVC warnings
2015-04-27 20:02:22 +02:00
Piotr Dziwinski
d003247120
Provide usleep() in CSystemUtils interface
2015-04-27 20:02:22 +02:00
Piotr Dziwinski
dec12fb977
Use wingetopt library on MSVC
2015-04-27 18:17:03 +02:00
Piotr Dziwinski
544e513148
Minor MSVC compilation fixes
2015-04-27 18:17:03 +02:00
Piotr Dziwinski
fcd904faf7
Fix non-integer expressions in #if
2015-04-27 18:17:03 +02:00
Piotr Dziwinski
3dce58c0fa
Replace override and noexcept with macros
2015-04-27 18:07:42 +02:00
krzys-h
d23170aaf1
Fixed monospace CBot editor font ( closes #464 )
2015-04-23 21:01:04 +02:00
krzys-h
87ccb759e6
Allow Tech to use build(), closes #461
2015-04-18 11:40:42 +02:00
krzys-h
c481906242
Added nullptr checks in CPyro, should fix #462
2015-04-18 11:33:39 +02:00