-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.rb
100 lines (70 loc) · 2.1 KB
/
main.rb
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
require 'colorize'
require 'open-uri'
require 'json'
require_relative 'plugins'
require_relative 'functions'
@programver = "0.1.0"
if File.exist?('installed.txt')
# pass
else
downloadAssets()
exit
end
checkLatest()
if File.exist?('options.txt')
if ARGV.include?('--plugin')
pluginManager()
elsif ARGV.include?('--admin-cmds')
adminCmd()
elsif ARGV.include?('--eula')
puts "Accepting minecraft EULA... (minecraft.net/eula)".colorize(:yellow)
Dir.chdir("#{path}") do
eulaFile = File.new("eula.txt", "w")
eulaFile.puts("eula=true")
eulaFile.close
eulaAccepted = true
end
elsif ARGV.include?('--delete')
sudormrfslash()
puts 'Your server has been deleted'.colorize(:yellow)
exit
end
puts 'Loading redserver from config...'.colorize(:yellow)
# Read JSON data from options.txt
options_data = File.read('options.txt')
# Parse the JSON data
options = JSON.parse(options_data)
serverName = options['serverName']
serverVersion = options['serverVersion']
eulaAccepted = options['eulaAccepted']
puts "Server Name: #{serverName}"
puts "Server Version: #{serverVersion}"
puts "Eula Accepted: #{eulaAccepted}"
puts 'Starting server...'.colorize(:yellow)
Dir.chdir("server/") do
output = `java -jar launch.jar 2>&1`
success = $?.success?
if success
# Command executed successfully
puts "Command executed successfully"
else
# Command encountered an error
puts "Command failed with error: #{output}"
File.open("logs/error_log.txt", "w") { |file| file.puts(output) }
end
end
else
if ARGV.include?('--auto')
autoInstall()
end
puts "It seems that you have not set up redserver yet, let's go through the setup now!".colorize(:yellow)
puts "Server type: Paper (you cannot choose)"
printf "Server Name:"
serverName = gets.chomp
printf "Server Version:"
serverVersion = gets.chomp
printf "Accept Minecraft EULA? [y/n] (aka.ms/mc-eula)"
eulaAccepted = gets.chomp
auti = false
createServer(serverName, serverVersion, eulaAccepted, auti)
end