krzys-h
347654db15
Refactored CBot class "file" to PHYSFS
2015-07-19 22:34:41 +02:00
krzys-h
8c87eedd28
Fixed huge lag on closing settings
...
Introduced in 02c24fbf27
, this was supposed to make it more resistant to crashes but turned out to generate huge lag on closing settings
Instead, I added manual .Save() after every value change
2015-07-19 21:35:55 +02:00
krzys-h
8ce3a783bb
Fixed EndMissionTake processing order with immediat=1
...
immediat=1 is supposed to work only if this condition AND all conditions above are true
2015-07-19 19:20:55 +02:00
Piotr Dziwinski
963fa15a1c
Fix for #516
2015-07-19 16:43:03 +02:00
krzys-h
264f5dc278
Removed obsolete save directory configuration
...
This was used in one of the CeeBots probably for setting up networked installations in schools. This is now obsolete since now those are only paths relative to main PHYSFS save directory.
2015-07-19 16:05:09 +02:00
krzys-h
7dc3e90e41
CPlayerProgress -> CPlayerProfile
2015-07-19 16:05:09 +02:00
krzys-h
02c24fbf27
CProfile -> CConfigFile
2015-07-19 16:05:09 +02:00
krzys-h
e2691d943c
Fixed #346
...
Thanks @erihel
2015-07-18 23:16:14 +02:00
krzys-h
3e1fc06d6c
CPlayerProgress
...
Extracted most operations on user profile from CRobotMain and CMainDialog to a dedicated class
2015-07-18 23:14:20 +02:00
krzys-h
86f473ac16
Finished support for up to 999 chapters and levels
2015-07-18 19:48:25 +02:00
krzys-h
ea9361fbb4
LevelCategory enum
2015-07-18 19:45:40 +02:00
Piotr Dziwinski
b3b6435039
Use MakeUnique with level parser classes
2015-07-17 20:38:21 +02:00
krzys-h
35043e04de
Addressed commit comments on a872ea128b
2015-07-17 20:29:53 +02:00
Piotr Dziwinski
a872ea128b
Add MakeUnique template to avoid use of naked new
2015-07-17 20:06:59 +02:00
krzys-h
dffeff929e
Removed manual memory management in CBrain in program list
2015-07-17 19:53:17 +02:00
krzys-h
c8f6e8124e
Replaced CLogger::GetInstancePointer() calls with GetLogger()
2015-07-16 22:12:44 +02:00
krzys-h
2b9811d225
Movie lock refactoring
2015-07-16 22:09:50 +02:00
krzys-h
a0e0ee3631
Separate shortcut bars for teams
2015-07-16 13:46:40 +02:00
Piotr Dziwinski
31bc740f4b
Fix focusing issues with controls and cheat console
2015-07-15 19:11:48 +02:00
krzys-h
80963f1a2b
Added global magnifyDamage setting
2015-07-15 18:15:26 +02:00
Piotr Dziwinski
94ea1ff106
DeselList refactoring
...
Make CRobotMain hold selected object history instead of
every object holding some part of it
2015-07-15 18:09:23 +02:00
Piotr Dziwinski
d5da68d59a
Refactor old Get/SetAngle/Zoom -> Get/SetPartRotation/Scale
2015-07-14 21:35:43 +02:00
krzys-h
e1223ff881
Fixed shortcuts behavior
...
It was kinda broken after implementing code battles
Also, fixed overlap of shortcuts bar with cheat console
2015-07-14 21:32:08 +02:00
krzys-h
a1a96c62ab
Fixed system mouse setting
2015-07-14 21:03:40 +02:00
Piotr Dziwinski
1183ed1980
Refactor old Get/SetPosition -> Get/SetPartPosition
2015-07-14 19:40:39 +02:00
Piotr Dziwinski
3f41555a61
Better exception handling in CRobotMain
2015-07-14 18:46:22 +02:00
Piotr Dziwinski
0d1b97510d
Add exception handling when creating new objects on level loading
2015-07-14 18:28:42 +02:00
Piotr Dziwinski
62fdfc9f92
Refactor ResetCap -> AnimateOnReset
2015-07-13 22:47:11 +02:00
Piotr Dziwinski
20dbb8320b
Remove unused reset code
2015-07-13 22:46:51 +02:00
krzys-h
79c131394d
Separate DoneResearch for teams
2015-07-13 18:13:28 +02:00
krzys-h
3479c51bb9
Refactored EnableBuild, EnableResearch and DoneResearch
...
* Moved from global variables to CRobotMain members
* Added functions for accessing the values
* Cleaned up some code related to building objects, BotFactory, ResearchCenter and AutoLab
2015-07-13 17:38:19 +02:00
Piotr Dziwinski
e72936c240
Clean up more functions from COldObjectInterface
2015-07-12 20:05:12 +02:00
Piotr Dziwinski
3ed8980c46
Make CTask classes use COldObject
2015-07-12 14:22:12 +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
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
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
Piotr Dziwinski
f4b2f3468d
CPoweredObject interface
2015-07-11 13:38:27 +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
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
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
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
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
krzys-h
1361473358
Renamed Mission -> Level, MissionController -> LevelController
...
As suggested by @CoLoRaptor
2015-07-08 20:20:46 +02:00
krzys-h
a6ccd7f270
Added TeamName
2015-07-07 21:25:44 +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
Piotr Dziwinski
f1684f85be
Introduce new CObject base class and mixin class framework
2015-07-02 23:50:50 +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
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
Tomasz Kapuściński
ba3c049077
Corrected problem with loading level background images
2015-06-26 14:32:44 +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
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
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
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
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
krzys-h
df4cb110b5
Made example programs not directly runnable ( #450 )
2015-04-17 22:39:57 +02:00
krzys-h
6d88dd5957
Allow autosave only in missions, free game and userlevels ( fixes #457 )
2015-04-17 21:11:07 +02:00
krzys-h
9bc7c47d77
Fixed saving readonly attribute ( #454 )
2015-04-07 13:27:11 +02:00
krzys-h
a4bf622053
Fixed starting programs from saved games ( #455 )
2015-04-07 13:18:34 +02:00
krzys-h
73a12ea7db
Changed default autosave interval from 15 to 5 minutes ( #451 )
2015-04-06 22:04:23 +02:00
krzys-h
2f5d4e3b2f
Fixed cheat console in main menu
2015-04-06 17:23:18 +02:00
krzys-h
1dd3a4d57e
Fixed loading challenge solutions and made them read-only
2015-04-06 17:00:22 +02:00
krzys-h
66ea5fd92b
Fixed NewScript
2015-04-06 16:41:05 +02:00
krzys-h
58016c6c69
Made programs from SatCom read-only; added program cloning
2015-04-06 16:07:49 +02:00
krzys-h
0ce72bdce0
ovf's OCD
...
> ovf: krzys_h: i'm sorry, your last commit triggered a random ocd fit. http://vpaste.net/S6u62
> ovf: (you don't need to apply this, i already feel better now)
2015-03-29 20:30:29 +02:00
krzys-h
6844b2170f
Fixed occasional crash in CRobotMain::DeleteAllObjects
2015-03-29 15:50:47 +02:00
krzys-h
1b18b145cc
Changed default of countTransported to true
...
This causes failure conditions to trigger in some exercises
#412
2015-03-29 15:38:50 +02:00
krzys-h
a3ae7802a2
New scripts interface, removed script limit
...
This is a big change in game structure and requires more testing!
2015-03-29 14:21:02 +02:00
krzys-h
72196b252c
Made powermin and powermax work with cells that are not in bot's power slot
2015-03-28 12:21:56 +01:00
krzys-h
14068ce54b
Don't count transported items by default ( #412 )
2015-03-28 12:19:40 +01:00
krzys-h
fd17e104ed
Removed mission file versioning
...
We've decided there is no need to keep combatibility with original Colobot.
Closes #206
2015-03-28 11:23:32 +01:00
krzys-h
498a5ca4cd
Reapplied temporary fix for #94
2015-03-22 17:40:08 +01:00
krzys-h
a0097a0e53
Copying info about selected object to clipboard ( #391 )
2015-03-22 16:32:21 +01:00
krzys-h
56d66b3417
Added bots/buildings switch shortcut ( #391 )
2015-03-22 16:02:05 +01:00
krzys-h
33fcdbbef5
Removed unused CRobotMain::BuildScenePath
2015-03-22 14:12:41 +01:00
krzys-h
d2d0886b76
Implemented %cat%
...
and renamed BuildSceneName to BuildScenePath
2015-03-22 13:51:14 +01:00
krzys-h
986cf98aaf
CController - entry point into CRobotMain and CMainDialog
2014-12-22 10:36:36 +01:00
krzys-h
4fef3af9ef
Moved all CObject management from CInstanceManager to CObjectManager
2014-12-21 19:04:31 +01:00
krzys-h
07c651bd0a
Moved all CBot functions into a separate class
2014-12-20 18:45:46 +01:00
krzys-h
af9960d41e
Fixed saving files from CBot
2014-12-20 18:20:59 +01:00
krzys-h
ce27a80caa
Moved "file" CBot class (CRobotMain -> CScript)
2014-12-20 18:03:49 +01:00
krzys-h
fb07691790
New speed keybindings
2014-12-14 17:05:28 +01:00