Commit Graph

1524 Commits

Author SHA1 Message Date
Collin Smith
4139ecbd38 Fixed table parser initialization 2020-12-18 00:02:54 -08:00
Collin Smith
adbd5f78c4 Commented out javadoc triggering a deprecation warning 2020-12-17 23:54:09 -08:00
Collin Smith
831fd15592 Implemented basic loading logic 2020-12-17 23:38:26 -08:00
Collin Smith
c736412b4b Created Tables and TsvParser impl in :core
Created Tables and TsvParser impl in :core
Added lazy loading of table records
2020-12-17 22:33:32 -08:00
Collin Smith
9d62df5850 Transitioned to new SerializerGenerator tools 2020-12-12 21:33:03 -08:00
Collin Smith
d8570e136d Moved com.riiablo.excel2 to com.riiablo.excel 2020-12-12 19:45:23 -08:00
Collin Smith
94475701d9 Merge branch 'master' of https://github.com/collinsmith/riiablo into excel-refactor 2020-12-12 17:55:08 -08:00
Collin Smith
107b408f1e Force :core:createVersionSource to always run regardless of up-to-date 2020-12-12 17:44:45 -08:00
Collin Smith
ff3d807de7 Created BinGenerator to generate bin files from tsv txt files via their Excel schemas 2020-12-12 17:40:54 -08:00
Collin Smith
05b37637bb Fully implemented MonStats entry schema
Fully implemented MonStats entry schema
Replaced serializer definition with generated one
2020-12-12 17:40:02 -08:00
Collin Smith
eec17d0a01 Effectively renamed #writeString methods to #writeChars (see #136) 2020-12-12 17:38:49 -08:00
Collin Smith
7b8ea9511b Removed unused annotations 2020-12-12 16:47:59 -08:00
Collin Smith
e8a8de6888 Implemented putting excel entries 2020-12-12 16:47:45 -08:00
Collin Smith
db1b60fb7d Significantly improved error detection and handling for excel column parsing
Significantly improved error detection and handling for excel column parsing
Added support for default values if a column text length is 0
All exceptions are propagated and logged and handled by parser
2020-12-12 14:53:39 -08:00
Collin Smith
d0f06c6c06 Completed majority of Excel class implementation 2020-12-12 04:27:55 -08:00
Collin Smith
9f7cd6d903 Removed deprecation from Excel.Entry.Column#columnIndex 2020-12-12 01:35:57 -08:00
Collin Smith
29d89f157a Improved logging granularity in tests 2020-12-12 01:35:16 -08:00
Collin Smith
2d149e18c9 Added termination to line cacheLine loop 2020-12-12 01:34:33 -08:00
Collin Smith
f3a1cbd4be Created :core:createVersionSource gradle task
Gradle build info is now output to a generated source RiiabloVersion.java
Renamed generatedSourceDirs to vcsGeneratedSourceDir for version controlled generated sources
Created generatedSourceDir for build generated sources
Integrated RiiabloVersion into Client and MenuScreen
Changed Client.properties diablo->riiablo=Riiablo (e.g., Riiablo)
Changed Client.properties version->V {0} (e.g., V 0.0.3-SNAPSHOT)
2020-12-11 20:18:55 -08:00
Collin Smith
fd795892b0 Created ByteInput#readString() to handle dynamic length strings 2020-12-11 18:27:13 -08:00
Collin Smith
c29d7bfd39 Created Entry annotation to tag the excel row schema 2020-12-11 18:26:32 -08:00
Collin Smith
9b95eb1ac8 Added code generation API for generating excel serializers 2020-12-11 17:54:46 -08:00
Collin Smith
32f9db81c2 Moved some inner classes into discrete class files 2020-12-10 02:55:29 -08:00
Collin Smith
ab6cc744cb Created Excel#excelClass and Excel#entryClass methods 2020-12-08 23:35:47 -08:00
Collin Smith
96c58afe44 Added Excel.Entry.PrimaryKey 2020-12-08 23:34:42 -08:00
Collin Smith
33abf641c9 Renamed TxtParser methods to current usage patterns 2020-12-08 23:33:27 -08:00
Collin Smith
4800f0412e Resolved log message dynamic dispatch issue via casting 2020-12-08 23:32:02 -08:00
Collin Smith
d49a81c395 Second iteration of revision of excel-refactor 2020-12-08 20:30:09 -08:00
Collin Smith
06adbf1dcf Removed unnecessary checks 2020-12-07 18:58:03 -08:00
Collin Smith
f00dd70023 Suppressed unused warning 2020-12-07 18:53:17 -08:00
Collin Smith
e95411388c Updated Excel class logging 2020-12-07 11:31:52 -08:00
Collin Smith
ea2ff28d61 Implemented MDC into Excel class logging 2020-12-07 11:26:25 -08:00
Collin Smith
99cb75341d Created unit test for TxtParser 2020-12-07 10:56:41 -08:00
Collin Smith
9171fe8f74 Created BinGenerator 2020-12-07 10:33:07 -08:00
Collin Smith
f60040a5d2 Refactored com.riiablo.excel
Replaced logging with com.riiablo.logger
Renamed fields to more accurately reflect use
Propagate exceptions to caller to help with exception handling
2020-12-07 02:16:37 -08:00
Collin Smith
d17f9048ce Enabled weave closure and left disabled until #134 is resolved 2020-12-05 02:20:15 -08:00
Collin Smith
e27d6bba73 Merge branch 'master' of https://github.com/collinsmith/riiablo into excel-refactor 2020-12-04 19:51:55 -08:00
Collin Smith
2c73bff490 Added code to append unchecked and deprecation checks to Java compiler 2020-12-04 19:51:37 -08:00
Collin Smith
9ea79c90e8 Removes Guava dependency 2020-12-04 19:36:56 -08:00
Collin Smith
073f73e1a3 Resolves #130 2020-12-04 19:36:34 -08:00
Collin Smith
9ba8608af4 Resolved compile unchecked cast warnings in ClassUtils 2020-12-03 01:42:49 -08:00
Collin Smith
659e812e83 Resolved or documented deprecation warnings for suppression 2020-12-02 11:57:06 -08:00
Collin Smith
0410eb2505 Resolved libGDX update deprecation 2020-12-02 11:52:24 -08:00
Collin Smith
42f077d680 Improved organization of :core build.gradle 2020-12-02 00:29:08 -08:00
Collin Smith
cb4c7596bf Moved flatbuffers src to correct directory 2020-12-01 21:36:52 -08:00
Collin Smith
0e2313c44a Disable :core:createFlatBuffers task at configuration level if building on non-Windows
Disable :core:createFlatBuffers task at configuration level if building on non-Windows
Added warning messages stating that it's been disabled (should add check)
2020-12-01 18:21:49 -08:00
Collin Smith
85780c6ba8 Created :core:generateSources gradle task
:core:generateSources calls :core:createFlatBuffers
:core:createFlatBuffers will only error out if not up-to-date on non-windows
:core:compileJava depends on :core:generateSources
2020-12-01 17:43:02 -08:00
Collin Smith
f81198781d Moved flatbuffers schemas to src/main/flatbuffers source 2020-12-01 17:07:10 -08:00
Collin Smith
85731f8fa4 Supressed some deprecation warnings 2020-12-01 13:11:06 -08:00
Collin Smith
080ac483ed Updated flatbuffers version to 1.12.0 (see #132) 2020-12-01 13:06:45 -08:00
Collin Smith
6e44b4d745 Refined flatbuffers dependency implementation (see #132)
Included flatc.exe within repository (v1.11.0 binary)
Added check within :core:createFlatBuffers task for Windows OS family
Added flatbuffersVersion variable within gradle.properties to 1.11.0
Changed many fields to variables and implemented flatbuffers closure
2020-12-01 10:02:07 -08:00
Collin Smith
fb089185c1 Fixed code style 2020-12-01 09:55:49 -08:00
Collin Smith
61cb66514b Removed argument from SerializerGenerator#generateSerializers 2020-11-30 11:37:28 -08:00
Collin Smith
9122c29f03 Removed explicit default constructor declaration 2020-11-30 11:21:07 -08:00
Collin Smith
51ce483944 Merge branch 'master' of https://github.com/collinsmith/riiablo into excel-refactor 2020-11-30 11:14:34 -08:00
Collin Smith
468ecf7201 Updated org.apache.commons:commons-lang3 from 3.6 -> 3.9
3.10+ were causing a program hang (see #131)
2020-11-30 10:56:58 -08:00
Collin Smith
2d5e377aca Created excel-refactor containing excel 2.0 2020-11-29 17:58:51 -08:00
Collin Smith
af2a5737fa Simplified :core generated sources assignment 2020-11-29 17:52:36 -08:00
Collin Smith
51d71252cb Added boolean support
Created ByteInput#readBoolean(boolean)
Created ByteOutput#writeBoolean(boolean)
2020-11-29 00:56:41 -08:00
Collin Smith
4629af164e Amending previous commit with one additional refactor 2020-11-26 14:26:57 -08:00
Collin Smith
f5a60935a8 Replaced the majority of guava usages with apache commons equivalents 2020-11-26 14:25:10 -08:00
Collin Smith
aec0a8c07f Created delegate InstallationFinder impl for MacInstallationFinder
Delegate references LinuxInstallationFinder
2020-11-26 02:40:42 -08:00
Collin Smith
7b7874278e Ignored test case failure (see #129) 2020-11-22 18:41:46 -08:00
Collin Smith
6be4e48a1b Changed test case to pass 2020-11-22 18:20:00 -08:00
Collin Smith
8a37179c70 Disabled benchmarking in two test cases 2020-11-22 18:14:23 -08:00
Collin Smith
49757eb85f Level#valueOf(String,Level) now returns default value when name is null 2020-11-22 15:24:22 -08:00
Collin Smith
38fb0c13e8 Disabled DC6 logging 2020-11-22 13:59:17 -08:00
Collin Smith
a54fec91d8 Added support for LinuxInstallationFinder
Added support for LinuxInstallationFinder
Created stub for InstallationFinder for unknown platforms
2020-11-21 20:53:20 -08:00
Collin Smith
7c05c7ef63 Upgraded android support-annotations to 28.0.0 2020-11-21 17:16:06 -08:00
Collin Smith
ec39040b28 Code cleanup 2020-11-21 04:30:49 -08:00
Collin Smith
c888c9beb2 Integrated InstallationFinder into :desktop 2020-11-21 04:15:27 -08:00
Collin Smith
e660f2bd78 Created InstallationFinder to search for D2 installations and saved games 2020-11-21 03:54:59 -08:00
Collin Smith
859d0888bf Moved gradle version variables to gradle.properties
Moved gradle version variables to gradle.properties
Replaced some inline box2d light versions variables
Added commented config for artemis:weave task
2020-11-20 15:44:52 -08:00
Collin Smith
cc8f9c82a8 Added assets as resources root for :core 2020-11-18 10:51:13 -08:00
Collin Smith
7dbf087df3 Fixed generated sources path 2020-11-17 13:22:42 -08:00
Collin Smith
9c18e18a9c Reorganized gradle scripts into subproject directories
Reorganized gradle scripts into subproject directories
Reformatted gradle scripts to be more consistent
Created :server subproject group
Deleted :mpqlib subproject due to inactivity
Hopefully this is a step in the right direction
2020-11-16 23:14:33 -08:00
Collin Smith
269f283c9b Changed to standard gradle src directory structure
Changed to standard gradle src directory structure
Changed some working directories to work properly with gradle tasks
Changed MPQViewer asset path to empty string
2020-11-15 23:49:18 -08:00
Collin Smith
3e9b01bf02 Created saves command to output saves directory 2020-11-04 14:27:03 -08:00
Collin Smith
c20978bdca Created home command to output D2 home directory argument 2020-11-04 14:22:41 -08:00
Collin Smith
41035956d3 Fixes #122 2020-11-04 14:06:55 -08:00
Collin Smith
c94cef1890 Created stub for primary attack 2020-11-02 18:09:17 -08:00
Collin Smith
6924af03d6 Created stub for Actioneer#cast with specified sequence and mode 2020-11-02 18:08:11 -08:00
Collin Smith
9a1a66c778 Adjusted API slightly to log unexpected mode translations 2020-11-02 18:05:18 -08:00
Collin Smith
60247a6699 Added function to translate mode based on source entity type 2020-11-02 18:00:31 -08:00
Collin Smith
2820ba7566 Replaced Gdx.app logging with Riiablo logger 2020-11-02 17:42:12 -08:00
Collin Smith
d2ff1ec515 Replaced comment note with impl classes
Replaced comment note with impl classes
Removed assets hash map
Created AssetManager#update()
2020-11-01 12:10:56 -08:00
Collin Smith
1d5cfc3cea Added comment to help with direction of AssetManager change 2020-10-26 15:18:51 -07:00
Collin Smith
b8a428a5fd Created AsyncTask and SyncTask to manage tasks 2020-10-25 16:05:31 -07:00
Collin Smith
6f22e1353c Created MutableString wrapper for AsciiString
MutableString to be eventually replaced with UTF8 compliant AsciiString
Changed paths API to use MutableString instead of AsciiString
ResolveNotFound takes CharSequence as an argument instead of AsciiString
2020-10-24 23:53:07 -07:00
Collin Smith
ae083d176c Added support for PriorityContainer#unwrap(Iterable<PriorityContainer>) 2020-10-13 21:39:52 -07:00
collinsmith
9c389bbc36 Created PriorityContainer for resolver priorities 2020-10-13 12:51:46 -07:00
Collin Smith
43cccecec3 Iterative cleanup of com.riiablo.assets 2020-10-13 08:50:49 -07:00
Collin Smith
d136e3d599 Replaced Pathfinder dependency with Actioneer#moveTo 2020-10-09 12:34:32 -07:00
Collin Smith
c305f1c586 Removed Pathfinder system injection from CursorMovementSystem 2020-10-09 12:32:26 -07:00
Collin Smith
9c7a7f9795 Implemented EngineConfig (see #109) 2020-10-08 23:48:53 -07:00
Collin Smith
30bd940846 Created basic BinkVideo packet and added additional logging to BinkAudio 2020-10-08 22:13:38 -07:00
collinsmith
1e9695a125 Reordered log message output 2020-10-06 11:54:50 -07:00
collinsmith
2dd14725c4 Implemented error checking and killing of audio threads when player is disposed 2020-10-06 11:53:01 -07:00
collinsmith
46b52ccbf6 Pass BIK reference to child BinkAudio for flags and version validation 2020-10-06 11:35:09 -07:00
collinsmith
292747adb3 Fixed passing incorrect buffer 2020-10-06 11:02:54 -07:00
collinsmith
be2e0d005c Created AudioPacket and basic executor 2020-10-06 10:55:04 -07:00
collinsmith
3803abb02b Implemented frame delta with time steps 2020-10-06 10:28:26 -07:00
collinsmith
ac5ec5f0d8 Resolve keyframe at decode layer so that info is preserved without creating extra data 2020-10-06 10:13:37 -07:00
collinsmith
a6f4aeb467 Better slicing of audio and video packets per frame 2020-10-06 09:59:38 -07:00
collinsmith
db97517cd2 Perform keyframe checking and masking of offsets table 2020-10-05 10:51:06 -07:00
Collin Smith
fac0f9fd5d Changed Bink code to help with debugging and testability 2020-10-05 01:46:06 -07:00
Collin Smith
bb8a621d5d Additional work on Bink video codec 2020-10-05 00:49:04 -07:00
Collin Smith
2bbd3f0c9c Created BIK coded along with BinkAudio and BinkVideo (see #59) 2020-10-04 16:58:22 -07:00
Collin Smith
58d31d0634 Adjusted API of UnsafeNarrowing to be more useful
UnsafeNarrowing is now loosely coupled with InvalidFormat via UnsafeNarrowing#wrapAndThrow
UnsafeNarrowing can now be passed an optional offset value
2020-10-03 00:56:58 -07:00
Collin Smith
08bc23160f Increased robustness of UnsafeNarrowing exception
UnsafeNarrowing now requires a ByteInput argument to track where exception was thrown
Changed visibility of BitConstraints to public
Added BitConstraints safeXXu checkers for BitInput as well as ByteInput
2020-10-02 22:03:54 -07:00
Collin Smith
5a9d179e15 Ported readSafeXXu methods from ByteInput to BitInput 2020-10-02 21:01:14 -07:00
Collin Smith
35eaccf9a9 RiiabloTest changes logger to synchronous appender 2020-10-02 18:57:06 -07:00
Collin Smith
c62c103948 Implemented support for com.riiablo.io into DCC codec
InputStream signatures have all been removed (interoperability would have meant tons of code duplication)
MPQInputStream now supports fast-track reading of uncompressed files
2020-10-02 12:11:48 -07:00
Collin Smith
64fa1611e4 Revised BitInput slice strategy
BitInput now carries logical bitsRead from all previous ByteInput slices
Created BitInput#maxBit to track initial bitsRead + numBits
Created BitInput#maxBitByteOffset to trace delta between maxByte bit offset and maxBit
numBits check not replaced with bitsRead vs maxBit
ByteInput#slice(long) will slice at the current buffer readerIndex instead of mark due to an issue where mark was carrying parent offset
2020-10-02 11:41:54 -07:00
Collin Smith
6e65f5361a Added support for reading bit input slices of arbitrary boundaries (closes #118)
BitInput#readSlice uses ByteInput#slice and performs manual #skipBits on parent buffer
Added single-byte tests
2020-09-30 16:36:38 -07:00
collinsmith
235ae94d5a Begin work on transitioning DCC to use new io API 2020-09-30 14:47:07 -07:00
collinsmith
757a85f84b Propagated name change 2020-09-30 10:18:34 -07:00
collinsmith
bb84f49d63 Merge branch 'master' of https://github.com/collinsmith/riiablo 2020-09-30 09:51:09 -07:00
collinsmith
d1af110c12 Created util function to retrieve safe u32s 2020-09-30 09:50:40 -07:00
Collin Smith
88e173de60 Spelling error 2020-09-29 15:57:39 -07:00
collinsmith
1116e14fc7 Refined implementation
FileHandleAdapter changed to abstract class
FileHandleAdapter now incorporates Reader functionality via #adapt(FileHandle,Class)
Removed specialized functions from AsyncAssetLoader (should be callable directly now)
Refactor renamed readers to adapters
AssetLoader changed from interface to abstract class
AssetLoader requires type reference and is more similar to LibGDX implementation
Adjusted test case with new API
2020-09-29 12:10:23 -07:00
Collin Smith
0c81104adb Reorganized code slightly 2020-09-29 01:17:37 -07:00
Collin Smith
d3a9511a35 Closer API to what I would like, still requires better type inference on Reader 2020-09-29 01:14:06 -07:00
Collin Smith
9d7ee8450e Changed strategy to support FileHandleAdapter and AsyncAdapter 2020-09-29 00:55:40 -07:00
Collin Smith
8837ff46b6 Fixed typing issue 2020-09-28 22:22:46 -07:00
Collin Smith
f92db89f61 Refined implementation
Attempted transition from reader type to filehandle type
Created sample loaders for testing purposes
Created SyncReader interface
2020-09-28 22:21:28 -07:00
Collin Smith
8305ba4b50 Committing experimental Asset Manager 2020-09-28 21:09:58 -07:00
Collin Smith
ad19056cfb Changed async logger appender to be a daemon thread 2020-09-27 13:12:53 -07:00
Collin Smith
1a6783f047 Workaround for an issue with LibGDX AssetDescriptor path contraint 2020-09-25 01:22:43 -07:00
Collin Smith
01d92a69c3 Changed capitalization of extensions 2020-09-25 01:03:53 -07:00
Collin Smith
055b56907b Reorganized code slightly 2020-09-25 00:42:17 -07:00
Collin Smith
f2ec4c9c2e Created Decryptor.LookupTable#fix(String) to return a valid translated path string 2020-09-25 00:26:11 -07:00
Collin Smith
e2c00d7336 Cleaner way of doing byte[] to upper case and converting path delimiter 2020-09-25 00:17:14 -07:00
Collin Smith
874bb809f8 Fixed mpq_bytebuf impl bugs
Added remaining MPQFileHandle impl override methods
MPQFileHandleResolver will automatically fix path delimiters
Fixed decompression on an uncompressed sector
2020-09-24 19:34:33 -07:00
Collin Smith
e091821c46 Fixed an issue where Exploder was masking an incorrect number of bytes for the copy offset 2020-09-24 19:12:26 -07:00
Collin Smith
8284ab095e Removed INTS pool by using a ByteBuf instead 2020-09-24 17:57:26 -07:00
Collin Smith
cd9d8801c7 Refactored CursorMovementSystem#setTarget to Actioneer#moveTo 2020-09-23 11:48:54 -07:00
Collin Smith
6f40094f73 Increased sectors cache to 16384 offsets (67 MB)
Should research keeping a ByteBuf copy of offsets
2020-09-23 01:55:28 -07:00
Collin Smith
e1252e172c Added terminator for MPQ#getIndex(long,int,short) for case where not found 2020-09-23 01:54:08 -07:00
Collin Smith
2c5d056457 Refined MPQFileHandle and MPQInputStream impls 2020-09-23 01:26:19 -07:00
Collin Smith
d7649ca94c Removed throws IOException from methods 2020-09-22 15:59:10 -07:00
Collin Smith
16474a215f Replaced gdx object pool with thread-safe com.riiablo.util.Pool 2020-09-22 13:40:36 -07:00
Collin Smith
5c10340222 Added support for initial capacity pre-init to Pool 2020-09-22 13:35:23 -07:00
Collin Smith
63c17b0e17 Created com.riiablo.util.Pool thread safe pool (closes #116) 2020-09-22 13:22:24 -07:00
Collin Smith
6d8cefb2c8 Committing tests of mpq_bytebuf package 2020-09-22 12:37:09 -07:00
Collin Smith
bd9b30a33d Upgraded mpq_bytebuf library
Created MPQFileHandleResolver to resolve a filename to an MPQ
Greatly improved efficiency of MPQInputStream and reduced overhead
Added support for fast-path ByteBufInputStream for a native memory read
MPQFileHandle now supports key/offset caching for faster lookup
MPQ now initializes using a FileChannel instead of a RandomAccessFile
MPQ hash and block tables are read using a buffer
Moved MPQFileHandle file operations to MPQFileHandle from MPQ
Added ability to retrieve MPQ block table entry from an MPQ hash table entry
Inlined Exploder#TRUNCATE
Decryptor now works using arrays directly (asserted input is a heap byte buf)
Decryptor returns a long tuple consisting of key and seed state for buffered calls
2020-09-22 12:36:40 -07:00
Collin Smith
35504fccdc Improved logger throughput
Added initial size and pool object init
AsyncAppender now releases events more reliably
Workaround for #116
2020-09-21 13:36:12 -07:00
Collin Smith
24f8c764bb Created var-arg alternative methods 2020-09-21 02:32:19 -07:00
Collin Smith
368f2f71bf Deferred log message creation until enabled is evaluated 2020-09-21 02:25:44 -07:00
Collin Smith
6117efc25e Created AsyncOutputStreamAppender to support logging output on separate threads 2020-09-21 02:02:16 -07:00
Collin Smith
bb4efb7967 Created Pooled variations of message factory implementations
Created Pooled variations of message factory implementations
Set logger to default to use these pooled message factories
2020-09-21 01:45:23 -07:00
Collin Smith
aa04ebd132 Changed LogEvent to support pooling 2020-09-21 01:32:55 -07:00
Collin Smith
703be01ceb Created Message#release() 2020-09-21 01:30:56 -07:00
Collin Smith
dd0707a759 Created methods for non-varargs log functions 2020-09-21 01:25:10 -07:00
Collin Smith
5b22902b10 Changed varargs to array 2020-09-21 01:10:16 -07:00
Collin Smith
68ada6121f Added virtuals for newMessage without var args 2020-09-21 01:09:26 -07:00
Collin Smith
bd0752cc6a Created Message#numParameters() 2020-09-21 00:54:47 -07:00
Collin Smith
f2816b24ab Removed AbstractLogger and implemented functionality directly into Logger class 2020-09-21 00:42:56 -07:00
Collin Smith
2e4f7f6690 Created Actioneer#canInterrupt(int) to check whether an entity action can be interrupted
Implemented interruption checking into CursorMovementSystem#updateLeft()
2020-09-20 21:41:53 -07:00
Collin Smith
b8756bbe8d MPQ library implemented with ByteBuf and MappedByteBuffer (see #8) 2020-09-19 22:23:27 -07:00
Collin Smith
9009cdcfd9 Resolved a concurrency issue regarding shared state within static decompress method 2020-09-18 22:36:18 -07:00
Collin Smith
303e063586 Tested charclass sound against local player component 2020-09-13 19:46:10 -07:00
Collin Smith
aa948b9b1f Resetting Animation instances clears Animation#cof reference (see #113) 2020-09-13 13:46:27 -07:00
Collin Smith
28fb71de85 Fixed radial spells to 64 directions 2020-09-13 13:21:59 -07:00
Collin Smith
add2ea22b5 Added support for per-layer shadow flag
Added support for per-layer shadow flag
Set automatically for now based on blendMode
2020-09-13 13:15:50 -07:00
Collin Smith
c98c3dc2c8 Added support for cltdofunc 25 (shouts / novas)
Added support for cltdofunc 25 (shouts / novas)
Changed animation frame delta for missiles to 256 from Missile.Entry.animrate
Disabled Missie.Entry.TravelSound audio until it can be figured out better
Added Skills.Entry.cltmissile(a-d)
2020-09-12 15:31:45 -07:00
Collin Smith
372f501b4b Created RADIANS_64
Created RADIANS_64
Redefined RADIANS_X tables mathematically to improve readability
2020-09-12 15:19:35 -07:00
Collin Smith
54216795f6 Enabled bullet flag for missiles and changed to sensors to disable collision 2020-09-12 14:48:39 -07:00
Collin Smith
efc6a5c0e4 Created MissileHandler to dispose of missile entities past their range
Created MissileHandler to dispose of missile entities past their range
MissileLoader now resets direction to 0 when missile is loaded
2020-09-12 14:21:48 -07:00
Collin Smith
b01f5180b2 Changed monster placement algorithm to distribute grouped monsters across an area 2020-09-11 13:26:59 -07:00
Collin Smith
0dccc53c44 Monster label now shows first non-empty hitpoints monster 2020-09-11 13:24:01 -07:00
Collin Smith
8eb29c9cfb Monster label will hide itself if the target monster is dead 2020-09-11 13:20:46 -07:00
Collin Smith
8be6bee27a Increased default mele range to 3 units 2020-09-11 13:20:00 -07:00
Collin Smith
143634858d Fixed encoding for negative fixed point numbers 2020-09-11 13:08:35 -07:00
Collin Smith
6cc41eb633 Assigned missiles a physics body (see #113) 2020-09-10 23:46:27 -07:00
Collin Smith
63bfa85173 Resolved the actual crash this time
It would appear that a valid targetId is given that has a position, except that the position is null? This will be looked into later.
2020-09-10 23:31:17 -07:00
Collin Smith
0590ddc166 Fixed crash caused resulting by a previous fix which incorrectly unset target entity 2020-09-10 23:28:02 -07:00
Collin Smith
30f4190ead Added support for MonsterLabelManager to draw monster health
Added support for MonsterLabelManager to draw monster health
Added percent and modal params to PaletteIndexedColorDrawable to allow use as a progress bar
2020-09-10 23:27:22 -07:00
Collin Smith
c906a20817 Added sound effect for hit impact 2020-09-10 22:50:47 -07:00
Collin Smith
39f3d5aaca Added attack range check for left click
Added attack range check for left click
Added null check for dangling target
2020-09-10 22:41:02 -07:00
Collin Smith
c64042bafe Created DamageHandler and implemented hit sounds 2020-09-10 19:16:08 -07:00
Collin Smith
4e0e2c142a Created DamageEvent and dispatching 2020-09-10 19:11:28 -07:00
Collin Smith
7b227fe2ed Committing DeathEvent 2020-09-10 19:09:14 -07:00
Collin Smith
61985ed440 Checks if target is still valid (some trailing event target ids?) 2020-09-10 18:40:27 -07:00
Collin Smith
28d6eddcb6 Another workaround for #113 2020-09-10 18:39:59 -07:00
Collin Smith
83c0e87a9a Unset killer target if target was victim 2020-09-10 18:32:05 -07:00
Collin Smith
52edd64327 Fixed spelling error DC.Direction#toReadDir -> #toRealDir 2020-09-10 18:31:42 -07:00
Collin Smith
0087e832c2 Implemented monster deaths
Added AI death state and AI#kill() virtual method
DeathHandler handles state transition and entity disposal
2020-09-10 18:22:44 -07:00
Collin Smith
bfcee599bf Increased damage and added death event with subscriber to play death sequence 2020-09-10 17:31:41 -07:00
Collin Smith
f3c9ff82aa Fixed an issue where consecutive stat gets were corrupting previous values 2020-09-10 16:59:22 -07:00
Collin Smith
d77a109be2 Added support for getting a stat from Attributes into a provided tuple 2020-09-10 16:58:44 -07:00
Collin Smith
8acfe5bc1f Created temp function to add support for negative float encoding until properly implemented 2020-09-10 16:46:19 -07:00
Collin Smith
a86b338dfa Only draw hitpoints if greater than 0 2020-09-10 16:45:39 -07:00
Collin Smith
ff24b9f516 Created Attributes#getCopy(short) to return a (temp) copy of the specified stat 2020-09-10 16:45:00 -07:00
Collin Smith
00f75d014c Added support for setting stat to sibling stat value
Changed order of hp,mp,stamina adjustments so they match again
2020-09-10 16:21:55 -07:00
Collin Smith
a9f4e35016 Disabled hitpoints background (was making hitpoints foreground hard to see) 2020-09-10 14:06:22 -07:00
Collin Smith
484e5b867f Actioneer now changes hitpoints of target for attack spell 2020-09-10 14:03:22 -07:00
Collin Smith
7d507f0501 Refactored from StatRef to float
Refactored from StatRef to float
Added label with hitpoints and maxhp values
2020-09-10 14:03:00 -07:00
Collin Smith
f2d16a8c50 Created Stat#decode(short,int) to perform val shift
Changed val shift operatios to use Stat#encode and #decode
2020-09-10 14:01:09 -07:00
Collin Smith
0ba173404c Added support for stat subtraction 2020-09-10 13:54:47 -07:00