1 require 'games/shogi/state'
2 require 'games/shogi/pool'
3 require 'games/shogi/move'
4 require 'games/shogi/validator'
5 require 'games/shogi/policy'
6 require 'plugins/plugin'
13 plugin :name => 'Shogi',
16 :keywords => %w(shogi),
19 attr_reader :size, :state, :board, :pool,
20 :policy, :move, :animator, :validator,
21 :piece, :players, :types, :actions
24 @size = Point.new(9, 9)
25 @state = Factory.new { State.new(board.new, pool, move, piece) }
26 @board = Factory.new { chess.board.component.new size }
30 @validator = Validator
31 @animator = chess.animator
32 @policy = Policy.new(move, validator)
34 @players = [:white, :black]
35 @types = [:pawn, :lance, :horse, :silver,
36 :gold, :bishop, :rook, :king]