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
krzys-h
977607a934
Updated license headers
2016-02-13 14:11:30 +01:00
krzys-h
07a4d6a16b
CBot namespace
2015-12-26 14:29:10 +01:00
Piotr Dziwinski
66ce745be0
Introduce forward declarations as suggested by colobot-lint
2015-09-27 16:28:14 +02:00
Piotr Dziwinski
b93f610930
Fix license header in all files
2015-08-22 16:40:02 +02:00
krzys-h
28925106e4
Cleaned up some long lists of ifs
2015-08-18 12:29:41 +02:00
krzys-h
0d9b3b907a
Moved GetActive and GetDetectable to CObject
2015-08-17 00:02:38 +02:00
krzys-h
57646c0c7b
Refactored object creation
2015-08-14 18:20:44 +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
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
abb272600e
Merged CBrain into CProgrammableObject
2015-08-10 18:16:00 +02:00
Piotr Dziwinski
7d8b56d9ab
More style fixes
2015-08-02 12:06:14 +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
62fdfc9f92
Refactor ResetCap -> AnimateOnReset
2015-07-13 22:47:11 +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
6dcef71802
GlobalSphere -> CameraCollisionSphere refactoring
2015-07-11 13:52:04 +02:00
Piotr Dziwinski
b0ac2f8326
Refactor CObject interface related to crash spheres
2015-07-10 09:38:53 +02:00
Piotr Dziwinski
9b232ee3f5
Sound enum refactoring
...
* rename Sound -> SoundType
* add parsing string to SoundType
2015-07-09 21:32:25 +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
krzys-h
78e09c757d
Basic support for teams and code battle missions
2015-06-26 22:07:55 +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
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
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
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
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
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
9fd6cf5449
Changed all occurences of PPC in the code to TerranovaTeam
2014-10-14 15:26:18 +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
652dc6081d
Removed some unused objects
2014-01-11 23:43:10 +01:00
krzys-h
59935b4706
Changed comments in ObjectType to be object categories; removed unused SEAWEED
2014-01-01 17:33:19 +01:00
krzys-h
a36450a6da
Added tool= i drive=
2013-12-29 15:03:21 +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
krzys-h
c7d289c00b
Beggining of MissionController
...
Controling mission using CBot
2013-04-28 20:05:19 +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
Piotr Dziwinski
0305e0ba17
Restext rewrite to runtime initialized arrays
2012-10-17 23:16:19 +02:00
Piotr Dziwinski
f6e27099b2
Doxygen/comment fixes and some #include refactoring
2012-10-17 21:55:45 +02:00
Piotr Dziwinski
fd09071c29
Data dir paths
...
- changed access to paths in data directory in CApplication
- models now load from data directory
2012-09-22 14:40:13 +02:00
Zaba999
479a67a731
Merge with changes from Zaba999 fork.
2012-09-10 23:29:38 +02:00
Alexander Monakov
f5a8a92050
Move ObjectType enum to a separate file
2012-08-25 13:47:48 +04:00
Piotr Dziwinski
63257034c9
Partial CEngine implementation
...
- added rewritten implementation for basic modesetting in CEngine
- started rewriting proper rendering and object handling in CEngine
2012-08-10 23:31:42 +02:00