Page 1 of 25

Selfbondage Blowjob Trainer Beta 0.75

Posted: 01 Aug 2011, 17:23
by qwerty212
Hello from Barcelona.

Beta version of the Selfbondage Blowjob Trainer
Image

What does this program do?
forces you to make a blowjob to a dildo (or fuck it) in order to get free (and to not be teased).
Webcam required.
You have to setup the area that you are going to suck and the color of the dildo. when you fail doing the blowjob you'll be teased (external hardware required). It also can tease you when blowjob ends during a countdown if you make noise. Everytime that you make noise or you fail doing the blowjob the program can (if desired) add time to the countdown, so the more you fail the more time that you'll be tied later. When timer ends the program will run the desired release method (CD Tray opening or external program).


  • · Doesn't need to be installed to work
    · Battery checking, anti reboot, anti shutdown system
    · Works on Windows 7, Vista, Xp and 2000
    · Detailed instructions manual included with the program (pdf file)
    · Two different releases in the package: one includes silverlight to increase compatibility with more webcams
    · You have to input How many sucks you want to do to finish the blowjob. When you reach that number of sucks you can setup to wait tied a bit longer or run any desired external program (visit the Pain and exit post to get some info about releasing and teasing methods ruled by computers) or open the cd tray letting a key drop to let you be free.
    · Possible to play sessions with random number of sucks to do
    · You can setup to be teased every time that you make noise after the blowjob (microphone and external hardware required)
    · Possible to increase countdown timer when you make noise after the blowjob
    · Possible to increase countdown timer when you fail doing a suck in the required time
    · Possibility of being teased every time that you do not make a suck inside the required time (external hardware required))
    · You can setup to allow up to 3 different directions to perform the blowjob
    · You can setup 3 speeds of being forced to do the sucks or play without required speed.
    · The program takes pictures of you every time you are teased and every time that you make a suck (and saves it with a time stamp)
    · On final version during the waiting time after the blowjob a slideshow with the photos taken by the program will be showed on screen
    · Possible to setup a Virtual Padlock area: if you take the dildo of your mouth you'll be teased (external hardware required))
ImageImageImageImageImageImageImageImageImage

PS: I haven't found any good blowjob phrases, so this program doesn't include any sentence... I hope to find some good voices for the final release. Any help with this will be much apreciatted.

Thanks to iluvplanes, LoKiT and jennifer.bh for reporting errors.

Selfbondage Blowjob Trainer Beta 0.74.rar (770 KB)
Selfbondage Blowjob Trainer Beta 0.75.rar (808 KB)

Both version are the same. 0.74 uses silverlight to show webcam stream on screen and version 0.75 uses Directshow. Pick the one that works better with your system.

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 01 Aug 2011, 21:04
by qwerty212
This is the source code for the beta released today.
Sorry, no coments yet on the code.

Is writted in autoit, a visual basic like language.

As there are more than 3300 lines of code and the is a max number of characters on a single post I upload it in pieces:

From line 1 to line 929 of code:

Code: Select all

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=ico.ico
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_Res_File_Add=chain.jpg, rt_rcdata, chain
#AutoIt3Wrapper_Res_File_Add=arriba.bmp, rt_bitmap, arriba
#AutoIt3Wrapper_Res_File_Add=abajo.bmp, rt_bitmap, abajo
#AutoIt3Wrapper_Res_File_Add=izquierda.bmp, rt_bitmap, izquierda
#AutoIt3Wrapper_Res_File_Add=derecha.bmp, rt_bitmap, derecha
#AutoIt3Wrapper_Res_File_Add=alto.bmp, rt_bitmap, alto
#AutoIt3Wrapper_Res_File_Add=bajo.bmp, rt_bitmap, bajo
#AutoIt3Wrapper_Res_File_Add=ancho.bmp, rt_bitmap, ancho
#AutoIt3Wrapper_Res_File_Add=estrecho.bmp, rt_bitmap, estrecho
#AutoIt3Wrapper_Res_File_Add=select.bmp, rt_bitmap, select
#AutoIt3Wrapper_Res_File_Add=test.bmp, rt_bitmap, test
#AutoIt3Wrapper_Res_File_Add=arriba2.bmp, rt_bitmap, arriba2
#AutoIt3Wrapper_Res_File_Add=abajo2.bmp, rt_bitmap, abajo2
#AutoIt3Wrapper_Res_File_Add=izquierda2.bmp, rt_bitmap, izquierda2
#AutoIt3Wrapper_Res_File_Add=derecha2.bmp, rt_bitmap, derecha2
#AutoIt3Wrapper_Res_File_Add=alto2.bmp, rt_bitmap, alto2
#AutoIt3Wrapper_Res_File_Add=bajo2.bmp, rt_bitmap, bajo2
#AutoIt3Wrapper_Res_File_Add=ancho2.bmp, rt_bitmap, ancho2
#AutoIt3Wrapper_Res_File_Add=estrecho2.bmp, rt_bitmap, estrecho2
#AutoIt3Wrapper_Res_File_Add=select2.bmp, rt_bitmap, select2
#AutoIt3Wrapper_Res_File_Add=test2.bmp, rt_bitmap, test2
#AutoIt3Wrapper_Res_File_Add=1minute.bmp, rt_bitmap, 1minute
#AutoIt3Wrapper_Res_File_Add=moretime.bmp, rt_bitmap, moretime
#AutoIt3Wrapper_Res_File_Add=continue.bmp, rt_bitmap, continue
#AutoIt3Wrapper_Res_File_Add=close.bmp, rt_bitmap, close
#AutoIt3Wrapper_Res_File_Add=virtualoff.bmp, rt_bitmap, virtualoff
#AutoIt3Wrapper_Res_File_Add=virtualconf.bmp, rt_bitmap, virtualconf
#AutoIt3Wrapper_Res_File_Add=sicandado.bmp, rt_bitmap, sicandado
#AutoIt3Wrapper_Res_File_Add=nocandado.bmp, rt_bitmap, nocandado
#AutoIt3Wrapper_Res_File_Add=aderechas.bmp, rt_bitmap, aderechas
#AutoIt3Wrapper_Res_File_Add=aizquierdas.bmp, rt_bitmap, aizquierdas
#AutoIt3Wrapper_Res_File_Add=virtual.bmp, rt_bitmap, virtual
#AutoIt3Wrapper_Res_File_Add=sucks11.gif, rt_rcdata, TEST_GIF_10
#AutoIt3Wrapper_Res_File_Add=boundanna.gif, rt_rcdata, anna
#AutoIt3Wrapper_Res_File_Add=warning.gif, rt_rcdata, WARNING
#AutoIt3Wrapper_Res_File_Add=sucks111.gif, rt_rcdata, TEST_GIF_2000
#AutoIt3Wrapper_Res_File_Add=sucks22.gif, rt_rcdata, TEST_GIF_100
#AutoIt3Wrapper_Res_File_Add=sucks3.gif, rt_rcdata, TEST_GIF_1000
#AutoIt3Wrapper_Res_File_Add=micro2.gif, rt_rcdata, TEST_GIF_5
#AutoIt3Wrapper_Res_File_Add=sucksgo.gif, rt_rcdata, TEST_GIF_sucksgo
#AutoIt3Wrapper_Res_File_Add=sucksback.gif, rt_rcdata, TEST_GIF_sucksback
#AutoIt3Wrapper_Res_File_Add=donate.gif, rt_rcdata, TEST_GIF_0
#AutoIt3Wrapper_Res_File_Add=reloj.gif, rt_rcdata, TEST_GIF_reloj
#AutoIt3Wrapper_Res_File_Add=reloj2.gif, rt_rcdata, TEST_GIF_reloj2
#AutoIt3Wrapper_Res_File_Add=reloj3.gif, rt_rcdata, TEST_GIF_reloj3
#AutoIt3Wrapper_Res_File_Add=pain.gif, rt_rcdata, TEST_GIF_pain
#AutoIt3Wrapper_Res_File_Add=sucks11izq.gif, rt_rcdata, TEST_GIF_10izq
#AutoIt3Wrapper_Res_File_Add=sucks111izq.gif, rt_rcdata, TEST_GIF_2000izq
#AutoIt3Wrapper_Res_File_Add=sucks22izq.gif, rt_rcdata, TEST_GIF_100izq
#AutoIt3Wrapper_Res_File_Add=sucks3izq.gif, rt_rcdata, TEST_GIF_1000izq
#AutoIt3Wrapper_Res_File_Add=sucksgoizq.gif, rt_rcdata, TEST_GIF_sucksgoizq
#AutoIt3Wrapper_Res_File_Add=sucksbackizq.gif, rt_rcdata, TEST_GIF_sucksbackizq
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
;resolucion minima 1280x720
#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StructureConstants.au3>
#include <GUIScrollBars.au3>
#include <ScrollBarConstants.au3>
#include <webcam.au3>
#include <ScreenCapture.au3>
#include <GDIPlus.au3>
#include <Misc.au3>
#include <date.au3>
#include <resources.au3>
#include <audio.au3>
#include <string.au3>
#include <EditConstants.au3>
#include <Array.au3>
#include <GuiComboBox.au3>
#include <ScreenCapture.au3>
#include <ComboConstants.au3>
#include <StaticConstants.au3>
#include <SendMessage.au3>
#include <ProgressConstants.au3>
#include <ButtonConstants.au3>
#include <WinAPI.au3>
#include <ClipBoard.au3>
#include <UpdownConstants.au3>
#include <ColorChooser.au3>
#include <Process.au3>
#include <IE.au3>
#include <timers.au3>

Global $gui189
Global $Radiopadlock2
Global $Radiopadlock1
Global $gui623
Global $MaxTime
Global $coord
Global $hColourBorder
Global $ProgressBar2
Global $Buttonvirtualconf
Global $hColorFill
Global $etiqueta
Global $Guisucksgo
Global $Guisucksback
Global $message50
Global $coord1
Global $coord2
Global $control = 1
Global $OnOff
Global $n
Global $coord3
Global $coord4
Global $guireloj
Global $inputtimec
Global $gui90909
Global $Guipequecandado
Global $message5
Global $asegurarse2c = 0
Global $ProgressBar100
Global $ProgressBar1000
Global $resta
Global $MaxTime2
Global $message55
Global $iTotal_Time = 4
Global $nuevovalorbarra = 100
$nuevovalorbarra = 100
Global $gui50909
Global $medida
Global $valorinput1
Global $valorinput2
Global $VolumeLabel
Global $VolumeLabel2
Global $A
Global $mamamdasquequedan
Global $percent_value
Global $percent_value2
Global $totalamamar
Global $gui666
Global $label1
Global $Pic121e
Global $label2
Global $label22
Global $gui50909
Global $gui60606
Global $gui80808
Global $gui90909
Global $Buttonclose
Global $guifallos
Global $guiejercicio
Global $input7
Global $minVal = 0, $maxVal = 500
Global $percent
Global $ProgressBar
Global $ExitButton
Global $Result
Global $msg
Global $TBS_NOTICKS = 0x0010
Global $lpszCommand
Global $TBS_REVERSED = 0x0020
Global $input3
Global $T
Global $Volume
Global $TT
Global $count
Global $count4
Global $default
Global $default1
Global $default0
Global $default2
Global $default4
Global $WW
Global $WW1
Global $WW2
Global $WW0
Global $WW4
Global $FileName
Global $count3
Global $WAR2
Global $configurar
Global $XS_n
Global $Main
Global $totalamamar
Global $FileName2
Global $FileName0
Global $savebtn2c
Global $INPUT132c
Global $Maxtime3
Global $testbtnteasingc
Global $Buttonnocandado
Global $Buttonsicandado
Global $Button1c
Global $Button2c
Global $polla = 0
Global $Button3c
Global $Button4c
Global $Button5c
Global $Button6c
Global $Button7c
Global $Button8c
Global $Button9c
Global $Button56c
Global $algoritmo2 = 10
Global $aRetArray
Global $culo
Global $z = 10
Global $y = 10
Global $oIE = ObjCreate("Shell.Explorer.2")
Global $oIE2 = ObjCreate("Shell.Explorer.2")
$WW = $default
$WW2 = $default2
$WW1 = $default1
$WW0 = $default0
$WW4 = $default4
$count3 = 0
$FileName = StringRegExpReplace($WW, "^.*\\", "")
$FileName1 = StringRegExpReplace($WW1, "^.*\\", "")
$FileName2 = StringRegExpReplace($WW2, "^.*\\", "")
$FileName0 = StringRegExpReplace($WW0, "^.*\\", "")
$FileName4 = StringRegExpReplace($WW4, "^.*\\", "")
Global $hBitmap, $hImage, $hGraphic, $hFamily, $hFont, $tLayout, $hFormat, $aInfo, $hBrush1, $hBrush2, $iWidth, $iHeight, $hPen
Global $sString = $WAR2 & " / " & $totalamamar

Global $hForm, $msg, $Label, $Button, $Data, $Color = 0x0000AE, $Color2 = 0x0000AE

If @DesktopHeight < 720 Or @DesktopWidth < 1024 Then
	MsgBox(48, "WARNING!", "To use this program you must" & @CRLF & "have a screen resolution" & @CRLF & "equal or better than 1024x720", 10)
	Exit
EndIf

