LogoyStore

API

A API fornece uma interface pública para desenvolvedores integrarem seus plugins ao sistema do yFazenda.

Obtendo a instância da API

A API é exposta através de um BukkitService assim como feito comumente no Vault.

Exemplo:

FazendaAPIHolder api;

try {
  RegisteredServiceProvider<FazendaAPIHolder> rsp = Bukkit.getServer().getServicesManager().getRegistration(FazendaAPIHolder.class);
  return rsp == null ? null : (FazendaAPIHolder)rsp.getProvider();
} catch (Throwable t) {
  return null;
}

Métodos disponíveis

retrieveFarm(String farm)

Recupera os dados de uma fazenda pelo ID.

FarmHolder farm = api.retrieveFarm("default");

Parâmetros:

  • farm - ID da fazenda

Retorno:

  • FarmHolder da fazenda

retrievePlayer(String player)

Recupera os dados de fazenda de um jogador.

FarmPlayerHolder data = api.retrievePlayer("Steve");

Parâmetros:

  • player - Nome do jogador

Retorno:

  • FarmPlayerHolder do jogador

run(String[] array)

Executa a partir de um array de strings.

api.run(array);

Parâmetros:

  • array - Array de strings

Holders

FarmHolder

MétodoRetornoDescrição
getKey()StringID da fazenda.
getDisplay() / setDisplay()StringNome de exibição.
getPermission() / setPermission()StringPermissão para entrar.
getSpawn() / setSpawn()StringLocal de spawn.
getExit() / setExit()StringLocal de saída.
getPos1() / setPos1()StringCanto 1 da área.
getPos2() / setPos2()StringCanto 2 da área.
getPlants()List<String>Posições das plantas.
isBungeecordEnabled() / setBungeecordEnabled()booleanProxy da fazenda.
getBungeecordServers()List<String>Servidores do proxy.

FarmPlayerHolder

MétodoRetornoDescrição
getKey()StringChave do jogador.
getCurrency() / setCurrency()doubleMoedas da fazenda.
getXp() / setXp()doubleXP atual.
getLevel() / setLevel()intNível da fazenda.
getHarvested() / setHarvested()longTotal colhido.
getExpansionKey() / setExpansionKey()StringExpansão atual.
getCropKey() / setCropKey()StringPlantação selecionada.
isPublicFarm() / setPublicFarm()booleanSe a fazenda é pública.
getTaxPercent() / setTaxPercent()doubleTaxa de visitantes.
getFriends()List<String>Lista de amigos.
getAnimals()HashMap<String, Integer>Animais do jogador.
getProducts()HashMap<String, Long>Produtos armazenados.
getEnchants()HashMap<String, Integer>Encantamentos.
getEnchantDelay()HashMap<String, Long>Delay dos encantamentos.
getBlockedEnchants()List<String>Encantamentos filtrados.
getToolKey() / setToolKey()StringEnxada selecionada.
getLastAnimalTick() / setLastAnimalTick()longÚltimo tick dos animais.
getLastProduce()HashMap<String, Long>Última produção.

FarmCropHolder

MétodoRetornoDescrição
getKey()StringID da plantação.
getDisplay() / setDisplay()StringNome de exibição.
getMaterial() / setMaterial()StringBloco maduro.
getToMaterial() / setToMaterial()StringBloco após colher.
getSeed() / setSeed()StringSemente.
getUnlockLevel() / setUnlockLevel()intNível para desbloquear.
getOrder() / setOrder()intOrdem de evolução.
getChance() / setChance()doublePeso de aparição.
getValue() / setValue()doubleMoedas por colheita.
getXp() / setXp()doubleXP por colheita.
getGrowTicks() / setGrowTicks()intTempo para nascer.
getCost() / setCost()doubleCusto.
getIcon() / setIcon()ItemStackÍcone do menu.
getPrices()HashMap<String, Double>Preços.

FarmEnchantHolder

MétodoRetornoDescrição
getKey()StringID do encantamento.
getDisplay() / setDisplay()StringNome de exibição.
getType() / setType()StringTipo da animação.
getChat() / setChat()StringMensagem de chat ao ativar.
getTitle() / setTitle()StringTítulo ao ativar.
getActionbar() / setActionbar()StringActionbar ao ativar.
getSound() / setSound()StringSom ao ativar.
getOrder() / setOrder()intOrdem no menu.
getUnlockLevel() / setUnlockLevel()intNível para desbloquear.
getMaxLevel() / setMaxLevel()intNível máximo.
getChancePerLevel() / setChancePerLevel()doubleChance por nível.
getRadius() / setRadius()intRaio da área.
getCost() / setCost()doubleCusto.
getCostMultiplier() / setCostMultiplier()doubleMultiplicador por nível.
getDelaySeconds() / setDelaySeconds()longDelay entre ativações.
isAnimation() / setAnimation()booleanSe dispara animação.
getIcon() / setIcon()ItemStackÍcone do menu.
getPricesDefault()HashMap<String, Double>Preço inicial.
getPricesPerLevel()HashMap<String, Double>Preço por nível.
getPricesDisenchanter()HashMap<String, Double>Preço do desencantador.

FarmAnimalHolder

