mirror of
https://github.com/Acamaeda/The-Modding-Tree.git
synced 2024-11-22 08:31:33 +00:00
40 lines
1.7 KiB
Markdown
40 lines
1.7 KiB
Markdown
#Milestones
|
|
|
|
Milestones should be formatted like this:
|
|
|
|
```js
|
|
milestones: {
|
|
0: {
|
|
requirementDesc:() => "123 waffles",
|
|
}
|
|
etc
|
|
}
|
|
```
|
|
|
|
You can use hasMilestone(layer, id) to determine if the player has a given milestone
|
|
|
|
Milestone features:
|
|
|
|
- requirementDesc: A string describing the requirement for unlocking this milestone. Suggestion: Use a "total".
|
|
It can also be a function that returns updating text. Can use basic HTML.
|
|
|
|
- effectDesc: A string describing the reward for having the milestone. *You will have to implement the reward elsewhere.*
|
|
It can also be a function that returns updating text. Can use basic HTML.
|
|
|
|
- done(): A function returning a boolean to determine if the milestone has been fulfilled.
|
|
|
|
- toggles: *optional*, Creates toggle buttons that appear on the milestone when it is unlocked.
|
|
The toggles can toggle a given boolean value in a layer.
|
|
It is defined as an array of paired items, one pair per toggle. The first is the internal name of the layer
|
|
the value being toggled is stored in, and the second is the internal name of the variable to toggle.
|
|
(e.g. [["b", "auto"], ["g", "auto"])
|
|
|
|
**Tip:** Toggles are not de-set if the milestone becomes locked! In this case, you should also check if the player has the milestone.
|
|
|
|
- style: **Optional**, A CSS object, which affects this milestone.
|
|
|
|
- unl(): A function returning a boolean to determine if the milestone should be shown. If absent, it is always shown.
|
|
|
|
- layer: **Assigned automagically**. It's the same value as the name of this layer, so you can do player[this.layer].points or similar
|
|
|
|
- id: **Assigned automagically**. It's the id for this milestone.
|