If Not FileExists(@ScriptDir & "\Webcam\") Then
	MsgBox(48, "WARNING!", "To use this program you must" & @CRLF & "have a folder named 'Webcam'" & @CRLF & "with the files needed to show the webcam stream" & @CRLF & "in the same folder from where you're running" & @CRLF & "the Selfbondage Blowjob Trainer" & @CRLF & "" & @CRLF & "If you have not this folder" & @CRLF & "please download the program again", 20)
	Exit
EndIf

$n = 0

Func _BatteryQueryEx()
	Local $SystemPower, $ret, $array[5]

	; Setup $array and $SystemPower
	$SystemPower = DllStructCreate("ubyte;ubyte;ubyte;ubyte;ulong;ulong")
	If @error Then
		SetError(-1)
		Return $array
	EndIf

	; make the DllCall
	$ret = DllCall("kernel32.dll", "int", "GetSystemPowerStatus", "ptr", DllStructGetPtr($SystemPower))
	If @error Then;DllCall Failed
		SetError(-2)
		$SystemPower = 0
		Return $array
	EndIf

	If Not $ret[0] Then; GetSystemPowerStatus Failed
		SetError(-3)
		$SystemPower = 0
		Return $array
	EndIf

	; Fill the array
	$array[0] = DllStructGetData($SystemPower, 1);    AC
	$array[1] = DllStructGetData($SystemPower, 2);    Battery Charge
	$array[2] = DllStructGetData($SystemPower, 3);    Battery Charge %
	$array[3] = DllStructGetData($SystemPower, 5);    Sec Battery Left
	$array[4] = DllStructGetData($SystemPower, 6);    Sec Battery Capacity @ Full Charge

	If $array[2] < 15 Then
		MsgBox(4096, "WARNING!", "Finishing session due to low battery level", 10)
		Sleep(10)
		On_Exit()
	EndIf

	; free the struct
	$SystemPower = 0

	Return $array
EndFunc   ;==>_BatteryQueryEx

$WM_QUERYENDSESSION = 0x11
GUIRegisterMsg($WM_QUERYENDSESSION, "Cancel_Shutdown")

Func _ShutdownBlockReasonCreate($hwnd, $wStr)
	; http://msdn.microsoft.com/en-us/library/ms...28VS.85%29.aspx
	; Prog@ndy
	Local $aResult = DllCall("User32.dll", "int", "ShutdownBlockReasonCreate", "hwnd", $hwnd, "wstr", $wStr)
	If @error Then Return SetError(1, 0, 0)
	Return $aResult[0]
EndFunc   ;==>_ShutdownBlockReasonCreate

Func _ShutdownBlockReasonDestroy($hwnd)
	Local $aResult = DllCall("User32.dll", "int", "ShutdownBlockReasonDestroy", "hwnd", $hwnd)
	If @error Then Return SetError(1, 0, 0)
	Return $aResult[0]
EndFunc   ;==>_ShutdownBlockReasonDestroy

Func Cancel_Shutdown($hWndGUI, $MsgID, $WParam, $LParam)
	; This HAS to be here to capture the endsession...
	AdlibRegister("Cancel_ShutdownResolver", 50)
	Return False
EndFunc   ;==>Cancel_Shutdown

Func Cancel_ShutdownResolver()
	Local $iOpt = Opt("WinTitleMatchMode", 4), $hwnd = WinGetHandle("[CLASS:BlockedShutdownResolver]")
	Opt("WinTitleMatchMode", $iOpt)
	If $hwnd Then
		If @OSVersion = "WIN_7" Then ControlClick($hwnd, "", "[CLASS:Button; INSTANCE:1]")
		If @OSVersion <> "WIN_7" Then ControlClick($hwnd, "", "[CLASS:Button; INSTANCE:2]")
		AdlibUnRegister("Cancel_ShutdownResolver")
	EndIf
EndFunc   ;==>Cancel_ShutdownResolver

Local $iPrevMode = AutoItSetOption("WinTitleMatchMode", 4)
Local $aTaskBar_Pos = WinGetPos("classname=Shell_TrayWnd")
AutoItSetOption("WinTitleMatchMode", $iPrevMode)
$altogui4 = @DesktopHeight - $aTaskBar_Pos[3] - 19
Sleep(10)
$anchogui4 = @DesktopWidth
Sleep(10)
$altogui6 = @DesktopHeight - $aTaskBar_Pos[3] - 9
Sleep(10)
$culo = 0
$asegurarse2c = 0
$Mainzero = GUICreate("WARNING!!!", 700, 600, -1, -1, $WS_POPUPWINDOW)
GUISetState(@SW_SHOW, $Mainzero)
$Pic121 = GUICtrlCreatePic("", 0, 25, 166, 166)
_ResourceSetImageToCtrl($Pic121, "WARNING")

$label33 = GUICtrlCreateLabel("· This program is a beta release,so it can has", 170, 34, 480, 40)
GUICtrlSetFont(-1, 18, 10, 0)

$label333 = GUICtrlCreateLabel("   bugs or errors.  Use it at your own risk.", 170, 74, 480, 80)
GUICtrlSetFont(-1, 18, 10, 0)

$label233 = GUICtrlCreateLabel("· Never use it without at least one alternative", 170, 154, 580, 40)
GUICtrlSetFont(-1, 18, 10, 0)

$label2333 = GUICtrlCreateLabel("   release method. Use it only with laptops or ", 170, 194, 580, 80)
GUICtrlSetFont(-1, 18, 10, 0)

$label24333 = GUICtrlCreateLabel("   computers connected to an UPS system.", 170, 234, 580, 80)
GUICtrlSetFont(-1, 18, 10, 0)

$label2a33 = GUICtrlCreateLabel("· This program must be used only in rooms", 170, 314, 580, 40)
GUICtrlSetFont(-1, 18, 10, 0)

$label2a333 = GUICtrlCreateLabel("   with very good light conditions.", 170, 354, 580, 80)
GUICtrlSetFont(-1, 18, 10, 0)

$label2a4333 = GUICtrlCreateLabel("·If you want to learn more about safety tips", 170, 434, 580, 80)
GUICtrlSetFont(-1, 18, 10, 0)

$label2ae333 = GUICtrlCreateLabel("  involving selfbondage please visit: ", 170, 474, 580, 80)
GUICtrlSetFont(-1, 18, 10, 0)

Global $Pic121e = GUICtrlCreatePic("", 180, 525, 468, 60)
_ResourceSetImageToCtrl($Pic121e, "anna")
GUICtrlSetCursor($Pic121e, 0)
Sleep(6500)
arrancar()


While 0
	$msg = GUIGetMsg()
	Select
		Case $msg = $GUI_EVENT_CLOSE
			Exit

		Case $msg = $Pic121e
			ShellExecute("http://www.boundanna.com")
	EndSelect
WEnd

Func arrancar()
	GUIDelete($Mainzero)
	Sleep(100)
EndFunc   ;==>arrancar

$Main = GUICreate("Selfbondage Blowjob Trainer Beta Release 0.1", @DesktopWidth, $altogui4)
GUISetState(@SW_SHOW, $Main)
$Button1 = GUICtrlCreateButton("", 2 + 145, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button1, "arriba", $RT_BITMAP)

$Button2 = GUICtrlCreateButton("", 2 + 70 + 145, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button2, "izquierda", $RT_BITMAP)

$Button3 = GUICtrlCreateButton("", 2 + 140 + 145, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button3, "derecha", $RT_BITMAP)

$Button4 = GUICtrlCreateButton("", 2 + 210 + 145, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button4, "abajo", $RT_BITMAP)

$Button5 = GUICtrlCreateButton("", 2 + 145, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button5, "alto", $RT_BITMAP)

$Button6 = GUICtrlCreateButton("", 2 + 70 + 145, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button6, "ancho", $RT_BITMAP)

$Button7 = GUICtrlCreateButton("", 2 + 140 + 145, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button7, "estrecho", $RT_BITMAP)

$Button8 = GUICtrlCreateButton("", 2 + 210 + 145, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button8, "bajo", $RT_BITMAP)

$Button9 = GUICtrlCreateButton("", 356 - 75 + 145, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button9, "test", $RT_BITMAP)

$Button56 = GUICtrlCreateButton("", 356 - 75 + 145, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Button56, "select", $RT_BITMAP)

$Buttonvirtualon = GUICtrlCreateButton("", 583, 2, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Buttonvirtualon, "virtualoff", $RT_BITMAP)

$start = GUICtrlCreateButton("START SESSION", @DesktopWidth - 208, $altogui4 - 35, 100, 30)
Sleep(10)

$Buttonvirtualconf = GUICtrlCreateButton("", 356 - 68 + 225 + 70, 72, 65, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($Buttonvirtualconf, "virtualconf", $RT_BITMAP)

$startfake = GUICtrlCreateButton("TEST SESSION", @DesktopWidth - 104, $altogui4 - 35, 100, 30)

GUICtrlCreateGroup("", 2, -25, 142, 190)
$aderechas = GUICtrlCreateButton("", 22, 2, 115, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($aderechas, "aizquierdas", $RT_BITMAP)

Sleep(10)
$Radioderechas = GUICtrlCreateRadio("", 5, 29, 15, 15)
GUICtrlSetState($Radioderechas, $GUI_CHECKED)

$Radioizquierdas = GUICtrlCreateRadio("", 5, 98, 15, 15)

$aizquierdas = GUICtrlCreateButton("", 22, 72, 115, 65, $BS_BITMAP)
_ResourceSetImageToCtrl($aizquierdas, "aderechas", $RT_BITMAP)
GUICtrlCreateGroup("", -99, -99, 1, 1)



$algoritmo = 10

GUICtrlCreateLabel("TOLERANCE:", 443 - 79 + 140, 5)
$input3 = GUICtrlCreateInput($algoritmo, 438 - 79 + 140, 22, 75, 37, $ES_READONLY)
GUICtrlSetFont(-1, 22, 400, 3, "Verdana")
GUICtrlSetBkColor(-1, 0xaeee00)
$upanddown = GUICtrlCreateUpdown($input3)
GUICtrlSetLimit($upanddown, 99, 1)

Sleep(10)

GUICtrlSetBkColor(-1, 0xffee00)
GUICtrlCreateLabel("· SUCKS that you'll have to do to activate the release method: ", @DesktopWidth - 355, 10)
GUICtrlSetFont(9, 400, 4, "MS Sans Serif")
GUICtrlSetColor(-1, 0x0000AE)
;~ time input box
$input = GUICtrlCreateInput("100", @DesktopWidth - 60, 7, 55, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xaeee00)
$updown = GUICtrlCreateUpdown($input)
GUICtrlSetLimit($updown, 500, 1)

;~ time input box
GUICtrlCreateLabel("· Time that you need to tie yourself before the session starts: ", @DesktopWidth - 355, 39)
$input100 = GUICtrlCreateInput("10", @DesktopWidth - 60, 36, 55, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xffee00)
$updown100 = GUICtrlCreateUpdown($input100)
GUICtrlSetLimit($updown100, 59, 1)

;~ the program asks if use the random time function
$CHECKBOX2 = GUICtrlCreateCheckbox(" Random sucking play? (If so, type the max. and the min.)", @DesktopWidth - 355, 65, 290, 20)
GUICtrlSetState(0, $GUI_CHECKED)

$inputrandom = GUICtrlCreateInput("50", @DesktopWidth - 60, 65, 55, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xffcc33)
$updownrandom = GUICtrlCreateUpdown($inputrandom)
GUICtrlSetLimit($updownrandom, 500, 1)

GUICtrlCreateLabel("· Adjust the speed of the blowjob depending on your sucking skills :-O", @DesktopWidth - 350, 95)
GUICtrlSetColor(-1, 0x0000AE)
$countdown3 = 100
$Radio00 = GUICtrlCreateRadio("No Time", @DesktopWidth - 341, 117, 60, 15)
$Radio10 = GUICtrlCreateRadio("Slow", @DesktopWidth - 346 + 75, 117, 40, 15)
$Radio20 = GUICtrlCreateRadio("Normal", @DesktopWidth - 284 + 80, 117, 50, 15)
GUICtrlSetState($Radio20, $GUI_CHECKED)
$Radio30 = GUICtrlCreateRadio("Fast", @DesktopWidth - 211 + 80, 117, 40, 15)



$exercisebtn = GUICtrlCreateButton("Test Speed", @DesktopWidth - 100 + 20, 112, 64, 23)

;~ the program asks if play sounds while you're doing the blowjob
$CHECKBOX2000 = GUICtrlCreateCheckbox("Play sexy sounds while you're doing the blowjob?", @DesktopWidth - 355, 140, 255, 20)
GUICtrlSetState(0, $GUI_CHECKED)
$soundsbtn = GUICtrlCreateButton("Configure Sounds", @DesktopWidth - 100, 138, 92, 25)

GUICtrlCreateGroup("POST BLOWJOB SESSION SETUP", @DesktopWidth - 360, 166, 365, 70)
GUICtrlSetBkColor(-1, 0x9999ff)
GUICtrlCreateLabel("· MINUTES that you want to be tied AFTER the blowjob:  .... ", @DesktopWidth - 353, 187)
GUICtrlSetColor(-1, 0x0ff9900)
$input3500 = GUICtrlCreateInput("60", @DesktopWidth - 60, 183, 55, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0x0ff9900)
$updown3500 = GUICtrlCreateUpdown($input3500)
GUICtrlSetLimit($updown3500, 999, 1)

;~ the program asks if use the random time function
$CHECKBOX20002 = GUICtrlCreateCheckbox("Play with random time? (If so, type the max. and the min.)", @DesktopWidth - 355, 210, 290, 20)
GUICtrlSetState(0, $GUI_CHECKED)
$inputrandom20002 = GUICtrlCreateInput("30", @DesktopWidth - 60, 210, 55, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xffcc33)
$updownrandom20002 = GUICtrlCreateUpdown($inputrandom20002)
GUICtrlSetLimit($updownrandom20002, 999, 1)
GUICtrlCreateGroup("", -99, -99, 1, 1)
Sleep(10)

GUICtrlCreateGroup("TEASING METHODS SETUP DURING THE BLOWJOB", @DesktopWidth - 360, 243, 365, 96)
GUICtrlSetBkColor(-1, 0xff3300)
$savelabel2 = GUICtrlCreateLabel("Choose the program that will tease you when you fail doing the blowjob:", @DesktopWidth - 350, 263)
GUICtrlSetColor(-1, 0x0000AE)
$default2 = @ScriptDir & "\pain.exe"
$WW2 = $default2
$INPUT132 = GUICtrlCreateInput($default2, @DesktopWidth - 355, 284, 254, 20)
GUICtrlSetBkColor(-1, 0xff3300)
$savebtn2 = GUICtrlCreateButton("Change", @DesktopWidth - 100, 282, 47, 23)
$testbtnteasing = GUICtrlCreateButton("Test", @DesktopWidth - 49, 282, 40, 23)
Sleep(10)

GUICtrlCreateLabel("MINUTES that will be added to the final countdown when you fail: ", @DesktopWidth - 358, 316)
GUICtrlSetColor(-1, 0xff3300)
$input300 = GUICtrlCreateInput("10", @DesktopWidth - 44, 313, 40, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xff3300)
$updown300 = GUICtrlCreateUpdown($input300)
GUICtrlSetLimit($updown300, 20, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
Sleep(10)

GUICtrlCreateGroup("SOUND TEASING SETUP AFTER THE BLOWJOB", @DesktopWidth - 360, 345, 365, 173)
GUICtrlSetBkColor(-1, 0xffcc33)
GUICtrlCreateLabel("%", @DesktopWidth - 18, 390)
$VolumeLabel2 = GUICtrlCreateInput("", @DesktopWidth - 55, 415, 30, 20, BitOR($ES_AUTOHSCROLL, $ES_READONLY))
$ProgressBar = GUICtrlCreateProgress(@DesktopWidth - 350, 415, 284, 20, $PBS_SMOOTH)
$CHECKBOX3 = GUICtrlCreateCheckbox("Play with Sound Teasing? (Microphone required)", @DesktopWidth - 350, 365, 375, 20)
GUICtrlSetState(0, $GUI_CHECKED)
$slide1 = GUICtrlCreateSlider(@DesktopWidth - 359, 385, 304, 30, $TBS_NOTICKS)
GUICtrlSetLimit($slide1, 100, 1)
GUICtrlSetData($slide1, 100)
$input3 = GUICtrlCreateInput("", @DesktopWidth - 55, 386, 30, 20, BitOR($ES_AUTOHSCROLL, $ES_READONLY))
GUICtrlCreateLabel("%", @DesktopWidth - 18, 420)
Sleep(10)

GUICtrlCreateLabel("Choose the program that will tease you when you make noise", @DesktopWidth - 355, 442)
GUICtrlSetColor(-1, 0x0000AE)
$default1 = @ScriptDir & "\pain.exe"
$WW1 = $default1
$INPUT130 = GUICtrlCreateInput($default1, @DesktopWidth - 355, 460, 244, 20)
GUICtrlSetBkColor(-1, 0xffcc33)
$savebtn1 = GUICtrlCreateButton("Change", @DesktopWidth - 104, 457, 50, 25)
$testbtn1 = GUICtrlCreateButton("Test", @DesktopWidth - 50, 457, 45, 25)
Sleep(10)

GUICtrlCreateLabel("MINUTES that will be added to countdown when you make noise: ", @DesktopWidth - 355, 492)
GUICtrlSetColor(-1, 0xff3300)
$input10 = GUICtrlCreateInput("10", @DesktopWidth - 40, 489, 35, 20, $ES_NUMBER)
GUICtrlSetBkColor(-1, 0xffcc33)
$updown10 = GUICtrlCreateUpdown($input10)
GUICtrlSetLimit($updown10, 20, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
Sleep(10)


GUICtrlCreateGroup("RELEASE METHODS SETUP", @DesktopWidth - 358, 525, 365, 95)
GUICtrlSetBkColor(-1, 0xaeee00)
$Radio1 = GUICtrlCreateRadio("Execute a program as release method", @DesktopWidth - 350, 537)
$default = @ScriptDir & "\exit.exe"
$WW = $default
$INPUT13 = GUICtrlCreateInput($default, @DesktopWidth - 350, 560, 294, 20)
GUICtrlSetBkColor(-1, 0xaeee00)
$savebtn = GUICtrlCreateButton("Change", @DesktopWidth - 55, 557, 50, 25)
Sleep(10)

Local $a_DriveList = DriveGetDrive('CDROM'), $s_DriveList
For $i_aDriveList = 1 To UBound($a_DriveList) - 1
	$s_DriveList &= StringUpper($a_DriveList[$i_aDriveList]) & '|'
Next
Local $cboDrive = GUICtrlCreateCombo("", @DesktopWidth - 150, 590, 40, 30, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
GUICtrlSetData(-1, $s_DriveList)
_GUICtrlComboBox_SetCurSel($cboDrive, 0)
GUISetState(@SW_SHOW)

$Radio2 = GUICtrlCreateRadio("Open CD Tray as release method:", @DesktopWidth - 350, 590)
GUICtrlSetFont(9, 400, 4, "MS Sans Serif")
GUICtrlSetColor(-1, 0x0000AE)
GUICtrlSetState($Radio2, $GUI_CHECKED)
$testbtn = GUICtrlCreateButton("Test Release", @DesktopWidth - 95, 590, 90, 25)
$U = GUICtrlRead($cboDrive)
GUICtrlCreateGroup("", -99, -99, 1, 1)
Sleep(10)

;~ link with the email
$c_Hyperlink_FunkEu = GUICtrlCreateLabel("Contact", @DesktopWidth - 355, $altogui4 - 20)
GUICtrlSetFont(-1, 9, 400, 4, "MS Sans Serif")
GUICtrlSetColor(-1, 0x0000FF)
GUICtrlSetCursor(-1, 0)
GUIRegisterMsg($WM_COMMAND, "MY_WM_COMMAND")
Sleep(10)

$btnPayMe = GUICtrlCreateButton("", @DesktopWidth - 300, $altogui4 - 25, 60, 20)
_ResourceSetImageToCtrl($btnPayMe, "TEST_GIF_0")

Func MY_WM_COMMAND($hwnd, $msg, $WParam, $LParam)
	Local $iIDFrom = BitAND($WParam, 0xFFFF);LoWord
	Switch $iIDFrom
		Case $c_Hyperlink_FunkEu
			ShellExecute("mailto:qwertybcn121@gmail.com")
	EndSwitch
EndFunc   ;==>MY_WM_COMMAND
Sleep(10)

$GUIActiveX = GUICtrlCreateObj($oIE, 0, 140, @DesktopWidth - 360, $altogui4 - 140)
Sleep(10)
$oIE.navigate(@ScriptDir & "\Webcam\Webcam.html")
Global $guipeque1


;mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm


GUISetState()


$Q = -100
$QQ = -100

$asegurarse = 0
$asegurarse2 = 0

$colocar = @DesktopWidth - 360
$colocar2 = $colocar / 2
$colocar3 = $altogui4 - 100
$colocar4 = $colocar3 / 2

$Guipeque = GUICreate("minigui", 250, 80, $colocar2, $colocar4, $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
WinSetOnTop($Guipeque, "minigui", 1)
GUISetBkColor(0xABCDEF)
_WinAPI_SetLayeredWindowAttributes($Guipeque, 0xABCDEF, 255)
GUISetState(@SW_SHOW, $Guipeque)

Global $size = WinGetPos("minigui")

HotKeySet("^{UP}", "boton1")
Func boton1()
	If $polla = 0 Then
		$msg = $Button1
	Else
		button1c()
	EndIf
EndFunc   ;==>boton1

HotKeySet("^{LEFT}", "boton2")
Func boton2()
	If $polla = 0 Then
		$msg = $Button2
	Else
		button2c()
	EndIf
EndFunc   ;==>boton2

HotKeySet("^{RIGHT}", "boton3")
Func boton3()
	If $polla = 0 Then
		$msg = $Button3
	Else
		button3c()
	EndIf
EndFunc   ;==>boton3

HotKeySet("^{DOWN}", "boton4")
Func boton4()
	If $polla = 0 Then
		$msg = $Button4
	Else
		button4c()
	EndIf
EndFunc   ;==>boton4

HotKeySet("!{UP}", "boton5")
Func boton5()
	If $polla = 0 Then
		$msg = $Button8
	Else
		button8c()
	EndIf
EndFunc   ;==>boton5

HotKeySet("!{LEFT}", "boton6")
Func boton6()
	If $polla = 0 Then
		$msg = $Button7
	Else
		button7c()
	EndIf
EndFunc   ;==>boton6

HotKeySet("!{RIGHT}", "boton7")
Func boton7()
	If $polla = 0 Then
		$msg = $Button6
	Else
		button6c()
	EndIf
EndFunc   ;==>boton7

HotKeySet("!{DOWN}", "boton8")
Func boton8()
	If $polla = 0 Then
		$msg = $Button5
	Else
		button5c()
	EndIf
EndFunc   ;==>boton8

$size = WinGetPos("minigui")
$mitad = $size[2] - $size[0]
$mitad2 = $mitad / 2

Local $Guipeque, $hGraphic, $hPen
; Draw line
_GDIPlus_Startup()
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
Sleep(10)
_GDIPlus_PenDispose($hPen)
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_Shutdown()

Func configurarpeque()

EndFunc   ;==>configurarpeque

Func mantenerdentro()
	If GUICtrlRead($input3) < 1 Then

		GUICtrlSetData($input3, 1)
	EndIf
	If GUICtrlRead($input3) > 99 Then

		GUICtrlSetData($input3, 99)
	EndIf
EndFunc   ;==>mantenerdentro

HotKeySet("{ESC}", "On_Exit2")

Func candado()
	Global $size = WinGetPos("minigui")
	If GUICtrlRead($Radioderechas) = $GUI_CHECKED And Not WinExists("candado") Then
		$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] + $size[2] + 10, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($Guipequecandado, "candado", 1)
		GUISetBkColor(0xABCDEF)
		_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
		GUISetState(@SW_SHOW, $Guipequecandado)
		Global $sizecandado = WinGetPos("candado")
		_GDIPlus_Startup()
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)

		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()

		GUISwitch($Main)
	ElseIf GUICtrlRead($Radioizquierdas) = $GUI_CHECKED And Not WinExists("candado") Then
		$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] - 100, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($Guipequecandado, "candado", 1)
		GUISetBkColor(0xABCDEF)
		_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
		GUISetState(@SW_SHOW, $Guipequecandado)

		Global $sizecandado = WinGetPos("candado")
		_GDIPlus_Startup()
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()

		GUISwitch($Main)
	ElseIf GUICtrlRead($Radioderechas) = $GUI_CHECKED And WinExists("candado") Then
		GUIDelete($Guipequecandado)

	ElseIf GUICtrlRead($Radioizquierdas) = $GUI_CHECKED And WinExists("candado") Then
		GUIDelete($Guipequecandado)

	EndIf
EndFunc   ;==>candado



GUISwitch($Main)



Dim $lpszDevice ; Identifier of an MCI device or device driver.
Dim $lpszDeviceID ; Identifier of an MCI device.
; This identifier or alias is assigned when the device is opened.
Dim $lpszOpenFlags ; Flag that identifies what to initialize.
Dim $lpszRequest ; Flag for requesting status information. See table on the web page mentioned above.

; Source: http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_the_wait_notify_and_test_flags.asp

Dim $lpszFlags ; Can be "wait", "notify", or both.
; For digital-video and VCR devices, "test" can also be specified.
Dim $lpszCommand ; mciCommand string to send.
Dim $lpszReturnString ; information will be returned into this string. Reserve enough space!
Dim $cchReturn ; Length of returnstring
Dim $mciError ; mci error code

; STEP 1: Open the device we want to monitor

; Source: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_open.asp

;$lpszDevice = "waveaudio"

$lpszDevice = "new type waveaudio"

$lpszOpenFlags = "alias mywave" ; For all possible flags, see table on web page mentioned above.

$lpszFlags = ""

$lpszCommand = StringFormat("open %s %s %s", $lpszDevice, $lpszOpenFlags, $lpszFlags);

$lpszReturnString = _StringRepeat(" ", 100) ; Information will return in this string

$cchReturn = StringLen($lpszReturnString)
; Size, in characters, of the return buffer specified
; by the lpszReturnString parameter.


$mciError = _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, 0);


If $mciError[0] <> 0 Then _mciShowError($mciError[0])

; STEP 2: Obtain the audio levels

; Source: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_status_mm.asp

$lpszDeviceID = "mywave"

$lpszRequest = "level" ; Returns the current PCM audio sample value.
; See table on web page mentioned above.

$lpszFlags = ""

$lpszCommand = StringFormat("status %s %s %s", $lpszDeviceID, $lpszRequest, $lpszFlags);



;mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

Func _probamossonido()
	$mciError = _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, 0)
	If $mciError[0] <> 0 Then _mciShowError($mciError[0])
	$pedro = ($mciError[2]) * 0.78125

	If $pedro > $T Then
		Beep(600, 1200)
	EndIf
EndFunc   ;==>_probamossonido

Func _Manual()
	GUICtrlSetData($input3, GUICtrlRead($slide1))
EndFunc   ;==>_Manual

; USER DEFINED FUNCTIONS

Func _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, $hwndCallback)

	;VB-style declaration:
	;
	;Declare Function mciSendString
	;	Lib "winmm.dll"
	;	Alias "mciSendStringA"
	;	(ByVal lpstrCommand As String,
	;	ByVal lpstrReturnString As String,
	;	ByVal uReturnLength As Long,
	;	ByVal hwndCallback As Long)
	;	As Long


	; mciSendString returns information in the lpszReturnString parameter of mciSendString.
	; The information is dependent on the request type.


	Return DllCall("winmm.dll", "long", "mciSendStringA", "str", $lpszCommand, "str", $lpszReturnString, "long", $cchReturn, "long", 0)

EndFunc   ;==>_mciSendString


Func _mciShowError($mciError)

	; To show a "readable" mci error.
	;
	;VB-style declaration:
	;
	;Declare Function mciGetErrorString
	;	Lib "winmm.dll"
	;	Alias "mciGetErrorStringA"
	;	(ByVal dwError As Long,
	;	ByVal lpstrBuffer As String,
	;	ByVal uLength As Long)
	;	As Long

	Dim $errStr ; Error message


	$errStr = _StringRepeat(" ", 100) ; Reserve some space for the error message


	$Result = DllCall("winmm.dll", "long", "mciGetErrorStringA", "long", $mciError, "string", $errStr, "long", StringLen($errStr))

EndFunc   ;==>_mciShowError

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 01 Aug 2011, 21:05
by qwerty212
Code from line 930 to line 2165

Code: Select all

While 1
	$msg = GUIGetMsg($Main)
	mantenerdentro()
	_BatteryQueryEx()

	_Manual()
	$T = GUICtrlRead($input3)

	$mciError = _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, 0);

	If GUICtrlRead($CHECKBOX3) = 1 Then
		$STATE3 = "CHECK"
	Else
		$STATE3 = "UNCHECK"
	EndIf

	$T = GUICtrlRead($input3)

	If GUICtrlRead($CHECKBOX2) = 1 Then
		$STATE2 = "CHECK"
	Else
		$STATE2 = "UNCHECK"
	EndIf

	If GUICtrlRead($CHECKBOX20002) = 1 Then
		$STATE20002 = "CHECK"
	Else
		$STATE20002 = "UNCHECK"
	EndIf


	If GUICtrlRead($Radio00) = $GUI_CHECKED Then
		$resta = 0
	EndIf

	If GUICtrlRead($Radio10) = $GUI_CHECKED Then
		$resta = 1
	EndIf

	If GUICtrlRead($Radio20) = $GUI_CHECKED Then
		$resta = 2
	EndIf

	If GUICtrlRead($Radio30) = $GUI_CHECKED Then
		$resta = 3
	EndIf

	If $STATE3 = "UNCHECK" Then
		GUICtrlSetData($ProgressBar, 0)
	EndIf

	If $STATE3 = "UNCHECK" Then
		GUICtrlSetData($VolumeLabel2, "" & 0)
	EndIf

	If $STATE3 = "CHECK" Then
		GUICtrlSetData($ProgressBar, $mciError[2])
		_probamossonido()
	EndIf

	If $STATE3 = "CHECK" Then
		GUICtrlSetData($VolumeLabel2, "" & $A)
	EndIf
	$T = GUICtrlRead($input3)
	If $mciError[0] <> 0 Then _mciShowError($mciError[0])

	GUICtrlSetData($VolumeLabel, "" & $mciError[2])
	$pedro = ($mciError[2]) * 0.78125
	$A = Round($pedro, 0)


	Select
		Case $msg = $GUI_EVENT_CLOSE
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			$ok = MsgBox(20, "CLOSE", "DO YOU WANT TO EXIT?")
			If $ok = 6 Then Exit
			WinSetOnTop($Guipeque, "minigui", 1)
			WinSetOnTop($Guipequecandado, "candado", 1)


		Case $msg = $Radioderechas
			Global $size = WinGetPos("minigui")
			If Not WinExists("candado") Then
				Sleep(10)
			Else
				Sleep(10)
				GUIDelete($Guipequecandado)
				$asegurarse2c = 0
				GUISwitch($Main)
				$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] + $size[2] + 10, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
				WinSetOnTop($Guipequecandado, "candado", 1)
				GUISetBkColor(0xABCDEF)
				_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
				GUISetState(@SW_SHOW, $Guipequecandado)
				Global $sizecandado = WinGetPos("candado")
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
				GUISwitch($Main)
			EndIf

		Case $msg = $Radioizquierdas
			Global $size = WinGetPos("minigui")
			If Not WinExists("candado") Then
				Sleep(10)
			Else
				Sleep(10)
				GUIDelete($Guipequecandado)
				$asegurarse2c = 0
				GUISwitch($Main)
				$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] - 100, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
				WinSetOnTop($Guipequecandado, "candado", 1)
				GUISetBkColor(0xABCDEF)
				_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
				GUISetState(@SW_SHOW, $Guipequecandado)

				Global $sizecandado = WinGetPos("candado")
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()

				GUISwitch($Main)
			EndIf

		Case $msg = $aderechas
			GUICtrlSetState($Radioderechas, $GUI_CHECKED)
			If Not WinExists("candado") Then
				Sleep(10)
			Else
				GUIDelete($Guipequecandado)
				$asegurarse2c = 0
				GUISwitch($Main)
				$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] + $size[2] + 10, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
				WinSetOnTop($Guipequecandado, "candado", 1)
				GUISetBkColor(0xABCDEF)
				_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
				GUISetState(@SW_SHOW, $Guipequecandado)
				Global $sizecandado = WinGetPos("candado")
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()

				GUISwitch($Main)
			EndIf

		Case $msg = $aizquierdas
			GUICtrlSetState($Radioizquierdas, $GUI_CHECKED)
			If Not WinExists("candado") Then
				Sleep(10)
			Else
				$asegurarse2c = 0
				GUIDelete($Guipequecandado)
				GUISwitch($Main)
				$Guipequecandado = GUICreate("candado", 80, $size[3], $size[0] - 100, $size[1], $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
				WinSetOnTop($Guipequecandado, "candado", 1)
				GUISetBkColor(0xABCDEF)
				_WinAPI_SetLayeredWindowAttributes($Guipequecandado, 0xABCDEF, 255)
				GUISetState(@SW_SHOW, $Guipequecandado)
				Global $sizecandado = WinGetPos("candado")
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizecandado[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizecandado[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizecandado[3] - 5, $sizecandado[2], $sizecandado[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $sizecandado[2] - 5, $sizecandado[3] - 5, $sizecandado[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()

				GUISwitch($Main)
			EndIf

		Case $msg = $Buttonvirtualon
			candado()

		Case $msg = $CHECKBOX2000
			If GUICtrlRead($CHECKBOX2000) = $GUI_CHECKED Then
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				MsgBox(48, 'BETA VERSION', "THIS OPTION IS NOT AVAIBLE YET" & @CRLF & "IT WILL BE INCLUDED ON FINAL VERSION")
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			EndIf

		Case $msg = $soundsbtn
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			MsgBox(48, 'BETA VERSION', "THIS OPTION IS NOT AVAIBLE YET" & @CRLF & "IT WILL BE INCLUDED ON FINAL VERSION")
			WinSetOnTop($Guipeque, "minigui", 1)
			WinSetOnTop($Guipequecandado, "candado", 1)


		Case $msg = $Button1
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			If $size[1] > 168 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1] - 3, $size[2], $size[3])
				Sleep(10)
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				Sleep(10)
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf




		Case $msg = $Button2
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[0] >= 100 Then
				Sleep(10)
				WinMove("minigui", "", $size[0] - 3, $size[1], $size[2], $size[3])
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf

		Case $msg = $Button3
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[0] + $size[2] <= @DesktopWidth - 450 Then
				Sleep(10)
				WinMove("minigui", "", $size[0] + 3, $size[1], $size[2], $size[3])
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf

		Case $msg = $Button4
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[1] + $size[3] <= $altogui4 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1] + 3, $size[2], $size[3])
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf

		Case $msg = $Button5
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[1] + $size[3] <= $altogui4 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1], $size[2], $size[3] + 3)
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf

		Case $msg = $Button6
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[0] + $size[2] <= @DesktopWidth - 370 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1], $size[2] + 3, $size[3])
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf

		Case $msg = $Button7
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[2] >= 100 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1], $size[2] - 3, $size[3])
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			Else
				Beep(100, 100)
			EndIf


		Case $msg = $Button8
			$size = WinGetPos("minigui")
			Sleep(10)
			$asegurarse2 = 0
			Sleep(10)
			If $size[3] > 30 Then
				Sleep(10)
				WinMove("minigui", "", $size[0], $size[1], $size[2], $size[3] - 3)
				$size = WinGetPos("minigui")
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			EndIf



		Case $msg = $btnPayMe
			ShellExecute("https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&currency_code=USD&hosted_button_id=QKEQWHDTDSBZ4");

		Case $msg = $savebtn
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			$destino = FileOpenDialog("Choose what script do you want to run as release method.", @ScriptDir, "Script Files (*.exe)")
			If @error Then
				GUICtrlSetData($INPUT13, $default)
				$WW = $default
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			Else
				GUICtrlSetData($INPUT13, $destino)
				$WW = $destino
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			EndIf

		Case $msg = $Buttonvirtualconf
			If WinExists("candado") Then
				If Not WinExists("Use these controls to configure the virtual restrain settings and position") Then
					configurar()
				EndIf
			EndIf

		Case $msg = $savebtn2
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			$destino2 = FileOpenDialog("Choose what script do you want to run as teasing method.", @ScriptDir, "Script Files (*.exe)")
			If @error Then
				GUICtrlSetData($INPUT132, $default2)
				$WW2 = $default2
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			Else
				GUICtrlSetData($INPUT132, $destino2)
				$WW2 = $destino2
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			EndIf

		Case $msg = $savebtn1
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			$destino1 = FileOpenDialog("Choose what script do you want to run as teasing method for sound.", @ScriptDir, "Script Files (*.exe)")
			If @error Then
				GUICtrlSetData($INPUT130, $default1)
				$WW1 = $default1
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			Else
				GUICtrlSetData($INPUT130, $destino1)
				$WW1 = $destino1
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			EndIf

		Case $msg = $testbtn
			On_Exit()
			Global $asegurarse = 1

		Case $msg = $testbtnteasing
			castigo()

		Case $msg = $testbtn1
			castigosound()

		Case $msg = $startfake
			WinSetOnTop($Guipeque, "minigui", 2)
			WinSetOnTop($Guipequecandado, "candado", 2)
			MsgBox(48, 'BETA VERSION', "THIS OPTION IS NOT AVAIBLE YET" & @CRLF & "IT WILL BE INCLUDED ON FINAL VERSION")
			WinSetOnTop($Guipeque, "minigui", 1)
			WinSetOnTop($Guipequecandado, "candado", 1)

		Case $msg = $start
			If $STATE2 = "CHECK" Then
				$mamamdasquequedan = Random(GUICtrlRead($inputrandom), GUICtrlRead($input), 1)
				$totalamamar = $mamamdasquequedan
			Else
				$mamamdasquequedan = GUICtrlRead($input)
				$totalamamar = $mamamdasquequedan
			EndIf

			$read = GUICtrlRead($input)

			$DELAY = GUICtrlRead($input100)


			If GUICtrlRead($input100) > 59 Then
				$DELAY = 59
			EndIf


			If $asegurarse2 = 0 Then
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				MsgBox(48, "ATENTION", "YOU MUST CHOOSE A COLOR ON THE DILDO" & @CRLF & "AND RUN A SUCCESFUL TEST LOOKING FOR IT" & @CRLF & "(using the 'Test' button)" & @CRLF & "TO LET THE PROGRAM KNOW WHEN YOU'VE DONE THE SUCK" & @CRLF & "" & @CRLF & "OTHERWISE YOU'LL BE STUCK ON A LOOP" & @CRLF & "AND PROGRAM WILL COUNT EVERY SUCK ATEMPT AS A FAIL", 10)
;~ 			If the input of time is lower than 200 it will read some of the inputs and will close the gui to let the coundown work
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			Else
				If $asegurarse = 1 Then
					$y = GUICtrlRead($input) ;reads the time in the input
					GUICtrlRead($inputrandom)
					Sleep(10)
					$T = GUICtrlRead($input3)
					$tiempodespuesrandom = GUICtrlRead($inputrandom20002)
					Sleep(10)
					$tiempodespues = GUICtrlRead($input3500)
					Sleep(20)
					$tiempoporfallar = GUICtrlRead($input300) * 60
					Sleep(20)
					cuentaatras()


				Else
					WinSetOnTop($Guipequecandado, "candado", 2)
					WinSetOnTop($Guipeque, "minigui", 2)
					MsgBox(48, "RELEASE METHOD HAS NOT BEEN TESTED YET", "YOU MUST TEST THAT THE DESIRED" & @CRLF & "RELEASE METHOD WORKS AS EXPECTED" & @CRLF & "" & @CRLF & "SESSION WILL NOT START UNTIL YOU CHECK IT" & @CRLF & "" & @CRLF & "If you want more infomation" & @CRLF & "please visit www.boundanna.com", 10)
