Paste #37251: Edit of P#37250 - Diff note for paste #37249

Date: 2016/10/28 16:39:40 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


# -------------------
# Written by Aristos
# -------------------
#  /npc create xy
#  /npc assign --set MerionASS
# -------------------

'MerionAss':
    type: assignment

    interact scripts:
    - 10 MerionInteract

# -------------------
# Preise
# -START-
    default constants:
      ClaimPrice: 10
      ClaimBlockReward: 1
# -END-
# -------------------

    actions:
        on assignment:
        - trigger name:click toggle:true

'MerionInteract':
    type: interact

    steps:
      'MerionGreeting*':
          Proximity Trigger:
              entry:
                script:
                - CHAT "<gold><npc.name><&co><white> Hallo! Willkommen im Amt für Expansion!"
          click trigger:
              script:
              - ^engage
              - if <player.flag[Merion]> {
                - narrate "Ach, Ihr seid es <player.name>!"
                - wait 1
                - narrate "<white>Wenn Ihr weitere <red>Claims<white> erwerben wollt, seid Ihr bei mir richtig"
                - narrate "<white>Oder braucht Ihr eine <red>Anleitung<white> zum setzten eures Claims?"
                - ^zap step:TradeTime
                - ^disengage
                } else {
                - wait 1
                - narrate "<gold><npc.name><&co><white> Seid gegrüßt Sire!"
                - wait 1
                - narrate "<white>Ich bin <npc.name>. Landverwalter seiner Excellenz des Kaisers"
                - narrate "<gold><npc.name><&co><white> Ihr solltet Wissen: Delos ist ein junger Teil des Kaiserreichs"
                - narrate "<white>Wir verlangen von den Siedlern keine Steuern, jedoch einmaligen Tribut."
                - wait 1
                - narrate "<white>Wenn Ihr weitere <red>Claims<white> erwerben wollt, seid Ihr bei mir richtig"
                - narrate "<white>Oder braucht Ihr eine <red>Anleitung<white> zum setzten eures Claims?"
                - wait 2
                - narrate "<gray>Tipp: Rote Worte sind Signalwörter. Sagt <red>Claims<gray> oder <red>Anleitung<gray> zu <npc.name>"
                - ^flag player Merion
                - trigger name:chat toggle:true radius:5
                - ^disengage
                chat trigger:
                     'Claim':
                         trigger: <gold><player.name><&co><white> Ich möchte /Claim/s erwerben, <npc.name>
                         script:
                         - ^engage
                         - wait 2
                         - narrate "<white>Derzeit verlangen wir <gold><npc.constant[MoneyRequ]> Silber <white> für einen Claim."
                         - trigger name:chat toggle:false
                         - ^zap step:TradeTime
                         - ^disengage
                     'Hilfe':
                         trigger: /REGEX:^\w+$/
                         script:
                         - ^engage
                         - ^execute as_player "kit hilfe"
                         - narrate "<white>Diese Bücher sollten Euch weiter helfen. Achtet beim Bau darauf, nicht zu nahe"
                         - narrate "<white>bei anderen Siedlern zu bauen. Manche errichten ja ganze Städte mit der Zeit!"
                         - wait 1
                     'Other':
                   trigger: /REGEX:^\w+$/
                   script:
                         - ^engage
                         - wait 1
                         - narrate "<npc.name> sieht Euch irritiert an. Vielleicht sagt Ihr nicht das, was er hören will?"
                         - trigger name:chat toggle:false
                         - ^zap step:SayingHi
                         - ^disengage
                }
# Zweiter Besuch
      'MerionBusiness':
          chat trigger:
            'Claim':
                trigger: <gold><player.name><&co><white> Ich möchte /Claim/s erwerben, <npc.name>
                script:
                - ^engage
                - wait 2
                - narrate "<gold><npc.constant[MoneyRequ]> Silber <white> für einen Claim."
                - trigger name:chat toggle:false
                - ^zap step:TradeTime
                - ^disengage
            'Hilfe':
                trigger: /REGEX:^\w+$/
                script:
                - ^engage
                - ^execute as_player "kit hilfe"
                - narrate "<white>Diese Bücher sollten Euch weiter helfen. Achtet beim Bau darauf, nicht zu nahe"
                - narrate "<white>bei anderen Siedlern zu bauen. Manche errichten ja ganze Städte mit der Zeit!"
                - wait 1
            'Other':
                trigger: /REGEX:^\w+$/
                script:
                - ^engage
                - wait 1
                - narrate "<npc.name> sieht Euch irritiert an. Vielleicht sagt Ihr nicht das, was er hören will?"
                - trigger name:chat toggle:false
                - ^zap step:SayingHi
                - ^disengage

      'TradeTime':
          click trigger:
              script:
              - ^engage
              - wait 1
              - narrate "<gold><npc.name><&co><white> Wie viele Claims wollt Ihr kaufen?"
              - ^execute as_player "balance"
              - trigger name:chat toggle:true radius:5
              - ^disengage
          chat trigger:
            'Agree':
                trigger: /regex:([0-9])+/ 
                script:
                  - define price <context.message.mul[<npc.constant[CLAIMPRICE]>]>
                  - if <def[price]> >= <player.money> {
                    - take money quantity: def[price]
                    - ^execute as_npc "acb <player.name> <def[Price]>"
                    } else {
                    - narrate "<gold><npc.name><&co><white> Du hast nicht genug Geld, <player.name>!"
                    - trigger name:chat toggle:false
                    - ^disengage
                    }
            'Other':
                trigger: /REGEX:^\w+$/
                script:
                - ^engage
                - wait 1
                - narrate "<gold><npc.name><&co><white> Bitte sagt eine Zahl"
                - trigger name:chat toggle:false
                - ^disengage