[Risolto] Argomenti dei comandi.

Ciao ragazzi, ho un piccolo problema.
Sto creando un plugin che necessita all'incirca di 7-8 args diversi, che si devono basare tutti sul comando principale
che in questa discussione chiamerò "/plugin"

Ho creato una classe chiamata "PluginCMD" che implementa CommandExecutor e per evitare di avere un codice caotico (e cioè di dover mettere tutte le args in una unica classe) ho pensato di dividere tutti i vari args in altre classi esterne a PluginCMD, quindi:

PluginCMD
Create
Disable
Enable
ecc...

e io ho bisogno che controlli ogni volta che viene eseguito il comando /plugin, se ci sono args e, se ci sono, se corrispondono a quelle che servono.
Ma il vero problema è che per alcuni comandi come /plugin create, ho bisogno di args che non siano stringhe, come per esempio un int. Quindi questo preclude la possibilità di utilizzare l'evento "PlayerCommandPreProcessEvent", perchè anche a controllare costantemente se il messaggio inizia con /plugin ecc ecc..., non si puo controllare se questo abbia come ultimo argomento un int, dato che il metodo "e.getMessage().endsWith()" funziona solo se finisce con una stringa.
Ho provato a cercare sui bukkit forums, ma gli unici thread che ho trovato sono di diversi anni fa, e dubito onestamente che funzionino ancora.

Qualche consiglio?
Allora, io dopo aver verificato che il comando principale è /plugin e che c'è almeno 1 argomento, farei così:
Codice:
switch (args[0]) {
  case "create":
    <azioni>
    break;
  case "toggle":
    <azioni>
    break;
  <ecc.>
}

Per quanto riguarda la funzione "e.getMessage().endsWith()", metti l'1 fra 2 virgolette ("1"). (Modificato 01/05/2016, 18:34 da Maxetto.)
Se ti sono stato d'aiuto, mi offriresti una birra?
[Immagine: dona-con-paypal.png]

[Immagine: banner.png]
@Maxetto
Il problema è che l'int o comunque l'argomento non-stringa è praticamente sempre una variabile, quindi non funzionerebbe come hai detto tu, per la verifica del comando e degli args dovrei essere riuscito a trovare qualcosa io.
01/05/2016, 18:38Federico7thebest ha scritto: @Maxetto
Il problema è che l'int o comunque l'argomento non-stringa è praticamente sempre una variabile, quindi non funzionerebbe come hai detto tu, per la verifica del comando e degli args dovrei essere riuscito a trovare qualcosa io.

<variabile>.toString()
Se ti sono stato d'aiuto, mi offriresti una birra?
[Immagine: dona-con-paypal.png]

[Immagine: banner.png]
@Maxetto
Non ci avevo pensato, grazie! Big Grin
Discussioni simili
Discussione: Autore Risposte: Letto: Ultimo
[Release] Welcome to HelpStaff | Il primo software che aiuta lo staff dei server! Gionatan 10 474 11/05/2017, 17:40
Ultimo: C0mm4nd_
[Domanda] Licenze, trattamento dei dati personali sensibili MarcoBuster 8 428 27/06/2016, 20:26
Ultimo: MarcoBuster
[Problema] Problema con dei blocchi xFire 5 260 28/04/2016, 20:07
Ultimo: Nickframe76

Utente(i) che stanno guardando questa discussione: 1 Ospite(i)