This repository has been archived by the owner on Jun 20, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRoblOOF.ahk
107 lines (91 loc) · 3.1 KB
/
RoblOOF.ahk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
; Change icon
Menu, Tray, NoStandard
Menu, Tray, Icon, icon.ico
Menu, Tray, Add, Replace Sounds, replaceSounds
Menu, Tray, Add, Return Sounds, returnSounds
Menu, Tray, Add
Menu, Tray, Add, Run On Startup, ROS
Menu, Tray, Add, Don't Run On Startup, DROS
Menu, Tray, Add
Menu, Tray, Add, Exit, exitApp
; Create global variables
global appName
appName = RoblOOF
global configName
configName = config.ini
; Create config.ini
If !FileExist(configName)
{
IniWrite, Roblox, %configName%, %appName%, roblox_name
IniWrite, *64, %configName%, %appName%, sound
IniWrite, backup, %configName%, %appName%, backup_folder
IniWrite, sounds, %configName%, %appName%, sounds_folder
IniWrite, %LOCALAPPDATA%\Roblox\Versions, %configName%, %appName%, roblox_versions_folder
IniWrite, content\sounds, %configName%, %appName%, roblox_sounds_folder
}
getVersions() {
; Create array of available Roblox versions
Array := Array()
IniRead, roblox_versions_folder, %configName%, %appName%, roblox_versions_folder
Loop Files, % roblox_versions_folder "\*", D
{
Array.Push(A_LoopFileName)
}
Return Array
}
replaceSounds(Wait) {
; Continue execution only when Roblox closes
if (Wait == 1) {
IniRead, roblox_name, %configName%, %appName%, roblox_name
WinWait, %roblox_name%
WinWaitClose
}
Array := getVersions()
; Backup sounds if needed
IniRead, backup_folder, %configName%, %appName%, backup_folder
IniRead, roblox_sounds_folder, %configName%, %appName%, roblox_sounds_folder
IniRead, roblox_versions_folder, %configName%, %appName%, roblox_versions_folder
If (!InStr(FileExist(%backup_folder%), "D")) and (%backup_folder% != "0")
{
FileCopyDir, % roblox_versions_folder "\" Array[1] "\" roblox_sounds_folder, %backup_folder%
}
; Replace sounds in all sound folders of Roblox
IniRead, sounds_folder, %configName%, %appName%, sounds_folder
for i, v in Array
{
FileCopyDir, % sounds_folder, % roblox_versions_folder "\" v "\" roblox_sounds_folder, 1
}
; Play sound
IniRead, sound, %configName%, %appName%, sound
SoundPlay, %sound%
; Run this function again
ReplaceSounds(1)
}
replaceSounds(1)
returnSounds() {
Array := getVersions()
; Bring back sounds
IniRead, backup_folder, %configName%, %appName%, backup_folder
If (FileExist(A_WorkingDir "\" backup_folder))
{
IniRead, roblox_versions_folder, %configName%, %appName%, roblox_versions_folder
IniRead, roblox_sounds_folder, %configName%, %appName%, roblox_sounds_folder
for i, v in Array
{
FileCopyDir, % backup_folder, % roblox_versions_folder "\" v "\" roblox_sounds_folder, 1
}
FileRemoveDir, %backup_folder%, 1
}
; Play sound
IniRead, sound, %configName%, %appName%, sound
SoundPlay, %sound%
}
ROS() {
FileCreateShortcut, %A_ScriptName%, %A_Startup%\%appName%.lnk
}
DROS() {
FileDelete, %A_Startup%\%appName%.lnk
}
exitApp() {
ExitApp
}