added chained attribute authored by Lxlp's avatar Lxlp
...@@ -9,6 +9,7 @@ No single mechanics can be used straight: they have to be in a [Metaskill]! ...@@ -9,6 +9,7 @@ No single mechanics can be used straight: they have to be in a [Metaskill]!
|-----------|-----------|----------------------------------------------------------------------|---------| |-----------|-----------|----------------------------------------------------------------------|---------|
| setcasterastrigger | cat |Sets the trigger of the called metaskill to the caster of this mechanic|false| | setcasterastrigger | cat |Sets the trigger of the called metaskill to the caster of this mechanic|false|
| target | t | Sets the inherited targets of the called metaskill to the specified ones | <!--type:Targeter--> | | target | t | Sets the inherited targets of the called metaskill to the specified ones | <!--type:Targeter--> |
| chained | chain | Whether to make each target of the mechanic cast the specified metaskill *sequentially*, each time targeting the previous caster | false |
> This mechanic inherits every attribute of the [Skill](/skills/mechanics/skill) mechanic > This mechanic inherits every attribute of the [Skill](/skills/mechanics/skill) mechanic
...@@ -21,6 +22,25 @@ skill. ...@@ -21,6 +22,25 @@ skill.
- SudoSkill{s=SkillName;setcasterastrigger=true} - SudoSkill{s=SkillName;setcasterastrigger=true}
``` ```
### Chained Attribute
The single line from earlier is not really enough to fully explain what is going on. So, let us do so it with a practical example.
Given that:
- `iteration` is a number to keep track of "where we are" on the list of entities to execute the sudoskill on
- `caster` is the caster of the sudoed metaskill at any given iteration
- `target` is the target of the sudoed metaskill at any given iteration
```yaml
Skills:
- sudoskill{chained=true;skill=Example} @EIR{limit=3;radius=10}
```
Caster: `Player`
Targets: `Mob_A`, `Mob_B`, `Mob_C`
| Iteration | Caster | Target |
|-----------|---------|--------|
| 0 | Mob_A | Player |
| 1 | Mob_B | Mob_A |
| 2 | Mob_C | Mob_B |
## Examples ## Examples
```yaml ```yaml
... ...
......