;~ 				If the input of time is lower than 200 it will read some of the inputs and will close the gui to let the coundown work
					WinSetOnTop($Guipeque, "minigui", 1)
					WinSetOnTop($Guipequecandado, "candado", 1)

				EndIf
			EndIf

		Case $msg = $exercisebtn
			guivelocidad()

		Case $msg = $Button9

			GUICtrlRead($input3)
			$size = WinGetPos("minigui")
			$sizemitad = $size[2] / 2
			Sleep(10)
			$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, ($size[0] + $sizemitad) - 6, ($size[1] + $size[3]) - 6, $Color, $algoritmo * 4)
			Sleep(10)
			$buscar = PixelSearch(($size[0] + $sizemitad) + 6, $size[1] + 6, ($size[0] + $size[2]) - 6, ($size[1] + $size[3]) - 6, $Color, $algoritmo * 4)

			If IsArray($buscar) And IsArray($coord1) Then
				Local $Guipeque, $hGraphic, $hPen
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xff00ff00, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				$asegurarse2 = 1
				Sleep(500)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
			ElseIf Not IsArray($coord1) Then
				Sleep(10)
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				Sleep(10)
				MsgBox(48, "ERROR", "COLOR NOT FOUND" & @CRLF & "ON THE LEFT WINDOW" & @CRLF & "TRY CHANGING THE TOLERANCE", 10)
				$asegurarse2 = 0
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			ElseIf Not IsArray($buscar) Then
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				Sleep(10)
				MsgBox(48, "ERROR", "COLOR NOT FOUND" & @CRLF & "ON THE RIGHT WINDOW" & @CRLF & "TRY CHANGING THE TOLERANCE", 10)
				$asegurarse2 = 0
				; Draw line
				_GDIPlus_Startup()
				$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipeque)
				$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $size[2] - 5, 1, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, ($size[2] / 2) - 2, 1, ($size[2] / 2) - 2, $size[3], $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, 1, $size[3] - 5, $size[2], $size[3] - 5, $hPen)
				_GDIPlus_GraphicsDrawLine($hGraphic, $size[2] - 5, $size[3] - 5, $size[2] - 5, 0, $hPen)
				Sleep(10)
				_GDIPlus_PenDispose($hPen)
				_GDIPlus_GraphicsDispose($hGraphic)
				_GDIPlus_Shutdown()
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
			EndIf

	EndSelect
	Switch $msg
		Case $Button56
			WinSetOnTop($Guipeque, "minigui", 2)
			$Data = _ColorChooserDialog($Color, $Main)
			If $Data > -1 Then
				$Color = $Data

			EndIf
			WinSetOnTop($Guipeque, "minigui", 1)
	EndSwitch
