krzys-h
9a15db1bea
Split global.h
2015-08-15 14:02:07 +02:00
Piotr Dziwinski
efedb44cce
Add proper initializations and remove manual memory management in remaining classes
...
Except CBot-related stuff of course
2015-08-14 23:44:00 +02:00
krzys-h
57646c0c7b
Refactored object creation
2015-08-14 18:20:44 +02:00
krzys-h
275e792a81
Removed old Scrap objects; cleaned up some more if()'s
2015-08-13 19:41:21 +02:00
krzys-h
bfd3a5b23c
Refactored ExplodeObject
2015-08-13 18:54:44 +02:00
krzys-h
e5e1d4973f
CDestroyableObject, CFragileObject, CShieldedObject and CShieldedAutoRegenObject
2015-08-13 13:41:25 +02:00
krzys-h
ff957afefc
Moved files not directly related to CObject into src/level/ directory
2015-08-13 11:47:32 +02:00
krzys-h
e937db94c8
Moved GetPhysics() and GetMotion() to CMovableObject; moved trace drawing to CTraceDrawingObject
2015-08-13 10:49:45 +02:00
krzys-h
5d52214737
CFlyingObject; CJetFlyingObject
2015-08-12 19:09:35 +02:00
krzys-h
60797f72d3
Removed some old, unused code
2015-08-12 17:25:41 +02:00
krzys-h
f7d2f501bb
Moved common interface implementations to separate classes
...
Additionaly, merged all "inappropariate bot" errors into one and renamed ERR_GENERIC -> ERR_UNKNOWN
2015-08-12 16:54:44 +02:00
krzys-h
63d83185b5
Move GetTooltipText and Get/SetLock to CObject; remove Get/SetEnable
2015-08-12 00:16:57 +02:00
krzys-h
364f87c49b
CPowerContainerObject interface
2015-08-11 22:51:16 +02:00
krzys-h
7e18757d29
CScript user pointer cleanup; moved some functions from COldObjectInterface to main CObject
...
* moved (Get|Set)Clip [renamed to (Get|Set)Collisions], (Get|Set)Team, (Get|Set)Proxy(Activate|Distance) and GetBotVar to main CObject class
* refactored scripting to pass CScript* as the user pointer, removing the need for GetRunScript()
* changed accessing of "object" class in CBot to use ->GetUserPtr()
* refactored object limits to remove (Start|Stop)ShowLimit from COldObject
* added notes on possible interfaces for most of the other COldObjectInterface functions
2015-08-11 17:51:39 +02:00
krzys-h
15c1c7ee03
CMovableObject, CControllableObject
2015-08-10 23:21:15 +02:00
krzys-h
abb272600e
Merged CBrain into CProgrammableObject
2015-08-10 18:16:00 +02:00
Piotr Dziwinski
f95980456a
Replace anonymous union in Event with pointer to appropriate struct
2015-08-06 19:11:50 +02:00
krzys-h
dc85aa2138
Moved all UI controls to a subdirectory
2015-08-06 13:25:24 +02:00
Piotr Dziwinski
0c9e745213
Add proper initializations in remaining graphics classes
2015-08-06 09:33:27 +02:00
Piotr Dziwinski
d7bc28a595
Add proper initializations in CPlanet and refactor planet mode
2015-08-06 08:22:11 +02:00
krzys-h
5e4a423bf0
Cleaned up "textures/"+something, fixed more possible occurences of #531
2015-08-03 20:55:33 +02:00
krzys-h
45d6091a74
Fixed program from object.factory() being kept in BotFactory for every next manual operation
2015-08-03 20:33:45 +02:00
Piotr Dziwinski
11b0398c03
Include refactoring
...
* reordered includes according to correct style
* removed some unnecessary includes
2015-08-02 17:49:07 +02:00
Piotr Dziwinski
7d8b56d9ab
More style fixes
2015-08-02 12:06:14 +02:00
Piotr Dziwinski
a5ff361bcc
Replace std::regex with boost::regex
...
std::regex doesn't work in older GCC version (#532 )
2015-07-25 09:13:17 +02:00
Piotr Dziwinski
4e836fa1d8
Remove unneeded LoadTexture calls
...
This caused reading of directory instead of file and caused crash on MacOSX (#531 )
2015-07-25 08:49:14 +02:00
krzys-h
8e02786dbc
Fix #529
2015-07-22 17:42:02 +02:00
krzys-h
d5d8c0b29f
Removed the need for progfunc() in object.factory()
...
Changes to object.factory():
* The second argument will be automatically interpreted as public function name, file name or program code
* The program starts earlier (when the robot is ready, not when the doors open)
* Refactored to std::string
2015-07-22 16:16:16 +02:00
krzys-h
083f216529
Team object recoloring ( #514 )
2015-07-22 12:45:50 +02:00
Piotr Dziwinski
b3b6435039
Use MakeUnique with level parser classes
2015-07-17 20:38:21 +02:00
Piotr Dziwinski
d5da68d59a
Refactor old Get/SetAngle/Zoom -> Get/SetPartRotation/Scale
2015-07-14 21:35:43 +02:00
Piotr Dziwinski
1183ed1980
Refactor old Get/SetPosition -> Get/SetPartPosition
2015-07-14 19:40:39 +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
16883fcdc4
Make CAuto classes use COldObject
2015-07-12 14:01:07 +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
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
4c10730f87
CCarrierObject interface
2015-07-10 23:16:55 +02:00
Piotr Dziwinski
5d30de0d09
CProgrammableObject interface
2015-07-10 20:46:33 +02:00
Piotr Dziwinski
93479af188
CTransportableObject interface
2015-07-10 19:51:49 +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
Piotr Dziwinski
b0ac2f8326
Refactor CObject interface related to crash spheres
2015-07-10 09:38:53 +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
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
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
krzys-h
4fc8364136
Fixed Destroyer object destruction ( fixes #308 )
2015-06-26 19:20:16 +02:00
Piotr Dziwinski
88ec9aaae3
Drop GCC 4.6 support
2015-06-26 00:24:32 +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
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
be74b61ad3
Fixed Vault not unlocking vehicle ( #459 )
2015-04-17 21:28:30 +02:00
krzys-h
66ea5fd92b
Fixed NewScript
2015-04-06 16:41:05 +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
6d85db5314
Fixed weird Converter behaviour, closes #431
2015-03-08 16:05:14 +01:00
krzys-h
61b186343f
Fixed #424 , #423 and probably #421
2015-01-08 18:56:26 +01:00
krzys-h
4fef3af9ef
Moved all CObject management from CInstanceManager to CObjectManager
2014-12-21 19:04:31 +01:00
krzys-h
c509bc1709
Fixed PowerCell/Tracked animations ( closes #389 )
2014-11-12 15:05:02 +01:00
krzys-h
5cd45fbe17
Fixed saving aParamString in CAutoEgg
2014-11-10 22:45:06 +01:00
krzys-h
fca746fdb4
Merge branch 'dev-physfs-save' into dev
2014-11-10 19:39:56 +01:00
krzys-h
a952e0ec54
Fixed DefenseTower empty cell detection ( #378 )
2014-11-10 19:38:49 +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
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
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
1835d2ae58
Removed old code based on #ifs (issue #55 )
2014-06-27 19:52:09 +02:00
krzys-h
8b121910c1
Indentation fixes
2013-12-26 19:39:32 +01:00
krzys-h
0d31f59b12
.takeoff() for SpaceShip ( #265 )
2013-12-26 18:50:05 +01:00
Piotr Dziwinski
8deb130572
Changed char[] to std::string in restext
...
Experimental changes
2013-12-04 00:15:39 +01:00
erihel
41fa8458c2
Some Ui refactoring
2013-06-24 22:09:39 +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
538745a731
Fixed some compilation warnings
...
* fixed warnings about hiding virtual functions and several others
2013-05-27 10:19:04 +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
47d7b80507
Added object.factory(cat)
2013-05-18 18:04:48 +02:00
Piotr Dziwinski
cec406ea31
Non-power-of-2 padding for background images
...
* added padding options
* removed old hardcoded image sizes
2013-05-11 23:12:13 +02:00
krzys-h
02b65fecd3
Fixed Destroyer button
...
* Commands were executed for all Destroyers on map
* Button can't be clicked when Destroyer is working
2013-05-02 19:17:17 +02:00
krzys-h
8a1e4b1e5f
Added button for Destroyer
...
Issue #142
2013-05-02 17:55:53 +02:00
krzys-h
9e1870f6bd
Removed some warnings
...
+ fix for previous commit
2013-05-01 13:19:10 +02:00
erihel
5669053de0
Some code refactoring
...
Changed vehicule (french) to vehicle (english) in enums and variables
2013-04-27 17:50:30 +02:00
Piotr Dziwiński
001d37b257
CInstanceManager refactoring
...
* removed classes managed by CInstanceManager
except for CObject, CPyro, CBrain and CPhysics
because of dependencies
* refactored instance searching to use existing singleton instances of
CApplication, CEngine and CRobotMain and calling their getter
functions
2013-02-17 12:11:56 +01:00
krzys-h
8658d6da80
Added Destroyer from Ceebot-Teen.
...
We need a new icon for it.
2013-02-13 16:58:19 +01:00
Piotr Dziwinski
a937a7b6ec
Changed model min/max to LOD levels
2013-01-27 11:43:53 +01:00