Ir para conteúdo
  • 0

[Resolvido] [Inativo]Comandos Liberados!


Dery

Pergunta

Como faço para liberar alguns comandos?

 

Tipo eu já sei o código, porém ele só aceita o primeiro....

 

Config:

#Configuração:
Config:
  #Comandos que serão liberados:
  Comandos:
  - /login
  - /money
  - /teste

Código:

@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Config.Comandos")){
			if(!e.getMessage().startsWith(comandos)){
				e.setCancelled(true);
			}else{
				return;
			}
		}
	}

Já registrei os eventos no onEnable!

Editado por Dery
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

Tenta assim:

 

@EventHandler
public void cmdP(PlayerCommandPreprocessEvent e){
	Player p = e.getPlayer();
	String msg = e.getMessage();
	String cmd = msg.split(" ")[0];
	for(String cmds : cnf.getStringList("Config.Comandos")){
		if(!cmd.contains(cmds)){
			e.setCanceleed(true);
			return;
		}
	}
}

Se assim não der certo, muda isso:
 

		if(!cmd.contains(cmds)){
			e.setCanceleed(true);
			return;
		}

Para:

		if(!cmds.contains(cmd)){
			e.setCanceleed(true);
			return;
		}
Editado por Trow_Games
Link para o comentário
Compartilhar em outros sites

 

Tenta assim:

 

 

@EventHandler
public void cmdP(PlayerCommandPreprocessEvent e){
	Player p = e.getPlayer();
	String msg = e.getMessage();
	String cmd = msg.split(" ")[0];
	for(String cmds : cnf.getStringList("Config.Comandos")){
		if(!cmd.contains(cmds)){
			e.setCanceleed(true);
			return;
		}
	}
}

Se assim não der certo, muda isso:

 

		if(!cmd.contains(cmds)){
			e.setCanceleed(true);
			return;
		}

Para:

		if(!cmds.contains(cmd)){
			e.setCanceleed(true);
			return;
		}

Nada :/

Link para o comentário
Compartilhar em outros sites

@EventHandler(ignoreCancelled = true)

private void onCommandProcess2(PlayerCommandPreprocessEvent e)

{

for (String cmd : getConfig().getStringList("Config.Comandos"))

{

if (e.getMessage().startsWith("/" + cmd))

{

return;

}

else

{

e.getPlayer().sendMessage("comando desabilitado.");

e.setCancelled(true);

return;

}

}

}

Link para o comentário
Compartilhar em outros sites

Resolvido?

 

 

 

Como faço para liberar alguns comandos?

 

Tipo eu já sei o código, porém ele só aceita o primeiro....

 

Config:

#Configuração:
Config:
  #Comandos que serão liberados:
  Comandos:
  - /login
  - /money
  - /teste

Código:

@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Config.Comandos")){
			if(!e.getMessage().startsWith(comandos)){
				e.setCancelled(true);
			}else{
				return;
			}
		}
	}

Já registrei os eventos no onEnable!

Link para o comentário
Compartilhar em outros sites

@EventHandler

public void onPlayerCommand(PlayerCommandPreprocessEvent e){

if(e.getPlayer().isOp()){

return;

}

for(String comandos : getConfig().getStringList("Comandos")){

if(!e.getMessage().startsWith("/" + comandos)){

e.setCancelled(true);

}

}

}

Comandos:

- login

- register

- fuder

- ate

- otalo

 

Editado por root@mikesantos #
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «
@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Comandos")){
			if(!e.getMessage().startsWith(comandos)){
				e.setCancelled(true);
			}
		}
	}

Obs: eu testei aqui e não funcionou..

@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Comandos")){
			if(!e.getMessage().startsWith(comandos)){
				e.setCancelled(true);
			}
		}
	}

Config.yml

#Comandos liberados
Comandos:
- /login
- /sethome
- /home
- /g
Link para o comentário
Compartilhar em outros sites

 

Obs: eu testei aqui e não funcionou..

@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Comandos")){
			if(!e.getMessage().startsWith(comandos)){
				e.setCancelled(true);
			}
		}
	}

Config.yml

#Comandos liberados
Comandos:
- /login
- /sethome
- /home
- /g

Olha o que coloquei no comentario e tenta :c

Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

Olha o que coloquei no comentario e tenta :c

Ainda não funcionou..

Veja se e o código..

package me.immmickcraft.com;

import org.bukkit.Bukkit;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.plugin.java.JavaPlugin;

