Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
MythicMobs MythicMobs
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 132
    • Issues 132
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • MythicCraft
  • MythicMobsMythicMobs
  • Issues
  • #364

Closed
Open
Created Mar 23, 2021 by Silthus@Silthus

skill: add option to pass inline variables (parameters) to other skills

Summary

Add option to define inline skill scoped variables in the meta skill to allow more reusable skills. Creators would also be able to create (and sell) reusable skills to the community.

Usage

This would allow the following:

MyMob:
  Skills:
  - skill{s=Bash{damage=6;duration=40}} @target ~onAttack

Bash:
  Skills:
  - potion{type=SLOW;d=<skill.duration>;l=7}
  - effect:sound{s=block.anvil.land}
  - effect:particles{p=explosion_large;speed=1}
  - damage{a=<skill.damage>}

Instead of:

MyMob:
  Skills:
  - skill{s=Tutorial_Guard_Bash} @target ~onAttack

Tutorial_Guard_Bash:
  Skills:
  - setvariable{var=skill.damage;val=6}
  - setvariable{var=skill.duration;val=40}
  - skill{s=Bash}

Value

This would allow defining skills with inputs and reuse them across multiple projects and bosses.

Priority

Normal priority as this is just a nice addition.

Implementation

Add an additional parser for the meta skill that accepts setting (maybe increase and decrease) variables and pass them to the called skill.

Maybe this could also be implemented in a more general case and allow all mechanics to pass inline scoped variables to the called skills.

Edited Mar 25, 2021 by Silthus
Assignee
Assign to
4.12.X
Milestone
4.12.X
Assign milestone
Time tracking