Paste #17542: quest

Date: 2015/07/07 14:06:25 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


tyrithiannpc:
  type: assignment
  interact scripts:
  - 30 tyrithian

"tyrithian":
  type: interact
  steps:
    1:
      click trigger:
        script:
        - chat "<dark_aqua>Hello <player.name>."
        - narrate "<italic><npc.name> nods To Player"
    2:
      click trigger:
        script:
        - chat "<dark_aqua><player.name>..."
        - wait 1
        - chat "<dark_aqua>That sounds familiar. Oh yes! I know who you are."
        - wait 1        
        - chat "<dark_aqua>You are the one that assisted our people to the east are you not?"
        - wait 2
        - narrate "<italic><npc.name> take a good look at you curiously."
        - wait 1
        - chat "<dark_aqua>You could be a fine addition to our little town, perhaps I shall take you under my wing"
        - wait 3
        - chat "<dark_aqua>Are you interested?"
        - ^narrate "<red>Say<&co>"
        - ^narrate "  <blue>Yes<blue> <gray>or<red> No"
      chat trigger:
        'Start Questline':
          Trigger: /Yes/, please allow me to prove myself.
          script:
          - chat "<dark_aqua>Alright <player.name>, I want you to bring me a horse on a lead."
          - wait 2
          - chat "<dark_aqua>Bring it right back to me when you find one."
          - title stay:3s 'subtitle:<&a>Horse Retrieval Started' 
          - ^zap step:3 
        'Deny Questline':
          Trigger: /No/, I can not do that right now.
          script:
          - chat "<aqua>Be well."

          'What did you say':
            trigger: /REGEX:\w+/
            script:
            - chat "<aqua><white><player.name><yellow>, I don<&sq>t what <&sq><white><context.message><yellow><&sq> means."
            - ^narrate "<red>Say<&co>"
            - ^narrate "  <white>[<blue>Yes<blue> <gray>or<red> No<white>]" 

    3:
      click trigger:
        script:
        - if <npc.location.find.entities[HORSE].within[5].size> >= 1 {
          - foreach <npc.location.find.entities[HORSE].within[4]> {
            - if <%value%.get_leash_holder> == <player> {
              - engage
              - chat "<dark_aqua>What a beautiful creature!"
              - wait 2
              - chat "<dark_aqua>Let me get a post in, give me just a second."
              - wait 1
              - animate <npc> animation:ARM_SWING
              - modifyblock <l@-1020,94,-1056,test> m@fence
              - leash %value% holder:l@-1020,94,-1056,test 
              - wait 1
              - chat "<dark_aqua>Great job <player.name>, I have one final quest for you to prove yourself."
              - wait 3
              - chat "<dark_aqua>Take this for your time before continuing your journey."
              - give i@fish qty:25
              - give money qty:2000
              - give xp qty:200
              - narrate "<italic>You have received $2000, 200 xp and 25 fish!"
              - disengage
              - ^zap step:4 script:tyrithian
              - run s@cleanuphorse delay:1m
              - queue clear
              }
            }
          }
        - chat "<dark_aqua>To continue your questline you must bring me a horse."
        - wait 1
        - chat "<dark_aqua>Now go on <player.name>, come talk to me when you have a horse."


cleanuphorse:
  type: task
  script:
  - remove <npc.location.find.entities[HORSE].within[3]>
  - modifyblock <l@-1020,94,-1056,test> m@air


cleanuphorseworld:
  type: world
  events:
    on server start:
    - if <l@-1020,93,-1056,test.material> == m@fence {
      - modifyblock <l@-1020,94,-1056,test> m@air
      }