Ir para conteúdo

CryptoMarket - o mercado de moedas digitais no seu servidor!


GhostTheWolf

Posts Recomendados

NOTA: Este plugin precisa de uma conexão com a internet para pegar os valores das moedas.

CryptoMarket

O mercado de moedas digitais no seu servidor!

Características

  • GUI bonita e fácil de usar
  • Valores reais das moedas
  • Ranking dos players mais ricos
  • Permite negociações em mais de uma moeda digital
  • Calendário mostrando valores anteriores
  • Compra/venda das moedas via conversa no chat

 

Menu principal

Este menu é acessado usando o comando /cryptomarket (ou apenas /cm)

Ele contém botões para acessar os outros menus e alguns itens úteis, como:

Preço vendendo agora: este te indica quanto lucro (ou prejuízo) você terá se você vender suas moedas agora

profit.png.1d83c879c3ee1a71cb03a8f13f87f9bb.png

Carteira: mostra seu saldo atual, moeda digital ou do servidor

wallet.png.12ab9c0f4cfe93889763f44cd43e0762.png

Moedas / Valores: o mais importante, aqui é onde a mágica acontece. Ele mostra o preço atual das moedas e permite que você faça negociações.

coins.png.a7111d6f752517e75f56893429dde5b8.png

Clicando (botão esquerdo = vender, direito = comprar) nele inicia o chat de negociação, depois disso o player precisa apenas responder a algumas perguntas (moeda, quantidade, etc). E é isso, negociação completa!

conversation.png.872a3e17318265aba0cdfdf2261f48c3.png

Atualizar: atualiza os valores das moedas se um erro ocorreu

Ranking e Calendário: abre seus respectivos menus

 

Menu Ranking

Você quer ver quem são os players mais ricos no servidor?

Dá uma olhada nesse menu!

Ele também calcula o valor total de investimentos no servidor!

total-investments.png.3c282c5c89bb299e935fb202cad6d2c2.png

Aqui os 5 mais ricos são mostrados junto com o seu patrimônio total (quantia investida convertida para a moeda do servidor):

richest.png.49910231f0068a2d59cb78169fe30aa3.png

 

 

Menu Calendário

Está curioso para saber quanto o Bitcoin custava semana passada... ou no ano passado?

Este menu contém os valores anteriores das moedas, o que pode ajudar os jogadores a decidir quando é a hora de comprar!

calendar-rates.png.d17d66ee0996816f054b7217cf740b27.png

 

Como instalar?

  1. Antes de mais nada, você precisa de uma API KEY (não se preocupe, é grátis):
  2. Acesse https://www.alphavantage.co/support/#api-key, preencha o formulário e click em "GET FREE API KEY".
  3. Inicie o servidor com CryptoMarket.jar na pasta plugins.
  4. Abra o arquivo de configuração e insira a API KEY em "api-key".
  5. Reinicie o servidor.

É isso, as outras configurações são opcionais e o plugin está pronto para uso!

 

Configuração

A configuração está bem comentada, mas se ainda tiver dúvidas, pode me contatar!

Spoiler

#API KEY para acessar os valores das moedas, USE A KEY PADRÃO APENAS PARA TESTES
api-key: "99X0JFXBLX2YRZA7"
#O intervalo para atualizar os valores das moedas (em minutos)
#(Por favor, perceba que a API tem um limite de 500 requisições por dia,
#então se você definir um valor que vá ultrapassar esse limite, o plugin vai escolher um automaticamente)
update-interval: 60
#O intervalo em que os dados dos investidores serão salvos (em minutos)
saving-interval: 5
#O intervalo para atualizar a lista dos mais ricos (em minutos)
richers-update-interval: 15
#MySQL
mysql:
  #Você quer usar MySQL? Se não, SQLite será usado
  enabled: false
  hostname: "localhost"
  port: 3306
  database: "cryptomarket"
  user: "root"
  password: "1234"
