spellfalse:
    spell-class: '.targeted.DummySpell'
    helper-spell: true
loveandthunder:
    spell-class: '.instant.BeamSpell'
    max-distance: 10
    spell: spellfalse 
    spell-on-end: loveandthunder_t
loveandthunder_t:
    spell-class: '.TargetedMultiSpell'
    stop-on-fail: false
    spells:
        - loveandthunder_p
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
        - loveandthunder_cast0
        - loveandthunder_cast3
        - loveandthunder_cast2
        - DELAY 10
        - loveandthunder_cast1
        - loveandthunder_cast4
        - loveandthunder_cast5
        - DELAY 10
        - loveandthunder_cast6
        - loveandthunder_cast7
        - loveandthunder_cast8
        - DELAY 10
loveandthunder_p:
    spell-class: ".instant.ParticleProjectileSpell"
    projectile-velocity: 0.0000001
    projectile-horiz-offset: 0
    projectile-vert-offset: 0
    projectile-gravity: 0
    tick-interval: 1
    spell-interval: 20
    hit-players: false
    hit-non-players: false
    stop-on-hit-entity: false
    stop-on-hit-ground: false
    hit-ground: false
    hit-air-during: false
    hit-air-at-end: false
    spell: spellfalse
    max-distance: 1
    max-duration: 10
    permission-name: nolag
    helper-spell: true
    effects:   
      1:
        effect: particles
        particle-name: smoke_large
        horiz-spread: 2
        vert-spread: 0.5
        count: 35
        speed: 0.2
        position: special
      2:
        effect: particles
        particle-name: dust
        horiz-spread: 2
        vert-spread: 0.5
        count: 35
        speed: 0
        color: 9100d9
        position: special
loveandthunder_cast0: &c
    spell-class: '.targeted.AreaEffectSpell'
    horizontal-radius: 30
    vertical-radius: 30
    point-blank: false
    target-players: true
    max-targets: 1
    fail-if-no-targets: true
    spell-source-in-center: true
    spells:
        - loveandthunder_homing_init0
loveandthunder_cast1:
    <<: *c
    spells:
        - loveandthunder_homing_init1
loveandthunder_cast2:
    <<: *c
    spells:
        - loveandthunder_homing_init2
loveandthunder_cast3:
    <<: *c
    spells:
        - loveandthunder_homing_init3
loveandthunder_cast4:
    <<: *c
    spells:
        - loveandthunder_homing_init4
loveandthunder_cast5:
    <<: *c
    spells:
        - loveandthunder_homing_init5
loveandthunder_cast6:
    <<: *c
    spells:
        - loveandthunder_homing_init6
loveandthunder_cast7:
    <<: *c
    spells:
        - loveandthunder_homing_init7
loveandthunder_cast8:
    <<: *c
    spells:
        - loveandthunder_homing_init8
loveandthunder_homing_init0: &h
    spell-class: '.targeted.HomingMissileSpell'
    projectile-velocity: 30
    max-duration: 0.1
    tick-interval: 1
    special-effect-interval: 1
    intermediate-special-effect-locations: 7
    spell-after-duration: loveandthunder_rando
    spell: loveandthunder_pain
    hit-air-after-duration: true
    relative-offset: 0,0,0
    effects:
      1:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.2
            iterations: 1
            color: 9100d9
      2:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.01
            iterations: 1
            color: e100ff
loveandthunder_homing_init1:
    <<: *h
    relative-offset: 0,1,0
loveandthunder_homing_init2:
    <<: *h
    relative-offset: 0,1,1
loveandthunder_homing_init3:
    <<: *h
    relative-offset: 0,0,1
loveandthunder_homing_init4:
    <<: *h
    relative-offset: 0,-1,0
loveandthunder_homing_init5:
    <<: *h
    relative-offset: 0,-1,1
loveandthunder_homing_init6:
    <<: *h
    relative-offset: 0,-1,-1
loveandthunder_homing_init7:
    <<: *h
    relative-offset: 0,1,-1
loveandthunder_homing_init8:
    <<: *h
    relative-offset: 0,0,-1
loveandthunder_pain:
    spell-class: '.targeted.PainSpell'
    damage: 1
    effects:
      1:
        effect: particles
        particle-name: smoke_large
        horiz-spread: 0.5
        vert-spread: 0.7
        count: 20
        speed: 0.2
        position: target
loveandthunder_ae:
    spell-class: '.targeted.AreaEffectSpell'
    horizontal-radius: 14
    vertical-radius: 14
    point-blank: false
    target-players: true
    max-targets: 1
    fail-if-no-targets: true
    spell-source-in-center: true
    spells:
        - loveandthunder_homing