WEnd


Func configurar()
	Global $polla = 1
	$configurar = GUICreate("Use these controls to configure the virtual restrain settings and position", 800, 200, 2, 0, $WS_EX_TOOLWINDOW)
	GUISetState(@SW_SHOW, $configurar)
	WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 1)

	$Button1c = GUICtrlCreateButton("", 2, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button1c, "arriba2", $RT_BITMAP)

	$Button2c = GUICtrlCreateButton("", 2 + 70, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button2c, "izquierda2", $RT_BITMAP)

	$Button3c = GUICtrlCreateButton("", 2 + 140, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button3c, "derecha2", $RT_BITMAP)

	$Button4c = GUICtrlCreateButton("", 2 + 210, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button4c, "abajo2", $RT_BITMAP)

	$Button5c = GUICtrlCreateButton("", 282, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button5c, "alto2", $RT_BITMAP)

	$Button6c = GUICtrlCreateButton("", 2 + 350, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button6c, "ancho2", $RT_BITMAP)

	$Button7c = GUICtrlCreateButton("", 2 + 420, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button7c, "estrecho2", $RT_BITMAP)

	$Button8c = GUICtrlCreateButton("", 2 + 490, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button8c, "bajo2", $RT_BITMAP)

	$Button9c = GUICtrlCreateButton("", 800 - 75, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button9c, "test2", $RT_BITMAP)

	$Button56c = GUICtrlCreateButton("", 800 - 145, 2, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Button56c, "select2", $RT_BITMAP)

	$Buttonsicandado = GUICtrlCreateButton("", 800 - 75, 105, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Buttonsicandado, "sicandado", $RT_BITMAP)

	$Buttonnocandado = GUICtrlCreateButton("", 800 - 145, 105, 65, 65, $BS_BITMAP)
	_ResourceSetImageToCtrl($Buttonnocandado, "nocandado", $RT_BITMAP)

	$algoritmo2 = 10

	GUICtrlCreateLabel("TOLERANCE:", 495 + 75, 5)
	$input3c = GUICtrlCreateInput($algoritmo2, 490 + 75, 23, 75, 37, $ES_READONLY)
	GUICtrlSetFont(-1, 22, 400, 3, "Verdana")
	GUICtrlSetBkColor(-1, 0xaeee10)
	$upanddownc = GUICtrlCreateUpdown($input3c)
	GUICtrlSetLimit($upanddownc, 99, 1)


	Sleep(10)
	$timepunishment = 180

	GUICtrlCreateGroup("TIME PUNISHMENT", 4, 75, 195, 103)
	GUICtrlSetBkColor(-1, 0xff3300)
	$inputtimec = GUICtrlCreateInput($timepunishment, 75, 130, 100, 40, $ES_NUMBER)
	GUICtrlSetFont(-1, 22, 400, 3, "Verdana")
	GUICtrlSetBkColor(-1, 0xff3300)
	$upanddowntimec = GUICtrlCreateUpdown($inputtimec)
	GUICtrlSetLimit($upanddowntimec, 600, 1)
	GUICtrlCreateLabel("Time in minutes that you will be tied", 19, 94)
	GUICtrlSetColor(-1, 0x0000AE)
	GUICtrlCreateLabel("if you break the virtual restrain", 29, 109)
	GUICtrlSetColor(-1, 0x0000AE)
	$picsrelojito = GUICtrlCreatePic("", 18, 125, 46, 46)
	_ResourceSetImageToCtrl($picsrelojito, "TEST_GIF_reloj3")
	GUICtrlCreateGroup("", -99, -99, 1, 1)

	GUICtrlCreateGroup("TEASING PUNISHMENT", 215, 75, 430, 103)
	GUICtrlSetBkColor(-1, 0xff3300)
	$savelabel2 = GUICtrlCreateLabel("Program that will tease you if you break the virtual restrain:", 155 + 125, 94)
	GUICtrlSetColor(-1, 0x0000AE)
	$default4 = @ScriptDir & "\pain.exe"
	$WW4 = $default4
	$INPUT132c = GUICtrlCreateInput($default4, 155 + 125, 112, 270, 20)
	GUICtrlSetBkColor(-1, 0xff3300)
	$savebtn2c = GUICtrlCreateButton("Change", 385 + 165, 110, 47, 23)
	$testbtnteasingc = GUICtrlCreateButton("Test", 434 + 165, 110, 40, 23)
	Sleep(10)
	GUICtrlCreateLabel("Run the teasing program...", 155 + 125, 149)
	GUICtrlSetColor(-1, 0x0000AE)
	$Radiopadlock1 = GUICtrlCreateRadio("Once", 236 + 175, 145)
	GUICtrlSetColor(-1, 0x0000AE)
	$Radiopadlock2 = GUICtrlCreateRadio("During the whole punishment time", 226 + 235, 145)
	GUICtrlSetColor(-1, 0x0000AE)
	GUICtrlSetState($Radiopadlock2, $GUI_CHECKED)
	$picspain = GUICtrlCreatePic("", 218, 92, 63, 78)
	_ResourceSetImageToCtrl($picspain, "TEST_GIF_pain")
	GUICtrlCreateGroup("", -99, -99, 1, 1)
	polla()

EndFunc   ;==>configurar


Func polla()

	While $polla = 1
		If GUICtrlRead($Radiopadlock2) = $GUI_CHECKED Then
			$culo = 1
		Else
			$culo = 0
		EndIf

		$2msg = GUIGetMsg($configurar)

		Select
			Case $2msg = $testbtnteasingc
				castigorompecandado()

			Case $2msg = $savebtn2c
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 2)
				$destino2c = FileOpenDialog("Choose what script do you want to run as teasing method if you break the virtual restrain.", @ScriptDir, "Script Files (*.exe)")
				If @error Then
					GUICtrlSetData($INPUT132c, $default4)
					$WW4 = $default4
					WinSetOnTop($Guipeque, "minigui", 1)
					WinSetOnTop($Guipequecandado, "candado", 1)
					WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 1)
				Else
					GUICtrlSetData($INPUT132c, $destino2c)
					$WW4 = $destino2c
					WinSetOnTop($Guipeque, "minigui", 1)
					WinSetOnTop($Guipequecandado, "candado", 1)
					WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 1)
				EndIf

			Case $2msg = $Buttonsicandado
				If $asegurarse2c = 0 Then
					WinSetOnTop($Guipeque, "minigui", 2)
					WinSetOnTop($Guipequecandado, "candado", 2)
					WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 2)
					MsgBox(48, "ATENTION", "YOU MUST CHOOSE A COLOR ON THE DILDO" & @CRLF & "AND RUN A SUCCESFUL TEST LOOKING FOR IT" & @CRLF & "(using the 'Test' button)" & @CRLF & "IF YOU WANT TO USE THE VIRTUAL RESTRAIN", 10)
					WinSetOnTop($Guipeque, "minigui", 1)
					WinSetOnTop($Guipequecandado, "candado", 1)
					WinSetOnTop($configurar, "Use these controls to configure the virtual restrain settings and position", 1)
				Else
					$Maxtime3 = GUICtrlRead($inputtimec) * 60
					If GUICtrlRead($Radiopadlock2) = $GUI_CHECKED Then
						$culo = 1
					Else
						$culo = 0
					EndIf
					GUIDelete($configurar)
					$polla = 0
				EndIf

			Case $2msg = $Buttonnocandado
				candado()
				GUIDelete($configurar)
				$polla = 0

			Case $2msg = $Button1c
				$sizec = WinGetPos("candado")
				Sleep(10)
				$asegurarse2c = 0
				If $sizec[1] > 168 Then
					Sleep(10)
					WinMove("candado", "", $sizec[0], $sizec[1] - 3, $sizec[2], $sizec[3])
					Sleep(10)
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button2c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[0] >= 20 Then
					WinMove("candado", "", $sizec[0] - 3, $sizec[1], $sizec[2], $sizec[3])
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button3c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[0] + $sizec[2] <= @DesktopWidth - 370 Then
					WinMove("candado", "", $sizec[0] + 3, $sizec[1], $sizec[2], $sizec[3])
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button4c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[1] + $sizec[3] <= $altogui4 Then
					WinMove("candado", "", $sizec[0], $sizec[1] + 3, $sizec[2], $sizec[3])
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button5c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[1] + $sizec[3] <= $altogui4 Then
					WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2], $sizec[3] + 3)
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button6c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[0] + $sizec[2] <= @DesktopWidth - 370 Then
					WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2] + 3, $sizec[3])
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button7c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[2] >= 50 Then
					WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2] - 3, $sizec[3])
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()

				Else
					Beep(100, 100)
				EndIf


			Case $2msg = $Button8c
				$sizec = WinGetPos("candado")
				$asegurarse2c = 0
				If $sizec[3] > 30 Then
					WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2], $sizec[3] - 3)
					$sizec = WinGetPos("candado")
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					Sleep(10)
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				EndIf

			Case $2msg = $Button9c

				GUICtrlRead($input3)
				$sizec = WinGetPos("candado")
				$sizemitadc = $sizec[2] / 2
				Sleep(10)
				$coord1 = PixelSearch($sizec[0] + 6, $sizec[1] + 6, ($sizec[0] + $sizec[2]) - 6, ($sizec[1] + $sizec[3]) - 6, $Color2, $algoritmo2 * 2)
				If IsArray($coord1) Then
					Global $Guipequecandado, $hGraphic, $hPen
					; Draw line
					_GDIPlus_Startup()
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xff00ff00, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					$asegurarse2c = 1
					Sleep(500)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
				ElseIf Not IsArray($coord1) Then
					Global $Guipequecandado, $hGraphic, $hPen
					Sleep(10)
					WinSetOnTop($Guipeque, "minigui", 2)
					WinSetOnTop($Guipequecandado, "candado", 2)
					Sleep(10)
					MsgBox(48, "ERROR", "COLOR NOT FOUND" & @CRLF & "ON THE VIRTUAL PADLOCK WINDOW" & @CRLF & "PLEASE TRY CHANGING THE TOLERANCE", 10)
					$asegurarse2c = 0
					; Draw line
					_GDIPlus_Startup()
					$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
					$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
					_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
					Sleep(10)
					_GDIPlus_PenDispose($hPen)
					_GDIPlus_GraphicsDispose($hGraphic)
					_GDIPlus_Shutdown()
					WinSetOnTop($Guipeque, "minigui", 1)
					WinSetOnTop($Guipequecandado, "candado", 1)
				EndIf
		EndSelect

		Switch $2msg
			Case $Button56c
				WinSetOnTop($Guipeque, "minigui", 2)
				WinSetOnTop($Guipequecandado, "candado", 2)
				$Data2 = _ColorChooserDialog($Color2, $Main)
				If $Data2 > -1 Then
					$Color2 = $Data2

				EndIf
				WinSetOnTop($Guipeque, "minigui", 1)
				WinSetOnTop($Guipequecandado, "candado", 1)
		EndSwitch
	WEnd


