Paste #105870: Unnamed Denizen Script Paste

Date: 2023/02/01 03:35:16 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


NetherFishes:
  type: data
  Fishes:
    - raw_cod

LavaFishing:
  type: world
  debug: true
  events:
    after player fishes:
      ## throw hook into lava
      - if <player.world.contains[nether]> && <player.is_online> && <context.hook.is_spawned>:
        - waituntil rate:1t max:5s <context.hook.location.material.contains[lava]>
        - define SplashLocation <context.hook.location>
        # Hook entering liquid effect
        - playeffect LAVA at:<[SplashLocation]> quantity:20 offset:0.3,0.1,0.3 visibility:50 velocity:0,2,0
        - playeffect CAMPFIRE_COSY_SMOKE at:<[SplashLocation]> quantity:1 offset:0.3,0.1,0.3 visibility:50 velocity:0,0.01,0
        - playsound ENTITY_GENERIC_EXTINGUISH_FIRE at:<[SplashLocation]>
        # End of effect
        - inject LavaFishingEvent
        - while <context.hook.is_spawned>:
          - if <context.hook.location.is_liquid> && <context.hook.location.material.contains[lava]> && <context.hook.is_spawned>:
            - narrate "<&7><&o>Hook in <&c><&o>LAVA<&7><&o>!"
          - wait 5t

LavaFishingEvent:
  type: task
  debug: true
  script:
    - define CatchingTime <util.random.decimal[2].to[5].round>s
    - adjust <player> fish_hook_bite_time:<[CatchingTime]>
    - determine passively CAUGHT:<script[NetherFishes].data_key[Fishes].random>