Anton Tarasenko
45cd24bafc
Add `CopyTextKeys()` method for `AssociativeArray`
3 years ago
Anton Tarasenko
41f95a7423
Fix bug with deallocating `AssociativeArray`s keys
...
When key was deallocated, `AssociativeArray` attempted to free values
using that key's life version.
3 years ago
Anton Tarasenko
dbd81e04ef
Initial Avarice feature commit
3 years ago
Anton Tarasenko
fcc715ed19
Fix `Parser.MUntilMany()`'s parameter names
3 years ago
Anton Tarasenko
627d3db6f2
Add support for "-" JSON index to db operations
3 years ago
Anton Tarasenko
ee6c3084e9
Fix in-code documentation of `ReadData`
3 years ago
Anton Tarasenko
f99b3ae466
Fix bug with return value of `JSONPointer.Pop(true)`
...
`JSONPointer`'s `Pop(true)` method returned stored `MutableText` value
instead of expected immutable `Text` copy. This patch fixes that
behavior.
3 years ago
Anton Tarasenko
7fc8328752
Refactor `Get...ByPointer()` into two methods
...
Now Acedia collections provide functionality of `Get...ByPointer()`
method (that allows to fetch values nested into several collection by
JSON pointers) for both `JSONPointer` and `Text` classes.
Previously, each use of `Get...ByPointer()` method caused convertion of
a `Text` into `JSONPointer`, even if used `Text` value did not change.
This patch allows to create `JSONPointer` once and them use that as a
parameter, which should be much faster.
3 years ago
Anton Tarasenko
9039105ebf
Add local database support
...
Add local database support and DB's documentation skeleton
3 years ago
Anton Tarasenko
9b9292a665
Fix incorrect description for `OnTick()` event
3 years ago
Anton Tarasenko
113a50851f
Add new convenience methods in `TextAPI`
...
Add method for checking whether certain `Text` is empty (`none` or has
zero recorded characters).
Add methods for converting and deallocation (in the same action) passed
`Text` value into the `string`.
3 years ago
Anton Tarasenko
bdf2ca5ff8
Refactor `JSONPointer`
...
Renames `Segment` into `Component`, allows to "Pop" segments without
removing them from the caller `JSONPointer`.
3 years ago
Anton Tarasenko
44fb393f7a
Refactor JSON pointer into a separate class
4 years ago
Anton Tarasenko
381dbfcc70
Add json pretty printing
4 years ago
Anton Tarasenko
8e90b08f9b
Add `MutableText::AppendLineBreak()` method
4 years ago
Anton Tarasenko
81c461e627
Change `MutableText::ChangeFormatting()` signature
4 years ago
Anton Tarasenko
daf66f806f
Change json colors
4 years ago
Anton Tarasenko
b0147bc52d
Change some JSON API's printing methods
4 years ago
Anton Tarasenko
13be338d5f
Add `ChangeFormatting()` method to `MutableText`
4 years ago
Anton Tarasenko
f9f0b519b1
Add char coloring
4 years ago
Anton Tarasenko
926108e6e1
Add `trader` built-in command
4 years ago
Anton Tarasenko
45151891bc
Add first draft of API for the game mechanics
4 years ago
Anton Tarasenko
7140a6a756
Add `GetLocation()` method to `APlayer`
4 years ago
Anton Tarasenko
08de4dac6e
Add `ActorStalker` and it's API method
4 years ago
Anton Tarasenko
62b3d36d20
Fix method description in `ConsoleWriter`
4 years ago
Anton Tarasenko
89d9216b59
Change how new players are tracked
4 years ago
Anton Tarasenko
bcb18218aa
Add signal/slot classes for simple signature
4 years ago
Anton Tarasenko
e4c2624df9
Fix built-in commands to work better with Acedia
4 years ago
Anton Tarasenko
b881cbbc04
Fix invalid log definition
4 years ago
Anton Tarasenko
6133cc334f
Add more `GameRule` events
4 years ago
Anton Tarasenko
be05bc156d
Change services to log an error when not spawning
4 years ago
Anton Tarasenko
3458bd202f
Add timers and `TimeAPI`
4 years ago
Anton Tarasenko
346c7d094e
Fix aliases error definitions being public
4 years ago
Anton Tarasenko
5bcbc2047a
Refactor `UnrealAPI`: move out `GameRulesAPI`
4 years ago
Anton Tarasenko
c6a0565314
Add `ActorBox` / `ActorRef` / `NativeActorRef`
4 years ago
Anton Tarasenko
370f5efa39
Refactor signals/slots
...
Refactor signal/slots system for more efficieny and better user
interface that allows to disconnect receiver like so:
`OnEvent(receiver).Disconnect()`.
4 years ago
Anton Tarasenko
357afbc6eb
Change `Feature` to be derived from `AcediaObject`
...
`Feature` is now derived from `AcediaObject` and has an optional ability
to spawn an auxiliary service to compensate (service provides it with a
relatively easy access to an `AcediaActor` object, which can store other
`Actor`s).
4 years ago
Anton Tarasenko
858091d668
Add signal-slot functionality to Acedia
4 years ago
Anton Tarasenko
5c0bdb173b
Change `Feature` base class to `AcediaObject`
4 years ago
Anton Tarasenko
a233bf0e4b
Add `AssociativeArray` ability to deallocate keys
...
`AssociativeArray` by design does not manage keys, automatically
deallocating them, like it can with stored values. This patch adds a
parameter to `Empty()` method that allows it to deallocate all of the
used keys when deallocation all of the values.
As a side effect this patch also fixes a bug that broke
`AssociativeArray` after using `Empty()` method.
4 years ago
Anton Tarasenko
e126ddd50a
Add convenience get/setters for `Collection`s
4 years ago
Anton Tarasenko
a9ae0f9580
Change `GetTextByPointer()` to be simpler
4 years ago
Anton Tarasenko
c371bd89c5
Add JSON pointers support for Acedia `Collection`s
4 years ago
Anton Tarasenko
56648bf111
Add method for replacing substrings in MutableText
4 years ago
Anton Tarasenko
9cb465ffe1
Add methods for finding substrings in `Text`
4 years ago
Anton Tarasenko
ce3e060416
Add `UnrealAPI` with low-level auxiliary methods
4 years ago
Anton Tarasenko
ce9d182fe7
Remove unrelated comment
4 years ago
Anton Tarasenko
b33bd86d72
Fix `Parser` allowing parsed integer to overflow
4 years ago
Anton Tarasenko
bd91b8fd85
Comment about calling `AcediaActor`'s constructors
4 years ago
Anton Tarasenko
6271129d41
Fix issue with `MemoryAPI` actor spawning
...
`MemoryAPI`'s `Allocate()` crashed on non-acedia actors, this patch
resolves that issue.
4 years ago