Paste #79440: Untitled Paste

Date: 2021/01/03 03:42:40 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


# VARITAS:              chain, stick, blaze_rod, end_rod, bamboo, bone, twisting_vines
# PUERTAS/TRAMPILLAS:   (oak, spruce, birch, jungle, acacia, dark_oak)_(door, trapdoor)
# 
# EFECTOS:              levitation, slow_falling, fire_resistance, night_vision, / confusion, slow, blindness
# 
# EFECTO                VARITA              MATERIAL PUERTA/TRAMPILLA
# levitation:           end_rod             birch
# slow_falling:         bamboo              jungle
# fire_resistance:      blaze_rod           acacia
# night_vision:         bone                dark_oak
# confusion:            chain               oak
# slow:                 stick               spruce
# blindness:            twisting_vines      daylight_detector     


AbrirRoble:
    type: world
    events:

        on player right clicks netherite_block with:flint_and_steel:
            - flag <player> varitas
            - narrate "Ahora se te aplican las funciones de denizen"
            - determine cancelled
        on player right clicks netherite_block with:shears:
            - flag <player> varitas:!
            - narrate "Ya no se te aplican las funciones de denizen"
        # obtener varitas haciendo clic derecho con "fragmentos de netherita" sobre un bloque de "escombros ancestrales"
        on player right clicks ancient_debris with:netherite_scrap:
            - take iteminhand
            - narrate "AquĆ­ tienes todas las varitas"
            - give varitaChain
            - give varitaStick
            - give varitaBlazeRod
            - give varitaEndRod
            - give varitaBamboo
            - give varitaBone
            - give varitaTwistingVines

        # obtener editor haciendo clic derecho con "diamante" sobre un bloque de "escombros ancestrales"
        on player right clicks ancient_debris with:diamond:
            - take iteminhand
            - give editor

        # curar vida haciendo clic derecho con "esmeralda" sobre un bloque de "escombros ancestrales"
        on player right clicks ancient_debris with:emerald:
            - heal

        # solo romper con editor (Camaloran)
        on player breaks block:
            - if <player.has_flag[varitas]>:
                - if <player.item_in_hand.material.name> != rabbit_foot:
                    - narrate "No rompas plis :D"
                    - narrate "con <player.item_in_hand.material.name>"
                    - determine cancelled

        # no poner varitas sobre bloques
        on player places varitaChain|varitaStick|varitaBlazeRod|varitaEndRod|varitaBamboo|varitaBone|varitaTwistingVines:
            - <player.has_flag[varitas]>:
                - determine cancelled

        # varitaChain
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaChain:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == oak_door || <context.location.material.name> == oak_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast confusion duration:20s amplifier:10 no_icon
                            - determine cancelled
                    - else:
                        - narrate "<red>Esto no se abre a golpes"
                        - determine cancelled

        # varitaStick
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaStick:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == spruce_door || <context.location.material.name> == spruce_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast slow duration:20s amplifier:5 no_icon
                            - determine cancelled
                    - else:
                        - narrate "<red>Esto no se abre a golpes"
                        - determine cancelled

        # varitaBlazeRod
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaBlazeRod:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == acacia_door || <context.location.material.name> == acacia_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast fire_resistance duration:20s amplifier:1 no_icon
                            - determine cancelled
                    - else:
                        - narrate "<red>Esto no se abre a golpes"
                        - determine cancelled

        # varitaEndRod
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaEndRod:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == birch_door || <context.location.material.name> == birch_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast levitation duration:20s amplifier:0.01 no_icon
                            - cast damage_resistance duration:22s amplifier:10 no_icon
                            - determine cancelled
                    - else:
                        - narrate "<red>Esto no se abre a golpes"
                        - determine cancelled

        # varitaBamboo
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaBamboo:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == jungle_door || <context.location.material.name> == jungle_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast slow_falling duration:20s amplifier:10 no_icon
                            - determine cancelled

        # varitaBone
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaBone:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == dark_oak_door || <context.location.material.name> == dark_oak_trapdoor:
                            - narrate "<green>Abierto, puedes pasar"
                            - switch <player.cursor_on> state:toggle duration:2s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case daylight_detector:
                                    - narrate "<yellow>Necesitas una 'varitaTwistedVines' para encender esto"
                            - cast night_vision duration:20s amplifier:1 no_icon
                            - determine cancelled

        # varitaTwistingVines
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector with:varitaTwistingVines:
            - if <player.has_flag[varitas]>:
                - if <context.item.material.name> != rabbit_foot:
                    - if <context.click_type> == RIGHT_CLICK_BLOCK:
                        - if <context.location.material.name> == daylight_detector:
                            - narrate "<green>Encendido"
                            - switch <player.cursor_on> state:toogle duration:5s
                        - else:
                            - choose <context.location.material.name>:
                                - case oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaChain' para abrir esto"
                                - case spruce_door:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case spruce_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaStick' para abrir esto"
                                - case birch_door:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case birch_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaEndRod' para abrir esto"
                                - case jungle_door:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case jungle_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBamboo' para abrir esto"
                                - case acacia_door:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case acacia_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBlazeRod' para abrir esto"
                                - case dark_oak_door:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                                - case dark_oak_trapdoor:
                                    - narrate "<yellow>Necesitas una 'varitaBone' para abrir esto"
                            - cast blindness duration:20s amplifier:10 no_icon
                            - determine cancelled


        # NO TENGO NI IDEA DE COMO HACER ESTO
        on player clicks oak_door|oak_trapdoor|spruce_door|spruce_trapdoor|birch_door|birch_trapdoor|jungle_door|jungle_trapdoor|acacia_door|acacia_trapdoor|dark_oak_door|dark_oak_trapdoor|daylight_detector:
        #    - if !<player.item_in_hand.has_varitaChain> && !<player.item_in_hand.has_varitaStick> && .....
        #    - narrate "<aqua>Necesitas un item especial para actuar sobre esto"
        #    - determine cancelled


# generaciĆ³n varitas
varitaChain:
    type: item
    display name: <&1>Encantamiento 1
    material: chain
    mechanisms:
        unbreakable: true
    recipes:
        1:
            type: shaped
            input:
                - air|air|allium
                - air|bamboo|air
                - arrow|air|air

        2:
            type: shaped
            input:
                - air|chain
                - chain|air

varitaStick:
    type: item
    display name: <&2>Encantamiento 2
    material: stick
    mechanisms:
        unbreakable: true

varitaBlazeRod:
    type: item
    display name: <&3>Encantamiento 3
    material: blaze_rod
    mechanisms:
        unbreakable: true

varitaEndRod:
    type: item
    display name: <&4>Encantamiento 4
    material: end_rod
    mechanisms:
        unbreakable: true

varitaBamboo:
    type: item
    display name: <&5>Encantamiento 5
    material: bamboo
    mechanisms:
        unbreakable: true

varitaBone:
    type: item
    display name: <&6>Encantamiento 6
    material: bone
    mechanisms:
        unbreakable: true

varitaTwistingVines:
    type: item
    display name: <&7>Encantamiento 7
    material: twisting_vines
    mechanisms:
        unbreakable: true
editor:
    type: item
    display name: <&f>Editor
    material: rabbit_foot
    lore:
        - Para editar o romper puertas
    mechanisms:
        unbreakable: true