Ir para conteúdo
  • 0

[Worldguard API] pegando flags através do nome...


TzMarcio

Pergunta

Bem estou mexendo com a api do wordguard e algo que eu to precisando e pega uma flag através de seu nome...

No momento achei 2 métodos para fazer 

Map<Flag<?>, Object> asdasd = rg.getFlags();
asdasd.put(new StateFlag("tnt", false), StateFlag.State.DENY);
rg.setFlags(asdasd);

e

rg.setFlag(new StateFlag("tnt", false), StateFlag.State.DENY);

Ambos os códigos não apresentam erro no entanto a lista de flags da region não se atualiza ou seja o valor dela não muda e se ja não estiver a flag na lista de flags a nova flag ainda não e adicionada...

 

 

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

Player p;

ProtectedCuboidRegion pr;

RegionManager rm;

 

pr.setFlag(DefaultFlag.PVP, DefaultFlag.PVP.parseInput(getWorldGuard(), p, "allow"));

//pr.setFlag(DefaultFlag.PVP, DefaultFlag.PVP.parseInput(getWorldGuard(), p, "deny"));

try {

rm.save();

} catch (Exception e) {

e.printStackTrace();

}

Link para o comentário
Compartilhar em outros sites

Player p;
ProtectedCuboidRegion pr;
RegionManager rm;

pr.setFlag(DefaultFlag.PVP, DefaultFlag.PVP.parseInput(getWorldGuard(), p, "allow"));
//pr.setFlag(DefaultFlag.PVP, DefaultFlag.PVP.parseInput(getWorldGuard(), p, "deny"));
try {
    rm.save();
} catch (Exception e) {
    e.printStackTrace();
}

sobre isso a flag tem que ser pega pelo nome não o seu state a ser setado

rg.setFlag(new StateFlag(flagName, true), StateFlag.State.DENY);
try {
   regionManager.save();
   regionManager.load();
} catch (StorageException e1) {
   // TODO Auto-generated catch block
   e1.printStackTrace();
}


Neste caso ele seta uma flag com nome informado(ou se quiser atualiza seu state caso seja true e caso já tenha a flag) o save salva as regions do mundo e o 2 loga as regions do mundo para aparecer no comando /rg info

Link para o comentário
Compartilhar em outros sites

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