# Mathober2023_Condition

# ClashOfSounds

For the 15th  Prompt Of Mathober: **Condition,**  ***ClashOfSounds*** uses Conditions in **SonicPi** Code to make the sound and then overlays the same sound by various starting points to promote a clashing sound.

## Poem

```ocaml
The Ordered List
Wants to Be Seen, Wants to Be Heard
They Decided to Split Into Thirds
For They Believe in the Power of Three
The Power That TheirVoices Combine
Will Be Able to Move Mountains Or At Least a Tree
That is the Wish From the Ordered List
```

## Audio

<iframe width="100%" height="300" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1638704658&color=%23ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true&visual=true"></iframe>

[IllestPreacha](https://soundcloud.com/llestreacha) · [ClashOfSounds](https://soundcloud.com/llestreacha/clashofsounds)

## SonicPi Code

```ruby
i = 0
live_loop :do do
  with_fx [:flanger,:echo,:ixi_techno].choose , mix: 0.7 do
    with_fx :distortion, mix: 0.7 do
      if i % 2 == 0
        sample :drum_bass_hard, amp: 4, beat_stretch: (dice(6) + 1)/3 + 0.5
        sleep [0.5,1,2].choose
      end
      if i % 3 == 0
        sample [:elec_blip2,:elec_blup].choose
        sleep [0.25,0.5,0.75,1].choose
      else
        sample [:elec_bell,:elec_soft_kick,:elec_wood].choose
        sleep [1,2].choose
      end
      i = i + rrand_i(1,5)
      puts i
    end
  end
end


j= 0
live_loop :do_2 do
  with_fx [:flanger,:echo,:ixi_techno,:whammy,:vowel,:ping_pong].choose , mix: rrand(0.1,0.9) do
    with_fx :distortion, mix: 0.7 do
      if j % 2 == 0
        sample [:perc_snap, :perc_snap2, :perc_bell].choose, amp: 4
        sleep [0.5,1,2].choose
      end
      if j % 3 == 0
        sample [:elec_chime,:elec_bong].choose , beat_stretch: (dice(10)+2)/5 + 0.5
        sleep [0.25,0.5,0.75,1].choose
      else
        sample [:elec_bell,:elec_soft_kick,:elec_wood].choose
        sleep [0.2,0.6,1,2,0.6,0.2].choose
      end
      j = (Math.sqrt(i * 3)).round() * rrand_i(2,7)
      puts j
    end
  end
end









```