#Defina aqui a moeda física (ex.: BRL, USD) que será usada para comparar com a moeda digital
physical-currency: BRL
#Moedas com as quais o plugin trabalhará (você pode encontrar uma lista de moedas válidas dentro do JAR, no arquivo digital_currency_list.csv)
coins:
- BTC
- LTC
- ETH
#O menu principal do plugin, acessado usando /cryptomarket
menu:
  #Nome do menu
  name: "&7CryptoMarket"
  items:
    #O item que mostra os valores atuais das moedas
    coins:
      name: "&7Moedas / Valores"
      # {0} é substituído pela linhas das moedas
      lore:
        - " "
        - "&f{0}"
        - " "
        - "&7Botão direito - &aComprar"
        - "&7Botão esquerdo - &cVender"
      #Para cada moeda que você adicionou na lista de moedas, uma linha de moeda será adiciona na lore
      # {0} é o nome da moeda
      # {1} é o valor
      coin-line: "&f{0} &7{1}"
      #Mensagem mostrada no lugar do valor quando houve um erro
      error-no-data: "Erro, atualize!"
    #O item mque mostra o saldo atual do investidor
    wallet:
      name: "&3Carteira"
      # {0} é o saldo do investidor na moeda do servidor (Vault)
      # {1} é substituído pela linhas das moedas (funciona da mesma forma que o item Coins acima)
      lore:
        - " "
        - "&f{0}"
        - " "
        - "&f{1}"
      #Por favor, dê uma olhada no item Coins, eles funciona da mesma forma
      coin-line: "&f{0} &7{1}"
    #O item que mostra o lucro se o investidor vender todo o seu saldo de tal moeda
    profit:
      name: "&fLucro vendendo agora"
      # {0} é substituído pela linhas das moedas (funciona da mesma forma que o item Coins acima)
      lore:
          - " "
          - "{0}"
          - " "
      #Para cada moeda que você adicionou na lista de moedas, uma linha de moeda será adiciona na lore
      # {0} é o nome da moeda
      # {1} é a cor
      # {2} é a porcentagem (pode ser negativa, significando uma perda)
      coin-line: "&f{0} {1}{2}%"
      # Estas são as cores que o "{1}" na configuração de cima vai usar de acordo com o valor
      color:
          positive: '&a'
          neuter: '&f'
          negative: '&c'
    calendar: "&aCalendário"
    update: "&aAtualizar"
    ranking: "&aRanking"
#O menu Calendário, acessado pelo menu Principal
#Ele mostra os valores de dias anteriores
calendar:
    name: "&fCalendário"
    items:
        back: "&aVOLTAR"
        next-month: "&aPróximo Mês"
        previous-month: "&aMês Anterior"
        #Configura um único dia do calendário
        day:
            # {0} é o número do dia
            name: "&fDia {0}"
            #Isso aqui funciona como o item Coins, dá uma olhada nele
            lore:
                - " "
                - "{0}"
                - " "
            #Também funciona como o item Coins
            coin-line: "{0} {1}"
            #Isso é mostrado em dias depois de hoje, quando não tem valor ainda
            no-rates: "&c&oSem dados"
            #Mensagem mostrada ao invés do valor quando houve um erro
            error-no-data: "Erro, atualize!"
#O menu Ranking, também acessado pelo menu Principal
ranking:
    name: "&fRanking"
    items:
        back: "&aVOLTAR"
        #Configura um item que representa um dos mais ricos
        richer:
            # {0} é a posição do jogador no ranking
            # {1} é o nome do investidor
            name: "#{0} {1}"
            # {0} é o total investidor convertido para moeda do servidor
            # {1} é a porcentagem comparada ao total investido no servidor
            lore:
                - " "
                - "{0} ({1}%)"
                - " "
            #Se não houver um investidor no ranking
            # {0} é a posição no ranking
            no-investor: "#{0} Sem investidor"
        total-investments:
            name: "&fTotal de investimentos"
            # {0} é o total de investimentos no servidor
            lore:
                - " "
                - "{0}"
                - " "
        last-updated:
            name: "&fAtualizado pela última vez"
            # {0} é a data e hora
            lore:
                - " "
                - "{0}"
                - " "
#Configuração relativa ao chat de negociação, iniciada usando o botão Moedas no menu principal
negotiation-chat:
  #Prefiro do chat
  prefix: "&7[CryptoMarket] "
  #O que o jogador precisa digitar para sair do chat
  exit-word: "sair"
  #Primeira mensagem do chat, {0} é a palavra de saída (definida acima)
  warning: "&fPara sair da negociação, digite &7{0}&f a qualquer momento."
  choose-coin: "&fQual moeda deseja negociar?"
  # {0} é uma lista formatada de moedas
  valid-coins: "&fMoedas válidas: {0}"
  how-much-buy: "&fQuanto você deseja comprar?"
  how-much-sell: "&fQuanto você deseja vender?"
  error-insufficient-balance: "&fVocê não tem saldo suficiente!"
  #Se o usuário não inserir números ou um positivo
  error-invalid-value: "&fPor favor, insira um valor válido!"
  #Se houve um erro buscando os valores das moedas
  error-outdated-data: "&fA negociação falhou: a data está desatualizada! Por favor, use o botão/comando Atualizar!"
  #Tudo está pronto para finalizar a negociação, tudo que o jogador precisa é confirmar
  # {0} é a ação (sell-action or buy-action)
  # {1} é a quantidade
  # {2} é a moeda digital
  # {3} é o valor em moeda do servidor
  confirmation: "&fVocê quer &7{0} {1} {2} &fpor &7{3} &fmoedas?"
  #Palavra usada para confirmar a negociação
  yes-word: "sim"
  #Palavra usada para cancelar a negociação
  cancel-word: "cancelar"
  sell-action: "vender"
  buy-action: "comprar"
  #Última mensagem
  success: "&fNegociação bem sucedida!"