public class SrComandos extends JavaPlugin implements Listener{
	
	public void onEnable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		saveDefaultConfig();
		b.sendMessage("§bIniciando o sistema de comandos");
		Bukkit.getServer().getPluginManager().registerEvents(this, this);
	}

	public void onDisable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		b.sendMessage("§cFinalizando o sistema de comandos");
		}

	@EventHandler
	public void onPlayerCommand(PlayerCommandPreprocessEvent e){
		if(e.getPlayer().isOp()){
			return;
		}
		for(String comandos : getConfig().getStringList("Comandos")){
			if(!e.getMessage().startsWith("/" + comandos)){
				e.setCancelled(true);
			}
		}
	}
	
}

Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

Manda o código que você esta usando.

Eu também estou tentando criar metodos com esse código '-' olha acima o meu.. também não funcionou!

Link para o comentário
Compartilhar em outros sites

Testa ae sla '-'

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
for (String s : getConfig().getStringList("Comando")) {
if (c.equalsIgnoreCase(s)) {
e.setCancelled(true);
// Se o comando da config for igual
} else {
// se não for
}
}
}
Editado por Foxxx
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

 

Testa ae sla '-'

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
for (String s : getConfig().getStringList("Comando")) {
if (c.equalsIgnoreCase(s)) {
e.setCancelled(true);
// Se o comando da config for igual
} else {
// se não for
}
}
}

Está errado..

Ele pediu que os comandos que estiver na config.yml tipo

Comando:
- teste
- g
- tell

seja liberado.. e todos os outros comandos que não estiverem não seja possível digitar..

 

O seu código está fazendo que os plugins que estão na config.yml não seja possível digitar.

Link para o comentário
Compartilhar em outros sites

Cara, se esse código abaixo não funfa não sei.

		String msg = e.getMessage();
		String cmd = msg.split(" ")[0];
		if(Metodos.getStagio() >= 2){
			if(p.hasPermission("tggladiador.staff") || (p.hasPermission("tggladiador.usar.*"))) return;
			if(cmd.equalsIgnoreCase("/gladiador") || (cmd.equalsIgnoreCase("/gladiador info")) ||(cmd.equalsIgnoreCase("/gladiador sair")) || (cmd.equalsIgnoreCase("/help"))) return;
			for(String a : cnf.getStringList("Config.Comandos_Liberados")){
				if(cmd.contains(a)) return;
			}
			e.setCancelled(true);
			p.sendMessage(cnf.getString("Mensagens.Cmd_Bloqueado").replace("&", "§"));
		}
Editado por Trow_Games
Link para o comentário
Compartilhar em outros sites

Está errado..

Ele pediu que os comandos que estiver na config.yml tipo

Comando:
- teste
- g
- tell

seja liberado.. e todos os outros comandos que não estiverem não seja possível digitar..

 

O seu código está fazendo que os plugins que estão na config.yml não seja possível digitar.

'-'...

 

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
for (String s : getConfig().getStringList("Comando")) {
if (c.equalsIgnoreCase(s)) {
// Se o comando da config for igual
} else {
e.setCancelled(true);
// se não for
}
}
}
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

 

'-'...

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
for (String s : getConfig().getStringList("Comando")) {
if (c.equalsIgnoreCase(s)) {
// Se o comando da config for igual
} else {
e.setCancelled(true);
// se não for
}
}
}

Nada :/

 

 

 

Cara, se esse código abaixo não funfa não sei.

		String msg = e.getMessage();
		String cmd = msg.split(" ")[0];
		if(Metodos.getStagio() >= 2){
			if(p.hasPermission("tggladiador.staff") || (p.hasPermission("tggladiador.usar.*"))) return;
			if(cmd.equalsIgnoreCase("/gladiador") || (cmd.equalsIgnoreCase("/gladiador info")) ||(cmd.equalsIgnoreCase("/gladiador sair")) || (cmd.equalsIgnoreCase("/help"))) return;
			for(String a : cnf.getStringList("Config.Comandos_Liberados")){
				if(cmd.contains(a)) return;
			}
			e.setCancelled(true);
			p.sendMessage(cnf.getString("Mensagens.Cmd_Bloqueado").replace("&", "§"));
		}

Não entendi o metodo de uso..

Link para o comentário
Compartilhar em outros sites

Nada :/

 

 

Não entendi o metodo de uso..

Você faz o evento.

