Commit Graph

345 Commits (8ad3b4e5520453bba25872e493d258f587c5e83b)

Author SHA1 Message Date
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
krzys-h be0f4c2ffe Refactored keybindings UI and added some keybindings 2014-12-14 16:54:32 +01:00
krzys-h eec6041104 Refactoring of input and input bindings, CInput class 2014-12-11 19:14:33 +01:00
Piotr Dziwinski f30592bf56 Better fix for #94 2014-11-22 13:30:50 +01:00
krzys-h fd28dfd9bb Fixed Apperance textures
Issue #94
I beleive there is a better fix, I just can't find it because I don't fully understand the graphics engine.
I'll leave this issue open for @piotrdz to take a look at when he comes back
2014-11-12 16:47:40 +01:00
krzys-h a50da4f5de Loading texturesfrom objects/ subdirectory
Closes #381
2014-11-11 15:52:08 +01:00
krzys-h fa4c70d1fe Resetting fields in scene to defaults
Fixes #218
2014-11-11 15:38:11 +01:00
krzys-h fa2bd7901a Translations for autosave 2014-11-11 14:56:19 +01:00
krzys-h a1fe9c8d7f Implemented autosave (#292) 2014-11-11 14:50:44 +01:00
krzys-h b8103963c3 Sorting saved games list (#380) 2014-11-11 12:08:19 +01:00
krzys-h afa0061364 Reset save filename if exception is thrown while loading 2014-11-10 22:50:00 +01:00
krzys-h 462f0ce9d7 Removed unused PHYSFS conversions 2014-11-10 22:19:52 +01:00
krzys-h ef35a3a2ef Custom path to SecondTexture, closes #370 2014-11-10 20:46:39 +01:00
krzys-h 643d1ec46a Fixed scenetest mode 2014-11-10 20:23:18 +01:00
krzys-h 759b9871bb Removed CMainDialog::GetPHYSFSSavegameDir()
CMainDialog is also finished.
This is last commit for saving with PHYSFS, closes issue #334
2014-11-10 19:26:36 +01:00
krzys-h aeaea87d0d Saving/loading list of finished missions via PHYSFS 2014-11-10 19:23:51 +01:00
krzys-h 4994965201 Removed CRobotMain::GetPHYSFSSavegameDir()
Everything in CRobotMain uses PHYSFS now
2014-11-10 19:02:07 +01:00
krzys-h 025419324b Research saving (for free game) in PHYSFS 2014-11-10 18:49:00 +01:00
krzys-h 169e860240 Removed PHYSFS hacks from Load/SaveFileScript as they are no longer necessary 2014-11-10 18:36:16 +01:00
krzys-h ebf92e98c9 Removed CBOT_STACK switch
It was just making it harder to look for cause of #119
2014-11-10 18:22:48 +01:00
krzys-h 8c84f012c6 Level state loading via CLevelParser 2014-11-10 17:15:34 +01:00
krzys-h 3dade17f89 Level saving through CLevelParser 2014-11-10 14:27:42 +01:00
krzys-h 1477e72ab4 Saving code for CLevelParser 2014-11-10 12:05:57 +01:00
krzys-h 1ae66d39f3 Don't require user to launch the SpaceShip before ending the mission, if it has selectable=0
Closes #376
2014-11-09 19:26:36 +01:00
krzys-h bfdc577547 Removed m_checkEndTime
It was disabled some time ago
2014-11-09 19:19:14 +01:00
krzys-h 894d4173f6 Activate console by "~", closes #366 2014-11-09 18:58:13 +01:00
krzys-h 11a8742079 #335, #348, #352
I don't know what I'm doing anymore :/
I should set up dev envrioment on Windows so I don't have to commit every time I want somebody on Windows to test if my changes work
2014-11-01 14:02:39 +01:00
krzys-h 501cd7026b Fixed m_exitAfterMission 2014-10-31 20:49:40 +01:00
krzys-h 71577b7b0a Fixed #335 and #348 2014-10-31 20:40:19 +01:00
krzys-h d0383ae09b -runscene for userlevels
You need to know which ID is assigned to te userlevel category (by order in "User" menu)
-runscene custom101 = first userlevel from first chapter
2014-10-31 15:32:24 +01:00
krzys-h 601ea0ec87 Increased mission end accuracy
It whould now detect mission end immediately. We need somebody with an older computer than mine to make sure it doesn't cause FPS drop.
2014-10-30 22:26:14 +01:00
krzys-h 6d2fd18b41 Implemented mission timer 2014-10-29 17:53:46 +01:00
krzys-h 61e06149c6 Fixed position updating 2014-10-29 16:08:55 +01:00
krzys-h d91569e165 Showing coordinates in stats menu (F12/showstat); removed "showpos" cheat
Issue #277

Conflicts:
	src/object/cheat.cpp
	src/object/robotmain.cpp
	src/object/robotmain.h
2014-10-29 16:08:55 +01:00
krzys-h 11854dc89e Fixed script saving (issue #348) 2014-10-27 21:49:03 +01:00
krzys-h d6e88a07b0 Support for %lvl% in TerrainInitTextures + cleanup
cleanup:
* Removed CProfile::SetUserPath (unused)
* Removed CProfile::GetUserBasedPath (unused)
* Removed CProfile::CopyFileToTemp (i have no idea why it even existed)
* Removed CopyFileListToTemp (it did the same as CopyFileToTemp but for multiple files, wasn't even fully implemented)
2014-10-27 21:15:14 +01:00
krzys-h ca4f1e85d2 Support for %lvl% in all commands
Except for TerrainInitTextures (I'm not sure what it does but it does something weird)
2014-10-26 18:35:13 +01:00
krzys-h c12ebb1c7b Fixed NewScript (#341) 2014-10-25 17:17:59 +02:00
krzys-h 4c865322f0 Fixed #341 2014-10-25 11:30:38 +02:00
krzys-h 97b7c0cab1 Fixed map turning gray after resizing window 2014-10-20 21:54:52 +02:00
krzys-h c0ac60e4fa Fixed save directories in things not yet refactored to use PHYSFS 2014-10-20 21:15:39 +02:00
krzys-h 0245fdc6c3 Merge branch 'dev-physfs' into dev
Conflicts:
	src/app/app.cpp
2014-10-19 16:18:36 +02:00
krzys-h 0fb1cb11d4 Changed max and default font size
Min font size is 9, max is now 24 (previously 21)
Default size is now 19 (previously 9)

Closes #330
2014-10-19 13:33:19 +02:00
krzys-h f65b00089a Merge branch 'dev' into dev-physfs
Conflicts:
	data
2014-10-14 15:42:19 +02:00
krzys-h 9fd6cf5449 Changed all occurences of PPC in the code to TerranovaTeam 2014-10-14 15:26:18 +02:00
Piotr Dziwinski 5274acd624 Merge with dev 2014-10-07 22:15:40 +02:00
krzys-h f2c6b322dd Replaced std::to_string with boost::lexical_cast<std::string>
MXE has problems with std::to_string
2014-09-28 19:25:28 +02:00
krzys-h ad79babbc1 Made proxyDistance optional 2014-09-27 18:34:08 +02:00
krzys-h b3fa72c007 Moved effect??.png textures and made pos= in GroundSpot optional 2014-09-27 18:26:29 +02:00
krzys-h 32504be8a9 Fixed TerrainLevel bug 2014-09-27 17:46:52 +02:00
krzys-h 8fab044bcd Removed more unused variables 2014-09-27 17:16:58 +02:00
krzys-h c29ef4ec41 Fixed some warnings
Removed unused variables and fixed signed/unsigned comparation warnings
2014-09-27 16:49:00 +02:00
krzys-h de375548ad Userlevel listing 2014-09-26 20:53:11 +02:00
krzys-h 740036e430 New level parser
Known issues:
* TerrainLevel for some reason doesn't work
* %lvl% is not yet implemented everywhere because of hardcoded directories in functions
2014-09-24 22:56:19 +02:00
Piotr Dziwinski e4d52d9afb CProfile refactoring 2014-08-12 21:24:33 +02:00
krzys-h a56e69883f Removed some unused code 2014-08-06 16:58:36 +02:00
krzys-h 7131abd385 Fixed SatCom image loading
Now LoadTexture/SetTexture functions require full path with "textures/" directory
2014-07-24 22:17:49 +02:00
krzys-h 02ba358a89 Help file loading 2014-07-11 16:40:07 +02:00
krzys-h 96d49d84aa Merge branch 'dev' into dev-physfs
Conflicts:
	data
	src/app/gamedata.cpp
	src/ui/control.cpp
	src/ui/edit.cpp
	src/ui/maindialog.cpp
2014-07-11 15:24:44 +02:00
krzys-h c22e55b99a Removed some unused code related to Quit button
The button itself has been removed a long time ago
2014-07-10 16:52:29 +02:00
krzys-h 106ec014b8 Fixed texture and script loading 2014-07-10 16:25:40 +02:00
krzys-h 1835d2ae58 Removed old code based on #ifs (issue #55) 2014-06-27 19:52:09 +02:00
Krzysztof Dermont 3aca1de731 More work on levels 2014-06-22 21:30:23 +02:00
Krzysztof Dermont 2260f6bf4f Big part of PhysFS support
* removed -mod argument
* removed -datadir argument
* removed -lang argument
* removed some dead ui code
* added resource manager and file loaders (stream and SDL)
* changed interface textures location to match new directory structure
* removed CGameData for mod support
* added PhysFS support
2014-06-20 23:51:28 +02:00
krzys-h f0d97bfdb9 Better datadir mod support 2014-05-18 12:12:47 +02:00
krzys-h f71658e38d Random relief generator 2014-04-10 21:50:26 +02:00
krzys-h fbe2bf8bc7 Added special mode in scene for bots to build more buildings than they usualy can
Will be used in "Leaving Earth" missions for making decorative bots building base
2014-03-03 21:55:28 +01:00
krzys-h a806d4257c Check if pause music is defined in scene before trying to play it 2014-03-02 16:10:02 +01:00
krzys-h 14709427c4 Fixed compile warning 2014-02-21 14:33:56 +01:00
krzys-h bb2a9bcfd3 Added option to set pause audio in Scene 2014-02-21 14:19:58 +01:00
Piotr Dziwinski 181a404930 Fixed warnings about unknown commands in scene files 2014-01-18 19:24:08 +01:00
krzys-h 652dc6081d Removed some unused objects 2014-01-11 23:43:10 +01:00
krzys-h 90437d1765 Fixed two bugs in dc81cda4b1
* win/end scene animations
* produce() was producing empty cells
2014-01-01 16:45:08 +01:00
krzys-h 999490e88b Code for changing music in pause mode
As requested by @Emxx52. Only code for now, we don't have the music yet. Temporairly in developements builds music will change to Prototype (in CBot editor) and Constructive Destruction (in SatCom)
2013-12-31 16:58:21 +01:00
krzys-h 4a237f5925 CPauseManager 2013-12-31 13:24:09 +01:00
krzys-h 3536f1c7cc Added CObjectManager::Flush()
Possible fix for #275
2013-12-30 10:51:29 +01:00
krzys-h a36450a6da Added tool= i drive= 2013-12-29 15:03:21 +01:00
krzys-h dc81cda4b1 Cleaned up creating objects 2013-12-29 12:08:59 +01:00
krzys-h e9addb5a5e Added smooth transition in music - issue #205 2013-12-28 12:30:46 +01:00
krzys-h 555c486fc6 Disable immediat SatCom when scene test is enabled 2013-12-26 22:33:17 +01:00
krzys-h 0f57809f51 Added scene test mode
... and fixed a "small" bug in previous commit ;)
2013-12-26 22:13:04 +01:00
krzys-h 3a78d587bd Exit the game after finishing the mission while using -runscene 2013-12-26 21:54:05 +01:00
krzys-h 8b121910c1 Indentation fixes 2013-12-26 19:39:32 +01:00
krzys-h 46a7aa98b0 Added error message when unable to load script from file specified in CreateObject 2013-12-26 19:36:17 +01:00
krzys-h 0d31f59b12 .takeoff() for SpaceShip (#265) 2013-12-26 18:50:05 +01:00
krzys-h c8ec3f2020 Added "E" as a secondary action button
As requested by @Emxx52 on IRC
2013-12-25 19:43:11 +01:00
krzys-h 55fd03ade3 Added WSAD as secondary controls (#231) 2013-12-25 19:34:34 +01:00
krzys-h d0285d6886 Fixed AudioChange 2013-12-25 18:53:32 +01:00
Piotr Dziwinski 8deb130572 Changed char[] to std::string in restext
Experimental changes
2013-12-04 00:15:39 +01:00
Didier Raboud 3bcf80a82a Tweak tooltip margin and correct french jargon comment 2013-11-19 17:22:25 +01:00
Piotr Dziwinski 9017dbbbdb Fixed CTerrain-related memory leaks 2013-10-13 14:44:12 +02:00
Piotr Dziwinski 5d0d9b5aa5 Fixed some CBot-related memory leaks
* fixed leaks in CScript::CheckToken()
 * fixed leaks in CInterface
 * commented out unused function in robotmain.cpp
2013-10-12 18:50:30 +02:00
erihel 41fa8458c2 Some Ui refactoring 2013-06-24 22:09:39 +02:00
Piotr Dziwinski bfcce26f89 Changes in build organization
* targets are now created in top-level build directory
 * more things are now configured through CMake options
 * changed debug build detection from NDEBUG to DEV_BUILD
 * moved po and desktop directories
 * moved last unit test out of src directory
2013-06-22 01:17:19 +02:00
Piotr Dziwinski 28b4e9a634 Fixed terrain light priorities (fix for #139)
* lights illuminating the terrain specified in scene file are now
   always moved to front of light ordering
2013-06-20 23:14:37 +02:00
Piotr Dziwinski 7874aca10c Enhanced logging, option to auto-start mission
* added logging of application events
 * changed debug mode flag to independent debug modes
 * added option to auto-start mission (load a mission immediately
   after startup)
 * removed "enum value out of range" prints
 * some refactoring
2013-06-16 21:54:36 +02:00
Piotr Dziwinski 7cf8811888 Fix for #195
* loading time now is not counted in elapsed time
2013-06-13 17:25:58 +02:00
krzys-h e8e220085a Fixed bug with showing wrong filename in Level Checker errors after using CacheAudio 2013-06-10 15:44:25 +02:00
Piotr Dziwinski b22d852b4c Fixed variable shadowing warnings
* fixed -Wshadow warnings
 * refactored some constructors
2013-05-27 22:29:42 +02:00
Piotr Dziwinski 950a3474d5 Refactored sound code
* fixed formatting and naming to be uniform with rest of code
 * moved default implementation of CSound to cpp module
2013-05-27 10:19:16 +02:00
Piotr Dziwinski 8765d58b02 Fixed code formatting
* moved braces to new lines
 * fixed some function/variable names
 * fixed whitespace issues
2013-05-27 10:19:16 +02:00
Piotr Dziwinski b41957f2f9 Corrected some valgrind issues
* fixed several uninitialized variable issues
 * fixed possible memory corruption in CEngine
2013-05-26 11:34:53 +02:00
krzys-h f90a4b48f5 Added object.research(type) 2013-05-19 21:48:29 +02:00
krzys-h b9d0ee034e Running program in robots created using object.factory() 2013-05-19 16:27:33 +02:00
krzys-h 796cb92ffc Added object.destroy() 2013-05-18 18:04:48 +02:00
krzys-h 8004e68948 Added object.busy() 2013-05-18 18:04:48 +02:00
krzys-h 47d7b80507 Added object.factory(cat) 2013-05-18 18:04:48 +02:00
krzys-h 06cf93f466 Better print fix 2013-05-12 13:05:32 +02:00
Piotr Dziwinski dcf4c8941f Corrected print 2013-05-11 23:11:58 +02:00
krzys-h 40954038ab Added error message for undefined command 2013-05-05 20:51:08 +02:00
krzys-h 4dcee0a4d1 Added continue at end of every Cmd() check
As mentioned in issue #173
2013-05-05 20:38:20 +02:00