|
|
Using the script keyframe, you can now call MM skills or MEG commands at the exact animation frame. You can add new script keyframes by opening the effects timeline within Blockbench.
|
|
|
Using the script keyframe, you can now call MM skills or MEG commands at the exact animation frame. You can add new
|
|
|
script keyframes by opening the effects timeline within Blockbench.
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177030314-8db9a942-238d-4dd8-a228-1e354943e2ce.png)
|
|
|
Afterward, add a new keyframe on the Instructions timeline. Instead of the normal XYZ input, you will see an input called Script.
|
|
|
Afterward, add a new keyframe on the Instructions timeline. Instead of the normal XYZ input, you will see an input
|
|
|
called Script.
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177030338-d663af59-8249-4026-ba9b-7b48ef0f96c1.png)
|
|
|
|
|
|
## MM Skills
|
|
|
You can call any custom-defined MM skills by using the prefix `mm:` and the skill name. For example:
|
|
|
|
|
|
You can call any custom-defined MM skills by using the prefix `mm:` and the skill name. For example:
|
|
|
|
|
|
```yml
|
|
|
Primary_5:
|
|
|
Skills:
|
|
|
- message{m="Get punched";audience=world} @self
|
|
|
- explode @ModelPart{m=dr_axis;p=attack_point}
|
|
|
```
|
|
|
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177030827-c7bc59c0-ff89-4545-8a60-3e5df1578d8a.png)
|
|
|
You can even use [Skill Parameters](https://git.lumine.io/mythiccraft/MythicMobs/-/wikis/skills/skillparametersystem) within keyframes.
|
|
|
You can even use [Skill Parameters](https://git.lumine.io/mythiccraft/MythicMobs/-/wikis/skills/skillparametersystem)
|
|
|
within keyframes.
|
|
|
|
|
|
```yml
|
|
|
Primary_5:
|
|
|
Skills:
|
|
|
- message{m=<skill.dialogue>;audience=world} @self
|
|
|
- explode @ModelPart{m=dr_axis;p=attack_point}
|
|
|
```
|
|
|
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177030890-dee52b88-8ce5-49a2-ad7a-7713305c653c.png)
|
|
|
|
|
|
## MEG Commands
|
|
|
MEG Commands are, by design, structurally very similar to MM mechanics. Currently, we have 7 commands which have the same attributes as their MM mechanic counterpart. However, **all commands will only target the model you are editing.**
|
|
|
* changeparent = [ChangeParent](MythicMobs/mechanics/model/ChangeParent)
|
|
|
* partvis = [PartVisibility](MythicMobs/mechanics/model/PartVisibility)
|
|
|
* tint = [Tint](MythicMobs/mechanics/model/Tint)
|
|
|
* enchant = [Enchant](MythicMobs/mechanics/model/Enchant)
|
|
|
* tag = [SetModelTag](MythicMobs/mechanics/model/SetModelTag)
|
|
|
* changepart = [ChangePart](MythicMobs/mechanics/model/ChangePart)
|
|
|
* remap = [RemapModel](MythicMobs/mechanics/model/RemapModel)
|
|
|
|
|
|
MEG Commands are, by design, structurally very similar to MM mechanics. Currently, we have 7 commands. **All commands
|
|
|
will only target the model you are editing.**
|
|
|
|
|
|
### [`changeparent`](MythicMobs/mechanics/model/ChangeParent)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|----------------------------|--------|
|
|
|
| parent | The new parent bone | String |
|
|
|
| child | The bone being re-parented | String |
|
|
|
|
|
|
### [`partvis`](MythicMobs/mechanics/model/PartVisibility)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|------------------------------------------|---------|
|
|
|
| part | The affected bones | String |
|
|
|
| visible | Is the bone visible | Boolean |
|
|
|
| exact | Does the bone name need to match exactly | Boolean |
|
|
|
|
|
|
### [`tint`](MythicMobs/mechanics/model/Tint)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|--------------------------------------------|-----------|
|
|
|
| part | The affected bones | String |
|
|
|
| color | Is the bone visible | Hex Color |
|
|
|
| exact | Does the bone name need to match exactly | Boolean |
|
|
|
| damage | Is this command modifying the damage color | Boolean |
|
|
|
|
|
|
### [`enchant`](MythicMobs/mechanics/model/Enchant)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|------------------------------------------|---------|
|
|
|
| part | The affected bones | String |
|
|
|
| enchant | Is the bone enchanted | Boolean |
|
|
|
| exact | Does the bone name need to match exactly | Boolean |
|
|
|
|
|
|
### [`tag`](MythicMobs/mechanics/model/SetModelTag)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|----------------------|---------|
|
|
|
| part | The affected bone | String |
|
|
|
| tag | The displayed string | String |
|
|
|
| visible | Is the tag visible | Boolean |
|
|
|
|
|
|
### [`changepart`](MythicMobs/mechanics/model/ChangePart)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|--------------------------------|--------|
|
|
|
| part | The affected bone | String |
|
|
|
| nmodel | Model ID of the new bone model | String |
|
|
|
| npart | New bone ID | String |
|
|
|
|
|
|
### [`remap`](MythicMobs/mechanics/model/RemapModel)
|
|
|
|
|
|
| Attribute | Description | Type |
|
|
|
|-----------|------------------------------------|--------|
|
|
|
| model | Model ID of the source model | String |
|
|
|
| map | Model ID of the mapping (optional) | String |
|
|
|
|
|
|
To use a MEG command, you just enter it like using them as a normal mechanic.
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177031244-1abfce42-da71-4978-a88f-8e429de8fe64.png)
|
|
|
|
|
|
## Multiline scripts
|
|
|
|
|
|
You can write multiple lines of scripts into a single keyframe, and you can also mix and match different script types.
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177031293-34a39164-7ddf-4490-af9e-aae6008e86a7.png)
|
|
|
This keyframe would run the MM Skill that plays the dialogue and effect first, then the MEG command to enchant the arm bone.
|
|
|
This keyframe would run the MM Skill that plays the dialogue and effect first, then the MEG command to enchant the arm
|
|
|
bone.
|
|
|
|
|
|
## Using Animation Variables
|
|
|
Finally, you can make use of the Variable Placeholder system provided by Blockbench itself. This system is also extremely similar to MM's variable system, and it works on both MM skills and MEG commands.
|
|
|
|
|
|
Finally, you can make use of the Variable Placeholder system provided by Blockbench itself. This system is also
|
|
|
extremely similar to MM's variable system, and it works on both MM skills and MEG commands.
|
|
|
![image](https://user-images.githubusercontent.com/41558177/177031442-0f2ca7a4-973f-4e47-b34d-f82ee150398d.png)
|
|
|
|
|
|
## [Video Demo](https://youtu.be/JqVQ4ARJoIQ) |
|
|
\ No newline at end of file |