@EventHandler
public void abc(PlayerCommandProcessEvent e){
		String msg = e.getMessage();
		String cmd = msg.split(" ")[0];
		if(Metodos.getStagio() >= 2){
			if(p.hasPermission("tggladiador.staff") || (p.hasPermission("tggladiador.usar.*"))) return;
			if(cmd.equalsIgnoreCase("/gladiador") || (cmd.equalsIgnoreCase("/gladiador info")) ||(cmd.equalsIgnoreCase("/gladiador sair")) || (cmd.equalsIgnoreCase("/help"))) return;
			for(String a : cnf.getStringList("Config.Comandos_Liberados")){
				if(cmd.contains(a)) return;
			}
			e.setCancelled(true);
			p.sendMessage(cnf.getString("Mensagens.Cmd_Bloqueado").replace("&", "§"));
		}
}
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

q???????

 

Pelo menos vc tem o plugin que executa esses comandos da config? '-'

Eu estou tentando usar o cod '-'

Estou tentando editar o código que o @leonardo para funcionar os comandos de baixo também.

package me.erinaldo.com;

import org.bukkit.Bukkit;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.plugin.java.JavaPlugin;

public class SrComandos extends JavaPlugin implements Listener{
	
	public void onEnable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		saveDefaultConfig();
		b.sendMessage("§3[Comandos] §bIniciando o sistema de comandos");
		Bukkit.getServer().getPluginManager().registerEvents(this, this);
	}

	public void onDisable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		b.sendMessage("§3[Comandos] §cFinalizando o sistema de comandos");
		}

	@EventHandler(ignoreCancelled = true)
	private void onCommandProcess2(PlayerCommandPreprocessEvent e)
	{
		for (String cmd : getConfig().getStringList("Config.Comandos"))
		{
			if (e.getMessage().startsWith("/" + cmd))
			{
				return;
			}
			else
			{
				e.getPlayer().sendMessage("comando desabilitado.");
				e.setCancelled(true);
				return;
			}
		}
	}
	
}

Link para o comentário
Compartilhar em outros sites

 

Eu estou tentando usar o cod '-'

Estou tentando editar o código que o @leonardo para funcionar os comandos de baixo também.

package me.erinaldo.com;

import org.bukkit.Bukkit;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import org.bukkit.plugin.java.JavaPlugin;

public class SrComandos extends JavaPlugin implements Listener{
	
	public void onEnable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		saveDefaultConfig();
		b.sendMessage("§3[Comandos] §bIniciando o sistema de comandos");
		Bukkit.getServer().getPluginManager().registerEvents(this, this);
	}

	public void onDisable(){
		ConsoleCommandSender b = Bukkit.getConsoleSender();
		b.sendMessage("§3[Comandos] §cFinalizando o sistema de comandos");
		}

	@EventHandler(ignoreCancelled = true)
	private void onCommandProcess2(PlayerCommandPreprocessEvent e)
	{
		for (String cmd : getConfig().getStringList("Config.Comandos"))
		{
			if (e.getMessage().startsWith("/" + cmd))
			{
				return;
			}
			else
			{
				e.getPlayer().sendMessage("comando desabilitado.");
				e.setCancelled(true);
				return;
			}
		}
	}
	
}

Mano, se ta fazendo a config certa?

Tenho 99% de certeza que o codigo que eu coloquei ta certo, e você que deve está fazendo algo errado...

 

 

@EDIT:

 

Na config não coloca - e sim assim:

No meu codigo:

Comando:

  /comando1

  /comando2

  /comando3

  /comando4

Editado por Foxxx
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

Mano, se ta fazendo a config certa?

Tenho 99% de certeza que o codigo que eu coloquei ta certo, e você que deve está fazendo algo errado...

 

 

@EDIT:

 

Na config não coloca - e sim assim:

No meu codigo:

Comando:

  /comando1

  /comando2

  /comando3

  /comando4

Ai a config.

#Comandos liberados
Comandos:
- 'login'
- 'register'
Link para o comentário
Compartilhar em outros sites

 

Ai a config.

#Comandos liberados
Comandos:
- 'login'
- 'register'

'-' 

Coloca isso e usa meu codigo:

 

#Comandos liberados

Comando:

  '/comando1'

  '/comando2'

  '/comando3'

  '/comando4'

 

Se não funfa ai sim coloca o - : nem me lembro mais como era e,e

#Comandos liberados

Comando:

  - '/comando1'

  - '/comando2'

  - '/comando3'

  - '/comando4'

Editado por Foxxx
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