#Algumas mensagem que o plugin vai enviar
messages:
  error-player-not-found: "&fO jogador inserido não é válido!"
  error-invalid-amount: "&fA quantidade inserida não é um número válido ou é igual ou menor que zero!"
  error-invalid-coin: "&fA moeda inserida não é válida!"
  error-take-insufficient-balance: "&fO jogador não tem saldo suficiente!"
  error-database: "&fHouve um erro ao conectar ao banco de dados, contate um admin, por favor!"
  error-no-permission: "&fVocê não têm permissão para fazer isso!"
  saving-data: "&fSalvando dados..."
  player-balance-updated: "&fSaldo de {0} atualizado!"
  # {0} é o tempo aproximado em minutos para completar a atualização, considerando os limites da API
  updating-content: "&fAtualizando conteúdo, por favor, aguarde {0} minuto(s)!"
  already-uptodate: "&fIsso não é necessário, o conteúdo já está atualizado ou uma atualização está em andamento!"
  balance: "&fSeu saldo é:"
  #Isso será en******** depois de balance
  #Uma mensagem para cada moeda definida na config
  # {0} é o nome da moeda
  # {1} é o valor
  balance-per-coin: "&a{0}: &f{1}"
  current-rates: "As moedas valem:"
  #Isso será en******** depois de current-rates
  #Uma mensagem para cada moeda definida na config
  # {0} é o nome da moeda
  # {1} é o valor
  current-rates-per-coin: "&a{0}: &f{1}"
  outdated-data: "Data desatualizada, por favor atualize!"
  #Se ocorreu um erro ao abrir o menu Ranking
  error-ranking-data: "&fHouve um erro ao acessar a data do Ranking, contate um administrador por favor!"
  new-balance: "&fSeu novo saldo de &7{0} &fé: &7{1}"
  help-command:
  - "&bCryptoMarket - Ajuda"
  - "&b/cm balance - mostra seu saldo"
  - "&b/cm today - mostra os valores de hoje"
  - "&b/cm update - atualiza os valores das moedas"
  - "&c/cm save - salva os dados no banco de dados"
  - "&c/cm give <jogador> <quantidade> <moeda> - dá a quantidade da moeda ao jogador"
  - "&c/cm take <jogador> <quantidade> <moeda> - tira a quantidade da moeda do jogador"
  - "&c/cm set <jogador> <quantidade> <moeda> - define a quantidade da moeda como o saldo do jogador"

 

 

 

Permissões

  • cryptomarket.menu: permite ao jogador abrir o menu principal
  • cryptomarket.negotiate: permite ao jogador comprar/vender moedas
  • cryptomarket.ranking: permite ao jogador abrir o menu Ranking
  • cryptomarket.calendar: permite ao jogador abrir o menu Calendário
  • cryptomarket.balance: permite ao jogador usar /cm balance
  • cryptomarket.today: permite ao jogador usar /cm today
  • cryptomarket.update: permite ao jogador usar /cm update
  • cryptomarket.save: permite ao jogador usar /cm save
  • cryptomarket.give: permite ao jogador usar /cm give
  • cryptomarket.take: permite ao jogador usar /cm take
  • cryptomarket.set: permite ao jogador usar /cm set

 

Comandos

comandos.png.ab80774f1203d0438d0adeb616fc079a.png

API

Javadoc pode ser encontrado em: https://roinujnosde.github.io/CryptoMarket/

Dependências

  • Vault
  • Plugin de economia

Download

https://www.spigotmc.org/resources/cryptomarket.69031/

Editado por RoinujNosde
Link para o comentário
Compartilhar em outros sites

ANÁLISE DE INATIVIDADE
 

Este tópico foi automaticamente arquivado devido à inatividade. Para manter a organização e fluidez das discussões na comunidade, tópicos que permanecem sem novas interações por um período prolongado são fechados automaticamente.
 

Se houver interesse em retomar o conteúdo, sinta-se à vontade para criar um novo tópico ou entre em contato com a equipe da comunidade para reabrir este tópico.


Equipe de Moderação
Gamer's Board
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...