"> Foro - Argumentos en la programacion en Ayuda y soporte - Page 1 of 1
Noviembre 22, 2024, 07:19:21 am
Visitante

Autor Tema:  Argumentos en la programacion  (Leído 2142 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Abril 10, 2015, 08:02:33 pm

ThevioNoob




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MinecraftMin, el mejor foro Español!
  • Actividad

  • 0%
  • Logros

Más información

Hola gente, tengo un pequeño problema con la programación, estoy iniciándome y no se como funciona muy bien lo de los argumentos, solo se hacer que el argumento sea un jugador, pero no se hacer que el argumento sea la id de un bloque, por ejemplo, quiero hacer un comando que cree una plataforma, y que el argumento sea el bloque del cual este formada la plataforma. Por si es util, os voy a decir que el plugin en el que trabajo es para spigot 1.8, y uso NetBeans para programar.
Gracias

Linkback: https://minecraftmin.net/index.php?topic=9627.0


Respuesta #1 Abril 11, 2015, 11:39:55 am

Sargock




  • Desconectado

  • *

    • *
    • *
    • *
  • Actividad

  • 0%
  • Logros

Más información

Saludos,

Si te he entendido correctamente, lo que quieres es en un comando escribir una ID de un bloque para luego poder usarla en tu código como si fuese un material.

Demos el caso de que estas intentado usar el comando siguiente
Código: [Seleccionar]
/commando <ID>
En caso de que quieras hacerlo definiendo ID = String, es decir, tu caso (Ya que estás trabajando en Spigot 1.8 )
Código: [Seleccionar]
   
     String id = args[0];
     Material mplataforma = Material.getMaterial(id);


Y usas ahora "mplataforma" como el bloque de la plataforma.

Si luego quisieses adaptarlo a ID = Int, usa el siguiente código.
Código: [Seleccionar]
int id;
     try {
id = Integer.parseInt(args[0]); // Definir la variable.

        Material materialplataforma = Material.getMaterial(id); // Corregido, fallo mio. Gracias Alfo.

} catch (NumberFormatException ex) { // Detectar error, en caso de una ID incorrecta.
player.sendMessage(ChatColor.DARK_RED + "ID incorrecta: " + args[0]);
return true;
}
               

Y usas ahora "mplataforma" como el bloque de la plataforma.
Espero haberte ayudado, si tienes más dudas hazlo saber. :)
« Última modificación: Abril 16, 2015, 08:02:37 pm por Sargock »



Respuesta #2 Abril 16, 2015, 11:39:18 am

Alfomega




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Ingeniero informático
  • Actividad

  • 0%
  • Logros

Más información

Tienes que tener en cuenta que todo lo que te da el comando son strings, por lo que si quieres hacer cuaquier cosa tienes que ver si te sirve o no el string.


Código: [Seleccionar]
int id;
     try {
id = Integer.parseInt(args[0]); // Definir la variable.
} catch (NumberFormatException ex) { // Detectar error, en caso de una ID incorrecta.
player.sendMessage(ChatColor.DARK_RED + "ID incorrecta: " + args[0]);
return true;
}
               
    Material materialplataforma = Material.getMaterial(id);


Tienes que meter la línea del material dentro del try o la ejecutará aunque de error, dando otro error.
https://i.imgur.com/cFX0ssZ.png





Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

exclamation
Problema con argumentos.

Iniciado por DarkShadoW22MC

2 Respuestas
2298 Vistas
Último mensaje Mayo 09, 2015, 12:13:01 am
por DarkShadoW22MC
thumbup
Ayuda de programacion

Iniciado por javihunt100

1 Respuestas
1654 Vistas
Último mensaje Marzo 18, 2015, 10:39:32 pm
por Sargock
xx
Preguntas sobre programación de plugins.

Iniciado por gaelito

5 Respuestas
3339 Vistas
Último mensaje Febrero 11, 2015, 04:05:23 pm
por gaelito