'-' 

Coloca isso e usa meu codigo:

 

#Comandos liberados

Comando:

  '/comando1'

  '/comando2'

  '/comando3'

  '/comando4'

 

Se não funfa ai sim coloca o - : nem me lembro mais como era e,e

#Comandos liberados

Comando:

  - '/comando1'

  - '/comando2'

  - '/comando3'

  - '/comando4'

Já tentei.. de várias maneira e não funcionou!

Link para o comentário
Compartilhar em outros sites

Já tentei.. de várias maneira e não funcionou!

A que se foda :

 

 

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
if (c.equalsIgnoreCase(getConfig().getString("Comando1"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando2"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando3"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando4"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando5"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
 
}

 

 

 

Config:

 

Comando1: /cu

..............................

Editado por Foxxx
Link para o comentário
Compartilhar em outros sites

Guest » MickCraft «

A que se foda :

 

 

@Override
public void onEnable() {
Bukkit.getPluginManager().registerEvents(this, this);
}
@EventHandler
public void a(PlayerCommandPreprocessEvent e) {
String c = e.getMessage();
if (c.equalsIgnoreCase(getConfig().getString("Comando1"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando2"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando3"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando4"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
if (c.equalsIgnoreCase(getConfig().getString("Comando5"))) {
//igual
} else {
//diferente
e.setCancelled(true);
}
 
}

 

 

 

Config:

 

Comando1: /cu

..............................

Osh.. assim o java pegava várias linhas..

Link para o comentário
Compartilhar em outros sites

Main.java

package me.mrpowergamerbr.powercomandos;
/*
 * Códigozinho criado por MrPowerGamerBR
 *
 * Tópico: http://gamersboard.com.br/topic/6297-comandos-liberados/
 *
 * MrPowerGamerBR Blog: http://mrpowergamerbr.blogspot.com.br
 * SparklyPower: http://sparklypower.net
 */
import java.util.ArrayList;
import me.mrpowergamerbr.powercomandos.listeners.CommandListener;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin implements Listener {
    public static ArrayList<String> meusComandos = new ArrayList<String>();
    
    @SuppressWarnings("unchecked")
    @Override
    public void onEnable() {
        saveDefaultConfig();
        meusComandos = (ArrayList<String>) getConfig().getList("Config.Comandos");
        Bukkit.getPluginManager().registerEvents(new CommandListener(), this);

    }

    @Override
    public void onDisable() {
    }

    @SuppressWarnings("unchecked")
    public boolean onCommand(final CommandSender sender, Command command, String label, String[] args) {
        if (command.getName().equalsIgnoreCase("powercomandosreload")) {
            if (sender.hasPermission("wow.suchpermission.veryexample")) {
                meusComandos = (ArrayList<String>) getConfig().getList("Config.Comandos");
                sender.sendMessage("Config recarregada!");
                return true;
            } else {
                sender.sendMessage("Sem Permissão!");
                return true;
            }
        }
        return false;
    }
}

CommandListener.java

package me.mrpowergamerbr.powercomandos.listeners;
/*
 * Códigozinho criado por MrPowerGamerBR
 *
 * Tópico: http://gamersboard.com.br/topic/6297-comandos-liberados/
 *
 * MrPowerGamerBR Blog: http://mrpowergamerbr.blogspot.com.br
 * SparklyPower: http://sparklypower.net
 */
import me.mrpowergamerbr.powercomandos.Main;

import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;

public class CommandListener implements Listener {

    @EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
    public void onCommand(PlayerCommandPreprocessEvent e) {
        for (String s : Main.meusComandos) {
            if (e.getMessage().toLowerCase().startsWith(s)) {
                return;
            }
        }
        e.setCancelled(true);
        e.getPlayer().sendMessage("Você não pode enviar este comando!");
        return;
    }
}

config.yml

Config:
    Comandos:
        - "/wow"
        - "/login"
        - "/register"
        - "/msg"
        - "/online"

Porque vocês ficam colocando para ficar pegando a config TODA HORA que alguém escreve um comando? Vocês querem que o TPS dos seus Servidores fiquem em somente um dígito feras?

 

Antes de reclamar que não funciona, eu TESTEI e FUNCIONOU no Spigot 1.7.10, se não funciona na 1.5.2... Bem, sabia que já lançaram a 1.8?

 

EDIT: 600 posts!

Editado por MrPowerGamerBR
Link para o comentário
Compartilhar em outros sites

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