rabbitholerp / common Goto Github PK
View Code? Open in Web Editor NEWCommon é uma biblioteca para construção de Plugins.
Common é uma biblioteca para construção de Plugins.
Adicionar um método de envio de mensagens customizadas dentro da estrutura de mensagens atual. (Messages.java
)
Exemplo de implementação:
public void sendCustomMessage(@NotNull CommandSender commandSender, @NotNull String customMessage) {
commandSender.sendMessage(StringUtils.format(customMessage));
}
Alterar na estrutura de mensagens de Player para CommandSender, assim permitindo 1 único método enviar mensagem para console e para jogadores, ou adicionar um método para envio de mensagens especificamente para instância Console.
Adicionar um recurso para criação de Inventários Customizados.
Requisitos:
Adicionar uma Utils para verificar se é madeira, para verificar se é planta ou outras coleções.
Adicionar uma interface de declaração para criação de tabelas utilizando o common.
Exemplo:
public interface Data<K, T> {
public void createTable();
public boolean insert(T object);
public T get(K key);
public boolean update(T object)
public boolean delete(K key);
}
K sendo o tipo de Chave que essa classe de dados utilizaria.
T sendo genérico referenciando a algum objeto pré construido.
Estes métodos básicos são apenas uma específicação inicial, caso o desenvolvedor tenha necessidade poderá implementar métodos adicionais a classe de Data desenvolvida.
Adicionar um sistema aos Inventários
para preencher todos os espaços vazios.
Exemplo:
public Inventory() {
super(InventoryName, InventorySize);
this.fill(ItemStack);
}
Sistema de hologramas com:
Criar um recurso para atualizar Inventários abertos a cada X tempo, este recurso seria interessante para criar atualizações de interação ou modificações de gráficos em inventários.
Adicionar um recurso de criação de configurações customizadas. Permitindo o programador ter uma maior facilidade para desenvolver novos arquivos YML
.
Mudar do super para get para ter mais flexibilidade podendo colocar váriaveis.
agora:
public class MyGUI extends InventoryImplementation {
public MyGUI() {
super("teste", 9 * 4);
}
}
como ficaria:
public class MyGUI extends InventoryImplementation {
private final String title;
private final Player player;
public MyGUI(final JavaPlugin plugin, final Player player) {
this.title = "Titulo: %s | PlayerName: %s".formatter(plugin.getConfig().getString("gui.title"), player.getName())
}
@Override
public String getTitle() {
return this.title;
}
@Override
public int getSize() {
return 9 * 4;
}
}
Database
e Query
.Adicionar um recurso para criação de Itens Customizados.
Requisitos:
displayName
;lore
;durability
;Sugestão de alteração na br.com.rabbihole.common.core.sql.Data
:
Alterar o método public void createTable();
para -> public boolean createTable()
assim permitindo que em caso de exceção o desenvolvedor consiga verificar através do retorno e tomar alguma decisão. Como por exemplo:
Em caso de retorno False
parar a inicialização do plugin ou algo similar, a fim de uma maior confiabilidade do código.
Adicionar um sistema que permita serializar classes como Player.java
, ItemStack.java
, Inventory.java
, Location.java
para Base64 assim permitindo serem enviadas para o banco de dados de uma maneira mais simplificada.
Sugestão de alteração na br.com.rabbithole.common.core.sql.Data
:
Alterar o método public boolean insert(V value)
para -> public boolean insert(K key, V value)
assim abrangendo maiores possibilidades de código.
Adicionar documentação para os recursos de Itens
e Inventários
.
Implementar recursos de criação de cabeças customizadas. (Base da Implementação)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.