EndFunc   ;==>polla
Global $y = GUICtrlRead($input) ;reads the time in the input

Func button1c()
	$sizec = WinGetPos("candado")
	Sleep(10)
	$asegurarse2c = 0
	If $sizec[1] > 168 Then
		Sleep(10)
		WinMove("candado", "", $sizec[0], $sizec[1] - 3, $sizec[2], $sizec[3])
		Sleep(10)
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button1c

Func button2c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[0] >= 20 Then
		WinMove("candado", "", $sizec[0] - 3, $sizec[1], $sizec[2], $sizec[3])
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button2c

Func button3c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[0] + $sizec[2] <= @DesktopWidth - 370 Then
		WinMove("candado", "", $sizec[0] + 3, $sizec[1], $sizec[2], $sizec[3])
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button3c

Func button4c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[1] + $sizec[3] <= $altogui4 Then
		WinMove("candado", "", $sizec[0], $sizec[1] + 3, $sizec[2], $sizec[3])
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button4c

Func button5c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[1] + $sizec[3] <= $altogui4 Then
		WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2], $sizec[3] + 3)
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button5c

Func button6c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[0] + $sizec[2] <= @DesktopWidth - 370 Then
		WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2] + 3, $sizec[3])
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button6c

Func button7c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[2] >= 50 Then
		WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2] - 3, $sizec[3])
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()

	Else
		Beep(100, 100)
	EndIf
EndFunc   ;==>button7c

Func button8c()
	$sizec = WinGetPos("candado")
	$asegurarse2c = 0
	If $sizec[3] > 30 Then
		WinMove("candado", "", $sizec[0], $sizec[1], $sizec[2], $sizec[3] - 3)
		$sizec = WinGetPos("candado")
		Global $Guipequecandado, $hGraphic, $hPen
		; Draw line
		_GDIPlus_Startup()
		Sleep(10)
		$hGraphic = _GDIPlus_GraphicsCreateFromHWND($Guipequecandado)
		$hPen = _GDIPlus_PenCreate(0xC4FF0000, 5)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, 1, $sizec[3], $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, 1, $sizec[2] - 5, 1, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, 1, $sizec[3] - 5, $sizec[2], $sizec[3] - 5, $hPen)
		_GDIPlus_GraphicsDrawLine($hGraphic, $sizec[2] - 5, $sizec[3] - 5, $sizec[2] - 5, 0, $hPen)
		Sleep(10)
		_GDIPlus_PenDispose($hPen)
		_GDIPlus_GraphicsDispose($hGraphic)
		_GDIPlus_Shutdown()
	EndIf
EndFunc   ;==>button8c

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 01 Aug 2011, 21:08
by qwerty212
And finally the code from line 2166 to line 3373

Code: Select all

Func castigosound() 
	$sFilName1 = StringRegExpReplace($WW1, "^.*\\", "")
	If Not ProcessExists($sFilName1) Then
		Run($WW1)
	EndIf
EndFunc   ;==>castigosound

Func On_Exit()
	$sFilName = StringRegExpReplace($WW, "^.*\\", "")
	If GUICtrlRead($Radio1) = $GUI_CHECKED And Not ProcessExists($sFilName) Then
		Run($WW)
	EndIf
	If GUICtrlRead($Radio2) = $GUI_CHECKED Then
		CDTray($U, "open")
	EndIf
EndFunc   ;==>On_Exit

Func CLOSEClicked()
	On_Exit2()
EndFunc   ;==>CLOSEClicked

Func On_Exit2()
	Exit
EndFunc   ;==>On_Exit2

