Vsevolod Kremianskii
2542dc13e0
build: Implicitly link against Boost.System
...
This fixes a compilation error on Debian using GCC.
2020-10-29 09:31:28 +07:00
Vsevolod Kremianskii
bd41f7c9a2
refactor: Extract declarations from game/types.h
...
- Move MovementType to the Creature class
- Move CameraType and CameraStyle into the camera folder
- Move ObjectType into the object folder
2020-10-28 12:32:39 +07:00
Vsevolod Kremianskii
98e949783d
refactor: Refactor HUD
...
- Remove context classes: HUD and overlays now query the Game object
- Remove debug functionality: I want to redesign it
2020-10-28 10:00:38 +07:00
Vsevolod Kremianskii
8994cfa26b
feat: Add scaffolding for the role-playing system
2020-10-28 08:54:52 +07:00
Vsevolod Kremianskii
577c48293d
refactor: Move Blueprints class to the blueprint folder
2020-10-28 08:32:16 +07:00
Vsevolod Kremianskii
3283ebd702
refactor: Move video code to a separate library
2020-10-28 08:28:00 +07:00
Vsevolod Kremianskii
25bfe66cdd
feat: Add scaffolding for video playback
2020-10-28 01:15:37 +07:00
Vsevolod Kremianskii
6dbbd46deb
refactor: Confine OpenGL calls to librender
2020-10-26 11:11:58 +07:00
Vsevolod Kremianskii
020c7387bf
refactor: Split libsystem into multiple libraries
...
- Move each subsystem into a separate library
- Extract caches from ResourceManager to avoid circular dependencies
2020-10-26 09:21:21 +07:00
Vsevolod Kremianskii
82cf6e3384
feat: Implement party management
2020-10-25 11:48:03 +07:00
Vsevolod Kremianskii
456663f383
feat: Implement showPartySelectionGUI routine
2020-10-22 09:58:33 +07:00
Vsevolod Kremianskii
744a38e383
refactor: Transfer responsibility from the Game class to concrete GUIs
2020-10-20 08:52:54 +07:00
Vsevolod Kremianskii
ab02686b3c
refactor: Remove most of the multiplayer game logic
...
I want to come up with a better architecture.
2020-10-19 22:04:29 +07:00
Vsevolod Kremianskii
3aa51c5d34
refactor: Make scene a separate namespace
2020-10-19 14:01:37 +07:00
Vsevolod Kremianskii
a0d7a6e485
refactor: Extract core folder into the system folder
2020-10-19 13:36:09 +07:00
Vsevolod Kremianskii
2880ddf93a
refactor: Move MultiplayerMode into mp library
2020-10-19 13:30:08 +07:00
Vsevolod Kremianskii
b2338b15ee
refactor: Extract multiplayer code into a separate library
...
This is to reduce coupling between singleplayer and multiplayer.
2020-10-19 13:23:39 +07:00
Vsevolod Kremianskii
9fbf529a64
refactor: Extract libsystem sources into system folder
2020-10-19 13:11:01 +07:00
Vsevolod Kremianskii
e8c0d1260f
refactor: Refactor model scene nodes
...
- Extract animation code into the SceneNodeAnimator class
- Combine MeshSceneNode and LightSceneNode into ModelNodeSceneNode
- Make a ModelNodeSceneNode for every ModelNode
2020-10-17 15:55:07 +07:00
Vsevolod Kremianskii
c134ebd1f3
feat: Initial animated camera implementation
2020-10-15 22:12:22 +07:00
Vsevolod Kremianskii
51de55b6bf
feat: Implement standard dialog camera angles
2020-10-14 16:56:27 +07:00
Vsevolod Kremianskii
975e53d1cc
refactor: Extract findPortrait to a separate file
2020-10-12 07:58:35 +07:00
Vsevolod Kremianskii
b295610b4c
refactor: Move color declarations to a separate header
2020-10-12 07:55:06 +07:00
Vsevolod Kremianskii
6061b325e2
refactor: Move util from game to audio namespace
2020-10-12 07:50:22 +07:00
Vsevolod Kremianskii
e0c75977d0
feat: Add placeholders for party management
2020-10-11 22:56:25 +07:00
Vsevolod Kremianskii
3575499033
test: Simplify unit test discovery
2020-10-11 16:56:50 +07:00
Vsevolod Kremianskii
a57fe44f97
refactor: Refactor actions into a class hierarchy
2020-10-11 16:14:15 +07:00
Vsevolod Kremianskii
aece694246
refactor: Rename actions to actionexecutor
2020-10-11 14:16:09 +07:00
Vsevolod Kremianskii
2d0f19bc0a
refactor: Extract action queue into a separate class
2020-10-11 14:05:41 +07:00
Vsevolod Kremianskii
8e3b5f931a
test: Fix running unit tests
2020-10-11 12:55:10 +07:00
Vsevolod Kremianskii
016673a245
build: Rename libengine to libsystem
2020-10-11 12:04:36 +07:00
Vsevolod Kremianskii
a9ed02b120
build: Compile Program class as part of the reone executable
2020-10-11 11:53:17 +07:00
Vsevolod Kremianskii
36e6855c5d
build: Extract game logic to a separate static library
...
This is decouple engine subsystems from the game logic.
2020-10-11 11:02:29 +07:00
Vsevolod Kremianskii
c795188eab
build: Output executables and static libraries to separate directories
2020-10-11 10:50:55 +07:00
Vsevolod Kremianskii
e097fde9fb
refactor: Extract text input from console to a separate class
2020-10-11 09:46:34 +07:00
Vsevolod Kremianskii
5848249a7c
refactor: Refactor 3D control initialization
...
Use builder pattern.
2020-10-10 21:28:09 +07:00
Vsevolod Kremianskii
e530440b2a
test: Add first unit test
2020-10-10 15:25:36 +07:00
Vsevolod Kremianskii
12dd8a1ec0
ci: Fix Travis CI build
2020-10-10 15:09:20 +07:00
Vsevolod Kremianskii
9e10fa5943
build: Rewrite CMakeLists.txt using a static library
2020-10-10 15:00:01 +07:00
Vsevolod Kremianskii
0a1c5b41c6
feat: Implement more of character generation
2020-10-06 18:39:51 +07:00
Vsevolod Kremianskii
edd124afe6
feat: Initial quick or custom panel implementation
2020-10-03 21:50:16 +07:00
Vsevolod Kremianskii
cd5aceac1c
refactor: Refactor GUI loading
2020-10-03 17:57:42 +07:00
Vsevolod Kremianskii
9a108fefb1
refactor: Refactor 3D control rendering
...
- Use a scene graph for rendering
- Extract rendering pipeline to separate classes
2020-10-03 16:19:43 +07:00
Vsevolod Kremianskii
bf2d908e3a
refactor: Rename resource/archive to resource/collection
2020-10-03 08:11:07 +07:00
Vsevolod Kremianskii
5441474880
refactor: Refactor resources
...
- Rename resources namespace to resource
- Move blueprints to the resource namespace
2020-10-02 22:34:02 +07:00
Vsevolod Kremianskii
1bc0447d68
refactor: Rename multiplayer folder to mp
2020-10-02 16:33:20 +07:00
Vsevolod Kremianskii
08df98b6f8
refactor: Rename factory.(h|cpp) to objectfactory.(h|cpp)
2020-10-02 16:31:47 +07:00
Vsevolod Kremianskii
8477972b5c
refactor: Move Area and Module classes into object folder
2020-10-02 16:24:50 +07:00
Vsevolod Kremianskii
1445cdb203
refactor: Extract action execution into a separate class
2020-10-02 16:14:07 +07:00
Vsevolod Kremianskii
3c1d94d876
refactor: Extract object selection into a separate class
2020-10-02 14:27:33 +07:00
Vsevolod Kremianskii
391ffb1823
refactor: Extract collision detection into a separate class
2020-10-02 13:08:33 +07:00
Vsevolod Kremianskii
11dc80a3aa
refactor: Move player controls to the Player class
2020-10-01 20:01:45 +07:00
Vsevolod Kremianskii
ef2d119783
refactor: Rename NavMesh to Pathfinding
2020-09-29 23:11:50 +07:00
Vsevolod Kremianskii
63576e6317
refactor: Move cameras into game namespace
2020-09-29 23:02:46 +07:00
Vsevolod Kremianskii
98ae597500
refactor: Make camera part of a scene graph
2020-09-29 13:20:06 +07:00
Vsevolod Kremianskii
c253cf3638
refactor: Rename GUIQuad to Quad
2020-09-29 08:15:36 +07:00
Vsevolod Kremianskii
2d1662ebee
feat: Render 3D controls using FBO
2020-09-28 23:11:00 +07:00
Vsevolod Kremianskii
0819b41a5e
refactor: Combine Area and ObjectContainer classes
2020-09-28 17:39:22 +07:00
Vsevolod Kremianskii
72bba03898
refator: Remove IRoutineCallbacks interface
2020-09-28 16:18:05 +07:00
Vsevolod Kremianskii
d467c7f97a
feat: Implement vanilla object selection
2020-09-28 11:56:10 +07:00
Vsevolod Kremianskii
5fc8880f9f
feat: Implement equipment screen, get items from containers
2020-09-26 15:43:44 +07:00
Vsevolod Kremianskii
c0f5d7f347
feat: Initial console implementation
2020-09-25 23:59:24 +07:00
Vsevolod Kremianskii
4e0f6f67f7
feat: Improve pathfinding
...
- Use PTH files instead of dynamic graph creation
- Fix path always being skipped
- Remove pathfinding distance limit
2020-09-23 23:07:40 +07:00
Vsevolod Kremianskii
8e02dc9004
refactor: Refactor BlueprintManager, add placeholder blueprint classes
2020-09-23 08:56:22 +07:00
Vsevolod Kremianskii
cc2c342bde
refactor: Rename templates to blueprints
...
Templates are a C++ term.
2020-09-23 08:16:17 +07:00
Vsevolod Kremianskii
a18d7d15c1
build: Fix build of tools
2020-09-19 08:10:46 +07:00
Vsevolod Kremianskii
e37ada215c
refactor: Extract debug level management into a separate file
2020-09-19 08:01:11 +07:00
Vsevolod Kremianskii
0d50e1e07d
refactor: Optimize scene graph rendering
...
Create mesh scene nodes once per model scene node
2020-09-18 23:31:02 +07:00
Vsevolod Kremianskii
f1ee974e72
refactor: Rename ModelInstance to ModelSceneNode
2020-09-16 13:39:58 +07:00
Vsevolod Kremianskii
c35ab726ad
feat: Implement FPS counter
2020-09-16 08:48:39 +07:00
Vsevolod Kremianskii
430a37263f
refactor: Rename ModelSceneNode to MeshSceneNode
2020-09-15 22:23:26 +07:00
Vsevolod Kremianskii
06051bd3ab
refactor: Group MDL model classes into model folder
2020-08-27 08:40:51 +07:00
Vsevolod Kremianskii
f26ed703fc
refactor: Extract object management from Area into ObjectContainer
...
Also optimize searching objects by tag and id.
2020-08-27 07:57:52 +07:00
Vsevolod Kremianskii
06c9ec0513
refactor: Refactor area rendering
...
- Change render list to scene graph
- Sort only transparent nodes
2020-08-27 00:01:21 +07:00
Vsevolod Kremianskii
e231833bf2
refactor: Refactor items
...
- Rename Item to ItemTemplate
- Add Item game object
2020-08-26 20:00:56 +07:00
Vsevolod Kremianskii
8890a1bd82
refactor: Refactor game objects
...
- Split Object class into Object and SpatialObject
- Inherit Module and Area from Object
- Move object creation into (Multiplayer)ObjectFactory class
2020-08-26 18:21:57 +07:00
Vsevolod Kremianskii
fbf49399f5
feat: Partially implement item containers
2020-08-23 21:02:59 +07:00
Vsevolod Kremianskii
2fdd2b203d
feat: Implement 3D controls
2020-08-23 16:26:35 +07:00
Vsevolod Kremianskii
593284f108
feat: Load cursors from executable file
2020-08-18 16:37:24 +07:00
Vsevolod Kremianskii
64b8ad60fd
refactor: Refactor multiplayer, optimize message exchange
2020-08-16 20:29:51 +07:00
Vsevolod Kremianskii
289ed25a57
feat: Play music during main menu and chargen
2020-08-14 12:30:20 +07:00
Vsevolod Kremianskii
cfd689e4b5
feat: Show gender and class description during class selection
2020-08-14 11:21:01 +07:00
Vsevolod Kremianskii
aa4f9224ad
refactor: Split Area definition into multiple files
2020-08-14 09:46:34 +07:00
Vsevolod Kremianskii
67384c7949
chore: Log conventional byte code names
2020-08-11 13:52:16 +07:00
Vsevolod Kremianskii
d419c059cf
refactor: Move RoutineManager to game namespace
2020-08-10 16:27:43 +07:00
Vsevolod Kremianskii
44a25851f7
refactor: Move script management to ResourceManager
2020-08-10 12:47:18 +07:00
Vsevolod Kremianskii
9e974a845b
chore(game): Rename GUI files and classes
2020-08-10 12:23:23 +07:00
Vsevolod Kremianskii
2900bfedfb
refactor: Rename manager.(h|cpp) to resources.(h|cpp)
2020-08-10 11:59:02 +07:00
Vsevolod Kremianskii
e1598aaeae
refactor: Refactor scripts, move routines to the game namespace
2020-08-10 11:53:19 +07:00
Vsevolod Kremianskii
bd26b5fd3d
feat: Implement character generation: class and portrait selection
2020-08-08 23:26:44 +07:00
Vsevolod Kremianskii
bc19568369
refactor: Refactor GUI, use built-in module selection
2020-08-08 08:36:38 +07:00
Vsevolod Kremianskii
ad7a3b664a
feat(game, gui): Implement dialog GUI
2020-08-07 08:12:28 +07:00
Vsevolod Kremianskii
94cca1981b
feat(script): Implement scripting subsystem
2020-08-05 13:46:35 +07:00
Vsevolod Kremianskii
37fd02e55c
refactor: Move tools to a separate executable
2020-08-05 07:46:56 +07:00
Vsevolod Kremianskii
0fa578e6a7
Change license to GNU GPL 3
2020-08-03 08:06:55 +07:00
Vsevolod Kremianskii
122f2c0a41
build: Add Boost.System dependency to CMakeLists.txt
2020-08-03 07:38:41 +07:00
Vsevolod Kremianskii
d479faefa2
Initial commit
2020-08-02 22:47:59 +07:00