Skip to content

Rewards placeholders, dialog click, number, daily and integration quests - #12

Open
kazotaruumc72 wants to merge 2 commits into
Maxlego08:developfrom
MineArena:feature/mj-arena-quests
Open

kazotaruumc72 wants to merge 2 commits into
Maxlego08:developfrom
MineArena:feature/mj-arena-quests

Conversation

@kazotaruumc72

@kazotaruumc72 kazotaruumc72 commented Nov 7, 2026 •

Copy link
Copy Markdown

Summary

  • Rewards placeholders: %zquests_rewards_<quest>%, %zquests_rewards_count_<quest>%, %zquests_current_rewards[_<slot>]%, %zquests_current_rewards_count[_<slot>]%. Uses the quest's rewards-lore section, or generates the lines from give / eco give commands.
    • New rewards-placeholder section in config.yml: separator, format (%reward%), empty, item, money, default-currency.
    • With separator: "\n" each reward gets its own lore line, because zMenu splits lore on new lines (e.g. format: "&8•%reward%"). Missing keys keep the old single-line output (", " / %reward%).
  • Premium rewards: new premium-rewards / premium-rewards-lore quest sections. They are given in addition to rewards when the player has premium-rewards.permission (default zquests.premium, declared with default: false).
    • Placeholders: %zquests_premium_rewards_<quest>%, %zquests_premium_rewards_count_<quest>%, %zquests_current_premium_rewards[_<slot>]%, %zquests_current_premium_rewards_count[_<slot>]%, %zquests_is_premium%.
    • Players without the permission still see the premium rewards, shown with locked-format (greyed out by default).
  • DIALOG_CLICK quests: progress when a player clicks a zMenu dialog custom action. Uses PlayerDialogClickEvent from Add PlayerDialogClickEvent zMenu#277, found at runtime. If the event is missing, the quest type is turned off with a log message.
  • NUMBER quests, sequential quests, and daily quests with a daily reset.
  • Integrations: Economie, Guilde, OneBlock, Peche, Runes, Shops. Their APIs are in libs/ as compile-only jars.
  • Docs (placeholders.md, quests.md, integrations) and example quest files (example_daily.yml, example_tutorial.yml).

Test plan

  • ./gradlew build compiles
  • Rewards placeholders on one line and on several lines in a zMenu lore
  • DIALOG_CLICK quest with zMenu built from #277
  • Daily reset and sequential quests
  • Premium rewards given only with the permission, greyed out display without it

🤖 Generated with Claude Code

kazotaruumc72 and others added 2 commits November 7, 2026 16:30
…quests

- Rewards placeholders: %zquests_rewards_<quest>%, %zquests_rewards_count_<quest>%,
  %zquests_current_rewards[_<slot>]% and %zquests_current_rewards_count[_<slot>]%,
  generated from give / eco give commands, configurable separator and line format
  (one reward per lore line with separator "\n")
- DIALOG_CLICK quests using zMenu PlayerDialogClickEvent (detected at runtime)
- NUMBER quests, sequential and daily quests with daily reset
- Integrations: Economie, Guilde, OneBlock, Peche, Runes, Shops
- Docs and examples

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- New premium-rewards / premium-rewards-lore quest sections, given on completion
  in addition to rewards when the player has the premium permission
- premium-rewards config section: permission (zquests.premium), separator,
  format and locked-format (greyed out for players without the permission)
- Placeholders: premium_rewards_<quest>, premium_rewards_count_<quest>,
  current_premium_rewards[_<slot>], current_premium_rewards_count[_<slot>], is_premium
- Quest#getPremiumRewards / getPremiumRewardsLore API, docs and example

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant