Paste #118814: Deposit

Date: 2023/12/21 08:43:53 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


gem_deposit_handler:
    type: world
    debug: true
    events:
        on player clicks gem_filler_item in gem_deposit_inventory:
            - determine cancelled
        after player drags item_flagged:currency in gem_deposit_inventory:
            - if <context.clicked_inventory.script.exists>:
                - if <context.slot> <= 27:
                    - determine cancelled
                - else:
                    - define quantity <context.clicked_inventory.quantity_item[gems]>
                    - take item:gems quantity:<[quantity]> from:<context.clicked_inventory>
                    - flag <player> gem_bank:+:<[quantity]>
                    - narrate "<&a> You just deposited <[quantity].proc[gem_display_amt]><&a> to your account!" targets:<player>
            - else:
                - determine passively cancelled
        after player clicks in gem_deposit_inventory with:item_flagged:currency:
            - if <context.clicked_inventory.script.exists>:
                - if <context.slot> <= 27:
                    - determine cancelled
                - else:
                    - define quantity <context.clicked_inventory.quantity_item[gems]>
                    - take item:gems quantity:<[quantity]> from:<context.clicked_inventory>
                    - flag <player> gem_bank:+:<[quantity]>
                    - narrate "<&a> You just deposited <[quantity].proc[gem_display_amt]><&a> to your account!" targets:<player>
            - else:
                - determine passively cancelled
        after player shift_right clicks item_flagged:currency in gem_deposit_inventory:
            - if <context.is_shift_click>:
                - if <context.slot> <= 27:
                    - determine cancelled
                - else:
                    - define quantity <context.clicked_inventory.quantity_item[gems]>
                    - take item:gems quantity:<[quantity]> from:<context.clicked_inventory>
                    - flag <player> gem_bank:+:<[quantity]>
                    - narrate "<&a> You just deposited <[quantity].proc[gem_display_amt]><&a> to your account!" targets:<player>
            - else:
                - determine passively cancelled
        after player shift_left clicks item_flagged:currency in gem_deposit_inventory:
            - if <context.is_shift_click>:
                - if <context.slot> <= 27:
                    - determine cancelled
                - else:
                    - define quantity <context.clicked_inventory.quantity_item[gems]>
                    - take item:gems quantity:<[quantity]> from:<context.clicked_inventory>
                    - flag <player> gem_bank:+:<[quantity]>
                    - narrate "<&a> You just deposited <[quantity].proc[gem_display_amt]><&a> to your account!" targets:<player>
            - else:
                - determine passively cancelled
        #on player clicks item_flagged:currency in gem_deposit_inventory:
        #    - determine passively cancelled

christmas_cookies:
    type: item
    material: cookie
    mechanisms:
        custom_model_data: 10002
    display name: <&a>Christmas <&6>cookie
    flags:
        currency: events
gems:
    type: item
    material: paper
    mechanisms:
        custom_model_data: 10000
    display name: <&f>Gem
    flags:
        currency: gem