mirror of
https://github.com/cyberarm/w3d_hub_linux_launcher.git
synced 2026-03-22 04:06:18 +00:00
Compare commits
1 Commits
master
...
9cb41a8693
| Author | SHA1 | Date | |
|---|---|---|---|
| 9cb41a8693 |
@@ -54,51 +54,49 @@ class W3DHub
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.prompt_for_nickname(accept_callback: nil, cancel_callback: nil)
|
def self.prompt_for_nickname(accept_callback: nil, cancel_callback: nil)
|
||||||
CyberarmEngine::Window.instance.push_state(
|
CyberarmEngine::Window.instance.push_state(
|
||||||
W3DHub::States::PromptDialog,
|
W3DHub::States::PromptDialog,
|
||||||
title: I18n.t(:"server_browser.set_nickname"),
|
title: I18n.t(:"server_browser.set_nickname"),
|
||||||
message: I18n.t(:"server_browser.set_nickname_message"),
|
message: I18n.t(:"server_browser.set_nickname_message"),
|
||||||
prefill: Store.settings[:server_list_username],
|
prefill: Store.settings[:server_list_username],
|
||||||
accept_callback: accept_callback,
|
accept_callback: accept_callback,
|
||||||
cancel_callback: cancel_callback,
|
cancel_callback: cancel_callback,
|
||||||
# See: https://gitlab.com/danpaul88/brenbot/-/blob/master/Source/renlog.pm#L136-175
|
valid_callback: proc do |entry|
|
||||||
valid_callback: proc do |entry|
|
entry.length.between?(3, 40) && (entry =~ /^[a-z0-9_\-\[\]]+$/i)
|
||||||
entry.length > 1 && entry.length < 30 && (entry =~ /(:|!|&|%| )/i).nil? &&
|
|
||||||
(entry =~ /[\001\002\037]/).nil? && (entry =~ /\\/).nil?
|
|
||||||
end
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
def self.prompt_for_password(accept_callback: nil, cancel_callback: nil)
|
def self.prompt_for_password(accept_callback: nil, cancel_callback: nil)
|
||||||
CyberarmEngine::Window.instance.push_state(
|
CyberarmEngine::Window.instance.push_state(
|
||||||
W3DHub::States::PromptDialog,
|
W3DHub::States::PromptDialog,
|
||||||
title: I18n.t(:"server_browser.enter_password"),
|
title: I18n.t(:"server_browser.enter_password"),
|
||||||
message: I18n.t(:"server_browser.enter_password_message"),
|
message: I18n.t(:"server_browser.enter_password_message"),
|
||||||
input_type: :password,
|
input_type: :password,
|
||||||
accept_callback: accept_callback,
|
accept_callback: accept_callback,
|
||||||
cancel_callback: cancel_callback,
|
cancel_callback: cancel_callback,
|
||||||
valid_callback: proc { |entry| entry.length.positive? }
|
valid_callback: proc { |entry| entry.length.positive? }
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.join_server(server:, username: Store.settings[:server_list_username], password: nil, multi: false)
|
def self.join_server(server:, username: Store.settings[:server_list_username], password: nil, multi: false)
|
||||||
if (
|
if (
|
||||||
(server.status.password && password.length.positive?) ||
|
(server.status.password && password.length.positive?) ||
|
||||||
!server.status.password) &&
|
!server.status.password) &&
|
||||||
username.to_s.length.positive?
|
username.to_s.length.positive?
|
||||||
|
|
||||||
Store.application_manager.join_server(
|
Store.application_manager.join_server(
|
||||||
server.game,
|
server.game,
|
||||||
server.channel,
|
server.channel,
|
||||||
server,
|
server,
|
||||||
username,
|
username,
|
||||||
password,
|
password,
|
||||||
multi
|
multi
|
||||||
)
|
)
|
||||||
else
|
else
|
||||||
CyberarmEngine::Window.instance.push_state(W3DHub::States::MessageDialog, type: "?", title: "?", message: "?")
|
CyberarmEngine::Window.instance.push_state(W3DHub::States::MessageDialog, type: "?", title: "?", message: "?")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.command(command, &block)
|
def self.command(command, &block)
|
||||||
if windows?
|
if windows?
|
||||||
@@ -123,7 +121,6 @@ class W3DHub
|
|||||||
process_info = Process.create(**hash)
|
process_info = Process.create(**hash)
|
||||||
|
|
||||||
pid = process_info.process_id
|
pid = process_info.process_id
|
||||||
status = -1
|
|
||||||
|
|
||||||
until (status = Process.get_exitcode(pid))
|
until (status = Process.get_exitcode(pid))
|
||||||
if block
|
if block
|
||||||
|
|||||||
Reference in New Issue
Block a user