Closed SChinchi closed 1 year ago
I'm not a big fan of how args auto complete attribute treat catalogname is null ? -> then its an enum but I guess that works also no auto completion for custom dots but I guess thats more of an infortunate code design from Hopoo games which still use enum instead of a class / reference object
I'm fine to merge this as is
I'm not happy about the null -> enum approach either. It's more of a hack to sidestep checking the nestedfield for enum type at various places in the code, which required a lot more changes.
Also agree about the custom dots. The behavior could be adapted to searching for the dots from the enum and then extending any new ones from DotController.dotDefs.
A bit late, but I just noticed you've already merged this.
Yeah no its fine, it always can be changed later on
custom dots sadly we wouldnt even have a way to identify them in the command I think? unless i missed a name field somewhere / maybe we added one for r2api dotapi but I can't recall either
anyway i'm merging because an update is due to thunderstore, lot of features that have been ready but not released
Indeed. I was thinking something in terms of ] list_dot [0]Bleed .... [8]Fracture [9]CUSTOM <-- only identified by its index [10]CUSTOM ...
Commands for buffs similar to items. Related to #98.
give_buff {buff} [count:1] [duration:0] *[target (player|'pinged'):<self>]
give_dot {dot} [count:1] *[target (player|'pinged'):<self>] *[attacker (player|'pinged'):<self>]
remove_buff {buff} [count:1] [timed (0|1):0/false] *[target (player|'pinged'):<self>]
remove_buff_stacks {buff} [timed (0|1):0/false] *[target (player|'pinged'):<self>]
remove_all_buffs [timed (0|1):0/false] *[target (player|'pinged'):<self>]
remove_dot {dot} [count:1] *[target (player|'pinged'):<self>]
remove_dot_stacks {dot} *[target (player|'pinged'):<self>]
remove_all_dot *[target (player|'pinged'):<self>]
I slightly enhanced the behavior of ArgsAutoCompletion so that a null catalog name will treat the class type as enum to parse its fields. This is required for dot autocompletion.