[QUEST] skill_reset2 100% like GameForge

Topic created · 2 Mensajes · 1064 Visitas
  • Buenas gente

    Como sabéis, pertenezco al Panamera y por lo tanto lo mio es el Old Style.
    Mientras estaba traduciendo alguna quest para conseguir una similitud más grande al Metin2 ES me di cuenta que la quest skillreset2 que todos tenemos es muy antigua. Lo que he echo es actualizarla y hacerla 100% igual a GameForge.

    Sé que este aporte es muy pequeño y habrá muchos que no lo sabrán apreciar, aun así tengo la esperanza que aún haya gente Old Style.

    El funcionamiento y los comentarios son calcados al ES.

    Bueno, pues aquí la quest

    quest skill_reset2 begin
    state start begin
      when oldwoman.chat."Restablecer habilidades" begin
      
       if pc.get_level() > 30 then
        say_title("Anciana:")
        say("Tu nivel es "..pc.get_level()..". No puedo ayudarte. Con este")
        say("nivel, no puedes cambiar más tus habilidades.")
        say("Sólo si estás por debajo del nivel 30 puedes")
        say("escoger otra habilidad.")
        return
       end
      
       if pc.get_skill_group() == 0 then
        say_title("Anciana:")
        say("¡Todavía no has empezado ningún entrenamiento!")
        say("Mientras no gastes ningún punto de habilidad, no")
        say("podrás restablecerlas. Vuelve cuando")
        say("hayas echo algún error durante tu entrenamiento,")
        say("entonces sí estaré encantada de ayudarte.")
        return
       end
      
       local coste = pc.level * 4000
      
       say_title("Anciana:")
       say("Hola, has venido al sitio correcto. Tus ojos")
       say("muestran mucho dolor. Permito a las personas")
       say("olvidar sus habilidades para que puedan empezar")
       say("de nuevo. ¿Quieres olvidar tus habilidades y")
       say("empezar de nuevo? Cuesta "..coste.." Yang.")
       local s = select("Restablecer habilidades","No restablecer")
      
        if s == 1 then
         if pc.money < coste then
          say_title("Anciana:")
          say("No tienes suficiente Yang. No puedo ayudarte;")
          say("necesito el dinero para sobrevivir.")
         else
          pc.changegold(-coste)
          pc.set_skill_group(0)
         end
        end
      
        if s == 2 then
         say_title("Anciana:")
         say("Si cambias de opinión, vuelve a visitarme.")
        end
      end
    end
    end
    

    Y como me sabe a poco, voy a explicaros el funcionamiento de la quest para los que están aprendiendo a hacerlas.

    La quest empieza con una opción de chat a oldwomen. El npc oldwomen pertenece a la id 9006, es decir, la anciana.
    Justo empezar nos encontramos la condición pc.get_level > 30, es decir, si el jugador es mayor de nivel 30 nos mostrará un texto y el when quedará cerrado con el return.
    La siguiente condición, solo se alcanzará si el jugador no cumple la primera condición, es pc.get_skill_group() == 0. Si el número de las habilidades del jugador es 0, no tiene habilidades, nos mostrará otro texto y el when quedará cerrado con el return.
    Si el jugador no cumple ninguna de las anteriores condiciones, podríamos decir que puede utilizar la quest.
    Lo primero que hace la quest es asignar un número a "coste" que será el nivel del pj multiplicado por 4000 (pc.level * 4000).
    Nos mostrará un texto y una selección. Si seleccionamos la primera opción y la cantidad de yang del usuario es mayor al número que hemos asignado con "coste", nos asignará nuestras habilidades a 0 y nos restará el coste, es decir, podremos volver a elegir habilidades.

    Pues eso es todo, espero que aprendáis algo con esto los que están iniciando en las quest.

    Un saludo

  • si me funciona te llebas tus Gracias