-
Total de itens
2.229 -
Registro em
-
Última visita
Sobre leonardosc

Informações pessoais
-
Sexo
Outro
-
Localização
Brazil
Últimos Visitantes
13.690 visualizações
-
sync começou a seguir leonardosc
-
Beckeroi começou a seguir leonardosc
-
Beckeroi reagiu a uma resposta no tópico: Becker... cadê você ;=;
-
henriquefbpa começou a seguir leonardosc
-
jhullyo começou a seguir leonardosc
-
GbrielxD__ começou a seguir leonardosc
-
Orlandine começou a seguir leonardosc
-
zBrunooow começou a seguir leonardosc
-
Wilker25 reagiu a uma resposta no tópico: Vídeos/Playlists para quem quer começar a fazer plugins Bukkit.
-
zNonym começou a seguir leonardosc
-
Caabraal reagiu a uma resposta no tópico: [G]OLD'S - LsMobsVsPlayers
-
ZeDroguinha reagiu a uma resposta no tópico: [Bukkit] Lista de eventos
-
gonssalviz começou a seguir leonardosc
-
Keverson reagiu a uma resposta no tópico: Documentação Bukkit / Spigot
-
Capricho reagiu a uma resposta no tópico: 5 Motivos para não comprar plugin com licença
-
Dksmenberfull começou a seguir leonardosc
-
darshannon reagiu a uma resposta no tópico: LsMito - Mito do pvp bem feito...
-
leonardosc reagiu a uma resposta no tópico: [FREE] BSMito >> Novo Plugin de Mito do PVP
-
iVictor777z reagiu a uma resposta a uma pergunta: Enviar comandos entre servidores (Bungee)
-
iVictor777z reagiu a uma resposta a uma pergunta: Enviar comandos entre servidores (Bungee)
-
salfjusaghyfasuy reagiu a uma resposta no tópico: Vídeos/Playlists para quem quer começar a fazer plugins Bukkit.
-
leonardosc alterou sua foto pessoal
-
leonardosc reagiu a uma resposta no tópico: Ajuda com setMetadata e Random
-
Há vários problemas nesse código... 1: Tire isso: Location cAleatorio = (Location) randomLoc.getWorld(); não faz sentido! Você está tentando converter um MUNDO para uma Localização '-' 2: O retorno dessa chamada de método randomLoc.getWorld().getHighestBlockAt(randomLoc); não está sendo usado em lugar nenhum. Você deve setar o Y do randomLoc para o valor retornado por essa função. Ex: randomLoc.setY(randomLoc.getWorld().getHighestBlockAt(randomLoc).getY()); Senão ela não terá efeito. 3: Tire isso player.teleport(Bukkit.getWorld("minerar").getSpawnLocation()); Não faz sentido também. Você já está teleportando o jogador pra randomLoc, por que teleportar ele pro spawnLocation novamente? 4: O jogador não será teleportado na primeira vez que executar o comando pois na linha 7 você está dizendo que ele só será teleportado caso o metadado tempoMinerar exista, porém, na primeira vez que ele executar o comando, isso não existirá... O mais correto seria verificar se o tempoMinerar existe, e se o delay já expirou antes de chegar na lógica de teleportar. Por exemplo: if (tem o metadado tempoMinerar) { // verifica se o delay já expirou aqui, retorne caso não tenha expirado. } resto da lógica aqui... 5: A lógica do delay está errada. Você precisa verificar tempo (System.currentTimeMillis) atual MENOS o tempo que você salvou no metadado é menor que 1000. Você está apenas pegando o tempo atual e verificando se é menor do que 1000, isso SEMPRE será falso... Isso deve funcionar: @Override public boolean onCommand(CommandSender sender, Command cmd, String clabel, String[] args) { Player player = (Player) sender; if (clabel.equalsIgnoreCase("minerar")) { if (player.hasPermission("mts.minerar")) { // Verifica o delay antes de chegar na lógica do comando if (player.hasMetadata("tempoMinerar")) { System.out.println("Executado parte 4 setmetadata"); long tempoQueFoiExecutado = player.getMetadata("tempoMinerar").get(0).asLong(); long tempo = System.currentTimeMillis() - tempoQueFoiExecutado; System.out.println("Executado parte 5 long tempo"); if (tempo <= 1000) { System.out.println("Executado parte 6 long verificado"); player.sendMessage(ChatColor.GREEN + "Aguarde para usar o comando novamente"); System.out.println("Executado parte 6 tempo igual menor 1000"); return true; } } System.out.println("Executado parte 1"); Random random = new Random(); World world = Bukkit.getWorld("minerar"); int X = 20000; int Z = 20000; int x = random.nextInt(X); int y = 1; int z = random.nextInt(Z); Location randomLoc = new Location(world, x, y, z); randomLoc.setY(randomLoc.getWorld().getHighestBlockAt(randomLoc).getY()); player.teleport(randomLoc); System.out.println("Executado parte 2 random"); player.sendMessage(ChatColor.GREEN + "Teleportado ao Mundo Minerar"); player.sendMessage(ChatColor.GREEN + "Mundo de Mineracao! Aqui voce so podera coletar recursos"); player.sendMessage(ChatColor.GREEN + "Nada que construir aqui e protegido!"); System.out.println("Executado parte 3 teleporte e mensagens"); // Você só deve setar o metadado apenas se ele executar o comando, não antes. player.setMetadata("tempoMinerar", new FixedMetadataValue(plugin, System.currentTimeMillis())); } else { player.sendMessage(ChatColor.RED + "Voce nao tem permissao para isso"); System.out.println("sem permissao"); return true; } } return false; }
-
Stranger Things
-
@edit Post duplicado. Se algum MOD puder apagar eu agradeço.
-
Daria na mesma coisa do quê? Pelo que foi informado acima, ele só precisa se comunicar entre os MODS dele (rodando no CLIENTE), não com um servidor e nem entre clientes. Dá pra pensar nesse MOD intermediário como aqueles "COREs/Libs" que alguns usam. A diferença é que esses COREs têm funcionalidades/módulos/'utils' que serão utilizadas pelos plugins do desenvolvedor, e o MOD intermediário seria, a princípio, para guardar dados que seriam compartilhados entre os MODS. Então dá pra fazer algo mais simples ainda: você pode usar o sistema de arquivos. Basta criar um arquivo que será acessado pelos seus MODS.
-
Não tenho muita experiência com mods, mas talvez você possa usar um mod intermediário, que seja usado como dependência dos seus outros mods. Assim você pode salvar dados (como a ultima vez que a mensagem foi enviada) no mod intermediário e acessá-los a partir dos outros mods. http://www.minecraftforge.net/forum/topic/60566-solved-access-to-other-mods-requirements-1121/
-
Seriam mods diferentes né...? Quem usaria 10 mods iguais '-' Essa mensagem seria enviada apenas no chat do jogo (da pessoa)?
-
Os clientes precisam se comunicar entre si ou com um servidor? Você pode ser mais especifico sobre o que deseja fazer? Talvez possamos te ajudar melhor.
-
leonardosc reagiu a uma resposta a uma pergunta: duvida sobre java
-
Quer um cache bem simples? Para leitura: Pega o dado do jogador do banco de dados quando ele entrar no servidor e salva na memoria. Geralmente, é usado uma HashMap, tendo como chave o identificador do jogador (idealmente é o UUID) e como valor o dado que você deseja 'cachear', pois ela tem um tempo de leitura/escrita, na maioria das vezes, constante (fora que é o que você geralmente precisa em um cache: uma estrutura de dados que mapeie um determinado valor a uma chave.) Para escrita: Você pode simplesmente atualizar o dado no cache (de leitura) e depois executar uma query assincronamente (ou seja, fora da thread principal do servidor) para atualizar o dado no banco de dados.
-
Foi só analogia com Bukkit ou você vai usar isso em plugins?
-
ConfigManager - Facilitando sua vida com as config.yml
tópico respondeu ao TequilAxBr de leonardosc em Projetos
Isso vai dar erro se for uma List e você tentar fazer o cast para String. Sabe como eu fiz no meu? Viu aquele @ApplyConverter(ChatColorConverter.class)? Ele que é responsável por dar replace nas cores caso eu queira. Funciona tanto para String quanto para uma lista de strings. É simples, basta verificar o tipo do objeto que está naquele path: - Se for uma string basta usar o ChatColor.translateAlternateColorCodes; - Se for uma lista, basta percorrer os items, verificar se são Strings e fazer a mesma coisa do 1° caso. -
leonardosc reagiu a uma resposta no tópico: ConfigManager - Facilitando sua vida com as config.yml
-
ConfigManager - Facilitando sua vida com as config.yml
tópico respondeu ao TequilAxBr de leonardosc em Projetos
Também fiz uma parecida no ultimo PL q fiz. Btw, acho que você quis dizer path (que é o caminho na config) e não patch -
inativo Como posso fazer um sistema de delay, de dias por exemplo?
tópico respondeu ao paauum de leonardosc em Arquivos
Basta salvar o currentTimeMillis de quando o delay iniciou e a duração do delay em milisegundos. Para verificar se o delay expirou é só fazer: (currentTimeMillis que tu salvou) + (delay em milisegundos) < System.currentTimeMillis() -
leonardosc reagiu a uma resposta no tópico: TintaDropStack - Sistema de stackar drops
-
inativo Player Bater em Mobs de Plots sem precisar de add - PlotSquared
tópico respondeu ao iVictoorG de leonardosc em Arquivos
Lá no final, tenta trocar isso flags: use: 63,68 pra isso flags: use: 63,68 pve: true https://github.com/IntellectualSites/PlotSquared/wiki/Usage:-Plot-flags#default-flags -
Você precisa chamar o método Run em algum lugar.
-
mc-player-counter | Contador de players no seu site com 2 linhas de HTML
tópico respondeu ao leonardosc de leonardosc em Projetos
Dever ser algo relacionado a sua host. Ela tá recusando a conexão da api (Como pode ver no erro: "Connection refused")...