Mission Plugin Documentation
O
Mission é um plugin para servidores Minecraft que adiciona um sistema de missões dinâmico e personalizável. Os jogadores podem aceitar missões, completá-las e receber recompensas. O plugin é altamente configurável e suporta integração com Vault (para economia) e PlaceholderAPI (para placeholders personalizados).
Funcionalidades
- Missões Personalizáveis: Crie missões com diferentes objetivos, como quebrar blocos, matar mobs, pescar, minerar diamantes, coletar maçãs e muito mais.
- Sistema de Recompensas: Recompense os jogadores com dinheiro (integrado com Vault) ao completarem missões.
- Interface de Missões: Um menu interativo onde os jogadores podem visualizar, aceitar e cancelar missões.
- NPC de Missões: Adicione um NPC ao seu servidor que os jogadores podem interagir para abrir o menu de missões.
- Banco de Dados: Armazena o progresso dos jogadores em um banco de dados MySQL.
- Eventos Personalizados: Eventos para quando uma missão é completada ou quando o progresso é atualizado.
- Integração com PlaceholderAPI: Adiciona placeholders para mostrar o progresso, recompensas e dificuldade das missões.
Comandos
Comando
Descrição
Permissão
/mission Abre o menu de missões. mission.menu
/acceptmission Aceita uma missão específica (ex: matar creepers). accept.menu
/setnpc Define a localização do NPC de missões. mission.setnpc
/reloadconfig Recarrega as configurações do plugin. reloadconfig.mission
Permissões
Permissão
Descrição
mission.menu Permite o jogador usar o comando /mission.
accept.menu Permite o jogador usar o comando /acceptmission.
mission.setnpc Permite o jogador usar o comando /setnpc.
reloadconfig.mission Permite o jogador usar o comando /reloadconfig.
Configuração
O arquivo de configuração (config.yml) permite personalizar as missões, recompensas, dificuldades e textos do plugin. Abaixo está um exemplo de configuração:
yaml
Copy
# Configurações do banco de dados
database:
host: localhost
port: 3306
database: minecraft
username: root
password: password
# Configurações das missões
missions:
break_blocks:
display_name: "Quebrar Blocos"
material: "DIAMOND_PICKAXE"
description: "Quebre {required_amount} blocos!"
required_amount: 100
reward: 500
difficulty: "EASY"
block_types:
- "STONE"
- "DIRT"
- "GRASS_BLOCK"
kill_mobs:
display_name: "Matar Mobs"
material: "IRON_SWORD"
description: "Mate {required_amount} mobs!"
required_amount: 50
reward: 300
difficulty: "MEDIUM"
fish_caught:
display_name: "Pescar Peixes"
material: "FISHING_ROD"
description: "Pesque {required_amount} peixes!"
required_amount: 20
reward: 200
difficulty: "EASY"
mine_diamond:
display_name: "Minerar Diamantes"
material: "DIAMOND_ORE"
description: "Mine {required_amount} diamantes!"
required_amount: 10
reward: 1000
difficulty: "HARD"
collect_apples:
display_name: "Coletar Maçãs"
material: "APPLE"
description: "Colete {required_amount} maçãs!"
required_amount: 30
reward: 400
difficulty: "MEDIUM"
kill_creepers:
display_name: "Matar Creepers"
material: "TNT"
description: "Mate {required_amount} creepers!"
required_amount: 15
reward: 600
difficulty: "HARD"
# Textos do menu
menu_texts:
active_mission:
title: "Missão Ativa: {mission}"
lore:
- "Progresso: {progress}/{required}"
- "Dificuldade: {difficulty}"
- "Recompensa: ${reward}"
mission_item:
lore:
- "Descrição: {description}"
- "Progresso: {progress}/{required}"
- "Dificuldade: {difficulty}"
- "Recompensa: ${reward}"
previous_page:
name: "Página Anterior"
lore: "Clique para voltar à página anterior."
next_page:
name: "Próxima Página"
lore: "Clique para ir à próxima página."
collect_rewards:
name: "Coletar Recompensas"
lore: "Clique para coletar suas recompensas."
# Mensagens do plugin
messages:
mission_accepted: "Você aceitou a missão: {mission}!"
mission_cancelled: "Você cancelou a missão: {mission}."
rewards_collected: "Você coletou ${amount} em recompensas!"
no_rewards: "Você não tem recompensas para coletar."
Eventos
O plugin dispara dois eventos personalizados:
- MissionCompleteEvent: Disparado quando um jogador completa uma missão.
- Métodos:
- getPlayer(): Retorna o jogador que completou a missão.
- getMissionType(): Retorna o tipo de missão completada.
- MissionProgressEvent: Disparado quando um jogador faz progresso em uma missão.
- Métodos:
- getPlayer(): Retorna o jogador que fez progresso.
- getMissionType(): Retorna o tipo de missão.
- getProgress(): Retorna o progresso atual.
- getRequiredProgress(): Retorna o progresso necessário para completar a missão.
Placeholders (PlaceholderAPI)
O plugin adiciona os seguintes placeholders:
- %mission_progress%: Progresso atual da missão ativa.
- %mission_reward%: Recompensa da missão ativa.
- %mission_difficulty%: Dificuldade da missão ativa.
Instalação
- Baixe o plugin e coloque-o na pasta plugins do seu servidor.
- Inicie o servidor para gerar os arquivos de configuração.
- Configure o arquivo config.yml de acordo com as suas necessidades.
- Reinicie o servidor.
Dependências
- Vault: Para integração com sistemas de economia.
- PlaceholderAPI: Para suporte a placeholders personalizados.
- Citizens: Para suporte a NPCs (opcional).
FAQ
P: Como adiciono novas missões?
R: Basta editar o arquivo config.yml e adicionar novas entradas na seção missions.
P: Como altero a aparência do NPC?
R: Use o comando /setnpc e edite a skin do NPC diretamente no Citizens.
P: O plugin suporta MySQL?
R: Sim, o plugin usa MySQL para armazenar o progresso dos jogadores.
Esperamos que você aproveite o plugin
Mission! Se tiver alguma dúvida ou sugestão, sinta-se à vontade para entrar em contato.