Commit 7e3a0e0e authored by 神楽坂玲奈's avatar 神楽坂玲奈

临时提交

parent 3ba862c3
......@@ -87,6 +87,7 @@ class Action
@position = position
end
def run
p @card, self
from_field = case @from_pos
when 0..10
player_field.field
......@@ -107,16 +108,17 @@ class Action
puts
end
if @from_pos.is_a? Integer
from_pos = if @from_pos.is_a? Integer
if @from_pos > 10
from_pos = @from_pos - 11
@from_pos - 11
else
from_pos = @from_pos
@from_pos
end
elsif @card == :deck
0
else
from_pos = (@card.is_a?(Game_Card) ? from_field.index(@card) : from_field.index{|card|card.card == @card}) || from_field.index{|card|!card.known?}
(@card.is_a?(Game_Card) ? from_field.index(@card) : from_field.index{|card|card.card == @card}) || from_field.index{|card|!card.known?}
end
to_field = case @to_pos
when Integer
player_field.field
......@@ -151,7 +153,7 @@ class Action
end
end
else
card = Game_Card.new(@card)
card = @card == :deck ? player_field.deck.first : Game_Card.new(@card)
puts "似乎凭空产生了卡片?"
p self
end
......
......@@ -10,8 +10,8 @@ class Deck
attr_accessor :side
attr_accessor :extra
attr_accessor :temp
DeckPath = '/media/44CACC1DCACC0D5C/game/yu-gi-oh/deck'
#DeckPath = 'E:/game/yu-gi-oh/deck'
#DeckPath = '/media/44CACC1DCACC0D5C/game/yu-gi-oh/deck'
DeckPath = 'E:/game/yu-gi-oh/deck'
def initialize(main, side=[], extra=[], temp=[])
@main = main
@side = side
......@@ -25,9 +25,10 @@ class Deck
temp = []
now = main
open(File.expand_path(name, DeckPath)) do |file|
while line = file.readline.force_encoding("GBK").encode("UTF-8").chomp!
file.set_encoding "GBK", "UTF-8"
while line = file.readline.chomp!
case line
when /^\[(.+?)\]\#.*\#$/
when /^\[(.+?)\](?:\#.*\#)?$/
now << Card.find($1.to_sym)
when "####"
now = side
......@@ -35,9 +36,8 @@ class Deck
now = extra
when "$$$$"
now = temp
when ""
break
end
break if file.eof?
end
end
self.new(main, side, extra, temp)
......
......@@ -169,6 +169,7 @@ class Action
end
def self.parse(str)
from_player = nil
p str
case str
when /^\[(\d+)\] (.*)$/m
#p $2, $2.match(/(◎|●)→=\[0:0:0\]==回合结束==<(\d+)>=\[\d+\]\n#{FieldFilter}(.*)/)
......
......@@ -124,7 +124,7 @@ class Game_Event
class Action
attr_reader :action
def self.parse(info)
info =~ /(.*)▊▊▊.*?$/
info =~ /(.*)▊▊▊.*?$/m
info = $1
info["◎"] = "●" if info["◎"]
self.new ::Action.parse info
......@@ -205,5 +205,7 @@ class Game_Event
end
end
class QROOMOK < Game_Event
def self.parse(info)
end
end
end
\ No newline at end of file
......@@ -21,8 +21,13 @@ class Iduel < Game
begin
@conn = TCPSocket.open(Server, Port)
@conn.set_encoding "GBK", "UTF-8"
Thread.abort_on_exception = true
@recv = Thread.new { recv @conn.gets(RS) while @conn }
@recv = Thread.new do
begin
recv @conn.gets(RS) while @conn
ensure
exit
end
end
rescue
Game_Event.push Game_Event::Error.new($!.class.to_s, $!.message)
end
......@@ -52,11 +57,12 @@ class Iduel < Game
end
end
def action(action)
send(2, "#{checknum("RMSG", @session)}@#{@key}", "#{action.escape}▊▊▊mycard") if @room.include? @user#TODO:iduel校验字串
send(2, "#{checknum("RMSG", @session)}@#{@key}", "#{action.escape}▊▊▊mycard")# if @room.include? @user#TODO:iduel校验字串
end
def exit
@recv.exit
if @conn
leave
send(11, @key, checknum("ULO", "#{@session}"))
@conn.close
@conn = nil
......@@ -79,7 +85,6 @@ class Iduel < Game
else
info.chomp!(RS)
info.delete!("\r")
#info.encode! "UTF-8", :invalid => :replace, :undef => :replace
puts ">> #{info}"
Game_Event.push Game_Event.parse info
end
......
......@@ -69,6 +69,7 @@ class Scene_Duel < Scene
end
def change_phase(phase)
action Action::ChangePhase.new(true, phase)
$game.refresh
end
def reset
action Action::Reset.new(true)
......
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