MétodoRetornoDescrição
getKey()StringID do animal.
getDisplay() / setDisplay()StringNome de exibição.
getUnlockLevel() / setUnlockLevel()intNível para comprar.
getOrder() / setOrder()intOrdem no menu.
getCost() / setCost()doubleCusto.
getMaxStack() / setMaxStack()intMáximo acumulável.
getProduceKey() / setProduceKey()StringID do produto.
getProduceDisplay() / setProduceDisplay()StringNome do produto.
getProduceItem() / setProduceItem()ItemStackItem ao coletar.
getProduceValue() / setProduceValue()doubleValor do produto.
getProduceAmount() / setProduceAmount()intQuantidade por intervalo.
getIntervalSeconds() / setIntervalSeconds()intIntervalo em segundos.
getIcon() / setIcon()ItemStackÍcone do menu.
getPrices()HashMap<String, Double>Preços de compra.
getProducePrices()HashMap<String, Double>Preços de venda.

FarmToolHolder

MétodoRetornoDescrição
getKey()StringID da enxada.
getDisplay() / setDisplay()StringNome de exibição.
getOrder() / setOrder()intOrdem no menu.
getUnlockLevel() / setUnlockLevel()intNível para desbloquear.
getIcon() / setIcon()ItemStackItem da enxada.
getBonusCurrency() / setBonusCurrency()doubleBônus de moedas.
getBonusXp() / setBonusXp()doubleBônus de XP.
getBonusFortune() / setBonusFortune()doubleBônus de fortuna.
getBonusEnchantChance() / setBonusEnchantChance()doubleBônus de chance de encantamento.

FarmExpansionHolder

MétodoRetornoDescrição
getKey()StringID da expansão.
getDisplay() / setDisplay()StringNome de exibição.
getOrder() / setOrder()intOrdem de compra.
getUnlockLevel() / setUnlockLevel()intNível mínimo.
getCost() / setCost()doubleCusto.
getPos1() / setPos1()StringCanto 1.
getPos2() / setPos2()StringCanto 2.
getIcon() / setIcon()ItemStackÍcone do menu.
getFarmKey() / setFarmKey()StringID da fazenda.
getPlants()List<String>Plantas da expansão.
getPrices()HashMap<String, Double>Preços.

FarmEconomyTypeHolder

MétodoRetornoDescrição
getId()StringID da economia.
getProvider()StringProvider.
getDisplay() / setDisplay()StringNome de exibição.
getAbbreviated() / setAbbreviated()StringAbreviação.
getSymbol() / setSymbol()StringSímbolo.
getPermission() / setPermission()StringPermissão.
getItemSettings() / setItemSettings()ItemStackÍcone no menu.
isAllowOffline() / setAllowOffline()booleanTransações offline.

Eventos

PreFazendaHarvestEvent

Disparado antes da colheita. Implementa Cancellable.

@EventHandler
public void onPreHarvest(PreFazendaHarvestEvent event) {
    Player player = event.getPlayer();
    FarmHolder farm = event.getFarm();
    Location location = event.getLocation();
}

Métodos:

  • getPlayer() — jogador
  • getFarm() — fazenda
  • getLocation() — local da colheita
  • isCancelled() / setCancelled(boolean)

FazendaHarvestEvent

Disparado na colheita. Implementa Cancellable.

@EventHandler
public void onHarvest(FazendaHarvestEvent event) {
    Player player = event.getPlayer();
    FarmCropHolder crop = event.getCrop();
    int amount = event.getAmount();
    double xp = event.getXp();
}

Métodos:

  • getPlayer() — jogador
  • getFarm() — fazenda
  • getCrop() — plantação
  • getLocation() — local
  • getAmount() — quantidade
  • getValues() / setValues(HashMap<FarmEconomyTypeHolder, Double>) — valores
  • getXp() / setXp(double) — XP
  • isEnchants() / setEnchants(boolean) — encantamentos
  • isCancelled() / setCancelled(boolean)

FazendaActiveEnchantEvent

Disparado ao ativar um encantamento. Implementa Cancellable.

@EventHandler
public void onEnchant(FazendaActiveEnchantEvent event) {
    FarmEnchantHolder enchantment = event.getEnchantment();
    int count = event.getHarvestedBlockCount();
}

Métodos:

  • getPlayer() — jogador
  • getEnchantment() — encantamento
  • getHarvestedBlocks() — blocos colhidos
  • getHarvestedBlockCount() — quantidade de blocos
  • isCancelled() / setCancelled(boolean)

FazendaJoinEvent

Disparado ao entrar na fazenda.

@EventHandler
public void onJoin(FazendaJoinEvent event) {
    Player player = event.getPlayer();
    FarmHolder farm = event.getFarm();
    FarmPlayerHolder owner = event.getOwner();
}

Métodos:

  • getPlayer() — jogador
  • getFarm() — fazenda
  • getOwner() — dono (FarmPlayerHolder)

FazendaQuitEvent

Disparado ao sair da fazenda.

@EventHandler
public void onQuit(FazendaQuitEvent event) {
    Player player = event.getPlayer();
    FarmHolder farm = event.getFarm();
    FarmPlayerHolder owner = event.getOwner();
}

Métodos:

  • getPlayer() — jogador
  • getFarm() — fazenda
  • getOwner() — dono (FarmPlayerHolder)

Nesta página