;Creator: Eedis
;Email: Killerbender53@yahoo.com


SetBatchLines, -1
Program=%A_programfiles%\E-Drums
Loop, %Program%\Drum Sounds\*.wav*
{
splitpath, A_Loopfilelongpath,,,, Loopfilename
FileList = %FileList%|%LoopFileName%
}
StringTrimLeft, filelist, filelist, 1
iniread, D, keys.ini, Keys, D
iniread, cD, selected.ini, Selected, D
iniread, f, keys.ini, Keys, f
iniread, cf, selected.ini, Selected, f
iniread, j, keys.ini, Keys, j
iniread, cj, selected.ini, Selected, j
iniread, k, keys.ini, Keys, k
iniread, ck, selected.ini, Selected, k
iniread, s, keys.ini, Keys, s
iniread, cs, selected.ini, Selected, s
iniread, ccustom, selected.ini, Selected, set
Gui, Color, FF8040
Gui, Font, S34 CGreen Bold, Papyrus
Gui, Add, Text, x110 y0 w200 h60 , E-Drums
Gui, Add, Picture, x97 y120 w220 h140 , %Program%\Drums.bmp
Gui, Add, Picture, x183 y210 w40 h120 , %Program%\Pedal.bmp
Gui, Font, S18 CGreen Bold, Papyrus
Gui, Add, Text, x121 y204 w30 h30 +BackgroundTrans, D
Gui, Add, Text, x160 y139 w20 h30 +BackgroundTrans, F
Gui, Add, Text, x233 y137 w20 h30 +BackgroundTrans, J
Gui, Add, Text, x268 y205 w20 h30 +BackgroundTrans, K
Gui, Font, S10 CGreen Bold, Papyrus
Gui, Add, Text, x198 y220 w20 h110 +BackgroundTrans, S`np`na`nc`ne
Gui, Font, ,
Gui, Add, DropDownList, x1 y210 w100 h20 R8 AltSubmit choose%cd% gSubDDLd vDDLd, %FileList%
Gui, Add, DropDownList, x26 y140 w100 h20 R8 AltSubmit choose%cf% gSubDDLf vDDLf, %FileList%
Gui, Add, DropDownList, x286 y140 w100 h20 R8 AltSubmit choose%cj% gSubDDLj vDDLj, %FileList%
Gui, Add, DropDownList, x316 y210 w100 h20 R8 AltSubmit choose%ck% gSubDDLk vDDLk, %FileList%
Gui, Add, DropDownList, x226 y270 w100 h20 R8 AltSubmit choose%cs% gSubDDLs vDDLs, %FileList%
Gui, Add, DropDownList, x160 y90 w100 h21 R8 AltSubmit choose%ccustom% gSubDDLCustom vDDL, Basic Set|Basic with toms|Distorted Set|Amen Break
Gui, Font, S12 CGreen, Papyrus
Gui, Add, CheckBox, x145 y60 w130 h20 gChecked vChecked, Use keyboard
Gui, Show, w423 h377, E-Drums
gui, submit, nohide
Return

Checked:
gui, submit, nohide
Return

SubDDLd:
gui, submit, nohide
iniwrite, %DDLd%, selected.ini, Selected, D
GuiControlGet, text,, DDLd, Text
iniwrite, %Program%\Drum Sounds\%text%.wav, keys.ini, Keys, D
iniread, D, keys.ini, Keys, D
Return

SubDDLf:
gui, submit, nohide
iniwrite, %DDLf%, selected.ini, Selected, f
GuiControlGet, text,, DDLf, Text
iniwrite, %Program%\Drum Sounds\%text%.wav, keys.ini, Keys, f
iniread, f, keys.ini, Keys, f
Return

SubDDLj:
gui, submit, nohide
iniwrite, %DDLj%, selected.ini, Selected, j
GuiControlGet, text,, DDLj, Text
iniwrite, %Program%\Drum Sounds\%text%.wav, keys.ini, Keys, j
iniread, j, keys.ini, Keys, j
Return

SubDDLk:
gui, submit, nohide
iniwrite, %DDLk%, selected.ini, Selected, k
GuiControlGet, text,, DDLk, Text
iniwrite, %Program%\Drum Sounds\%text%.wav, keys.ini, Keys, k
iniread, k, keys.ini, Keys, k
Return

SubDDLs:
gui, submit, nohide
iniwrite, %DDLs%, selected.ini, Selected, s
GuiControlGet, text,, DDLs, Text
iniwrite, %Program%\Drum Sounds\%text%.wav, keys.ini, Keys, s
iniread, s, keys.ini, Keys, s
Return