Func guivelocidad()
	If $resta > 0 Then
		$gui623 = GUICreate("This the max time that you'll have to do every suck", 350, 30, @DesktopWidth - 355, 165, BitOR($WS_CAPTION, $WS_POPUP, $WS_EX_TOOLWINDOW), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
		WinSetOnTop($gui623, "This the max time that you'll have to do every suck", 1)
		GUISetState(@SW_SHOW, $gui623)
		$ProgressBar1000 = GUICtrlCreateProgress(0, 0, 309, 30, $PBS_SMOOTH)
		$percent_value2 = 100
		GUICtrlSetData($ProgressBar1000, $percent_value2)
		$Buttonclose = GUICtrlCreateButton("", 310, 0, 40, 30, $BS_BITMAP)
		_ResourceSetImageToCtrl($Buttonclose, "close", $RT_BITMAP)
		$control = 1
		iniciarjuego2()
	EndIf
EndFunc   ;==>guivelocidad


Func salida()
	$nmsg = GUIGetMsg($gui623)

	If $nmsg = $Buttonclose Then
		$control = 0

		GUIDelete($gui623)
	EndIf

EndFunc   ;==>salida


Func iniciarjuego2()
	While $control = 1
		salida()
		If WinExists("candado") Then
			mirarcandadocona()
		EndIf
		$size = WinGetPos("minigui")
		$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, $size[0] + $size[2] - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
		If $percent_value2 > 0.1 Then
			$percent_value2 = $percent_value2 - $resta
			Sleep(10)
			GUICtrlSetData($ProgressBar1000, $percent_value2)
			Sleep(10)
			iniciarjuego2()
		Else
			Beep(800, 600)
			$percent_value2 = 100
			GUICtrlSetData($ProgressBar1000, $percent_value2)
			iniciarjuego2()
		EndIf
	WEnd
EndFunc   ;==>iniciarjuego2



$count = 0
$count4 = 0


Func sessionfake()
	WinSetOnTop($Guipeque, "minigui", 2)
	WinSetOnTop($Guipequecandado, "candado", 2)
	MsgBox(48, "TEST SESSION", "NOW THE PROGRAM WILL RUN A FAKE SESSION THAT" & @CRLF & "WILL LET YOU TEST YOUR SETTINGS BEFORE" & @CRLF & "PLAYING FOR REAL", 10)
	WinSetOnTop($Guipeque, "minigui", 1)
	WinSetOnTop($Guipequecandado, "candado", 1)
EndFunc   ;==>sessionfake



Func cuentaatras()
	If $asegurarse2c = 0 Then
		GUIDelete($Guipequecandado)
	EndIf
	Global $MaxTime = $DELAY * 60
	Sleep(100)
	WinSetState($Main, "Selfbondage Blowjob Trainer Beta Release 0.1", @SW_DISABLE)
	Sleep(100)
	; the countdown starts. Y value will be the waiting time in seconds
	$X = 0
	$DELAY2 = $DELAY * 60
	$XX = 0
	$gui6 = GUICreate("Press Escape to close the program", 360, 250, @DesktopWidth - 364, 0, BitOR($WS_CAPTION, $WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	WinSetOnTop($gui6, "Press Escape to close the program", 1)
	$espabilar = GUICtrlCreateButton("", 15, 145, 160, 80)
	_ResourceSetImageToCtrl($espabilar, "1minute", $RT_BITMAP)
	$lento = GUICtrlCreateButton("", 190, 145, 160, 80)
	_ResourceSetImageToCtrl($lento, "moretime", $RT_BITMAP)

	Global $message5 = ""
	GUICtrlCreateLabel($message5, 5, 20, 350, 100, $SS_CENTER)
	GUICtrlSetFont(-1, 70, 10, 0)
	GUISetState(@SW_SHOW, $gui6)
	GUISetBkColor(0xFFCC66, $gui6)
	_Timer_SetTimer($gui6, 1000, "Count")
	While 1
		$msg = GUIGetMsg()
		$message5 = StringFormat("%02d:%02d\n", Mod(Floor($MaxTime / 60), 60), Mod($MaxTime, 60))


		_BatteryQueryEx()

		Select
			Case $msg = $espabilar
				espabilarse()

			Case $msg = $lento
				voylento()

			Case $msg = $GUI_EVENT_CLOSE
				Exit

			Case $MaxTime = 0
				Sleep(200)
				GUIDelete($gui6)
				Sleep(200)
				crearflash()
				$MaxTime = -1
		EndSelect


	WEnd

EndFunc   ;==>cuentaatras

Global $hGUI, $FlashCtrl
Global $oFlash
Global $fError = False
Global $gui666



Func crearflash()
	MouseMove(@DesktopWidth, 0, 0)
	WinSetOnTop($Guipequecandado, "candado", 2)
	WinSetOnTop($Guipeque, "minigui", 2)
	$gui666 = GUICreate("THE POINT OF NO RETURN", 420, 460, -1, -1, BitOR($WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_SHOW, $gui666)
	GUISetBkColor(0x000000, $gui666)
	$oFlash = ObjCreate("ShockwaveFlash.ShockwaveFlash.10")
	$oAutoItError = ObjEvent("AutoIt.Error", "COMError")
	$FlashCtrl = GUICtrlCreateObj($oFlash, 0, 0, 475, 260)


	With $oFlash
		; Put the file string here.
		.Movie = @ScriptDir & '\Webcam\file.swf'
		#cs Example
			.Movie = "http://64.191.61.82/albino_games04/curveball(www.albinoblacksheep.com).swf"
			.Base = "http://www.albinoblacksheep.com/flash/curveball"
		#ce
		.wmode = "opaque"
		.allowScriptAccess = "Always"
		.Playing = True
		.play()

		GUICtrlCreateLabel("THE POINT", 0, 290, 420, 80, $SS_CENTER)
		GUICtrlSetFont(-1, 40, 10, 0)
		GUICtrlSetColor(-1, 0x0FFFFFF)
		GUICtrlCreateLabel("OF NO RETURN", 0, 360, 420, 80, $SS_CENTER)
		GUICtrlSetFont(-1, 40, 10, 0)
		GUICtrlSetColor(-1, 0x0FFFFFF)
		Sleep(5500)
		GUIDelete($gui666)
		WinSetOnTop($Guipeque, "minigui", 1)
		WinSetOnTop($Guipequecandado, "candado", 1)
		barramamadascero()

	EndWith
EndFunc   ;==>crearflash


Func barramamadascero()
	If GUICtrlRead($Radioderechas) = $GUI_CHECKED Then
		barramamadas()
	Else
		barramamadasizquierdas()
	EndIf

EndFunc   ;==>barramamadascero

Func mirarcandado()
	If $WAR2 > 0 Or $WAR2 < 1500 Then
		$sizec = WinGetPos("candado")
		Sleep(10)
		$coord23 = PixelSearch($sizec[0] + 6, $sizec[1] + 6, ($sizec[0] + $sizec[2]) - 6, ($sizec[1] + $sizec[3]) - 6, $Color2, $algoritmo2 * 2)
		If IsArray($coord23) Then
			supercastigo()
		Else
			$coord23 = PixelSearch($sizec[0] + 6, $sizec[1] + 6, ($sizec[0] + $sizec[2]) - 6, ($sizec[1] + $sizec[3]) - 6, $Color2, $algoritmo2 * 2)
			If IsArray($coord23) Then
				supercastigo()
			EndIf
		EndIf
	EndIf
EndFunc   ;==>mirarcandado

Func mirarcandadocona()
	$sizec = WinGetPos("candado")
	Sleep(10)
	$coord23 = PixelSearch($sizec[0] + 6, $sizec[1] + 6, ($sizec[0] + $sizec[2]) - 6, ($sizec[1] + $sizec[3]) - 6, $Color2, $algoritmo2 * 2)
	If Not IsArray($coord23) Then

		$coord23 = PixelSearch($sizec[0] + 6, $sizec[1] + 6, ($sizec[0] + $sizec[2]) - 6, ($sizec[1] + $sizec[3]) - 6, $Color2, $algoritmo2 * 2)
	EndIf

EndFunc   ;==>mirarcandadocona

Func barramamadas()
	$percent_value = 100
	$guiejercicio = GUICreate("", @DesktopWidth, 158, 0, 0, BitOR($WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_SHOW, $guiejercicio)
	GUISetBkColor(0x66ccff, $guiejercicio)
	WinSetOnTop($guiejercicio, "", 1)

	If $resta > 0 Then
		$situacionbarra = 75
		$posiguipeques = @DesktopWidth - 300
	Else
		$situacionbarra = @DesktopWidth + 5
		$posiguipeques = (@DesktopWidth / 2) - 124
	EndIf

	$ProgressBar100 = GUICtrlCreateProgress($situacionbarra, 5, @DesktopWidth - 365 - 70, 140, $PBS_SMOOTH)
	GUICtrlSetData($ProgressBar100, $percent_value)

	If $resta > 0 Then
		$situacionfoto = 5
	Else
		$situacionfoto = @DesktopWidth + 5
	EndIf

	$Picreloj2 = GUICtrlCreatePic("", $situacionfoto, 20, 66, 113)
	_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")

	If $STATE20002 = "UNCHECK" Then
		$MaxTime2 = $tiempodespues * 60
	Else
		$MaxTime2 = Random($tiempodespuesrandom * 60, $tiempodespues * 60, 1)
	EndIf
	$guireloj = GUICreate("TIME", 360, 313, @DesktopWidth - 362, 364, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	$message55 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime2 / 3600), Mod(Floor($MaxTime2 / 60), 60), Mod($MaxTime2, 60))
	GUISetState(@SW_SHOW, $guireloj)
	GUISetBkColor(0xFF0033, $guireloj)
	WinSetOnTop($guireloj, "TIME THAT YOU'LL BE TIED AFTER THE BLOJOB", 1)
	$etiqueta = GUICtrlCreateLabel($message55, 8, 185, 365, 120)
	GUICtrlSetFont(-1, 65, 10, 0)
	$Picreloj = GUICtrlCreatePic("", 110, 23, 140, 140)
	_ResourceSetImageToCtrl($Picreloj, "TEST_GIF_reloj")
	GUICtrlSetData($ProgressBar100, 100)
	$gui90909 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $gui90909)
	WinSetOnTop($gui90909, "REMAINING SUCKS", 1)
	$Pic4000 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic4000, "TEST_GIF_100")
	$label22 = GUICtrlCreateLabel($mamamdasquequedan, 38, 74, 110, 90, $SS_CENTER)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	$label33 = GUICtrlCreateLabel("/ ", 155, 74, 340, 90)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(50)
	$gui50909 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $gui50909)
	WinSetOnTop($gui50909, "REMAINING SUCKS", 1)
	Sleep(20)
	$Pic5000 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic5000, "TEST_GIF_1000")
	Sleep(20)
	$gui60606 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_SHOW, $gui60606)
	Sleep(20)
	$Pic4 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic4, "TEST_GIF_10")
	Sleep(20)
	$label1 = GUICtrlCreateLabel("/ " & $totalamamar, 155, 74, 340, 90)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(20)
	$label2 = GUICtrlCreateLabel($mamamdasquequedan, 38, 74, 110, 90, $SS_CENTER)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(20)
	$guifallos = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $guifallos)
	Sleep(20)
	$Picfallo = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Picfallo, "TEST_GIF_2000")
	Sleep(20)
	GUICtrlDelete($start)
	Sleep(20)
	GUICtrlDelete($startfake)
	Sleep(20)
	GUICtrlDelete($c_Hyperlink_FunkEu)
	Sleep(20)
	GUICtrlDelete($btnPayMe)

	$Guisucksgo = GUICreate("sucksgo", 248, 140, $posiguipeques, 8, $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
	WinSetOnTop($Guisucksgo, "sucksgo", 1)
	GUISetBkColor(0xABCDEF)
	_WinAPI_SetLayeredWindowAttributes($Guisucksgo, 0xABCDEF, 255)
	$picsucksgo = GUICtrlCreatePic("", 0, 0, 248, 140)
	_ResourceSetImageToCtrl($picsucksgo, "TEST_GIF_sucksgo")
	GUISetState(@SW_HIDE, $Guisucksgo)
	Sleep(20)
	$Guisucksback = GUICreate("sucksback", 248, 140, $posiguipeques, 8, $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
	WinSetOnTop($Guisucksback, "sucksback", 1)
	GUISetBkColor(0xABCDEF)
	_WinAPI_SetLayeredWindowAttributes($Guisucksgo, 0xABCDEF, 255)
	$picsucksback = GUICtrlCreatePic("", 0, 0, 248, 140)
	_ResourceSetImageToCtrl($picsucksback, "TEST_GIF_sucksback")
	GUISetState(@SW_HIDE, $Guisucksback)
	Sleep(20)

	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	iniciarjuego()
EndFunc   ;==>barramamadas

Func barramamadasizquierdas()
	$percent_value = 100
	$guiejercicio = GUICreate("", @DesktopWidth, 158, 0, 0, BitOR($WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_SHOW, $guiejercicio)
	GUISetBkColor(0x66ccff, $guiejercicio)
	WinSetOnTop($guiejercicio, "", 1)

	If $resta > 0 Then
		$situacionbarra = 75
		$posiguipeques = @DesktopWidth - 300
	Else
		$situacionbarra = @DesktopWidth + 5
		$posiguipeques = (@DesktopWidth / 2) - 124
	EndIf

	$ProgressBar100 = GUICtrlCreateProgress($situacionbarra, 5, @DesktopWidth - 365 - 70, 140, $PBS_SMOOTH)
	GUICtrlSetData($ProgressBar100, $percent_value)

	If $resta > 0 Then
		$situacionfoto = 5
	Else
		$situacionfoto = @DesktopWidth + 5
	EndIf

	$Picreloj2 = GUICtrlCreatePic("", $situacionfoto, 20, 66, 113)
	_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")

	If $STATE20002 = "UNCHECK" Then
		$MaxTime2 = $tiempodespues * 60
	Else
		$MaxTime2 = Random($tiempodespuesrandom * 60, $tiempodespues * 60, 1)
	EndIf
	$guireloj = GUICreate("TIME", 360, 313, @DesktopWidth - 362, 364, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	$message55 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime2 / 3600), Mod(Floor($MaxTime2 / 60), 60), Mod($MaxTime2, 60))
	GUISetState(@SW_SHOW, $guireloj)
	GUISetBkColor(0xFF0033, $guireloj)
	WinSetOnTop($guireloj, "TIME THAT YOU'LL BE TIED AFTER THE BLOJOB", 1)
	$etiqueta = GUICtrlCreateLabel($message55, 8, 185, 365, 120)
	GUICtrlSetFont(-1, 65, 10, 0)
	$Picreloj = GUICtrlCreatePic("", 110, 23, 140, 140)
	_ResourceSetImageToCtrl($Picreloj, "TEST_GIF_reloj")
	GUICtrlSetData($ProgressBar100, 100)
	$gui90909 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $gui90909)
	WinSetOnTop($gui90909, "REMAINING SUCKS", 1)
	$Pic4000 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic4000, "TEST_GIF_100izq")
	$label22 = GUICtrlCreateLabel($mamamdasquequedan, 68, 74, 110, 90, $SS_CENTER)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	$label33 = GUICtrlCreateLabel("/ ", 170, 74, 340, 90)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(50)
	$gui50909 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $gui50909)
	WinSetOnTop($gui50909, "REMAINING SUCKS", 1)
	Sleep(20)
	$Pic5000 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic5000, "TEST_GIF_1000izq")
	Sleep(20)
	$gui60606 = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_SHOW, $gui60606)
	Sleep(20)
	$Pic4 = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Pic4, "TEST_GIF_10izq")
	Sleep(20)
	$label1 = GUICtrlCreateLabel("/  " & $totalamamar, 190, 74, 340, 90)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(20)
	$label2 = GUICtrlCreateLabel($mamamdasquequedan, 68, 74, 110, 90, $SS_CENTER)
	GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
	GUICtrlSetFont(-1, 42, 10, 0)
	Sleep(20)
	$guifallos = GUICreate("REMAINING SUCKS", 360, 203, @DesktopWidth - 362, 163, BitOR($WS_POPUP, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	GUISetState(@SW_HIDE, $guifallos)
	Sleep(20)
	$Picfallo = GUICtrlCreatePic("", 0, 0, 360, 203)
	_ResourceSetImageToCtrl($Picfallo, "TEST_GIF_2000izq")
	Sleep(20)
	GUICtrlDelete($start)
	Sleep(20)
	GUICtrlDelete($startfake)
	Sleep(20)
	GUICtrlDelete($c_Hyperlink_FunkEu)
	Sleep(20)
	GUICtrlDelete($btnPayMe)

	$Guisucksgo = GUICreate("sucksgo", 248, 140, $posiguipeques, 8, $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
	WinSetOnTop($Guisucksgo, "sucksgo", 1)
	GUISetBkColor(0xABCDEF)
	_WinAPI_SetLayeredWindowAttributes($Guisucksgo, 0xABCDEF, 255)
	$picsucksgo = GUICtrlCreatePic("", 0, 0, 248, 140)
	_ResourceSetImageToCtrl($picsucksgo, "TEST_GIF_sucksgoizq")
	GUISetState(@SW_HIDE, $Guisucksgo)
	Sleep(20)
	$Guisucksback = GUICreate("sucksback", 248, 140, $posiguipeques, 8, $WS_POPUPWINDOW, $WS_EX_LAYERED + $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
	WinSetOnTop($Guisucksback, "sucksback", 1)
	GUISetBkColor(0xABCDEF)
	_WinAPI_SetLayeredWindowAttributes($Guisucksgo, 0xABCDEF, 255)
	$picsucksback = GUICtrlCreatePic("", 0, 0, 248, 140)
	_ResourceSetImageToCtrl($picsucksback, "TEST_GIF_sucksbackizq")
	GUISetState(@SW_HIDE, $Guisucksback)
	Sleep(20)

	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	iniciarjuegoizquierdas()
EndFunc   ;==>barramamadasizquierdas



Func iniciarjuego()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	GUISetState(@SW_HIDE, $Guisucksback)
	GUISetState(@SW_SHOW, $Guisucksgo)
	$size = WinGetPos("minigui")
	$sizemitad = $size[2] / 2
	Sleep(10)
	$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, ($size[0] + $sizemitad) - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
	If Not @error And $percent_value > 0.1 Then
		$percent_value = $percent_value - $resta
		GUICtrlSetData($ProgressBar100, $percent_value)
		Sleep(10)
		iniciarjuego()
	ElseIf Not @error And $percent_value < 0.1 Then
		castigo()
		pScreenshotfail()
	ElseIf @error Then
		$size = WinGetPos("minigui")
		Sleep(200)
		$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, ($size[0] + $sizemitad) - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
		If @error Then
			disminuir()
		Else
			iniciarjuego()
		EndIf
	EndIf
EndFunc   ;==>iniciarjuego

Func iniciarjuego1000()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	GUISetState(@SW_HIDE, $Guisucksgo)
	GUISetState(@SW_SHOW, $Guisucksback)
	$size = WinGetPos("minigui")
	Sleep(10)
	$coord1 = PixelSearch(($size[0] + $sizemitad) + 6, $size[1] + 6, $size[0] + $size[2] - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
	If @error And $percent_value > 0.1 Then
		$percent_value = $percent_value - $resta
		GUICtrlSetData($ProgressBar100, $percent_value)
		Sleep(10)
		iniciarjuego1000()
	ElseIf @error And $percent_value < 0.1 Then
		If WinExists("candado") And $asegurarse2c = 1 Then
			mirarcandado()
		EndIf
		castigo()
	ElseIf Not @error Then
		$size = WinGetPos("minigui")
		Sleep(200)
		$coord1 = PixelSearch(($size[0] + $sizemitad) + 6, $size[1] + 6, $size[0] + $size[2] - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
		If Not @error Then
			$percent_value = 100
			GUICtrlSetData($ProgressBar100, $percent_value)
			iniciarjuego()
			If WinExists("candado") And $asegurarse2c = 1 Then
				mirarcandado()
			EndIf
		Else
			iniciarjuego1000()
		EndIf
	EndIf
EndFunc   ;==>iniciarjuego1000

Func disminuir()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	$percent_value = 100
	$pos = MouseGetPos()
	MouseMove($pos[0], $pos[1] + 1, 0)
	Sleep(10)
	$pos = MouseGetPos()
	MouseMove($pos[0], $pos[1] - 1, 0)
	GUICtrlSetData($ProgressBar100, $percent_value)
	Sleep(20)
	GUISetState(@SW_SHOW, $gui90909)
	Sleep(80)
	GUISetState(@SW_SHOW, $gui50909)
	Sleep(80)
	$WAR = GUICtrlRead($label2)
	$WAR2 = $WAR - 1
	pScreenshot()
	GUICtrlSetData($label2, $WAR2)
	GUICtrlSetData($label22, $WAR2)
	GUISetState(@SW_HIDE, $gui50909)
	Sleep(80)
	GUISetState(@SW_HIDE, $gui90909)
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	If $WAR2 > 0 Then
		iniciarjuego1000()
	Else
		final()
	EndIf
EndFunc   ;==>disminuir

Func castigo()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	$percent_value = 100
	Sleep(100)
	GUICtrlSetData($ProgressBar100, $percent_value)
	Sleep(100)
	GUISetState(@SW_SHOW, $guifallos)
	Sleep(500)
	$WAR = GUICtrlRead($label2)
	Sleep(10)
	$WAR2 = $WAR - 1
	Sleep(10)
	GUICtrlSetData($label2, $WAR2)
	Sleep(10)
	GUICtrlSetData($label22, $WAR2)
	Sleep(10)
	GUISetState(@SW_HIDE, $guifallos)
	Sleep(10)
	$sFilName2 = StringRegExpReplace($WW2, "^.*\\", "")
	If Not ProcessExists($sFilName2) Then
		Run($WW2)
	EndIf
	$MaxTime2 = $MaxTime2 + $tiempoporfallar
	$message55 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime2 / 3600), Mod(Floor($MaxTime2 / 60), 60), Mod($MaxTime2, 60))
	ControlSetText("TIME", "", "Static1", $message55)
	pScreenshotfail()
	$percent_value = 100
	GUICtrlSetData($ProgressBar100, $percent_value)
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	If $WAR2 > 0 Then
		iniciarjuego()
	Else
		final()
	EndIf
EndFunc   ;==>castigo

Func iniciarjuegoizquierdas()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	GUISetState(@SW_HIDE, $Guisucksback)
	GUISetState(@SW_SHOW, $Guisucksgo)
	$size = WinGetPos("minigui")
	$sizemitad = $size[2] / 2
	Sleep(10)
	$coord1 = PixelSearch(($size[0] + $sizemitad) + 6, $size[1] + 6, ($size[0] + $size[2]) - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
	If Not @error And $percent_value > 0.1 Then
		$percent_value = $percent_value - $resta
		Sleep(10)
		GUICtrlSetData($ProgressBar100, $percent_value)
		Sleep(10)
		If WinExists("candado") And $asegurarse2c = 1 Then
			mirarcandado()
		EndIf
		iniciarjuegoizquierdas()
	ElseIf Not @error And $percent_value < 0.1 Then
		If WinExists("candado") And $asegurarse2c = 1 Then
			mirarcandado()
		EndIf
		castigoizquierdas()
		pScreenshotfail()
	ElseIf @error Then
		$size = WinGetPos("minigui")
		Sleep(300)
		$coord1 = PixelSearch(($size[0] + $sizemitad) + 6, $size[1] + 6, $size[0] + $size[2] - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
		If @error Then
			If WinExists("candado") And $asegurarse2c = 1 Then
				mirarcandado()
			EndIf
			disminuirizquierdas()
		Else
			If WinExists("candado") And $asegurarse2c = 1 Then
				mirarcandado()
			EndIf
			iniciarjuegoizquierdas()
		EndIf
	EndIf
EndFunc   ;==>iniciarjuegoizquierdas

Func iniciarjuegoizquierdas1000()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	GUISetState(@SW_HIDE, $Guisucksgo)
	GUISetState(@SW_SHOW, $Guisucksback)
	$size = WinGetPos("minigui")
	Sleep(10)
	$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, ($size[0] + $sizemitad) - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
	If @error And $percent_value > 0.1 Then
		$percent_value = $percent_value - $resta
		Sleep(10)
		GUICtrlSetData($ProgressBar100, $percent_value)
		Sleep(10)
		If WinExists("candado") And $asegurarse2c = 1 Then
			mirarcandado()
		EndIf
		iniciarjuegoizquierdas1000()
	ElseIf @error And $percent_value < 0.1 Then
		castigoizquierdas()
	ElseIf Not @error Then
		$size = WinGetPos("minigui")
		Sleep(300)
		$coord1 = PixelSearch($size[0] + 6, $size[1] + 6, ($size[0] + $sizemitad) - 6, $size[1] + $size[3] - 6, $Color, $algoritmo * 5)
		If Not @error Then
			$percent_value = 100
			GUICtrlSetData($ProgressBar100, $percent_value)
			If WinExists("candado") And $asegurarse2c = 1 Then
				mirarcandado()
			EndIf
			iniciarjuegoizquierdas()
		Else
			If WinExists("candado") And $asegurarse2c = 1 Then
				mirarcandado()
			EndIf
			iniciarjuegoizquierdas1000()
		EndIf
	EndIf
EndFunc   ;==>iniciarjuegoizquierdas1000

Func disminuirizquierdas()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	$percent_value = 100
	$pos = MouseGetPos()
	MouseMove($pos[0], $pos[1] + 1, 0)
	Sleep(10)
	$pos = MouseGetPos()
	MouseMove($pos[0], $pos[1] - 1, 0)
	GUICtrlSetData($ProgressBar100, $percent_value)
	Sleep(20)
	GUISetState(@SW_SHOW, $gui90909)
	Sleep(80)
	GUISetState(@SW_SHOW, $gui50909)
	Sleep(80)
	$WAR = GUICtrlRead($label2)
	$WAR2 = $WAR - 1
	pScreenshot()
	GUICtrlSetData($label2, $WAR2)
	GUICtrlSetData($label22, $WAR2)
	GUISetState(@SW_HIDE, $gui50909)
	Sleep(80)
	GUISetState(@SW_HIDE, $gui90909)
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	If $WAR2 > 0 Then
		iniciarjuegoizquierdas1000()
	Else
		final()
	EndIf
EndFunc   ;==>disminuirizquierdas

Func castigoizquierdas()
	_BatteryQueryEx()
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	$percent_value = 100
	Sleep(100)
	GUICtrlSetData($ProgressBar100, $percent_value)
	Sleep(100)
	GUISetState(@SW_SHOW, $guifallos)
	Sleep(500)
	$WAR = GUICtrlRead($label2)
	Sleep(10)
	$WAR2 = $WAR - 1
	Sleep(10)
	GUICtrlSetData($label2, $WAR2)
	Sleep(10)
	GUICtrlSetData($label22, $WAR2)
	Sleep(10)
	GUISetState(@SW_HIDE, $guifallos)
	Sleep(10)
	$sFilName2 = StringRegExpReplace($WW2, "^.*\\", "")
	If Not ProcessExists($sFilName2) Then
		Run($WW2)
	EndIf
	$MaxTime2 = $MaxTime2 + $tiempoporfallar
	$message55 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime2 / 3600), Mod(Floor($MaxTime2 / 60), 60), Mod($MaxTime2, 60))
	ControlSetText("TIME", "", "Static1", $message55)
	pScreenshotfail()
	$percent_value = 100
	GUICtrlSetData($ProgressBar100, $percent_value)
	If WinExists("candado") And $asegurarse2c = 1 Then
		mirarcandado()
	EndIf
	If $WAR2 > 0 Then
		iniciarjuegoizquierdas()
	Else
		final()
	EndIf
EndFunc   ;==>castigoizquierdas



Func final()
	GUIDelete($Guisucksgo)
	Sleep(10)
	GUIDelete($Guisucksback)
	$yprogre2 = $MaxTime2
	$yprogre3 = ($yprogre2 / $yprogre2) * 100

	If $STATE3 = "CHECK" Then
		$gui6 = GUICreate("Press Escape to close the program ", 360, $altogui4 + 10, @DesktopWidth - 360, 0, $WS_POPUPWINDOW, $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($gui6, "Press Escape to close the program ", 1)
		GUISetState(@SW_SHOW, $gui6)
		GUISetBkColor(0xFFCC66, $gui6)
		$ProgressBar1000 = GUICtrlCreateProgress(185, 145, 150, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)
		GUICtrlSetData($ProgressBar1000, $yprogre3)
		$Picreloj2 = GUICtrlCreatePic("", 225, 20, 66, 113)
		_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")

		$ProgressBar2 = GUICtrlCreateProgress(15, 145, 150, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)

		$Pic4 = GUICtrlCreatePic("", 58, 19, 60, 113)
		_ResourceSetImageToCtrl($Pic4, "TEST_GIF_5")

	Else
		$gui6 = GUICreate("Press Escape to close the program ", 360, $altogui4 + 10, @DesktopWidth - 360, 0, $WS_POPUPWINDOW, $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($gui6, "Press Escape to close the program ", 1)
		GUISetState(@SW_SHOW, $gui6)
		GUISetBkColor(0xFFCC66, $gui6)
		$Picreloj2 = GUICtrlCreatePic("", 145, 20, 66, 113)
		_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")
		$ProgressBar1000 = GUICtrlCreateProgress(5, 145, 355, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)
		GUICtrlSetData($ProgressBar1000, $yprogre3)
	EndIf
	$anchotexto = @DesktopWidth - 365
	$gui6000 = GUICreate("Press Escape to close the program", $anchotexto, 160, 0, 0, BitOR($WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	WinSetOnTop($gui6000, "Press Escape to close the program", 1)

	Global $message50 = ""
	GUICtrlCreateLabel($message50, 5, 5, $anchotexto, 150, $SS_CENTER)
	GUICtrlSetFont(-1, 100, 10, 0)
	GUISetState(@SW_SHOW, $gui6000)
	GUISetBkColor(0xFFCC66, $gui6000)
	Sleep(10)


	GUIDelete($guifallos)
	Sleep(10)
	GUIDelete($guireloj)
	Sleep(10)
	GUIDelete($gui90909)
	Sleep(10)
	GUIDelete($gui50909)
	Sleep(10)
	GUIDelete($gui60606)
	Sleep(10)
	GUIDelete($gui50909)
	Sleep(10)
	GUIDelete($Guipeque)
	Sleep(10)
	GUIDelete($guiejercicio)

	$MaxTime = $MaxTime2
	$y = $MaxTime2

	_Timer_SetTimer($gui6000, 1000, "Count2")
	While 1
		$msg = GUIGetMsg()
		$message5 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime / 3600), Mod(Floor($MaxTime / 60), 60), Mod($MaxTime, 60))
		_BatteryQueryEx()

		If $STATE3 = "CHECK" Then
			mirarmicro()
		EndIf

		Select
			Case $MaxTime < 0
				On_Exit()
				Sleep(1000)
				Exit
		EndSelect
	WEnd

EndFunc   ;==>final

$n = 0

Func pScreenshot()
	; ===============================================================================================================================
	; Description ...: Shows how to emboss text on an image
	; Author ........: Paul Campbell (PaulIA)
	; Notes .........:
	; ===============================================================================================================================

	; ===============================================================================================================================
	; Global variables
	; ===============================================================================================================================
	Global $hBitmap, $hImage, $hGraphic, $hFamily, $hFont, $tLayout, $hFormat, $aInfo, $hBrush1, $hBrush2, $iWidth, $iHeight, $hPen
	$WAR3 = $totalamamar - $WAR2
	Global $sString = "SUCK  " & $WAR3 & "  OF  " & $totalamamar

	; ===============================================================================================================================
	; Main
	; ===============================================================================================================================

	; Initialize GDI+ library
	_GDIPlus_Startup()
	DirCreate(@DesktopDir & "\Selfbondage Blowjob Session\")
	$A = _ScreenCapture_Capture(@DesktopDir & '\AutoItImage.jpg', 4, 165, @DesktopWidth - 364, $altogui6)

	$argument = @DesktopDir & '\Selfbondage Blowjob Session\' & $n & '.jpg'

	; Load image and emboss text
	$hImage = _GDIPlus_ImageLoadFromFile(@DesktopDir & '\AutoItImage.jpg')
	$hGraphic = _GDIPlus_ImageGetGraphicsContext($hImage)
	$hFamily = _GDIPlus_FontFamilyCreate("Arial")
	$hFont = _GDIPlus_FontCreate($hFamily, 20, 1)
	$tLayout = _GDIPlus_RectFCreate(0, 0)
	$hFormat = _GDIPlus_StringFormatCreate(0)
	$hBrush1 = _GDIPlus_BrushCreateSolid(0xFFFFFFFF)
	$hBrush2 = _GDIPlus_BrushCreateSolid(0xC4FF0000)
	$hPen = _GDIPlus_PenCreate(0xC4000000, 2)
	$aInfo = _GDIPlus_GraphicsMeasureString($hGraphic, $sString, $hFont, $tLayout, $hFormat)
	$iWidth = DllStructGetData($aInfo[0], "Width")
	$iHeight = DllStructGetData($aInfo[0], "Height")

	_GDIPlus_GraphicsFillRect($hGraphic, 0, 0, $iWidth, $iHeight, $hBrush1)
	_GDIPlus_GraphicsDrawRect($hGraphic, 1, 1, $iWidth, $iHeight, $hPen)
	_GDIPlus_GraphicsDrawStringEx($hGraphic, $sString, $hFont, $aInfo[0], $hFormat, $hBrush2)

	_GDIPlus_ImageSaveToFile($hImage, $argument)

	$n = $n + 1

	; Free resources
	_GDIPlus_PenDispose($hPen)
	_GDIPlus_BrushDispose($hBrush1)
	_GDIPlus_BrushDispose($hBrush2)
	_GDIPlus_StringFormatDispose($hFormat)
	_GDIPlus_FontDispose($hFont)
	_GDIPlus_FontFamilyDispose($hFamily)
	_GDIPlus_GraphicsDispose($hGraphic)
	_GDIPlus_ImageDispose($hImage)
	_GDIPlus_Shutdown()
	FileDelete(@DesktopDir & '\AutoItImage.jpg')
EndFunc   ;==>pScreenshot

Func pScreenshotfail()
	; ===============================================================================================================================
	; Description ...: Shows how to emboss text on an image
	; Author ........: Paul Campbell (PaulIA)
	; Notes .........:
	; ===============================================================================================================================

	; ===============================================================================================================================
	; Global variables
	; ===============================================================================================================================
	Global $hBitmap2, $hImage2, $hGraphic2, $hFamily2, $hFont2, $tLayout2, $hFormat2, $aInfo2, $hBrush12, $hBrush22, $iWidth2, $iHeight2, $hPen2
	$WAR3 = $totalamamar - $WAR2
	Global $sString2 = "FAIL AT SUCK " & $WAR3 & "  OF  " & $totalamamar

	; ===============================================================================================================================
	; Main
	; ===============================================================================================================================

	; Initialize GDI+ library
	_GDIPlus_Startup()
	DirCreate(@DesktopDir & "\Selfbondage Blowjob Session\")
	$A = _ScreenCapture_Capture(@DesktopDir & '\AutoItImage2.jpg', 4, 165, @DesktopWidth - 364, $altogui6)

	$argument2 = @DesktopDir & '\Selfbondage Blowjob Session\' & $n & '.jpg'

	; Load image and emboss text
	$hImage2 = _GDIPlus_ImageLoadFromFile(@DesktopDir & '\AutoItImage2.jpg')
	$hGraphic2 = _GDIPlus_ImageGetGraphicsContext($hImage2)
	$hFamily2 = _GDIPlus_FontFamilyCreate("Arial")
	$hFont2 = _GDIPlus_FontCreate($hFamily2, 20, 1)
	$tLayout2 = _GDIPlus_RectFCreate(0, 0)
	$hFormat2 = _GDIPlus_StringFormatCreate(0)
	$hBrush12 = _GDIPlus_BrushCreateSolid(0xFFFFFFFF)
	$hBrush22 = _GDIPlus_BrushCreateSolid(0xC4FF0000)
	$hPen2 = _GDIPlus_PenCreate(0xC4000000, 2)
	$aInfo2 = _GDIPlus_GraphicsMeasureString($hGraphic2, $sString2, $hFont2, $tLayout2, $hFormat2)
	$iWidth2 = DllStructGetData($aInfo2[0], "Width")
	$iHeight2 = DllStructGetData($aInfo2[0], "Height")

	_GDIPlus_GraphicsFillRect($hGraphic2, 0, 0, $iWidth2, $iHeight2, $hBrush12)
	_GDIPlus_GraphicsDrawRect($hGraphic2, 1, 1, $iWidth2, $iHeight2, $hPen2)
	_GDIPlus_GraphicsDrawStringEx($hGraphic2, $sString2, $hFont2, $aInfo2[0], $hFormat2, $hBrush22)

	_GDIPlus_ImageSaveToFile($hImage2, $argument2)

	$n = $n + 1

	; Free resources
	_GDIPlus_PenDispose($hPen2)
	_GDIPlus_BrushDispose($hBrush12)
	_GDIPlus_BrushDispose($hBrush22)
	_GDIPlus_StringFormatDispose($hFormat2)
	_GDIPlus_FontDispose($hFont2)
	_GDIPlus_FontFamilyDispose($hFamily2)
	_GDIPlus_GraphicsDispose($hGraphic2)
	_GDIPlus_ImageDispose($hImage2)
	_GDIPlus_Shutdown()
	FileDelete(@DesktopDir & '\AutoItImage2.jpg')
EndFunc   ;==>pScreenshotfail

Func mirarmicro()

	$mciError = _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, 0)
	If $mciError[0] <> 0 Then _mciShowError($mciError[0])
	$pedro = ($mciError[2]) * 0.78125
	$T = GUICtrlRead($input3)
	$maximobarra = 100 / $T
	$pedro2 = $pedro * $maximobarra
	GUICtrlSetData($ProgressBar2, $pedro2)

	If $pedro > $T Then
		castigosound2()
	EndIf

EndFunc   ;==>mirarmicro

Func mirarmicro2()

	$mciError = _mciSendString($lpszCommand, $lpszReturnString, $cchReturn, 0)
	If $mciError[0] <> 0 Then _mciShowError($mciError[0])
	$pedro = ($mciError[2]) * 0.78125
	$T = GUICtrlRead($input3)
	$maximobarra = 100 / $T
	$pedro2 = $pedro * $maximobarra
	GUICtrlSetData($ProgressBar2, $pedro2)

	If $pedro > $T Then
		castigosound3()
	EndIf

EndFunc   ;==>mirarmicro2


Func Count($A, $b, $c, $d)
	$MaxTime -= 1
	If GUICtrlRead($message5, 1) <> $MaxTime Then
		ControlSetText("Press Escape to close the program", "", "Static1", $message5)
	EndIf
EndFunc   ;==>Count

Func Count2($A, $b, $c, $d)
	$MaxTime -= 1
	If GUICtrlRead($message5, 1) <> $MaxTime Then
		ControlSetText("Press Escape to close the program", "", "Static1", $message5)
		actu()
		$count3 = $count3 + 1
	EndIf
EndFunc   ;==>Count2

Func castigosound2()
	$sFilName1 = StringRegExpReplace($WW1, "^.*\\", "")
	If Not ProcessExists($sFilName1) Then
		Run($WW1)
	EndIf

	If $count3 > 2 Then
		$sumarporsonido = GUICtrlRead($input10) * 60
		$MaxTime = $MaxTime + $sumarporsonido

		$yprogre2 = $MaxTime2
		$yprogre3 = ($yprogre2 / $yprogre2) * 100

		$y = $y + $sumarporsonido

		$yresultado = $yprogre2 + $y
		$yresultado3 = ($yresultado / $yprogre2) * 100
		$yresultado4 = $yprogre3 - $yresultado3
		GUICtrlSetData($ProgressBar1000, $yresultado4)
		$count3 = 0
	EndIf
EndFunc   ;==>castigosound2

Func castigosound3()
	$sFilName1 = StringRegExpReplace($WW1, "^.*\\", "")
	If Not ProcessExists($sFilName1) Then
		Run($WW1)
	EndIf

	If $count3 > 2 Then
		$sumarporsonido = GUICtrlRead($input10) * 60
		$MaxTime = $MaxTime + $sumarporsonido

		$yprogre2 = $Maxtime3
		$yprogre3 = ($yprogre2 / $yprogre2) * 100

		$y = $y + $sumarporsonido

		$yresultado = $yprogre2 + $y
		$yresultado3 = ($yresultado / $yprogre2) * 100
		$yresultado4 = $yprogre3 - $yresultado3
		GUICtrlSetData($ProgressBar1000, $yresultado4)
		$count3 = 0
	EndIf
EndFunc   ;==>castigosound3

Func castigorompecandado()
	$sFilName4 = StringRegExpReplace($WW4, "^.*\\", "")
	If Not ProcessExists($sFilName4) Then
		Run($WW4)
	EndIf
EndFunc   ;==>castigorompecandado

Func actu()
	If $culo = 1 And $asegurarse2c = 1 Then
		supercastigorandom()
	EndIf
	$y = $y - 1
	$yprogre2 = $MaxTime2
	$yprogre3 = ($yprogre2 / $yprogre2) * 100

	$yresultado = $yprogre2 - $y
	$yresultado3 = ($yresultado / $yprogre2) * 100
	$yresultado4 = $yprogre3 - $yresultado3
	GUICtrlSetData($ProgressBar1000, $yresultado4)
EndFunc   ;==>actu


Func espabilarse()
	$MaxTime = 60
	GUICtrlSetData($message5, $MaxTime)
EndFunc   ;==>espabilarse


Func voylento()
	$MaxTime = $MaxTime + 300
	GUICtrlSetData($message5, $MaxTime)
EndFunc   ;==>voylento


Func supercastigo()
	$WAR2 = 1700
	GUIDelete($Guipequecandado)
	GUIDelete($Guisucksgo)
	Sleep(10)
	GUIDelete($Guisucksback)
	$Maincastigo = GUICreate("WARNING!!!", 800, 600, -1, -1, $WS_POPUPWINDOW)
	GUISetState(@SW_SHOW, $Maincastigo)
	$Pic121castigo = GUICtrlCreatePic("", 0, 0, 800, 600)
	WinSetOnTop($Maincastigo, "WARNING!!!", 1)
	_ResourceSetImageToCtrl($Pic121castigo, "chain")
	Sleep(5000)
	GUIDelete($Maincastigo)
	Sleep(50)
	castigorompecandado()
	$MaxTime2 = $Maxtime3 + $MaxTime2
	Sleep(50)
	$MaxTime = $Maxtime3
	Sleep(50)
	$y = $MaxTime2
	Sleep(50)
	$yprogre2 = $MaxTime2
	Sleep(50)
	$yprogre3 = ($yprogre2 / $yprogre2) * 100
	Sleep(50)
	If $STATE3 = "CHECK" Then
		$gui6 = GUICreate("Press Escape to close the program ", 360, $altogui4 + 10, @DesktopWidth - 360, 0, $WS_POPUPWINDOW, $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($gui6, "Press Escape to close the program ", 1)
		GUISetState(@SW_SHOW, $gui6)
		GUISetBkColor(0xF21D1D, $gui6)
		$ProgressBar1000 = GUICtrlCreateProgress(185, 145, 150, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)
		GUICtrlSetData($ProgressBar1000, $yprogre3)
		$Picreloj2 = GUICtrlCreatePic("", 225, 20, 66, 113)
		_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")

		$ProgressBar2 = GUICtrlCreateProgress(15, 145, 150, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)

		$Pic4 = GUICtrlCreatePic("", 58, 19, 60, 113)
		_ResourceSetImageToCtrl($Pic4, "TEST_GIF_5")

	Else
		$gui6 = GUICreate("Press Escape to close the program ", 360, $altogui4 + 10, @DesktopWidth - 360, 0, $WS_POPUPWINDOW, $GUI_WS_EX_PARENTDRAG, WinGetHandle(AutoItWinGetTitle()))
		WinSetOnTop($gui6, "Press Escape to close the program ", 1)
		GUISetState(@SW_SHOW, $gui6)
		GUISetBkColor(0xF21D1D, $gui6)
		$Picreloj2 = GUICtrlCreatePic("", 145, 20, 66, 113)
		_ResourceSetImageToCtrl($Picreloj2, "TEST_GIF_reloj2")
		$ProgressBar1000 = GUICtrlCreateProgress(5, 145, 355, $altogui4 - 135, $PBS_VERTICAL, $PBS_SMOOTH)
		GUICtrlSetData($ProgressBar1000, $yprogre3)
	EndIf
	$anchotexto = @DesktopWidth - 365
	$gui6000 = GUICreate("Press Escape to close the program", $anchotexto, 160, 0, 0, BitOR($WS_POPUPWINDOW, $WS_SYSMENU), BitOR($WS_EX_DLGMODALFRAME, $WS_EX_TOPMOST), $Main)
	WinSetOnTop($gui6000, "Press Escape to close the program", 1)

	Global $message50 = ""
	GUICtrlCreateLabel($message50, 5, 5, $anchotexto, 150, $SS_CENTER)
	GUICtrlSetFont(-1, 100, 10, 0)
	GUISetState(@SW_SHOW, $gui6000)
	GUISetBkColor(0xF21D1D, $gui6000)
	Sleep(10)


	GUIDelete($guifallos)
	Sleep(10)
	GUIDelete($guireloj)
	Sleep(10)
	GUIDelete($gui90909)
	Sleep(10)
	GUIDelete($gui50909)
	Sleep(10)
	GUIDelete($gui60606)
	Sleep(10)
	GUIDelete($gui50909)
	Sleep(10)
	GUIDelete($Guipeque)
	Sleep(10)
	GUIDelete($guiejercicio)

	$MaxTime = $MaxTime2
	$y = $MaxTime2

	_Timer_SetTimer($gui6000, 1000, "Count2")
	While 1
		$msg = GUIGetMsg()
		$message5 = StringFormat("%02d:%02d:%02d\n", Floor($MaxTime / 3600), Mod(Floor($MaxTime / 60), 60), Mod($MaxTime, 60))
		_BatteryQueryEx()

		If $STATE3 = "CHECK" Then
			mirarmicro2()
		EndIf

		Select
			Case $MaxTime < 0
				On_Exit()
				Sleep(1000)
				Exit
		EndSelect
	WEnd
EndFunc   ;==>supercastigo

Func supercastigorandom()
	$M = Random(1, 100)
	If $M > 93 Then
		$sFilName4 = StringRegExpReplace($WW4, "^.*\\", "")
		If Not ProcessExists($sFilName4) Then
			Run($WW4)
		EndIf
	EndIf
EndFunc   ;==>supercastigorandom
You can also download the au3 file with all the code from:
http://www.mediafire.com/?6dkn4lp00a2256e

Greets from Barcelona

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 01 Aug 2011, 23:27
by LoKiT
Thanks for that, the source will take some time to digest

Silly question, but do I need Silverlight to be installed before the webcam will work ???

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 01 Aug 2011, 23:36
by qwerty212
LoKiT wrote:Thanks for that, the source will take some time to digest

Silly question, but do I need Silverlight to be installed before the webcam will work ???
Yes, and flash must be installed too. I can code a non silverlight version in few minutes (just copy paste from older programs) but the silverlight version is more compatible than the webcam support of autoit and if you have a high definition webcam the image is showed on hd too.
D'you want to run it with wine?

The code needs to be commented, if not people will go crazy with it (and even more thinking on my programming skills)

Greets from Barcelona

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 02 Aug 2011, 12:07
by LoKiT
Thanks for the non-silverlight version. I'm going to have to put my netbook back together to use a webcam. It may be the cable but the webcam keeps shutting down on the PC. I think I dropped it once to many times :oops: Properly have to buy a new one. I see a new one that looks like Darth Vaders eyeball with loads of LEDs on it :)

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 02 Aug 2011, 12:19
by qwerty212
Errrrrr, a netbook?

Code: Select all

If @DesktopHeight < 720 Or @DesktopWidth < 1024 Then
   MsgBox(48, "WARNING!", "To use this program you must" & @CRLF & "have a screen resolution" & @CRLF & "equal or better than 1024x720", 10)
   Exit
EndIf
If don't, the buttons doesn't fit :(

Sorry

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 02 Aug 2011, 18:30
by LoKiT
qwerty212 wrote:Errrrrr, a netbook?
Sorry
Its OK I have an external Monitor and 1920x1080 graphics on the netbook... and for some strange reason it runs fast like that ???

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 03 Aug 2011, 06:22
by iluvplanes1
Hey Qwerty,

First off thanks so much for your effort. It looks great.

I have just looked at it for a few minutes but I do have a few questions about it for you.

Is there any way to turn the boxes to a vertical position as if you had the dildo standing straight up? That would be great for to be able to use in different scenarios.

Second question, if you are to "leave" out of the "Virtual restraint area", do you have to have time added or can you just choose to have an audio tease ran?
Also, How would I go about customizing the sounds that are used for teasing(IE. using my own mp3 file)?

I hope to actually spend some time tomorrow playing with it some more. I will report back if I have any issue or comments.

Thanks again!

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 03 Aug 2011, 10:23
by qwerty212
iluvplanes1 wrote:Hey Qwerty,

First off thanks so much for your effort. It looks great.
No, thanks to you for giving it a try.
iluvplanes1 wrote: Is there any way to turn the boxes to a vertical position as if you had the dildo standing straight up? That would be great for to be able to use in different scenarios.
That's a great idea!!! I will include it in the next releases.
iluvplanes1 wrote: Second question, if you are to "leave" out of the "Virtual restraint area", do you have to have time added or can you just choose to have an audio tease ran?
Also, How would I go about customizing the sounds that are used for teasing(IE. using my own mp3 file)?
If you do not want to have time added when you just leave the Virtual Restrain area you must set this input to zero:
Image
(well, the minimum at the moment is 1 minute :D).
Please notice that leaving the virtual restrain area finishes the session. That is because once you leave this area nothing prevents you from just putting your head between the camera and the dildo. Leaving this area do not adds time to the final countdown, it runs a worst final countdown (the waiting time that you have so far for your failures during the sessions and the amount of time that you've setup in the virtual restrain setup window).

But everything can be changed.

About the sound teasing, test this pain.exe:
Image

Is a pain.exe that looks on its own folder looking for mp3 and if there are mp3 files it plays one of them randomly and when the mp3 finishes the program exists. So you'll can have as many mp3 files with different lenghts and the teasing will change from one teasing to another.
(if there aren't mp3 in the same folder than the pain.exe then it simply will exit without doing anything).

Aps, and the source code:

Code: Select all

#Region
#AutoIt3Wrapper_Icon=Project3.ico ;with this we tell to the program that when we compile the script we want it to use a ico called Project3.ico
;and that ico must be stored in the same folder where you have the au3 file. (later it will be wrapped with the exe)
#AutoIt3Wrapper_Compression=4 ; we tell to the compiler that we want it to compress as much as it can the resulting exe
#AutoIt3Wrapper_UseX64=n ;option to compile for 64 bits system OS.
#AutoIt3Wrapper_Res_Language=1027
#EndRegion
#include <Sound.au3> ;These are external au3 files wih functions created by others that can be used in our scripts
#include <File.au3> ; it saves a lot of time because you don't have to write the whole function, just use the #include
#include <array.au3> ;and call any function inside this external .au3 during your script.

;external .au3 are stored C:\Program files\Autoit3\Incude. You can add as many new au3 as you want

Global $list ;here there are the variables that we are going to use during the script
Global $folder
Global $pepe
Global $pepe2
Global $random
Global $song

Func On_Exit() ;this is a function to close the program
	Exit
EndFunc   ;==>On_Exit

HotKeySet("{ESC}", "On_Exit") ;a hotkey set on the escape button.This is  a function that checks your keyboard and when you click the escape
;button it closes the program


$folder = @ScriptDir ;we define the $folder variable. @scriptdir = the same folder than the script is stored

$list = _FileListToArray($folder, "*.mp3", 1) ;we look for mp3 files in the folder $sfolder and we store the number of mp3 found in a array
$pepe = UBound($list, 1);we look how long the array above is.

If $pepe = 0 Then ;condition:  if $pepe (the array) is = 0 (so no mp3 in $folder) then exit the program
	exit
EndIf

$pepe2 = $pepe - 1 ;We get the number of mp3 found on $folder (because arrays starts to count from 1, so 1 mp3 equal to a 2 on the array)

If $pepe2 > 1 Then ;if the number of mp3 is bigger than one
	$random = Random(1, $pepe2, 1) ;we create a random number between 1 ad the total number ($pepe2)

	For $iX = 1 To $iX = 1
		$song = _SoundOpen($folder & "\" & $list[$random]) ;we told the program to open the ranmdom choosed mp3...
		_SoundPlay($song)
		Do
			Sleep(100)
		Until _SoundStatus($song) = "stopped" ; ... until the song ends
		_SoundClose($song)
		Exit ; and then close the program
	Next
Else ;else if the number of mp3 is equal to one
	For $iX = 1 To $iX = 1
		$song = _SoundOpen($folder & "\" & $list[1]) ;we told the program to open the 1 item of the array (and the only one :))
		_SoundPlay($song)
		Do
			Sleep(100)
		Until _SoundStatus($song) = "stopped" ; ... until the song ends
		_SoundClose($song)
		Exit ; and then close the program
	Next
EndIf

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 03 Aug 2011, 18:38
by iluvplanes1
When using the test button under" choose which program will run the tease when you fail doing the bj" on the main screen, I am getting the follow error even though it still plays the sound.

Autolt error:
Line 14870- (file(where the program is stored))
Error: Variable used without being declared.

Then you have to hit "ok" and the program closes.

However, when testing the "choose which program will tease you if you make a noise" which leads to the exact same file, plays without an issue.

Also, if you don't do it one and you are "punished" it still counts it as doing one. I would think that it shouldn't and it should still be done the right way but maybe that's just my opinion.

The punishment sound for failing to do the bj worked fine without any errors while actually running the session, so perhaps it has something to do with the testing?

Is it possible to add for random teasing after the bj without having to do it because you made too much noise?

The pain random mp3 didn't work for me. I put it in the same folder as pain.exe, changed it on the program and tested it and no file played. I had 2 .mp3 files in the same folder with it. Any idea on how to fix that?

Thanks again! I hope some of this helps!

Re: Selfbondage Blowjob Trainer Beta Release 0.1

Posted: 03 Aug 2011, 21:35
by qwerty212
iluvplanes1 wrote:When using the test button under" choose which program will run the tease when you fail doing the bj" on the main screen, I am getting the follow error even though it still plays the sound.

Autolt error:
Line 14870- (file(where the program is stored))
Error: Variable used without being declared.

Then you have to hit "ok" and the program closes.

However, when testing the "choose which program will tease you if you make a noise" which leads to the exact same file, plays without an issue.

Also, if you don't do it one and you are "punished" it still counts it as doing one. I would think that it shouldn't and it should still be done the right way but maybe that's just my opinion.

The punishment sound for failing to do the bj worked fine without any errors while actually running the session, so perhaps it has something to do with the testing?

Is it possible to add for random teasing after the bj without having to do it because you made too much noise?

The pain random mp3 didn't work for me. I put it in the same folder as pain.exe, changed it on the program and tested it and no file played. I had 2 .mp3 files in the same folder with it. Any idea on how to fix that?

Thanks again! I hope some of this helps!

Hohoho, what a fail: I have named two different functions with the same name :oops:

When you fail doing the blowjob the program executes a function (in that case castigo(), that means punishment in spanish)
When you make noize during the final countdown the program runs another function ,in that case castigosound(). So even when the punishment program selected is the same, it is called from diferent places. (so in that way we can differents teasing methods).

When you click on the test button to check that the teasing method works as desired the program do not calls castigosound() function (because that function also adds time to the countdown). It calls a function called (for example, I don't have the code in front of me atm) testcastigosound(), that simply looks wich exe you have choosed and if it is not working at the moment then it runs this exe.

But in the case of the test button for normal teasing it do not called a function like testcastigo(), it directly called the same function that teases you during the session (so wen the program reads the function finds that we are asking it to add time to a timer that hasn't been created yet).

It happened because wen wirtting the program I first tried that the test button worked as desired, and later I tried that when you fail doing the blowjob the teasing funtion worked too (but I do not tested all together again).

Thanks a lot for report this fail.

Here you can find a fixed version (so now this one is the current release, version 0.5)
http://www.silverlighttoys.com/Samples/ ... erSandbox/

The Pain.exe works fine for me... I need hat someone else tries it to get more info.

Thanks a lot for the feedback!!

Re: Selfbondage Blowjob Trainer Beta Release 0.2

Posted: 04 Aug 2011, 17:39
by iluvplanes1
Just tested the pain mp3 random file on my laptop with windows 7 x64 and it worked. I didn't do anything different on there than I did on my desktop I have been trying to use it on which is windows XP.

Any Ideas?

Re: Selfbondage Blowjob Trainer Beta Release 0.2

Posted: 04 Aug 2011, 17:48
by qwerty212
iluvplanes1 wrote:Just tested the pain mp3 random file on my laptop with windows 7 x64 and it worked. I didn't do anything different on there than I did on my desktop I have been trying to use it on which is windows XP.

Any Ideas?

Mmmmmmmm no ideas about that.If you want to, I can prepare to you a little pdf with instructions to download Autoit and compile the program in your computer. (is easy, just download autoit, dowload scite, open the source code with the images and press F7).

The good part is that you can run the code in your computer without having compiled, and when the code fails you can see in what line it has crashed and why.

What do you say?

Greets from Barcelona