procon_bypass_man 0.1.17 → 0.1.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.circleci/config.yml +85 -11
- data/.rubocop.yml +2 -0
- data/CHANGELOG.md +22 -1
- data/Gemfile.lock +4 -3
- data/README.md +19 -20
- data/docs/getting_started.md +88 -0
- data/docs/setting/splatoon2_macro_sokuwari_bubble.md +52 -0
- data/docs/setting/splatoon2_recommended_setting.md +127 -0
- data/docs/upgrade_pbm.md +56 -0
- data/lib/ext/module.rb +16 -0
- data/lib/procon_bypass_man/background/jobs/report_error_reload_config_job.rb +11 -0
- data/lib/procon_bypass_man/background/jobs/report_start_reboot_job.rb +10 -0
- data/lib/procon_bypass_man/background.rb +2 -0
- data/lib/procon_bypass_man/buttons_setting_configuration/loader.rb +24 -3
- data/lib/procon_bypass_man/buttons_setting_configuration/validator.rb +12 -2
- data/lib/procon_bypass_man/buttons_setting_configuration.rb +9 -9
- data/lib/procon_bypass_man/bypass.rb +9 -8
- data/lib/procon_bypass_man/commands/bypass_command.rb +4 -11
- data/lib/procon_bypass_man/commands/connect_device_command.rb +23 -11
- data/lib/procon_bypass_man/configuration.rb +15 -1
- data/lib/procon_bypass_man/device_connector.rb +6 -33
- data/lib/procon_bypass_man/device_procon_finder.rb +65 -0
- data/lib/procon_bypass_man/never_exit_accidentally.rb +12 -0
- data/lib/procon_bypass_man/plugin/splatoon2/macro/sokuwari_for_splash_bomb.rb +22 -0
- data/lib/procon_bypass_man/plugins.rb +1 -0
- data/lib/procon_bypass_man/procon/button.rb +1 -1
- data/lib/procon_bypass_man/procon/macro.rb +89 -0
- data/lib/procon_bypass_man/procon/macro_builder.rb +123 -0
- data/lib/procon_bypass_man/procon/macro_registry.rb +2 -23
- data/lib/procon_bypass_man/procon/user_operation.rb +16 -2
- data/lib/procon_bypass_man/procon.rb +2 -0
- data/lib/procon_bypass_man/remote_pbm_action/reboot_os_action.rb +1 -0
- data/lib/procon_bypass_man/remote_pbm_action/restore_pbm_setting.rb +9 -2
- data/lib/procon_bypass_man/runner.rb +7 -7
- data/lib/procon_bypass_man/support/yaml_writer.rb +16 -0
- data/lib/procon_bypass_man/version.rb +1 -1
- data/lib/procon_bypass_man.rb +25 -24
- data/procon_bypass_man.gemspec +1 -1
- data/project_template/app.rb +5 -2
- data/project_template/setting.yml +6 -22
- data/sig/main.rbs +5 -0
- metadata +17 -4
@@ -1,25 +1,4 @@
|
|
1
1
|
class ProconBypassMan::Procon::MacroRegistry
|
2
|
-
class Macro
|
3
|
-
attr_accessor :name, :steps
|
4
|
-
|
5
|
-
def initialize(name: , steps: )
|
6
|
-
self.name = name
|
7
|
-
self.steps = steps
|
8
|
-
end
|
9
|
-
|
10
|
-
def next_step
|
11
|
-
steps.shift
|
12
|
-
end
|
13
|
-
|
14
|
-
def finished?
|
15
|
-
steps.empty?
|
16
|
-
end
|
17
|
-
|
18
|
-
def ongoing?
|
19
|
-
!finished?
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
2
|
PRESETS = {
|
24
3
|
null: [],
|
25
4
|
}
|
@@ -30,13 +9,13 @@ class ProconBypassMan::Procon::MacroRegistry
|
|
30
9
|
end
|
31
10
|
|
32
11
|
plugins[klass.to_s.to_sym] = ->{
|
33
|
-
ProconBypassMan::Procon::
|
12
|
+
ProconBypassMan::Procon::MacroBuilder.new(steps || klass.steps).build
|
34
13
|
}
|
35
14
|
end
|
36
15
|
|
37
16
|
def self.load(name)
|
38
17
|
steps = PRESETS[name] || plugins[name].call || raise("unknown macro")
|
39
|
-
Macro.new(name: name, steps: steps.dup)
|
18
|
+
ProconBypassMan::Procon::Macro.new(name: name, steps: steps.dup)
|
40
19
|
end
|
41
20
|
|
42
21
|
def self.reset!
|
@@ -33,9 +33,23 @@ class ProconBypassMan::Procon::UserOperation
|
|
33
33
|
binary.write_as_press_button(button)
|
34
34
|
end
|
35
35
|
|
36
|
-
# @param [Symbol] button
|
36
|
+
# @param [Symbol, Array<Symbol>] button
|
37
37
|
def press_button_only(button)
|
38
|
-
|
38
|
+
if button.is_a?(Array)
|
39
|
+
binary.set_no_action!
|
40
|
+
button.uniq.each do |b|
|
41
|
+
unless ProconBypassMan::Procon::MacroBuilder::RESERVED_WORD_NONE == b
|
42
|
+
binary.write_as_press_button(b)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
return
|
46
|
+
end
|
47
|
+
|
48
|
+
if ProconBypassMan::Procon::MacroBuilder::RESERVED_WORD_NONE == button
|
49
|
+
binary.set_no_action!
|
50
|
+
else
|
51
|
+
binary.write_as_press_button_only(button)
|
52
|
+
end
|
39
53
|
end
|
40
54
|
|
41
55
|
# @return [void]
|
@@ -1,7 +1,9 @@
|
|
1
1
|
class ProconBypassMan::Procon
|
2
2
|
require "procon_bypass_man/procon/consts"
|
3
3
|
require "procon_bypass_man/procon/mode_registry"
|
4
|
+
require "procon_bypass_man/procon/macro"
|
4
5
|
require "procon_bypass_man/procon/macro_registry"
|
6
|
+
require "procon_bypass_man/procon/macro_builder"
|
5
7
|
require "procon_bypass_man/procon/layer_changer"
|
6
8
|
require "procon_bypass_man/procon/button_collection"
|
7
9
|
require "procon_bypass_man/procon/user_operation"
|
@@ -6,9 +6,16 @@ module ProconBypassMan
|
|
6
6
|
require "pbmenv"
|
7
7
|
ProconBypassMan.logger.info "execute RestorePbmSettingAction!"
|
8
8
|
setting = args.dig("setting") or raise(ProconBypassMan::RemotePbmAction::NeedPbmVersionError, "settingが必要です, #{args.inspect}")
|
9
|
-
|
9
|
+
|
10
|
+
# 復元に失敗したら戻せるように退避する
|
11
|
+
FileUtils.copy(
|
10
12
|
ProconBypassMan::ButtonsSettingConfiguration.instance.setting_path,
|
11
|
-
|
13
|
+
ProconBypassMan.fallback_setting_path,
|
14
|
+
)
|
15
|
+
|
16
|
+
ProconBypassMan::YamlWriter.write(
|
17
|
+
path: ProconBypassMan::ButtonsSettingConfiguration.instance.setting_path,
|
18
|
+
content: setting,
|
12
19
|
)
|
13
20
|
ProconBypassMan.hot_reload!
|
14
21
|
end
|
@@ -27,7 +27,7 @@ class ProconBypassMan::Runner
|
|
27
27
|
loop do
|
28
28
|
$will_terminate_token = false
|
29
29
|
# NOTE メインプロセスではThreadをいくつか起動しているので念のためパフォーマンスを優先するためにforkしていく
|
30
|
-
|
30
|
+
child_pid = Kernel.fork { ProconBypassMan::BypassCommand.new(gadget: @gadget, procon: @procon).execute }
|
31
31
|
|
32
32
|
begin
|
33
33
|
# TODO 小プロセスが消滅した時に、メインプロセスは生き続けてしまい、何もできなくなる問題がある
|
@@ -37,25 +37,25 @@ class ProconBypassMan::Runner
|
|
37
37
|
end
|
38
38
|
rescue InterruptForRestart
|
39
39
|
$will_terminate_token = true
|
40
|
-
Process.kill("TERM",
|
40
|
+
Process.kill("TERM", child_pid)
|
41
41
|
Process.wait
|
42
42
|
ProconBypassMan::PrintMessageCommand.execute(text: "Reloading config file")
|
43
43
|
begin
|
44
44
|
ProconBypassMan::ButtonsSettingConfiguration::Loader.reload_setting
|
45
45
|
ProconBypassMan::SendReloadConfigEventCommand.execute
|
46
|
-
rescue ProconBypassMan::CouldNotLoadConfigError
|
46
|
+
rescue ProconBypassMan::CouldNotLoadConfigError => error
|
47
47
|
ProconBypassMan::SendErrorCommand.execute(error: "設定ファイルが不正です。再読み込みができませんでした")
|
48
|
+
ProconBypassMan::ReportErrorReloadConfigJob.perform_async(error.message)
|
48
49
|
end
|
49
50
|
ProconBypassMan::PrintMessageCommand.execute(text: "バイパス処理を再開します")
|
50
51
|
rescue Interrupt
|
51
52
|
$will_terminate_token = true
|
52
|
-
Process.kill("TERM",
|
53
|
+
Process.kill("TERM", child_pid)
|
53
54
|
Process.wait
|
55
|
+
ProconBypassMan::PrintMessageCommand.execute(text: "処理を終了します")
|
54
56
|
@gadget&.close
|
55
57
|
@procon&.close
|
56
|
-
|
57
|
-
FileUtils.rm_rf(ProconBypassMan.digest_path)
|
58
|
-
exit 1
|
58
|
+
break
|
59
59
|
end
|
60
60
|
end
|
61
61
|
end
|
data/lib/procon_bypass_man.rb
CHANGED
@@ -7,11 +7,13 @@ require "securerandom"
|
|
7
7
|
require 'em/pure_ruby'
|
8
8
|
require "action_cable_client"
|
9
9
|
require "ext/em_pure_ruby"
|
10
|
+
require "ext/module"
|
10
11
|
|
11
12
|
require_relative "procon_bypass_man/version"
|
12
13
|
require_relative "procon_bypass_man/remote_pbm_action"
|
13
14
|
require_relative "procon_bypass_man/support/signal_handler"
|
14
15
|
require_relative "procon_bypass_man/support/callbacks"
|
16
|
+
require_relative "procon_bypass_man/support/yaml_writer"
|
15
17
|
require_relative "procon_bypass_man/support/safe_timeout"
|
16
18
|
require_relative "procon_bypass_man/support/compress_array"
|
17
19
|
require_relative "procon_bypass_man/support/uptime"
|
@@ -25,7 +27,9 @@ require_relative "procon_bypass_man/background"
|
|
25
27
|
require_relative "procon_bypass_man/commands"
|
26
28
|
require_relative "procon_bypass_man/bypass"
|
27
29
|
require_relative "procon_bypass_man/domains"
|
30
|
+
require_relative "procon_bypass_man/never_exit_accidentally"
|
28
31
|
require_relative "procon_bypass_man/device_connector"
|
32
|
+
require_relative "procon_bypass_man/device_procon_finder"
|
29
33
|
require_relative "procon_bypass_man/device_status"
|
30
34
|
require_relative "procon_bypass_man/runner"
|
31
35
|
require_relative "procon_bypass_man/processor"
|
@@ -44,25 +48,13 @@ require_relative "procon_bypass_man/websocket/pbm_job_client"
|
|
44
48
|
STDOUT.sync = true
|
45
49
|
Thread.abort_on_exception = true
|
46
50
|
|
47
|
-
# pluginの定数を握りつぶす
|
48
|
-
class Module
|
49
|
-
def const_missing(id)
|
50
|
-
if self.name =~ /^ProconBypassMan::Plugin/
|
51
|
-
parent_const = Object.const_get("#{self.name}")
|
52
|
-
parent_const.const_set(id, Module.new)
|
53
|
-
Object.const_get("#{self.name}::#{id}")
|
54
|
-
else
|
55
|
-
super
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
|
60
51
|
module ProconBypassMan
|
61
52
|
extend ProconBypassMan::Configuration::ClassMethods
|
53
|
+
extend ProconBypassMan::NeverExitAccidentally
|
62
54
|
|
63
55
|
class CouldNotLoadConfigError < StandardError; end
|
64
|
-
class NotFoundProconError < StandardError; end
|
65
56
|
class ConnectionError < StandardError; end
|
57
|
+
class NotFoundRequiredFilesError < StandardError; end
|
66
58
|
class FirstConnectionError < ConnectionError; end
|
67
59
|
class EternalConnectionError < ConnectionError; end
|
68
60
|
|
@@ -73,22 +65,31 @@ module ProconBypassMan
|
|
73
65
|
ProconBypassMan::Websocket::PbmJobClient.start!
|
74
66
|
|
75
67
|
ProconBypassMan::PrintMessageCommand.execute(text: "PBMを起動しています")
|
76
|
-
ProconBypassMan::ButtonsSettingConfiguration::Loader.load(setting_path: setting_path)
|
77
68
|
initialize_pbm
|
69
|
+
ProconBypassMan::ButtonsSettingConfiguration::Loader.load(setting_path: setting_path)
|
78
70
|
gadget, procon = ProconBypassMan::ConnectDeviceCommand.execute!
|
79
|
-
Runner.new(gadget: gadget, procon: procon).run
|
80
|
-
rescue ProconBypassMan::CouldNotLoadConfigError
|
81
|
-
ProconBypassMan::SendErrorCommand.execute(error: "設定ファイルが不正です。設定ファイルの読み込みに失敗しました")
|
82
|
-
ProconBypassMan::DeviceStatus.change_to_setting_syntax_error_and_shutdown!
|
71
|
+
Runner.new(gadget: gadget, procon: procon).run # ここでblockingする
|
83
72
|
FileUtils.rm_rf(ProconBypassMan.pid_path)
|
84
73
|
FileUtils.rm_rf(ProconBypassMan.digest_path)
|
85
|
-
|
86
|
-
|
87
|
-
ProconBypassMan::SendErrorCommand.execute(error: "プロコンが見つかりませんでした。終了します。")
|
88
|
-
ProconBypassMan::DeviceStatus.change_to_procon_not_found_error!
|
74
|
+
rescue ProconBypassMan::NotFoundRequiredFilesError
|
75
|
+
ProconBypassMan::SendErrorCommand.execute(error: "/sys/kernel/config/usb_gadget/proconディレクトリがありませんでした。処理を終了します。")
|
89
76
|
FileUtils.rm_rf(ProconBypassMan.pid_path)
|
90
77
|
FileUtils.rm_rf(ProconBypassMan.digest_path)
|
91
|
-
exit 1
|
78
|
+
exit 1 # 前提条件を満たしていないので絶対に落とす
|
79
|
+
rescue ProconBypassMan::CouldNotLoadConfigError
|
80
|
+
ProconBypassMan::SendErrorCommand.execute(error: "設定ファイルが不正です。設定ファイルの読み込みに失敗しました")
|
81
|
+
ProconBypassMan::DeviceStatus.change_to_setting_syntax_error_and_shutdown!
|
82
|
+
ProconBypassMan.exit_if_allow(1) do
|
83
|
+
FileUtils.rm_rf(ProconBypassMan.pid_path)
|
84
|
+
FileUtils.rm_rf(ProconBypassMan.digest_path)
|
85
|
+
end
|
86
|
+
rescue ProconBypassMan::ConnectDeviceCommand::NotFoundProconError
|
87
|
+
ProconBypassMan::SendErrorCommand.execute(error: "プロコンが見つかりませんでした。")
|
88
|
+
ProconBypassMan::DeviceStatus.change_to_procon_not_found_error!
|
89
|
+
ProconBypassMan.exit_if_allow(1) do
|
90
|
+
FileUtils.rm_rf(ProconBypassMan.pid_path)
|
91
|
+
FileUtils.rm_rf(ProconBypassMan.digest_path)
|
92
|
+
end
|
92
93
|
rescue ProconBypassMan::ConnectionError
|
93
94
|
begin
|
94
95
|
raise
|
data/procon_bypass_man.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.authors = ["jiikko"]
|
9
9
|
spec.email = ["n905i.1214@gmail.com"]
|
10
10
|
|
11
|
-
spec.summary = "
|
11
|
+
spec.summary = "A programmable converter for Nintendo Switch Pro Controller"
|
12
12
|
spec.description = spec.summary
|
13
13
|
spec.homepage = "https://github.com/splaplapla/procon_bypass_man"
|
14
14
|
spec.license = "MIT"
|
data/project_template/app.rb
CHANGED
@@ -5,15 +5,18 @@ require 'bundler/inline'
|
|
5
5
|
gemfile do
|
6
6
|
source 'https://rubygems.org'
|
7
7
|
git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
|
8
|
-
gem 'procon_bypass_man', '0.1.
|
8
|
+
gem 'procon_bypass_man', '0.1.20'
|
9
9
|
end
|
10
10
|
|
11
11
|
ProconBypassMan.configure do |config|
|
12
12
|
config.root = File.expand_path(__dir__)
|
13
13
|
config.logger = Logger.new("#{ProconBypassMan.root}/app.log", 5, 1024 * 1024 * 10)
|
14
14
|
config.logger.level = :debug
|
15
|
-
#
|
15
|
+
# webからProconBypassManを操作できるwebサービス
|
16
|
+
# config.api_servers = ['https://pbm-cloud.herokuapp.com']
|
16
17
|
config.enable_critical_error_logging = true
|
18
|
+
# pbm-cloudで使う場合はnever_exitにtrueをセットしてください. trueがセットされている場合、不慮の事故が発生してもプロセスが終了しなくなります
|
19
|
+
config.never_exit_accidentally = true
|
17
20
|
end
|
18
21
|
|
19
22
|
ProconBypassMan.run(setting_path: "/usr/share/pbm/current/setting.yml")
|
@@ -1,35 +1,19 @@
|
|
1
1
|
version: 1.0
|
2
2
|
setting: |-
|
3
|
-
fast_return = ProconBypassMan::Plugin::Splatoon2::Macro::FastReturn
|
4
|
-
guruguru = ProconBypassMan::Plugin::Splatoon2::Mode::Guruguru
|
5
|
-
|
6
|
-
install_macro_plugin fast_return
|
7
|
-
install_macro_plugin ProconBypassMan::Plugin::Splatoon2::Macro::JumpToUpKey
|
8
|
-
install_macro_plugin ProconBypassMan::Plugin::Splatoon2::Macro::JumpToRightKey
|
9
|
-
install_macro_plugin ProconBypassMan::Plugin::Splatoon2::Macro::JumpToLeftKey
|
10
|
-
install_mode_plugin guruguru
|
11
|
-
|
12
3
|
prefix_keys_for_changing_layer [:zr, :zl, :l]
|
13
4
|
|
14
|
-
layer :up
|
15
|
-
# flip :zr, if_pressed: :zr, force_neutral: :zl
|
5
|
+
layer :up do
|
16
6
|
flip :zr, if_pressed: :zr, force_neutral: :zl
|
17
|
-
flip :zl, if_pressed: [:y, :b, :zl]
|
18
7
|
flip :a, if_pressed: [:a]
|
19
8
|
flip :down, if_pressed: :down
|
20
|
-
macro fast_return.name, if_pressed: [:y, :b, :down]
|
21
|
-
macro ProconBypassMan::Plugin::Splatoon2::Macro::JumpToUpKey, if_pressed: [:y, :b, :up]
|
22
|
-
macro ProconBypassMan::Plugin::Splatoon2::Macro::JumpToRightKey, if_pressed: [:y, :b, :right]
|
23
|
-
macro ProconBypassMan::Plugin::Splatoon2::Macro::JumpToLeftKey, if_pressed: [:y, :b, :left]
|
24
9
|
remap :l, to: :zr
|
25
10
|
end
|
26
|
-
|
11
|
+
|
12
|
+
layer :right do
|
13
|
+
end
|
14
|
+
|
27
15
|
layer :left do
|
28
|
-
# flip :zr, if_pressed: :zr, force_neutral: :zl
|
29
|
-
remap :l, to: :zr
|
30
16
|
end
|
17
|
+
|
31
18
|
layer :down do
|
32
|
-
# flip :zl
|
33
|
-
# flip :zr, if_pressed: :zr, force_neutral: :zl, flip_interval: "1F"
|
34
|
-
remap :l, to: :zr
|
35
19
|
end
|
data/sig/main.rbs
CHANGED
@@ -185,10 +185,13 @@ class ProconBypassMan::Configuration
|
|
185
185
|
def cache: () -> ProconBypassMan::OnMemoryCache
|
186
186
|
|
187
187
|
def config: () -> ProconBypassMan::Configuration
|
188
|
+
|
189
|
+
def never_exit_accidentally: () -> bool
|
188
190
|
end
|
189
191
|
|
190
192
|
attr_reader api_server: untyped
|
191
193
|
attr_reader api_servers: untyped
|
194
|
+
attr_writer never_exit_accidentally: bool
|
192
195
|
|
193
196
|
attr_accessor enable_critical_error_logging: bool
|
194
197
|
|
@@ -226,6 +229,8 @@ class ProconBypassMan::Configuration
|
|
226
229
|
def raw_setting: () -> untyped
|
227
230
|
|
228
231
|
def verbose_bypass_log: () -> bool
|
232
|
+
|
233
|
+
def never_exit_accidentally: () -> bool
|
229
234
|
end
|
230
235
|
|
231
236
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: procon_bypass_man
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.20
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jiikko
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-02-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pbmenv
|
@@ -52,7 +52,7 @@ dependencies:
|
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
|
-
description:
|
55
|
+
description: A programmable converter for Nintendo Switch Pro Controller
|
56
56
|
email:
|
57
57
|
- n905i.1214@gmail.com
|
58
58
|
executables: []
|
@@ -76,12 +76,17 @@ files:
|
|
76
76
|
- bin/console
|
77
77
|
- bin/dev_api_server.rb
|
78
78
|
- bin/setup
|
79
|
+
- docs/getting_started.md
|
79
80
|
- docs/how_to_connect_procon.md
|
80
81
|
- docs/setting/left-analogstick-cap.md
|
82
|
+
- docs/setting/splatoon2_macro_sokuwari_bubble.md
|
83
|
+
- docs/setting/splatoon2_recommended_setting.md
|
81
84
|
- docs/setup_raspi.md
|
82
85
|
- docs/setup_raspi.mitamae.rb
|
83
86
|
- docs/setup_raspi_by_mitamae.md
|
87
|
+
- docs/upgrade_pbm.md
|
84
88
|
- lib/ext/em_pure_ruby.rb
|
89
|
+
- lib/ext/module.rb
|
85
90
|
- lib/procon_bypass_man.rb
|
86
91
|
- lib/procon_bypass_man/background.rb
|
87
92
|
- lib/procon_bypass_man/background/job_performer.rb
|
@@ -92,10 +97,12 @@ files:
|
|
92
97
|
- lib/procon_bypass_man/background/jobs/concerns/job_runnable.rb
|
93
98
|
- lib/procon_bypass_man/background/jobs/report_boot_job.rb
|
94
99
|
- lib/procon_bypass_man/background/jobs/report_error_job.rb
|
100
|
+
- lib/procon_bypass_man/background/jobs/report_error_reload_config_job.rb
|
95
101
|
- lib/procon_bypass_man/background/jobs/report_event_base_job.rb
|
96
102
|
- lib/procon_bypass_man/background/jobs/report_load_config_job.rb
|
97
103
|
- lib/procon_bypass_man/background/jobs/report_pressed_buttons_job.rb
|
98
104
|
- lib/procon_bypass_man/background/jobs/report_reload_config_job.rb
|
105
|
+
- lib/procon_bypass_man/background/jobs/report_start_reboot_job.rb
|
99
106
|
- lib/procon_bypass_man/background/jobs/sync_device_stats_job.rb
|
100
107
|
- lib/procon_bypass_man/buttons_setting_configuration.rb
|
101
108
|
- lib/procon_bypass_man/buttons_setting_configuration/layer.rb
|
@@ -115,6 +122,7 @@ files:
|
|
115
122
|
- lib/procon_bypass_man/commands/write_session_id_command.rb
|
116
123
|
- lib/procon_bypass_man/configuration.rb
|
117
124
|
- lib/procon_bypass_man/device_connector.rb
|
125
|
+
- lib/procon_bypass_man/device_procon_finder.rb
|
118
126
|
- lib/procon_bypass_man/device_status.rb
|
119
127
|
- lib/procon_bypass_man/domains.rb
|
120
128
|
- lib/procon_bypass_man/domains/binary/base.rb
|
@@ -123,10 +131,12 @@ files:
|
|
123
131
|
- lib/procon_bypass_man/domains/binary/inbound_procon_binary.rb
|
124
132
|
- lib/procon_bypass_man/domains/binary/processing_procon_binary.rb
|
125
133
|
- lib/procon_bypass_man/io_monitor.rb
|
134
|
+
- lib/procon_bypass_man/never_exit_accidentally.rb
|
126
135
|
- lib/procon_bypass_man/plugin/splatoon2/macro/fast_return.rb
|
127
136
|
- lib/procon_bypass_man/plugin/splatoon2/macro/jump_to_left_key.rb
|
128
137
|
- lib/procon_bypass_man/plugin/splatoon2/macro/jump_to_right_key.rb
|
129
138
|
- lib/procon_bypass_man/plugin/splatoon2/macro/jump_to_up_key.rb
|
139
|
+
- lib/procon_bypass_man/plugin/splatoon2/macro/sokuwari_for_splash_bomb.rb
|
130
140
|
- lib/procon_bypass_man/plugin/splatoon2/mode/guruguru.rb
|
131
141
|
- lib/procon_bypass_man/plugin/splatoon2/version.rb
|
132
142
|
- lib/procon_bypass_man/plugins.rb
|
@@ -138,6 +148,8 @@ files:
|
|
138
148
|
- lib/procon_bypass_man/procon/consts.rb
|
139
149
|
- lib/procon_bypass_man/procon/flip_cache.rb
|
140
150
|
- lib/procon_bypass_man/procon/layer_changer.rb
|
151
|
+
- lib/procon_bypass_man/procon/macro.rb
|
152
|
+
- lib/procon_bypass_man/procon/macro_builder.rb
|
141
153
|
- lib/procon_bypass_man/procon/macro_registry.rb
|
142
154
|
- lib/procon_bypass_man/procon/mode_registry.rb
|
143
155
|
- lib/procon_bypass_man/procon/press_button_aware.rb
|
@@ -165,6 +177,7 @@ files:
|
|
165
177
|
- lib/procon_bypass_man/support/signal_handler.rb
|
166
178
|
- lib/procon_bypass_man/support/update_remote_pbm_action_status_http_client.rb
|
167
179
|
- lib/procon_bypass_man/support/uptime.rb
|
180
|
+
- lib/procon_bypass_man/support/yaml_writer.rb
|
168
181
|
- lib/procon_bypass_man/version.rb
|
169
182
|
- lib/procon_bypass_man/websocket/pbm_job_client.rb
|
170
183
|
- procon_bypass_man.gemspec
|
@@ -202,5 +215,5 @@ requirements: []
|
|
202
215
|
rubygems_version: 3.2.15
|
203
216
|
signing_key:
|
204
217
|
specification_version: 4
|
205
|
-
summary:
|
218
|
+
summary: A programmable converter for Nintendo Switch Pro Controller
|
206
219
|
test_files: []
|