loveandthunder_homing:
    spell-class: '.targeted.HomingMissileSpell'
    projectile-velocity: 30
    max-duration: 0.1
    tick-interval: 1
    special-effect-interval: 1
    intermediate-special-effect-locations: 7
    spell-after-duration: loveandthunder_rando
    spell: loveandthunder_pain
    hit-air-after-duration: true
    relative-offset: 0,0,0
    effects:
      1:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.2
            iterations: 1
            color: 9100d9
      2:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.01
            iterations: 1
            color: e100ff
loveandthunder_rando:
    spell-class: '.TargetedMultiSpell'
    helper-spell: true
    stop-on-fail: false
    cast-random-spell-instead: true
    spells:
        - loveandthunder_b0
        - loveandthunder_b1
        - loveandthunder_b2
        - loveandthunder_b3
        - loveandthunder_b4
        - loveandthunder_b5
        - loveandthunder_b6
        - loveandthunder_b7
        - loveandthunder_b8
        - loveandthunder_b9
        - loveandthunder_b10
        - loveandthunder_b11
        - loveandthunder_b12
        - loveandthunder_b13
        - loveandthunder_b14
        - loveandthunder_b15
        - loveandthunder_b16
        - loveandthunder_b17
        - loveandthunder_b18
        - loveandthunder_b19
        - loveandthunder_b20
        - loveandthunder_b21
        - loveandthunder_b22
        - loveandthunder_b23
        - loveandthunder_b24
        - loveandthunder_b25
        - loveandthunder_b26
        - loveandthunder_b27
        - loveandthunder_b28
        - loveandthunder_b29
        - loveandthunder_b30
loveandthunder_b0: &lt
    spell-class: '.instant.BeamSpell'
    helper-spell: true
    spell: spellfalse
    spell-on-end: loveandthunder_ae
    change-pitch: true
    relative-offset: 0,0,0
    max-distance: 4
    interval: 0.225
    beam-horiz-offset: 10
    beam-vert-offset: 10
    effects:
      1:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.2
            iterations: 1
            color: 9100d9
      2:
        effect: effectlib
        position: special
        effectlib:
            class: SphereEffect
            particle: redstone
            particles: 1
            radius: 0.01
            iterations: 1
            color: 450045

loveandthunder_b1:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: 10
    max-distance: 3
loveandthunder_b2:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: 10
    max-distance: 4
loveandthunder_b3:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: 10
    max-distance: 3
loveandthunder_b4:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: 10
    max-distance: 4
loveandthunder_b5:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: 10
    max-distance: 3
loveandthunder_b6:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: -10
    max-distance: 3
loveandthunder_b7:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: -10
    max-distance: 4
loveandthunder_b8:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: -10
    max-distance: 3
loveandthunder_b9:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: -10
    max-distance: 5
loveandthunder_b10:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: -10
    max-distance: 4
loveandthunder_b11:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: 20
    max-distance: 3
loveandthunder_b12:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: 20
    max-distance: 4
loveandthunder_b13:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: 20
    max-distance: 3
loveandthunder_b14:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: 20
    max-distance: 4
loveandthunder_b15:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: 20
    max-distance: 3
loveandthunder_b16:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: -20
    max-distance: 3
loveandthunder_b17:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: -20
    max-distance: 4
loveandthunder_b18:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: -20
    max-distance: 3
loveandthunder_b19:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: -20
    max-distance: 5
loveandthunder_b20:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: -20
    max-distance: 4
loveandthunder_b21:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: 30
    max-distance: 3
loveandthunder_b22:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: 30
    max-distance: 4
loveandthunder_b23:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: 30
    max-distance: 3
loveandthunder_b24:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: 30
    max-distance: 4
loveandthunder_b25:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: 30
    max-distance: 3
loveandthunder_b26:
    <<: *lt
    beam-horiz-offset: 20 
    beam-vert-offset: -30
    max-distance: 3
loveandthunder_b27:
    <<: *lt
    beam-horiz-offset: 30 
    beam-vert-offset: -30
    max-distance: 4
loveandthunder_b28:
    <<: *lt
    beam-horiz-offset: -10 
    beam-vert-offset: -30
    max-distance: 3
loveandthunder_b29:
    <<: *lt
    beam-horiz-offset: -20 
    beam-vert-offset: -30
    max-distance: 5
loveandthunder_b30:
    <<: *lt
    beam-horiz-offset: -30 
    beam-vert-offset: -30
    max-distance: 4