1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-06-03 06:20:43 +00:00
Commit Graph

320 Commits

Author SHA1 Message Date
gravestench
48cefd5aef Merge branch 'master' of http://github.com/OpenDiablo2/OpenDiablo2 into ecs 2021-01-10 20:24:23 -08:00
Tim Sarbin
c99810ad0e Fixed various bugs, crashes, and slowdowns. 2021-01-10 02:44:42 -05:00
Ian Ling
c019476d08 Merge master into ecs 2021-01-08 22:56:41 -08:00
Intyre
db83814527
d2mpq refactored (#1020)
* d2mpq refactor

* d2mpq refactor last standing lint error

* d2mpq refactor: less linter noise

* d2mpq refactor: more linter issues
2021-01-08 12:46:11 -08:00
gucio321
6addf7a243
removed links to closed issues from code (#1005)
Co-authored-by: M. Sz <mszeptuch@protonmail.com>
Co-authored-by: gravestench <dknuth0101@gmail.com>
2021-01-06 21:48:12 -08:00
Ian Ling
164d8c93d0 Add boot state to scenes, fix loading screen scene 2021-01-04 01:17:52 -08:00
Ian Ling
03855960cd De-lint ecs branch 2021-01-03 12:48:16 -08:00
Ian Ling
0cf47b9b57 Add checkboxes, checkbox test scene 2020-12-31 20:07:51 -08:00
Tim Sarbin
92989d6d7a Removed improper ebiten dependency in d2interface. 2020-12-30 02:08:32 -05:00
Intyre
1e91df996c Refactor StreamReader 2020-12-23 10:43:33 +01:00
Intyre
b78dca52c2 Refactor StreamWriter 2020-12-23 10:43:33 +01:00
Tim Sarbin
b4f1e8cbbd
Merge pull request #1000 from gucio321/multi-language-support
ckecked value of italian modifier
2020-12-22 09:25:20 -05:00
M. Sz
bc17f2c422 ckecked value of italian modifier 2020-12-22 10:45:30 +01:00
Tim Sarbin
0f658d5dec
Merge pull request #999 from Intyre/term
Cleaned up d2term
2020-12-21 20:21:20 -05:00
Intyre
04ec879035 Cleaned up d2term 2020-12-21 21:46:58 +01:00
M. Sz
0c04e9b3d5 skill select menu dependencies (when we open skillselect menu, other panels are closed) 2020-12-21 17:37:59 +01:00
Tim Sarbin
c79c2a8c89
Merge pull request #983 from gucio321/quest-log-part2
Quest Log - quest completion animation
2020-12-17 11:35:25 -05:00
M. Sz
be8b3e3157 stats changing: hero stats panel 2020-12-16 16:49:50 +01:00
M. Sz
08e590f3e4 quest animation initial. 2020-12-16 15:08:39 +01:00
gravestench
3731e631cf
Resolve #969 (#970)
* fixed #969
2020-12-13 14:41:19 -08:00
Tim Sarbin
fdf49cf93a
Merge pull request #773 from gravestench/ecs
Preliminary ECS work
2020-12-13 16:32:17 -05:00
gucio321
2e31f3d1ec
Move Gold Panel (#962)
* move gold panel
2020-12-12 01:39:26 -08:00
gravestench
c52c6648dd refactor of d2components, d2systems
Systems now place all of their component factories into a `Components`
member. This improves code readability and makes it clear when we are
dealing specifically with ecs components.

The concrete ComponentFactory instances now have `Add` and `Get`
methods (as opposed to `AddAlpha` or `GetAlpha`). This enforces naming
of component factories as to avoid collisions when embedded in a struct
with other components.

Also, the ComponentFactory interface is embedded directly into the
concrete component factory without a name.
2020-12-08 18:45:00 -08:00
gravestench
deb63a95c8 changes to d2components, d2systems, d2ui, d2enum
go.mod, go.sum:
* updating akara, bugfix in akara.EntityManager.RemoveEntity

d2core
* adding d2core/d2label
* adding d2core/d2bitmapfont

d2ui
* exporting some constants for use elsewhere

d2components
* added bitmap font component (for ui labels)
* added FileLoaded tag component to simplify asset loading filters
* added locale component
* FilePath component renamed to File
* sprite component now contains the sprite and palette path as strings
* adding ui label component

d2enum
* added locale as file type for file "/data/local/use"

d2systems
* changed most info prints to debug prints
* removed unused scene graph testing file (oops!)
* terminal is now rendered above mouse cursor scene
* adding ui widget system for use by the game object factory
* adding test scene for ui labels created with the ui widget system

d2systems/AppBootstrap
* added command line args for profiler
* `--testscene labels` launches the label test
* now adds the local file for processing
* game loop init logic now inside of Init method (the call to
world.Update does this)

d2systems/AssetLoader
* loads the locale file and adds a locale component that other systems
can use
* adds a FileLoaded component after finished loading a file which other
systems can use (like the loading scene)

d2systems/FileSourceResolver
* Now looks for and uses the locale for language/charset filepath
substitution

d2systems/GameClientBootstrap
* game loop init moved to end of AppBootstrap.Init

d2systems/GameObjectFactory
* embedding UI widget factory system

d2systems/BaseScene
* made base scene a little more clear by breaking the process into more
methods

d2systems/LoadingScene
* simplified the entity subscriptions by using the new FileLoaded
component

d2systems/SceneObjectFactory
* adding method for adding labels, buttons to scenes (buttons still WIP)

d2systems/SceneSpriteSystem
* the sprite system now maintains a cache of rendered sprites
2020-12-08 11:24:10 -08:00
gravestench
2e814f29b0 transform component, scene testing
* removed position,scale,rotation components
* added Transform component that contains position, rotation, and scale
* scene graph update now regenerates the local mat4 using the transform
component
* akara bugfix: adding new subscriptions will process existing entities
* added `--testscene` arg for testing individual scenes in isolation
* added rotation support to d2interface.Surface
2020-12-07 12:44:11 -08:00
gravestench
7a8b07d1c1 adding a full-featured rectangle implementation to d2geom, adding an ecs component for it 2020-12-07 12:44:11 -08:00
gravestench
0472233949 update to d2math, changed/added components, scenes
* animation renamed to sprite
* renderable/surface renamed to texture
* added in d2math: Vector2, Vector3, Vector4, Matrix3, Matrix4, Quaternion
* worked a bit on the loading scene, main menu scene
2020-12-07 12:44:11 -08:00
gravestench
bafc637265 fix lint errors in d2common/d2input 2020-12-07 12:44:11 -08:00
gravestench
e6d418fdb2 Adding input system, mouse cursor scene, interactive component
* added `d2common/d2input`, copied input vector logic from hellspawner
* added an `InteractiveComponent` which contains input vector, enable
flag, and callback function
* Added an InputSystem which handles input logic and iterates over
entities with interactive components
* added a mouse cursor scene for rendering the mouse cursor
* made the trademark sprite disappear when left mouse is clicked
* various other small bugfixes in scene systems
2020-12-07 12:44:11 -08:00
gravestench
1c8240d869 fixed remaining lint errors 2020-12-07 12:44:11 -08:00
gravestench
85ac48bff6 removed unused event emmitter 2020-12-07 12:44:11 -08:00
gravestench
8b1b6b9adc more work on ecs implementation
* removed d2common/d2scene, was not the right way to go.
* added components for animation, scale, main viewport, viewport filter
* added interface for scenes, which are extensions of akara.System
* BootStrap is now AppBootstrap, common to game clients and headless
server
* added generic BasicScene struct for common scene functionality
* added game object factory as a system, with single sprite factory
* added update counter system, shows how many times the world updates
per second
* integration test is now the game client test
2020-12-07 12:44:11 -08:00
gravestench
474a03e5dc more work on ecs impl 2020-12-07 12:44:11 -08:00
dknuth
b447d3b942 file handle caching, asset caching, font tables
- adding components to handle font tables
- handle loading font tables in asset loader
- handle file type for font tables
- file handle resolver system now caches file handles
- asset loader system now caches loaded assets
2020-12-07 12:44:11 -08:00
dknuth
b1bf6993d2 eminary ECS Implementation work
Added a implementation of an Entity Component System (ECS) architecture
2020-12-07 12:44:11 -08:00
M. Sz
dffa8ff865 moved max quests acts to d2enum 2020-12-04 10:43:33 +01:00
M. Sz
ed89d91ae4 code cleanup 2020-12-04 09:20:38 +01:00
M. Sz
2c303d74f2 quest status init 2020-12-03 10:40:01 +01:00
M. Sz
c7a841fe5a Merge branch 'hotfix' of https://github.com/gucio321/OpenDiablo2 into hotfix 2020-12-02 09:41:52 +01:00
gucio321
96916863ff
Quest log initial (#956)
* Adding character quest panel
2020-12-01 23:19:15 -08:00
M. Sz
fa1e86acc3 added quest log items to d2resources and modified player movement speed 2020-11-29 17:08:46 +01:00
M. Sz
b0af051f4c d2resource - escape menu labels 2020-11-28 19:58:22 +01:00
Tim Sarbin
73d381215e
Merge pull request #951 from gucio321/multi-language-labels
Multi language labels
2020-11-27 11:47:54 -05:00
M. Sz
640a9e043d code cleanup 2020-11-26 12:25:47 +01:00
M. Sz
1dcd63a238 fixed lint errors 2020-11-26 11:30:11 +01:00
M. Sz
76257ca351 moved some stuff 2020-11-26 11:13:35 +01:00
M. Sz
6f6516ae33 a bit updated comments 2020-11-25 20:57:52 +01:00
M. Sz
91f28516ff fixed lints 2020-11-25 19:25:19 +01:00
M. Sz
56787b13b8 Opimalisation 2020-11-25 12:37:16 +01:00
Thomas Christlieb
320583b5d4 save act and difficulty. Fixes #866 2020-11-25 11:51:20 +01:00