Ir para conteúdo

[Tutorial] Método não stackar um Item (JAVA)


AlexHackers

Posts Recomendados

Método que achei se não me engano no plugin RandomBOX


 


Estava la eu fazendo plugin do cliente e o cliente pediu para não stackar o item, ai eu falei como vou fazer isso, tentei editando a field do minecraft e não deu, bugava em algumas coisas, pensei usar evento, testei um pouco e ficou horrivel, lagava, então o cliente me avisou que RandomBOX tinha tal função, dei uma estudada no código e achei tal método, eu pesquisei umonte e não tinha encontrado nada sobre, então resolvi divulgar para todos usarem o método !


 


 


CLASS UTILS:


 


package me.nomedapackage;

 

import java.util.*;

 

public final class Utils {

public static final Random RANDOM;

private static final char[] APPEND;

 

public static String randomString() {

Utils.APPEND[1] = (char) (48 + Utils.RANDOM.nextInt(10));

Utils.APPEND[3] = (char) (48 + Utils.RANDOM.nextInt(10));

Utils.APPEND[5] = (char) (48 + Utils.RANDOM.nextInt(10));

Utils.APPEND[7] = (char) (48 + Utils.RANDOM.nextInt(10));

return new String(Utils.APPEND);

}

 

static {

RANDOM = new Random();

APPEND = new char[] { '§', '\0', '§', '\0', '§', '\0', '§', '\0' };

}

}


 

Como usar:

Você seta no DisplayName do item !

 

meta.setDisplayName(nome.replace("&", "§")+Utils.randomString());

 

 

Class Utils em hastebin:


 

Qualquer duvida deixe abaixo, espero ajudar outras pessoas !

 

Atenciosamente,Alex

Skype: alexandre.ferreira249

 

Tags: no stack item, cancel stack item, randomstring, remove stack itens, stack, cancelar stack de item

Link para o comentário
Compartilhar em outros sites

Essa também foi a unica maneira que encontrei pra fazer isso. Usei em um plugin de "stackar itens" -- deixar vários itens e um só --, há alguns meses atrás.

sim existem milhares jeitos só citei um que achei facil e pratico até para quem não sabe nada ! :D

 

AI sim em.

hue

Link para o comentário
Compartilhar em outros sites

Ja vi em um servidor algo que reduz o lag dos drops, em que basicamente vários drops se juntam em 1, e ao passar por esse 1 nós pegariamos os vários drops. ( quando se matava 1011849189 iron golems stackados, o chao enchia de ferro e o mine até crashava )

 

E esse 1 não se juntava com nenhum item.. então estive pensando como fazer e pensei em colocar metadata em um Item quando um mob morresse e depois usar o ItemMergeEvent para cancelar o evento se o Item tivesse a metadata.

 

Foi esse o evento que você testou e lagou?

Link para o comentário
Compartilhar em outros sites

Ja vi em um servidor algo que reduz o lag dos drops, em que basicamente vários drops se juntam em 1, e ao passar por esse 1 nós pegariamos os vários drops. ( quando se matava 1011849189 iron golems stackados, o chao enchia de ferro e o mine até crashava )

 

E esse 1 não se juntava com nenhum item.. então estive pensando como fazer e pensei em colocar metadata em um Item quando um mob morresse e depois usar o ItemMergeEvent para cancelar o evento se o Item tivesse a metadata.

 

Foi esse o evento que você testou e lagou?

n era para isso q cliente pediu, era tipo mobspawner n stackar no inventario,nos bau, no chao etc pra poder smp cada mobspawner ocupar 1 slot sacou + - ?

Ai isso que vc ta fazendo tem q usar evento creio eu

Link para o comentário
Compartilhar em outros sites

n era para isso q cliente pediu, era tipo mobspawner n stackar no inventario,nos bau, no chao etc pra poder smp cada mobspawner ocupar 1 slot sacou + - ?

Ai isso que vc ta fazendo tem q usar evento creio eu

Nah, acabei de fazer aqui esse sistema para reduzir o lag e usei esse seu método, eles não se juntam quando dropados no chão tb.

Aliás, usar o § para "esconder" algo é muito útil e é o menos lagado eu acho, tenho usado para "esconder" algo na lore dos item em vez de usar NBTTag.. se quiser a class..

Link para o comentário
Compartilhar em outros sites

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, a class='ipsType_brandedLink' href='https://gamersboard.com.br/login/' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title='Sign In Now'>acesse agora para postar com sua conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

Processando...
×
×
  • Criar Novo...