[Script] Sistema de Crafteo



Sistema de Crafteo


 Autor: Nyaruko(Antes conocida como Painkiller97)

Recursos

https://mega.nz/#!1JFkSKbb!L9q-oXjt2XWWQLnQ0hGS8NFttjhjq_gm86qEvk6k6f4 

Instrucciones Crafteo


Lo primero será crear una nueva sección en los scripts por encima de Main, ahí se pegaría el código que va en la carpeta de descarga. La carpeta de gráficos iría dentro de Pictures.

Empecemos por el crafteo por suerte. En las primeras líneas del script hay dos métodos, def pbChooseItem1 y def pbChooseItem2, en las lineas 4 y 9 respectivamente, ahí veis que hay la siguiente linea  pbChooseItemFromList(_I("Elige un objeto"),1,:POTION,:SUPERPOTION,:HYPERPOTION,:FULLHEAL) En ambos métodos tenéis que poner los objetos crafteables en el mismo formato en el que sale en el ejemplo, (los 4 que puse son de prueba, se pueden cambiar tranquilamente).

Ahora tenéis que ir a la linea 187 y veréis este trozo de código elsif  @chosentm1 == PBItems::HYPERPOTION && @chosentm2 == PBItems::FULLHEAL && $PokemonBag.pbQuantity(:HYPERPOTION)>= 1  && $PokemonBag.pbQuantity(:FULLHEAL)>= 1
           pbSEPlay("select")
           $PokemonBag.pbDeleteItem(:HYPERPOTION,1)
           $PokemonBag.pbDeleteItem(:FULLHEAL,1)
           Kernel.pbReceiveItem(:FULLRESTORE)
Tenéis que copiar ese elsif y pegarlo justo donde el pbReceiveItem, en el @chosentm1 = ponéis el ingrediente uno con el que saldría un objeto, y con el @chosentm2 = idem, quedando como en el ejemplo, podeis poner por ejemplo que una Poción y un Eter forma un Elixir o lo que queráis. En $PokemonBag.pbDeleteItem poneis los objetos que habéis usado en la mezcla para que los reste de la mochila, si es como en el caso de la creación de la superpoción que usa dos objetos iguales ponéis una linea pero que reste dos objetos, y en la condición de $PokemonBag.pbQuantity(:HYPERPOTION)>= 1 cambiáis el objeto por el que useis para indicarle que solo haga la mezcla si es mayor que uno, que dos en caso de que se usen dos objetos iguales como ingredientes.
Y al final ponéis Kernel.pbReceiveItem con el objeto que queráis, siguiendo el mismo formato que en el ejemplo, y todo debe estar encima de este trozo de código else
           pbSEPlay("select")
           Kernel.pbMessage("No se pudo hacer la combinación.")
         end

Con esto estaría la parte del crafteo por suerte, ahora pasemos a las recetas. Lo primero sería crear las recetas como objetos, pueden ser objetos normales, clave o lo que queráis, recomiendo poner en la descripción del item los materiales que usa. Ahora en el script vais a la linea 14 y veréis el siguiente método def pbChooseRecipe
   @chosenrecipe = pbChooseItemFromList(_I("Elige una Receta"),1,:RECETASUPER,:RECETAFULL)
   @recipechosen = true
end  

Aquí puse como ejemplo dos recetas que hice para la superpoción y para el restaura todo. Ahora vais a la linea 277 y hacemos como en el paso anterior con los elsif.

elsif @chosenrecipe == PBItems::RECETAFULL && $PokemonBag.pbHasItem?(:HYPERPOTION) && $PokemonBag.pbHasItem?(:FULLHEAL) && $PokemonBag.pbQuantity(:HYPERPOTION)>= 1 && $PokemonBag.pbQuantity(:FULLHEAL)>= 1
             pbSEPlay("select")
             $PokemonBag.pbDeleteItem(:HYPERPOTION,1)
             $PokemonBag.pbDeleteItem(:FULLHEAL,1)
             Kernel.pbReceiveItem(:FULLRESTORE)

El RECETAFULL lo cambiaríais por la receta que queréis que se use, en los pbHasItem? ponéis los materiales que usa esa receta, y con los pbQuantity hacéis lo mismo que en el paso anterior, al igual que con los pbDeleteItem y el objeto que sale como resultado de la mezcla. Y por último para llamar al sistema tenéis que poner en un script de evento CraftScene.new.pbStartMainScene

Esto ha sido todo, si tenéis alguna duda podéis preguntármela por el discord de la comunidad por ejemplo ^^

 


Comentarios

  1. Respuestas
    1. Ve paso a paso y siguiendo las instrucciones. Para abrir lo scripts tienes que darle a uno de los iconos en la zona del play, la base de datos y demás. Para buscar, usa ctrl+shift+f

      Eliminar
  2. No me permite seleccionar ni objetos, ni recetas y si dejo los RECIPESUPER crashea el juego

    ResponderEliminar
  3. El archivo del mega esta caido. ¿Hay forma de resolverlo?

    ResponderEliminar

Publicar un comentario