diff --git a/old_versions/Break (broken, not being fixed).ahk b/old_versions/Break (broken, not being fixed).ahk
new file mode 100644
index 0000000..8dc1041
--- /dev/null
+++ b/old_versions/Break (broken, not being fixed).ahk
@@ -0,0 +1,306 @@
+#SingleInstance force ; We only want one of these running at a time...
+FileEncoding, UTF-8
+Menu, Tray, Icon, %A_MyDocuments%\D3K\icons\coffeecup.ico
+DetectHiddenWindows, On ; This is so that it can identIfy that the window exists since we have it not show up in the taskbar
+
+Total := 60 ; Total break time in minutes
+KeepThis := 1 ; Just a variable to save things
+winx := 1 ; When these two are set to 1, it puts the window at the center
+winy := 1
+ugly := False
+
+If FileExist("T_Msg.ahk")
+{
+ #Include T_Msg.ahk
+}
+
+;------------------------------------------------------------------------------
+; Main GUI creation
+;------------------------------------------------------------------------------
+
+ShowGUI: ; Easy way to recreate the window for the pretty color
+Gui, main:+AlwaysOnTop
+Gui, main:+ToolWindow ; Removes the minimize and maximize buttons, removes it from the taskbar
+
+Gui, main:Add, Progress, x2 y1 w110 h14 Range0-60 -Smooth vProgress, %Total% ; Slider at the top, a nice visual
+Gui, main:Add, Text, x43 y23 w27 h20 vTotal +Center, %Total% ; The total time left
+Gui, main:Add, Edit, x72 y20 w30 h20 +Number vInput +Center, ; Input box for the length of your break
+Gui, main:Add, Button, x2 y20 w40 h20 gLock, Lock ; Button to lock PC
+Gui, main:Add, Text, x2 y23 w40 h20 vLocked, Locked ; Text that confirmes that your PC is locked
+Gui, main:Add, Button, x2 y20 w40 h20 gBreakButton vBrek, Break ; Button to start break
+Gui, main:Add, Button, x2 y20 w40 h20 gEnd, End ; Button to end break
+Gui, main:Add, Button, x21 y83 w70 h30 Default gLength, Length ; Button that is default so that when you press enter on the input field it puts you on that long of a break and also locks the PC
+
+; Hide the things we don't want to see when it starts up
+GuiControl, Hide, Subtract
+GuiControl, Hide, Lock
+GuiControl, Hide, Locked
+GuiControl, Hide, End
+
+If (ugly = True){
+ GuiControl, -cGreen, Progress
+}
+
+; AI to make it show the window where it was before (explained later)
+If (winx="1" And winy="1"){ ; The default values assigned at the beginning of the script
+ WinLoc := "Center" ; Shows the window in the center of the screen (basically only on startup)
+}
+Else{
+ WinLoc = x%winx% y%winy% ; Saved further down in the script when clicking on End
+}
+
+Gui, main:Show, h45 w115 %WinLoc%, Break time ; Show the GUI
+Return
+
+GuiClose:
+ ExitApp ; Make sure that it doesn't keep running when the close button is clicked
+Return
+
+;------------------------------------------------------------------------------
+; Main GUI buttons
+;------------------------------------------------------------------------------
+
+Length:
+ LWD := True
+ Goto, GuiContextMenu
+Return
+
+BreakButton: ; Starts your break for the length you entered in the field
+ GuiControl, Hide, Brek ; Hide the Break button
+ Send, #+B ; Hotkey for default Break Time (10 mins)
+ Gui, main:submit, NoHide
+ GuiControl, Show, Lock ; Show the Lock button
+ uploop := True ; Set this to true so that it doesn't exit after one run
+ BreakLength = 10 ; Default break length
+ BegWarned = False
+ HalfBreakLength := BreakLength // 2
+ HBWarned = False
+ WarnLength := BreakLength - 2
+ EBWarned = False
+ SetTimer, UpTimer, 1000 ; Function for updating the graphics
+ StartTime := A_TickCount ; Saves the time that we started at in Milliseconds
+ KeepThis := Total ; Saves the current total to a dIfferent variable so that If there are errors while it is updating, it doesn't mess with anything else
+ GuiControl, +cRed, Progress ; Changes the color of the progress bar to red. It is the entire reason that the GUI needs to be destroyed and then recreated
+ Sleep, 3000 ; Show the lock button for 2 seconds
+ GuiControl, Hide, Lock ; Remove the lock button
+ GuiControl, Show, End ; Show the end button
+Return
+
+Lock: ; Locks the PC
+ Gui, main:submit, NoHide
+ GuiControl, Hide, Lock ; If you can't figure this one out by now, you might need to RTFM
+ GuiControl, Show, Locked
+ Run rundll32.exe user32.dll`,LockWorkStation ; Locks PC by calling the DLL. just sending Win+L sadly doesn't work
+ Sleep, 1000
+ GuiControl, Hide, Locked
+ GuiControl, Show, End
+ uploop := True ; No real reason to do this, but it can't hurt
+Return
+
+End: ; Ends your break
+ Send, #+B ; Break hotkey
+ GuiControl, Hide, End
+ SetTimer, UpTimer, Off ; Stop the live updating loop
+ ElapsedTime := A_TickCount - StartTime ; grabs the current time in MS, and subtracts it from the TickCount that we recorded earlier
+ ELSeconds := ElapsedTime/1000 ; Convert to seconds
+ ELMins := ELSeconds/60 ; Convert to minutes
+ ELMins := Round(ELMins, 2) ; Round it off to 2 places
+ Total := (KeepThis-ELMins) ; Subtract the elapsed minutes (in ##.##0000) from the total
+ Total := SubStr(Total, 1, 2) ; Trim off the total cause it now has a bunch of useless zeros at the end, and we don't want to see those
+ WinGetActiveStats, Title, Width, Height, winx, winy ; Save the current position to variables, first three are there cause it is required
+ SetTimer, UpTimer, Off ; Make sure the dang thing turns off
+ Gui, main:Destroy ; I couldn't find a way to get the default Win10 green with the flashing part back, so we're just gonna destroy it and make a new one at the exact same place
+ Goto, ShowGUI ; Just goes to the top to create the GUI again, but this time at the locations saved from earlier.
+ GuiControl,, Total, %Total% ; ModIfy the time at the bottom and progress bar to be accurate
+ GuiControl,, Progress, %Total%
+ If (ugly = True)
+ {
+ GuiControl, -cGreen, Progress
+ }
+ Sleep, 1000 ; A little bit of break time so that you don't immediatley go back into break accidentially
+ GuiControl, Show, Brek
+ uploop := False ; Make sure the dang thing turns off
+ ; Delete previous message
+Return
+
+GuiContextMenu:
+mousegetpos,,,, name
+If InStr(name, "Button")
+{
+ Return
+}
+
+;Since there isn't a return here, right clicking anywhere other than the button will show the second GUI, as well as pressing Escape
+;------------------------------------------------------------------------------
+; Second GUI
+;------------------------------------------------------------------------------
+
+GuiEscape:
+Gui, 2: Destroy ; Just in case there is one open already
+WinGetActiveStats, Title, Width, Height, winx, winy ; Save the current position to variables, other ones are there cause it was required
+
+
+
+Gui, 2: +AlwaysOnTop
+Gui, 2: +ToolWindow
+
+Gui, 2: Add, Edit, x2 y2 w40 h20 +Number vSubInput +Center, ; Input box for when you manually do a break
+Gui, 2: Add, Button, x21 y83 w70 h30 Default gSubtract, Subtract
+
+
+winy += 75
+winx += 35
+Win2Loc = x%winx% y%winy% ; Makes the little popup show up centered below the break window
+
+
+Gui, 2: Show, w45 h25 %Win2Loc%, Subtract from Total time ; Show the GUI
+Return
+
+
+;------------------------------------------------------------------------------
+; Second GUI buttons
+;------------------------------------------------------------------------------
+
+Subtract: ; The default button, subtracts the time you entered into the field from the total
+ gui, 2:submit, Hide ; Makes sure the GUI doesn't dissapear when you submit it
+ Total := (Total - SubInput) ; Subtracts what you entered from the total time
+ GuiControl,, Total, %Total% ; ModIfy the time at the bottom and progress bar to be accurate
+ GuiControl,, Progress, %Total%
+ Gui, 2:Destroy
+ WinActivate, Break Time
+ WinGetActiveStats, Title, Width, Height, winx, winy ; Save the current position to variables, first three are there cause it is required
+ Gui, main:Destroy
+ Goto, ShowGUI ; Just goes to the top to create the GUI again, but this time at the locations saved from earlier.
+Return
+
+2GuiClose: ; From the close button
+2GuiEscape: ; From pressing escape
+ Gui, 2: Destroy
+Return
+
+
+
+;------------------------------------------------------------------------------
+; GUI to remove green color
+;------------------------------------------------------------------------------
+
+2GuiContextMenu: ; Because one nested GUI isn't enough
+MsgBox, 4148, Color Change, Remove the flashing green?
+
+IfMsgBox, Yes
+{
+ GuiControl, -cGreen, Progress
+ ugly := True
+}
+Return
+
+
+
+
+
+
+UpTimer:
+ElapsedTime := A_TickCount - StartTime ; grabs the current time in MS, and subtracts it from the time that we recorded earlier
+ELSeconds := ElapsedTime // 1000 ; Convert to seconds
+ELMins := ELSeconds // 60 ; Convert to minutes
+ELMins := Round(ELMins) ; Round it off to nearest Intreger
+Update := (Total-ELMins) ; Subtract the elapsed minutes from the total
+GuiControl,, Progress, %Update% ; Update the time left at the bottom and progress bar
+GuiControl,, Total, %Update%
+
+If FileExist("T_Msg.ahk")
+{
+ If (BegWarned = "False")
+ {
+ If (HalfBreakLength >= WarnLength)
+ {
+ BegWarned = True
+ HBWarned = True
+ T_SendMsg("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins left.`n" Total " mins of break time left
")
+ }
+
+ If (HalfBreakLength < WarnLength)
+ {
+ BegWarned = True
+ T_SendMsg("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins and " WarnLength " mins elapsed.`n" Total " mins of break time left
")
+ }
+
+ Temp := Update
+ }
+}
+
+
+If FileExist("T_Msg.ahk")
+{
+ If !(Temp > Update)
+ {
+ Temp := Update
+ If (HBWarned = "False")
+ {
+ If (ELMins = HalfBreakLength)
+ {
+ ; Delete previous message
+ T_SendMsg("alert", 1, "Break is half over, " HalfBreakLength " mins left.`n" Update " mins of break time left
")
+ HBWarned = True
+ }
+
+ If (HalfBreakLength >= WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins left.`n" Update " mins of total break time left
")
+ }
+
+ If (HalfBreakLength < WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins and " WarnLength " mins elapsed.`n" Update " mins of total break time left
")
+ }
+ }
+
+ If (HBWarned = "True")
+ {
+ If (HalfBreakLength >= WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, warned on " HalfBreakLength " mins left.`n" Update " mins of total break time left
")
+ }
+
+ If (HalfBreakLength < WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, warned on " HalfBreakLength " mins, will warn again on " WarnLength " mins elapsed.`n" Update " mins of total break time left
")
+ }
+ }
+
+ If (EBWarned = "False")
+ {
+ If (ELMins = WarnLength)
+ {
+ T_SendMsg("hand", 3, "Break is almost over, 2 mins left of your " BreakLength " minute break!`n" Update " mins of break time left
")
+ EBWarned = True
+ }
+ Else
+ {
+ If (HalfBreakLength >= WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins left.`n" Update " mins of total break time left
")
+ }
+
+ If (HalfBreakLength < WarnLength)
+ {
+ T_Edit("info",1,BreakLength " Minute break started, will warn on " HalfBreakLength " mins and " WarnLength " mins elapsed.`n" Update " mins of total break time left
")
+ }
+ }
+ }
+
+ If (EBWarned = "True")
+ {
+ If (HalfBreakLength >= WarnLength)
+ {
+ T_Edit("hand", 3, "Break is almost over, 2 mins left of your " BreakLength " minute break!`n" Update " mins of total break time left
")
+ }
+
+ If (HalfBreakLength < WarnLength)
+ {
+ T_Edit("hand", 3, "Break is almost over, 2 mins left of your " BreakLength " minute break!`n" Update " mins of total break time left
")
+ }
+ }
+ }
+}
+Return
\ No newline at end of file