Commit d3b84e50 authored by 神楽坂玲奈's avatar 神楽坂玲奈

URL protocol加强

parent db69541c
...@@ -34,7 +34,7 @@ begin ...@@ -34,7 +34,7 @@ begin
log_level = "INFO" log_level = "INFO"
profile = nil profile = nil
ARGV.each do |arg| ARGV.each do |arg|
case arg case arg.dup.force_encoding("UTF-8")
when /--log=(.*)/ when /--log=(.*)/
log.replace $1 log.replace $1
when /--log-level=(.*)/ when /--log-level=(.*)/
......
...@@ -4,17 +4,11 @@ require_relative 'room' ...@@ -4,17 +4,11 @@ require_relative 'room'
require_relative 'ygocore/game' require_relative 'ygocore/game'
$game = Ygocore.new $game = Ygocore.new
uri = ARGV.first[9, ARGV.first.size-9] uri = URI.unescape ARGV.first[9, ARGV.first.size-9]
case uri case uri
when /^(.*)\:(.*)\@(.*)\:(\d+)\/(.*)$/
$game.user = User.new($1.to_sym, $1)
$game.password = $2
$game.server = $3
$game.port = $4.to_i
Ygocore.run_ygocore Room.new(0, $5), true
when /^(.*\.yrp)$/ when /^(.*\.yrp)$/
require 'open-uri' require 'open-uri'
open("http://"+$1, 'rb') { |src| open("http://"+ URI.escape($1), 'rb') { |src|
Dir.mkdir("replay") unless File.directory?("replay") Dir.mkdir("replay") unless File.directory?("replay")
open('replay/' + File.basename($1), 'wb'){|dest| open('replay/' + File.basename($1), 'wb'){|dest|
dest.write src.read dest.write src.read
...@@ -23,11 +17,18 @@ when /^(.*\.yrp)$/ ...@@ -23,11 +17,18 @@ when /^(.*\.yrp)$/
Ygocore.replay('replay/' + File.basename($1), true) Ygocore.replay('replay/' + File.basename($1), true)
when /^(.*\.ydk)$/ when /^(.*\.ydk)$/
require 'open-uri' require 'open-uri'
open("http://"+$1, 'rb') { |src| open("http://" + URI.escape($1), 'rb') { |src|
Dir.mkdir('ygocore/deck') unless File.directory?("ygocore/deck") Dir.mkdir('ygocore/deck') unless File.directory?("ygocore/deck")
open('ygocore/deck/' + File.basename($1), 'wb'){|dest| open('ygocore/deck/' + File.basename($1), 'wb'){|dest|
dest.write src.read dest.write src.read
} }
} }
Ygocore.run_ygocore(File.basename($1, '.ydk'), true) Ygocore.run_ygocore(File.basename($1, '.ydk'), true)
when /^(?:(.*)\:(.*)\@)?(.*)\:(\d+)\/(.*)$/
require 'uri'
$game.user = User.new($1.to_sym, $1) if $1
$game.password = $2 if $2
$game.server = $3
$game.port = $4.to_i
Ygocore.run_ygocore Room.new(0, $5), true
end end
\ No newline at end of file
...@@ -129,7 +129,7 @@ class Ygocore < Game ...@@ -129,7 +129,7 @@ class Ygocore < Game
system_conf['textfont'] = 'c:/windows/fonts/simsun.ttc 14' system_conf['textfont'] = 'c:/windows/fonts/simsun.ttc 14'
system_conf['numfont'] = 'c:/windows/fonts/arialbd.ttf' system_conf['numfont'] = 'c:/windows/fonts/arialbd.ttf'
end end
system_conf['nickname'] = "#{$game.user.name}#{"$" unless $game.password.nil? or $game.password.empty?}#{$game.password}" (system_conf['nickname'] = "#{$game.user.name}#{"$" unless $game.password.nil? or $game.password.empty?}#{$game.password}") rescue nil
system_conf['lastip'] = $game.server system_conf['lastip'] = $game.server
system_conf['lastport'] = $game.port.to_s system_conf['lastport'] = $game.port.to_s
system_conf['roompass'] = room_name system_conf['roompass'] = room_name
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment