Collin Smith
5115403733
Created StatList#put(short,StatGetter) to copy other stats into a stat
2020-09-07 13:23:08 -07:00
Collin Smith
fc23ab05b5
Added copy method for StatGetter to preserve a reference
2020-09-07 13:22:12 -07:00
Collin Smith
1c9e858798
Updated test with interleaved update sequences
2020-09-07 01:35:34 -07:00
Collin Smith
f215a7f191
Added support for pooling UpdateSequence instances to allow asynchronous sequencing
2020-09-07 01:28:19 -07:00
Collin Smith
aadc9d2de8
Removed requirement for AttributesUpdater to be stateful
...
Used a clever trick on StatList.StatIterator, where read stats can be pushed onto the list starting from the front. The result is a sorted list not containing elements which were not added back.
2020-09-07 01:15:55 -07:00
Collin Smith
f121cc8a7a
Replaced AttributesUpdater with Updater and renamed it
...
Replaced AttributesUpdater with Updater and renamed it
Fixed existing StatListLabeler tests
2020-09-07 00:12:42 -07:00
Collin Smith
7ccebec402
Created boolean parameter to determine stat list capacity
...
Created boolean parameter to determine stat list capacity for AggregateAttributes initialization
2020-09-06 23:48:44 -07:00
Collin Smith
d69de2b357
Added experimental iteration of AttributeUpdater called Updater
2020-09-06 21:29:35 -07:00
Collin Smith
e6f97c2025
Added support for larger StatList instances
...
Aggregate lists may contain many stats, added special instance
2020-09-06 20:40:11 -07:00
Collin Smith
b7bf3ca62a
Disabled warning message for StatListGetter#get(short)
...
assigning #get() and checking null is a common usage
2020-09-06 16:16:18 -07:00
Collin Smith
947862be1a
Changed visibility of item flag management static functions to public
...
Created StatListFlags#getAggItemFlags to update flags for agg list
2020-09-06 16:06:18 -07:00
Collin Smith
d55eb801d8
Added assertion trigger if undefined case ever occurs
2020-09-06 15:41:29 -07:00
Collin Smith
f47c949101
Tightened up AttributesUpdater
...
Renamed opAttrs to opBase
Reorganized params more logically to function
Added note regarding possibly deficiency from original impl and op stats
2020-09-06 15:39:04 -07:00
Collin Smith
d0e69cf74c
Added additional check on gem attributes listFlags
2020-09-06 13:06:38 -07:00
Collin Smith
fc1b7a73a1
Created StatListGetter#getValue(short,int) to retrieve a default int or value if non-null
2020-09-06 12:42:31 -07:00
Collin Smith
f21bf0339a
Renamed Attributes#update methods to #aggregate
2020-09-06 12:31:03 -07:00
Collin Smith
5cb04016cc
Changed attributes log level to debug
2020-09-06 05:09:14 -07:00
Collin Smith
c127475007
Significantly tightened up code
...
Touched about every line of code to validate behavior
2020-09-06 05:05:47 -07:00
Collin Smith
f69db25728
Changed from instanceof to check if attrs is simple
2020-09-06 01:41:42 -07:00
Collin Smith
b5c33a313f
Removed unneeded block -- managed by StatListReader
2020-09-06 01:29:44 -07:00
Collin Smith
85303c28cc
Replaced Attributes in com.riiablo.item with com.riiablo.attributes for D2SReader
2020-09-06 01:28:31 -07:00
Collin Smith
a72b317dc9
Added logging for all value modifications and set to info level
2020-09-06 01:22:44 -07:00
Collin Smith
96069e98e2
Fixed GemGenerator not checking attrs type properly
2020-09-06 00:59:06 -07:00
Collin Smith
9ed7b82c08
Added type marker to Attributes
...
Added byte type value to represent what kind of attrs it is
Rolled GemAttributes into AggregateAttributes
GemAttributes are now marked using added marker
`Complex` attribute lists have types > 0
StatListWrapper set to type 0
2020-09-06 00:42:20 -07:00
Collin Smith
1dabb6f6b8
Removed content, ultimately not needed
2020-09-06 00:20:45 -07:00
Collin Smith
6f86f4048c
Added method for accessing gem attribute selected flag
2020-09-06 00:18:03 -07:00
Collin Smith
49f293c494
Added method to validate flags for gem stat lists
2020-09-06 00:17:25 -07:00
Collin Smith
57e1052e9f
Created consts for gem list flags
2020-09-06 00:06:58 -07:00
Collin Smith
ec802d7c04
Changed visibility of StatListGetter#builder to public
2020-09-05 19:50:04 -07:00
Collin Smith
fd07613913
Created stat constants for synthetic reqstr and reqdex
2020-09-05 19:49:38 -07:00
Collin Smith
03d7e9a458
Added int flags parameter to AttributesUpdater to specify which lists to include
...
Added int flags parameter to AttributesUpdater to specify which lists to include
AttributesUpdater checks and logs if flags includes more than 1 set (unusual)
Renamed set item constants and methods within SetListFlags to be more consistent
Added Aldur's Advance StatListLabeler test
Added runes to Grief StatListLabeler test
2020-09-05 19:48:53 -07:00
Collin Smith
181cd3eb6f
Renamed field to correct name
2020-09-05 19:36:40 -07:00
Collin Smith
f3fc76e366
Added better descriptors for StatList toString methods
2020-09-05 19:35:49 -07:00
Collin Smith
938064bcbd
Fixed log message format
2020-09-05 19:03:03 -07:00
Collin Smith
fa9add8e6f
Fixed log message format
2020-09-05 19:01:46 -07:00
Collin Smith
670d6c5e1b
Fixed log message format
2020-09-05 19:00:53 -07:00
Collin Smith
3025f4d05d
Fixed log message format
2020-09-05 19:00:23 -07:00
Collin Smith
0bfa47bd83
Changed GemAttributes to be a subclass of AggregatedAttributes
...
Gems require item_levelreq stat in their base and are more complex than originally thought
2020-09-05 18:29:31 -07:00
Collin Smith
eb011ed471
Changed ItemReader#readSingleItem to package-private
...
readSingleItem visibility was provided for backcompat which is no longer needed
2020-09-05 17:45:11 -07:00
Collin Smith
c96f787cf9
Removed Item#loadFromStream(BitStream)
...
ClientNetworkReceiver requires injection of ItemReader
Changed ClientNetworkReceiver to read item instead of single item
Removed workaround comment for ItemReader
2020-09-05 17:43:44 -07:00
Collin Smith
4571f8ce18
Fixed crash on android due to missing control panel buttons
2020-09-05 17:11:43 -07:00
Collin Smith
b522365d25
Fixed crash on android
...
Moved Actioneer and related systems outside of desktop restriction
MobileControls will cast spells 12 units in front of player target angle
2020-09-05 16:59:19 -07:00
Collin Smith
9c33689b35
Added some comments for fields that will require injection
...
Added some comments for fields that will require injection (or looked into for plausibility of injection)
2020-09-05 16:42:51 -07:00
Collin Smith
de8f81db47
Made AttributesUpdater#update on non-AggregateAttributes to be a no-op
2020-09-05 14:57:42 -07:00
Collin Smith
77e58a72b1
Generated StatList for gems is now frozen
2020-09-05 14:56:29 -07:00
Collin Smith
03484882d3
Added more tests
2020-09-05 14:49:21 -07:00
Collin Smith
37ea64921c
Fixed incorrect stat assignment
2020-09-05 14:48:01 -07:00
Collin Smith
1734b90bf9
Implemented structured logging
2020-09-05 14:43:33 -07:00
Collin Smith
e81af4dece
Added assertion validations to GemGenerator
...
Added assertion validations to GemGenerator to make sure property list indexes are correct
Renamed StatListBuilder#index() to #listIndex() to clarify
2020-09-05 14:38:45 -07:00
Collin Smith
273b434c7c
Renamed GemUtils to GemGenerator
2020-09-05 14:33:17 -07:00