0.8 banker with addons (german)


Author: Felln
Created: 2013-04-19T11:19:49-0400
Edited: 2013-08-28T21:27:54-0400
Denizen Version: 0.8
Views: 45
Downloads: 815
Likes: 0


WGET
Description: some little addons for the banker!

adds interest every 10 hours on login 3% (easy changable)

Player loose their money if its not in the bank on death

an atm machine which is a box build around an npc

u gotta set a location for the atm with
/notable add --name 'GeldA1'

update:
player loose their money on death as an goldnuggetitem which can be picked up by other players

(changed the procedure scripts into task scripts cause i couldnt deal with them)

"Test":
  type: world

  events:
    on walked over GeldA1:
      - if <flag.p:Geldautomat> == ! runtask 'Geldautomatansage'
    on player join:
      - if '<flag.p:zinsenerhalten || none>' == none && !'<flag.p:inbank_money || none>' == none && <flag.p:inbank_money> > 0 runtask 'zinsen'
    on player death:
    - NARRATE 'Du hast all dein Geld verloren!'
    - EXECUTE ASSERVER 'money set <player.name> 0'
    - ^flag global Gelditemzahl:+:1
    - ^flag global 'Gelditem<flag.g:Gelditemzahl>:<player.money.asint>'
    - ^drop Gelditem   
    on player pickup item:
    - if <context.item.scriptname> == Gelditem && <player.inventory.stacks> < 36 {
      - give money qty:<context.item.display>
      - random 5
      - narrate 'Du hast <context.item.display.asint> Taler gefunden'
      - narrate 'Nicht schlecht...<context.item.display.asint> Taler...'
      - narrate 'Du hebst <context.item.display.asint> Taler auf'
      - narrate 'Du findest <context.item.display.asint> Taler auf dem Boden'
      - narrate '<context.item.display.asint> Taler'
      - run gelditemnehmen delay:1t
      - determine fulfilled
      - NARRATE 'Du hast all dein Geld verloren!'
      - EXECUTE ASSERVER 'money set <player.name> 0'
 
# Change the 3 in "- flag 'zinsen:*:3' in What percentage u like

'Zinsen':
  type: task
  script:
  - flag 'zinsen:<flag.p:inbank_money.asint>'
  - flag 'zinsen:/:100'
  - flag 'zinsen:*:3'
  - flag 'inbank_money:+:<flag.p:zinsen.asint>
  - flag 'zinsenerhalten' duration:600m
  - NARRATE 'Du hast 3% Zinsen erhalten. (<flag.p:zinsen.asint>)'
  
'Geldautomatansage':
  type: task
  script:
  - ^flag Geldautomat duration:120
  - NARRATE 'Willkommen an einem unserer Geldautomaten in Tupferlkirchen!'
  - WAIT 1
  - NARRATE 'Möchtest du <gold>auszahlen<white> oder deinen <gold>Kontostand<white> abfragen?'
 
#BANKER NPC 

"bankerass":
  type: assignment

  interact scripts:
  - 00 bankerguest
  - 10 bankerbauer
  - 20 banker_script

  actions:
    on assignment
    - trigger name:click toggle:true
    - trigger name:chat toggle:true
    
'bankerguest':
  type: interact
  Requirements:
    Mode: All
    List:
    - ingroup 'default'
  Steps:
    1:
      Click trigger:
        script:
        - CHAT "Als Gast darfst du leider noch kein Konto eröffnen. Mache die Führung am Dorfplatz in der Altstadt!"
    
'bankerbauer':
  type: interact
  Requirements:
    Mode: All
    List:
    - ingroup 'builder'
  Steps:
    1:
      Click trigger:
        script:
        - CHAT "Als Bauer darfst du leider noch kein Konto eröffnen. Baue ein zum Dorf passendes Haus in der Altstadt und lasse dich zum Bürger befördern!"

'banker_script':
  type: interact
  Requirements:
    Mode: any 1
    List:
    - ingroup 'Kaiserin'
    - ingroup 'obermotz'
    - ingroup 'madame'
    - ingroup 'Buerger'
  steps:
    'announce banker*':
       click trigger: 
           script:
           - chat "Hallo, <PLAYER.name>! Willkommen in der Bank von Tupferlkirchen!"
           - WAIT 2
           - chat "Willst du ein Konto &5eröffnen&2, &5auszahlen&2, &5einzahlen&2 oder deinen &5Kontostand&2 überprüfen?" 
       chat trigger: 
         1:
           trigger: Ich möchte bitte ein Konto /eröffnen/!
           script:
           - if '<flag.p:inbank_money || none>' == none runtask 'Beröffnen' else CHAT "Ich sehe du hast bei uns schon ein Konto! Mehrere sind nicht erlaubt!"
         2:
           trigger: Ich möchte mir bitte Geld /auszahlen/ lassen!
           script:
           - if '<flag.p:inbank_money || none>' == none CHAT "Du musst erst ein Konto eröffnen!" else runtask 'Bauszahlen'
         3:
           trigger: Ich möchte bitte Geld auf mein Konto /einzahlen/!
           script:
           - if '<flag.p:inbank_money || none>' == none CHAT "Du musst erst ein Konto eröffnen!" else runtask 'Beinzahlen'
         4:
           trigger: Ich möchte meinen /Kontostand/ wissen!
           script:
           - runtask 'showhowmany'

    'deposit':
      click trigger:
        script:
        - CHAT "Na? Wieviel willst du einzahlen?"
      chat trigger:
        1:
          trigger: /REGEX:^\d+$/
          script:
          - ^zap 'step:announce banker'
          - ^if '<player.money.asint>' >= <player.chat_history> runtask 'deposit procedure' else chat "So viel hast du leider nicht!"
          - ^if '<player.money.asint>' >= <player.chat_history> CHAT "Ganz wie du willst!"

    'take':
      click trigger:
        script:
        - CHAT "Wieviel solls denn sein?"
      chat trigger:
        1:
          trigger: /REGEX:^\d+$/
          script:
          - ^zap 'step:announce banker'
          - if '<flag.p:inbank_money>' >= <player.chat_history> runtask 'take procedure' else chat "Leider hast du nicht so viel auf deinem Konto!"
          - if '<flag.p:inbank_money>' >= <player.chat_history> CHAT "Selbstverständlich! Hier Bitteschön!"

'Beröffnen':
  type: task
  script:
  - flag inbank_money:20
  - CHAT "Meinen Glückwunsch! Du hast soeben ein Bankkonto eröffnet. Wir haben dir 20 coins als Willkommensgeschenk überwiesen."

'Bauszahlen':
  type: task
  script:
  - CHAT "Wieviel möchtest du gerne abheben?"
  - ZAP step:take script:banker_script

'Beinzahlen':
  type: task
  script:
  - CHAT "Wieviel?"
  - ZAP step:deposit script:banker_script

'showhowmany':
  type: task
  script:
  - zap 'step:announce banker' script:banker_script
  - if <flag.p:inbank_money> == 0
    chat "Dein Konto ist Komplett leer!"
  - if '<flag.p:inbank_money || none>' == none Chat "Du besitzt kein Konto bei uns." else if <flag.p inbank_money> > 0 chat "Dein Kontostand beträgt <^flag.p:inbank_money.asint>." 
  
'deposit procedure':
  type: task
  script:
  - flag player 'inbank_money:+:<player.chat_history>'
  - take money qty:<player.chat_history>
  - NARRATE 'Kontostand <flag.p:inbank_money.asint>.'
  
'take procedure':
  type: task
  script:
  - flag player 'inbank_money:-:<player.chat_history>'
  - give money qty:<player.chat_history>
  - NARRATE 'Restkontostand <flag.p:inbank_money.asint>.'
 
#ATM NPC

"Geldautomatass":
  Type: assignment

  interact scripts:
    - 10 Geldautomat

"Geldautomatass":
  Type: assignment

  interact scripts:
    - 10 Geldautomat

'Geldautomat':
  Type: Interact
  Requirements:
    Mode: None
  Steps:
    1:
      Chat Trigger:
        1:
          Trigger: /Kontostand/
          Script:
          - if <flag.p:inbank_money> == 0 Narrate 'Dein Konto ist Komplett leer!'
          - if '<flag.p:inbank_money || none>' == none Narrate 'Du besitzt kein Konto bei uns.' else if <flag.p:inbank_money> > 0 NARRATE 'Kontostand <^flag.p:inbank_money.asint>.'
  
        2:
          Trigger: /auszahlen/
          Script: 
          - if '<flag.p:inbank_money || none>' == none NARRATE 'Du besitzt kein Konto!' else if <flag.p:inbank_money> > 0 runtask 'Geldautomatauszahlung' 
    2:
      Chat Trigger:
        1:
          Trigger: /REGEX:^\d+$/
          Script:
          - zap 1
          - if '<flag.p:inbank_money>' >= <player.chat_history> runtask 'take procedure' else if '<flag.p:inbank_money>' < <player.chat_history> NARRATE 'Leider hast du nicht so viel auf deinem Konto!'
          - if '<flag.p:inbank_money>' >= <player.chat_history> NARRATE 'Auszahlung erfolgreich'

'Geldautomatauszahlung':
  Type: task
  script:
  - ZAP 2 script:Geldautomat duration:30
  - NARRATE 'Auszahlungsbetrag eingeben'      

gelditemnehmen:
  type: task
  script:
  - take Gelditem
 
     
Gelditem:
  type: item
  material: 371
  display name: <flag.g:Gelditem<flag.g:Gelditemzahl>>
  lore:
  - Taler waren in diesem Geldbeutel
  - Jetzt ist er leer...
 
 
 




Comments
2013-08-21 02:00:32 - WrennAmethyst:

I would love to see this translated :)