SubDDLCustom:
gui, submit, nohide
iniwrite, %DDL%, selected.ini, Selected, set
GuiControlGet, text,, DDL, Text
if (text = "Basic Set")
{
iniwrite, %Program%\Drum Sounds\Snare.wav, keys.ini, Keys, D
iniwrite, 16, selected.ini, Selected, D
iniwrite, %Program%\Drum Sounds\HiHat.wav, keys.ini, Keys, f
iniwrite, 13, selected.ini, Selected, f
iniwrite, %Program%\Drum Sounds\Hi-Tom.wav, keys.ini, Keys, j
iniwrite, 12, selected.ini, Selected, j
iniwrite, %Program%\Drum Sounds\Lo-Tom.wav, keys.ini, Keys, k
iniwrite, 14, selected.ini, Selected, k
iniwrite, %Program%\Drum Sounds\Bass.wav, keys.ini, Keys, s
iniwrite, 6, selected.ini, Selected, s
iniread, D, keys.ini, Keys, D
iniread, f, keys.ini, Keys, f
iniread, j, keys.ini, Keys, j
iniread, k, keys.ini, Keys, k
iniread, s, keys.ini, Keys, s
GuiControl, Choose, DDLd, 16
GuiControl, Choose, DDLf, 13
GuiControl, Choose, DDLj, 12
GuiControl, Choose, DDLk, 14
GuiControl, Choose, DDLs, 6
}
if (text = "Basic with toms")
{
iniwrite, %Program%\Drum Sounds\Snare.wav, keys.ini, Keys, D
iniwrite, 16, selected.ini, Selected, D
iniwrite, %Program%\Drum Sounds\Hi-Tom.wav, keys.ini, Keys, f
iniwrite, 12, selected.ini, Selected, f
iniwrite, %Program%\Drum Sounds\Mid-Tom.wav, keys.ini, Keys, j
iniwrite, 15, selected.ini, Selected, j
iniwrite, %Program%\Drum Sounds\Lo-Tom.wav, keys.ini, Keys, k
iniwrite, 14, selected.ini, Selected, k
iniwrite, %Program%\Drum Sounds\Bass.wav, keys.ini, Keys, s
iniwrite, 6, selected.ini, Selected, s
iniread, D, keys.ini, Keys, D
iniread, f, keys.ini, Keys, f
iniread, j, keys.ini, Keys, j
iniread, k, keys.ini, Keys, k
iniread, s, keys.ini, Keys, s
GuiControl, Choose, DDLd, 16
GuiControl, Choose, DDLf, 12
GuiControl, Choose, DDLj, 15
GuiControl, Choose, DDLk, 14
GuiControl, Choose, DDLs, 6
}
if (text = "Distorted Set")
{
iniwrite, %Program%\Drum Sounds\DisSnare.wav, keys.ini, Keys, D
iniwrite, 8, selected.ini, Selected, D
iniwrite, %Program%\Drum Sounds\DisHiHat.wav, keys.ini, Keys, f
iniwrite, 10, selected.ini, Selected, f
iniwrite, %Program%\Drum Sounds\DisWhop.wav, keys.ini, Keys, j
iniwrite, 11, selected.ini, Selected, j
iniwrite, %Program%\Drum Sounds\DisNoise.wav, keys.ini, Keys, k
iniwrite, 9, selected.ini, Selected, k
iniwrite, %Program%\Drum Sounds\DisBass.wav, keys.ini, Keys, s
iniwrite, 7, selected.ini, Selected, s
iniread, D, keys.ini, Keys, D
iniread, f, keys.ini, Keys, f
iniread, j, keys.ini, Keys, j
iniread, k, keys.ini, Keys, k
iniread, s, keys.ini, Keys, s
GuiControl, Choose, DDLd, 10
GuiControl, Choose, DDLf, 8
GuiControl, Choose, DDLj, 11
GuiControl, Choose, DDLk, 9
GuiControl, Choose, DDLs, 7
}
if (text = "Amen Break")
{
iniwrite, %Program%\Drum Sounds\Amen Snare 3.wav, keys.ini, Keys, D
iniwrite, 4, selected.ini, Selected, D
iniwrite, %Program%\Drum Sounds\Amen Open Hi-Hat.wav, keys.ini, Keys, f
iniwrite, 3, selected.ini, Selected, f
iniwrite, %Program%\Drum Sounds\Amen Crash.wav, keys.ini, Keys, j
iniwrite, 1, selected.ini, Selected, j
iniwrite, %Program%\Drum Sounds\Amen Snare 4.wav, keys.ini, Keys, k
iniwrite, 5, selected.ini, Selected, k
iniwrite, %Program%\Drum Sounds\Amen Kick.wav, keys.ini, Keys, s
iniwrite, 2, selected.ini, Selected, s
iniread, D, keys.ini, Keys, D
iniread, f, keys.ini, Keys, f
iniread, j, keys.ini, Keys, j
iniread, k, keys.ini, Keys, k
iniread, s, keys.ini, Keys, s
GuiControl, Choose, DDLd, 4
GuiControl, Choose, DDLf, 3
GuiControl, Choose, DDLj, 1
GuiControl, Choose, DDLk, 5
GuiControl, Choose, DDLs, 2
}
Return

$d::
{
if checked=1
SoundPlay, %D%
Else
send d
}
Return

$f::
{
if checked=1
SoundPlay, %f%
Else
send f
}
Return

$j::
{
if checked=1
SoundPlay, %j%
Else
send j
}
Return

$k::
{
if checked=1
SoundPlay, %k%
Else
send k
}
Return

$space::
{
if checked=1
SoundPlay, %s%
Else
send {space}
}
Return

joy3::
{
if checked=0
SoundPlay, %D%
}
Return

joy4::
{
if checked=0
SoundPlay, %f%
}
Return

joy1::
{
if checked=0
SoundPlay, %j%
}
Return

joy2::
{
if checked=0
SoundPlay, %k%
}
Return

joy5::
{
if checked=0
SoundPlay, %s%
}
Return

GuiClose:
ExitApp