Collin Smith
7c1c64823b
Added MovementModeComponent and System to manage walk/run/neutral mode based on velocity
2019-11-12 17:18:05 -08:00
Collin Smith
5754ba9b57
Added conditional coloring of selectable bbox to represent hovered state
2019-11-12 04:11:31 -08:00
Collin Smith
318382ee34
Refactored SELECTABLE and SELECTED states to components
2019-11-12 04:08:34 -08:00
Collin Smith
93be087793
Added static factory method to get or create a specified component for an entity
2019-11-12 01:55:54 -08:00
Collin Smith
58a011ab07
Refactored alpha and transform updates to components and systems
...
Removed generic update flags from CofComponent
Created AlphaUpdate and TransformUpdate components to store flags of layers that need updating
AnimationLoaderSystem no longer sets alpha and transform values and sets flags instead
Created AlphaUpdateSystem and TransformUpdateSystem to update animation layers
2019-11-12 01:31:50 -08:00
Collin Smith
5beafce761
Removed tile alignment from entity debug status text
2019-11-10 17:32:19 -08:00
Collin Smith
364775954c
Added support for setting animation speeds
2019-11-10 15:21:19 -08:00
Collin Smith
29f619fe1b
Added support for animation transformations / alphas
...
Added support for animation transformations / alphas
Changed CofComponent transformation field back to byte
Introduced update dirty flags in CofComponent to track transformation changes
2019-11-10 15:02:34 -08:00
Collin Smith
32b20d284e
Added run and walk speeds to VelocityComponent
...
Added run and walk speeds to VelocityComponent
Added RUNNING flag to tell if entity should use run or walk speed
2019-11-10 02:25:04 -08:00
Collin Smith
4ed6792996
Added physics system placeholder which manages velocity application on position
2019-11-10 01:56:23 -08:00
Collin Smith
caec8d7032
Small optimizations
2019-11-09 22:09:39 -08:00
Collin Smith
c270dbb7a3
Added PlayerComponent
...
Added PlayerComponent containing D2S reference
Added alpha array to CofComponent
2019-11-09 22:02:40 -08:00
Collin Smith
851cdc2aa5
Moved default angle to its own field
2019-11-09 21:52:11 -08:00
Collin Smith
41ff1997a4
Added support for angular velocity
...
Added target field to AngleComponent
Set default AngleComponent angles to PI/2
Changed AngleComponent angle fields to Vector2
Added support for angular velocity -- entities will no longer instantly update to target vector
2019-11-09 21:48:03 -08:00
Collin Smith
bac1c3c59c
Added AngleComponent to debug status text
2019-11-09 15:36:07 -08:00
Collin Smith
9201f63914
Added AngleSystem and refactored com.riiablo.entity.Direction as com.riiablo.engine.Direction
...
New direction class assumes angles are given using isometric coordinates (no longer uses pixel-aligned cartesian coordinates)
2019-11-09 14:53:26 -08:00
Collin Smith
8b2f671834
Added assertion that RenderSystem source entity has a position component
2019-11-08 16:03:56 -08:00
Collin Smith
f6b806bd59
Removed path debug fields (debugging now within PathDebugSystem)
2019-11-08 00:56:05 -08:00
Collin Smith
88a02f2306
Refactored Animation#setLooping and Animation#setClamp with Animation#setMode
2019-11-07 14:20:28 -08:00
Collin Smith
56e18a0b41
Refactored Animation#reset(COF) with Animation#setCOF(COF)
2019-11-07 14:06:07 -08:00
Collin Smith
ba03f5c269
Defined a custom BBox for waypoint pads to be more squared with tiles and slightly larger
2019-11-07 13:58:15 -08:00
Collin Smith
8c18e072dd
Moved boxComponent assignment from AnimationLoaderSystem to Engine entitity creation
2019-11-07 13:57:20 -08:00
Collin Smith
9c414c1065
Resetting AnimationComponent will reset underlying Animation
2019-11-07 13:44:08 -08:00
Collin Smith
581a1b4715
Replaced Animation with improved version
...
Added support for pooling Animation, Animation.Builder, Animation.Layer
Animation will now use only its managed BBox -- no more returning BBox of layers
Redefined animation states into Mode enum -- they were discrete
Replaced act methods with update
Animation builder now copies layers instead of setting the animation object layers reference to builder layers reference
2019-11-07 13:41:38 -08:00
Collin Smith
5361d80864
Closes #34
2019-11-06 13:13:04 -08:00
Collin Smith
223efec103
Exposed render bounds
2019-11-06 00:37:29 -08:00
Collin Smith
f3f91d5a85
Fixes issue where non-default zoomed client would display labels in incorrect location
2019-11-06 00:35:40 -08:00
Collin Smith
19ab19d4e0
Added support for invisible object entities
...
Objects tagged with no draw will no longer have CofComponent and AnimationComponent added and will have the INVISIBLE flag set
2019-11-05 15:42:44 -08:00
Collin Smith
0321d769bf
Refactored TextureRegion frames into DC
...
Refactored TextureRegion frames into DC
Implementation will be improved later
2019-11-05 13:47:33 -08:00
Collin Smith
df4a4d144e
Duplicated DC6 TextureRegion workaround into DCC
2019-11-05 13:05:56 -08:00
Collin Smith
1f9ca594ba
Added support for ds1 object paths
...
Added support for ds1 object paths
Added first debug system PathDebugSystem -- more features will be moved from RenderSystem
Added radius field to RenderSystem to track radius of overscan (used to clamp rendering of entities to fov)
2019-11-04 14:51:59 -08:00
Collin Smith
909e74c166
Adjustment to e9f7dc758e
for #43 to provide upper bound on width increase
...
font16 W was rendering an additional line of pixels from adjacent character -- this should prevent the character size increase if it extends into adjacent pixels
2019-11-04 03:03:24 -08:00
Collin Smith
6b41cee758
Improved support for debugging entities in RenderSystem
...
Improved support for debugging entities in RenderSystem
Moved Warp label down to center of bbox
2019-11-04 02:45:06 -08:00
Collin Smith
b8abe4f6f5
Added support for entity labels
2019-11-04 02:19:13 -08:00
Collin Smith
424ec57eb1
Refactored select code to SelectedSystem
2019-11-03 23:56:27 -08:00
Collin Smith
ff9350d0f9
Added support for object orderflag for RenderSystem
2019-11-03 20:44:01 -08:00
Collin Smith
9b46940b3a
Added support for highlighting animations when selected
2019-11-03 01:36:58 -07:00
Collin Smith
6fb76615ba
Added support for warp substs
2019-11-03 01:20:20 -07:00
Collin Smith
ad0aa06a5d
Refactored MapComponent into MapComponent and DS1Component to separate DS1 object references
2019-11-02 14:13:41 -07:00
Collin Smith
4d177f1b96
Amending last commit -- added WarpComponent
2019-11-02 14:12:46 -07:00
Collin Smith
27121b2076
Added partial support for level warp entities
2019-11-02 14:04:16 -07:00
Collin Smith
a7d120e8a8
Set IdSystem as a non processing system (should only need to run on add and remove, not every frame)
2019-11-02 14:03:15 -07:00
Collin Smith
58df4878a2
Integrated PositionComponent assignment into entity creation
2019-11-02 14:01:30 -07:00
Collin Smith
50fa387a16
Added method to create an entity with a specified classname
2019-11-02 13:41:35 -07:00
Collin Smith
45059dfb32
Added debug rendering for selectable bounds
2019-11-02 13:30:24 -07:00
Collin Smith
fe39cda390
Refactor renamed BoxComponent to BBoxComponent
2019-11-02 13:11:50 -07:00
Collin Smith
59e5edaca4
Added support for selectable entities
...
Added support for selectable entities (BoxComponent)
Added entity Flags class
Displays active flags for entities in debug mode
ObjectSystem changed to IteratingSystem setting SELECTABLE flag per mode
Added SelectableSystem to set SELECTABLE using primary Gdx.input pointer
2019-11-02 03:32:22 -07:00
Collin Smith
2aa689a598
Added debug rendering of entity state
2019-11-01 16:55:50 -07:00
Collin Smith
3af22bd04e
Added MapComponent to entity
2019-11-01 14:55:37 -07:00
Collin Smith
9c898976bc
Refactored ds1 references from ObjectComponent and MonsterComponent to MapComponent
2019-11-01 14:49:09 -07:00
Collin Smith
b7778c4398
Added MonsterComponent and support for dynamic entities
2019-11-01 14:46:20 -07:00
Collin Smith
6be326e362
Removed debug messages
2019-11-01 14:18:41 -07:00
Collin Smith
02347dc66a
Backported separate draw call to roofs (will render on top of wall/ent layer)
2019-11-01 14:02:44 -07:00
Collin Smith
88d829a82f
Added support for poppads
...
Added support for poppads
Moved drawRoofs to separate draw method (named drawForeground)
Renamed previous drawForeground method to drawMiddleground
2019-10-31 16:51:59 -07:00
Collin Smith
6ea1b919d9
Disabled debug on AnimationLoaderSystem
2019-10-31 16:04:00 -07:00
Collin Smith
090389a80c
Implemented ecs render system
...
Added RenderSystem which is essentially MapRenderer using IsometricCamera and ecs entities
Added builder method for IsometricCamera to perform aggregate operations
Improved Animation getKeyFrameIndex to return a valid result for an uninit animation
Added various components
Added support for Animation#updateBox in AnimationLoaderSystem
Added AnimationSystem to update animation frames
Added ObjectSystem to initialize Object entities
Created Engine subclass which will be used to create Riiablo-specific entities with preconfig components
Hacked Riiablo.engine2 which will eventually replace Riiablo.engine when completed
2019-10-31 02:12:08 -07:00
Collin Smith
0a9b4c5b8e
Minor bugfixes
...
Removed redundant method call from drawDebugSpecial
Fixed issue where resizing MapRenderer was not forcing update
2019-10-27 23:30:02 -07:00
Collin Smith
0c4c4a5fb1
Fixed issue with camera toScreen coordinates applying pixel offset at incorrect time
...
Fixed issue with camera toScreen coordinates applying pixel offset at incorrect time
Added debug render of iso boundary rect
2019-10-24 00:32:43 -07:00
Collin Smith
43c9f14799
Temp fix to hide labels under certain circumstances on mobile before that gets flushed out
2019-10-22 22:35:34 -07:00
Collin Smith
019257511d
Changes resulting from #62
2019-10-22 22:27:04 -07:00
Collin Smith
c2883766f6
Added support for previewing DT1 tiles
2019-10-22 21:53:51 -07:00
Collin Smith
104042471f
Fixed issue on android where audio doesn't play on the same frame it's loaded
...
Fixed issue on android where audio doesn't play on the same frame it's loaded
SFX audio that doesn't play will remain deferred until subsequent frame
Small optimization with audio instance creation
2019-10-20 22:53:54 -07:00
Collin Smith
4e374c946d
Set conditional for debug rendering to improve performance on mobile
2019-10-20 17:15:35 -07:00
Collin Smith
7b70ff819b
Removed possible vector for errors by calling reset in constructor to set initial values
...
Removed possible vector for errors by calling reset in constructor to set initial values
I do not expect issues here, but this component is complex enough to warrant it
2019-10-20 17:02:02 -07:00
Collin Smith
a596c88a1f
Added transform field
...
Added transform field
Changed component implementation to use cloning/copying of a default array
2019-10-20 16:57:11 -07:00
Collin Smith
c394ed178e
Added annotation type DependsOn to try and document system dependencies
2019-10-20 16:48:02 -07:00
Collin Smith
69b607324e
Implemented system priorities and created SystemPriority to store them
2019-10-20 16:41:53 -07:00
Collin Smith
c09160230f
Changed byte fields to int fields
...
Changed byte fields to int fields -- space/performance change negligible and improves readability
2019-10-20 15:24:16 -07:00
Collin Smith
1a8738fc93
Added support for async audio loading and playing on subsequent frames
2019-10-20 01:36:34 -07:00
Collin Smith
d6105d9f9a
Improved isometric camera API
...
Documented isometric camera API
Implemented pix and tile offsets instead of just offset
Made pix and tile offsets private -- pix offset set via offset and tile offset set automatically
toTile50 may be deprecated in the future if I cannot find a use for it (tile offset may have superseded it)
2019-10-19 15:04:41 -07:00
Collin Smith
1d6365dcbe
Implemented asset streaming to remove much of the hitching
...
Implemented asset streaming to remove much of the hitching
Added millis to asset manager update function to load as much as possible
2019-10-19 02:04:11 -07:00
Collin Smith
dfbf132063
Fixed translation issue for mouse movement caused by not applying offset
2019-10-17 16:52:43 -07:00
Collin Smith
04ebeb1a61
Added wrld field to track cursor tile position
...
Added wrld field to track cursor tile position
Added 0.5f offset to world tile position to account for camera offset
2019-10-17 16:23:24 -07:00
Collin Smith
7ca9e73941
Added private default constructor to enforce non-instantiation
2019-10-17 16:17:18 -07:00
Collin Smith
d2eb8bca07
Fixed variable name
2019-10-17 02:02:25 -07:00
Collin Smith
cb1b53d390
Started rewriting engine using ECS
...
Added COF/animation related components and systems for streaming assets
Added additional factory method to Animation for empty constructor
2019-10-17 02:01:09 -07:00
Collin Smith
ef0b641fae
Added some controls to disable debug rendering
2019-10-06 05:54:13 -07:00
Collin Smith
d2b48b8119
Implemented slightly improved parser for TXTs (see #26 )
2019-09-29 03:47:15 -07:00
Collin Smith
0416c93abf
Updated ClassUtils and fixed some minor warnings with Excel
2019-09-28 03:45:38 -07:00
Collin Smith
761c6f8447
Implemented support for binary excel loading (see #26 )
2019-09-28 03:35:07 -07:00
Collin Smith
3fe5d9bc58
Fixed issue with Components column within MonStats2
2019-09-25 01:46:21 -07:00
Collin Smith
814925d76c
Added annotation field to allow bin generator to ignore certain columns
2019-09-23 17:42:40 -07:00
Collin Smith
d9b701901d
Added var to force using txt instead of bin for benchmarking later on
2019-09-23 17:20:16 -07:00
Collin Smith
ec4b8e5d2e
Removed unused method
2019-09-23 04:05:33 -07:00
Collin Smith
6bb974e711
Added support for binary excel loading (see #26 )
...
Refactored Excel parse factory methods to load methods
Added tentative serialization code to MonStats
2019-09-23 03:51:55 -07:00
Collin Smith
d7f2a42e9c
Removed AssetManager reference usage (no plans on using)
...
Removed AssetManager reference usage (no plans on using)
Leaving original constructor intact for now (added TODO to remove later on)
Added default constructor which creates Files with null AssetManager
2019-09-23 03:23:15 -07:00
Collin Smith
7e3a17cd33
Added debug logging for time it takes to load excel tables
2019-09-23 03:08:06 -07:00
Collin Smith
807d67292f
Corrected some columns (El2Mode, El2Type, El3Mode, El3Type)
2019-09-19 01:24:25 -07:00
Collin Smith
7495aff11d
Added support for multiple client connections to BNLS
...
Added support for multiple client connections to BNLS
Added support for ConnectionClosed packet to politely close connection
2019-09-12 02:23:53 -07:00
Collin Smith
3b24c3a58b
Created BNLS (login service) skeleton
2019-08-27 22:37:16 -07:00
Collin Smith
cc2ea8ba00
Removed eclipse stuff from gradle (was giving warnings and completely unused)
2019-06-24 03:25:43 -07:00
Collin Smith
b8660a5458
Removed cache field
2019-05-28 01:33:42 -07:00
Collin Smith
f7bdf363dc
Simplified implementation
2019-05-10 02:00:32 -07:00
Collin Smith
2ae55d9eb8
Changed translation amount
...
Changed translation amount
Added support for toTile50 for position coords because of centering
Display iso position and tile position
Changed access of offset and position
2019-05-10 00:20:58 -07:00
Collin Smith
a7682d8743
Added support for isometric offsets
2019-05-09 23:46:44 -07:00
Collin Smith
eaf97baf6e
Added translation support
...
Added translation support
Changed IsometricCamera to use tile coordinates for position coords
2019-05-09 16:00:07 -07:00
Collin Smith
7b4b58ee2d
Algebraic simplifications
2019-05-08 23:43:14 -07:00
Collin Smith
a5ff6233c9
Removed unneeded qualification
2019-05-08 23:37:38 -07:00
Collin Smith
fe1e15d1fc
Committing new camera classes
2019-05-08 23:34:44 -07:00
Collin Smith
06b91341bf
int pixel coords to float
2019-05-07 02:52:23 -07:00