bioshogi 0.0.14 → 0.0.17
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/.dumbjump +4 -0
- data/.gitignore +2 -0
- data/.ruby-version +2 -1
- data/A/342/206/222B/342/206/222C/345/233/262/343/201/204.txt +1 -0
- data/A/342/206/222B/342/206/222C/346/210/246/346/263/225.txt +9 -4
- data/Gemfile.lock +57 -47
- data/README.org +3 -3
- data/bioshogi.gemspec +3 -1
- data/credit.org +0 -1
- data/lib/bioshogi/ai/brain.rb +6 -6
- data/lib/bioshogi/analysis/analyzer.rb +67 -9
- data/lib/bioshogi/analysis/analyzer_mod.rb +5 -12
- data/lib/bioshogi/analysis/attack_info.rb +232 -227
- data/lib/bioshogi/analysis/{tech_accessor.rb → basic_accessor.rb} +4 -4
- data/lib/bioshogi/analysis/board_piece_counts_methods.rb +53 -0
- data/lib/bioshogi/analysis/board_piller_methods.rb +10 -32
- data/lib/bioshogi/analysis/core_soldier_place_methods.rb +58 -0
- data/lib/bioshogi/analysis/defense_info.rb +141 -132
- data/lib/bioshogi/analysis/file_normalizer.rb +1 -1
- data/lib/bioshogi/analysis/frequency.rb +372 -311
- data/lib/bioshogi/analysis/note_info.rb +26 -25
- data/lib/bioshogi/analysis/player_methods.rb +28 -0
- data/lib/bioshogi/analysis/rocket_analyzer.rb +45 -58
- data/lib/bioshogi/analysis/shape_info.rb +113 -25
- data/lib/bioshogi/analysis/style_accessor.rb +22 -19
- data/lib/bioshogi/analysis/tactic_hit_turn_table.rb +27 -4
- data/lib/bioshogi/analysis/tactic_hit_turn_table_generator.rb +15 -14
- data/lib/bioshogi/analysis/tactic_info.rb +19 -5
- data/lib/bioshogi/analysis/technique_info.rb +26 -14
- data/lib/bioshogi/analysis/technique_verify_info.rb +800 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/205/250/351/247/222.kif +27 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/220/212/343/202/213/343/201/227/346/241/202.kif +22 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/220/215/344/272/272/343/201/253/345/256/232/350/267/241/343/201/252/343/201/227.kif +4 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/244/247/351/247/222/343/202/263/343/203/263/343/203/227/343/203/252/343/203/274/343/203/210.kif +7 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/244/247/351/247/222/345/205/250/343/203/226/343/203/203/343/203/201.kif +7 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/347/251/264/347/206/212.kif +3 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/200/245/346/210/246.kif +1 -1
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/214/201/344/271/205/346/210/246.kif +6 -3
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/216/211/345/215/230/351/250/216.kif +27 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/347/251/264/347/206/212.kif +2 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/251/264/347/206/212.kif +3 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/251/264/347/206/212/343/201/256/345/247/277/347/204/274/343/201/215.kif +3 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//350/203/214/346/260/264/343/201/256/351/231/243.kif +10 -3
- data/lib/bioshogi/analysis//345/202/231/350/200/203//350/247/222/344/270/215/346/210/220.kif +2 -2
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/203/275/350/251/260/343/202/201.kif +5 -1
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/225/267/346/211/213/346/225/260.kif +13 -3
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/233/252/351/232/240/350/251/260/343/202/201.kif +23 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/247/222/346/237/261.kif +14 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/202/343/201/232/343/201/276/343/202/204/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/204/343/201/241/343/201/224/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/213/343/202/223/343/201/264/343/202/207/343/201/206/345/233/262/343/201/204.kif +5 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/270/343/201/223/343/201/277/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +5 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/252/343/203/252/343/202/270/343/203/212/343/203/253/351/233/201/346/234/250.kif +8 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/252/343/203/274/343/203/253/343/203/211/351/233/201/346/234/250.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/202/256/345/233/262/343/201/204.kif +17 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/202/277/345/233/262/343/201/204.kif +5 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/273/343/203/241/343/203/263/343/203/210/345/233/262/343/201/204.kif +6 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/200/343/202/244/343/203/244/343/203/242/343/203/263/343/203/211/347/276/216/346/277/203.kif +2 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/351/233/201/346/234/250.kif +3 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/234/343/203/212/343/203/263/343/202/266/345/233/262/343/201/204.kif +1 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/237/343/203/254/343/203/213/343/202/242/343/203/240/345/233/262/343/201/204.kif +13 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/242/343/203/216/343/203/254/343/203/274/343/203/253/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/255/344/275/217/343/201/276/343/201/204.kif +3 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/262/343/202/253/343/203/204/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/217/263/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/236/232/347/251/264/347/206/212.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/236/232/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/236/232/351/212/200/345/206/240.kif +9 -4
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/256/265/347/253/257/347/216/211.kif +7 -4
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/350/247/222/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/234/237/345/261/205/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/235/212/344/270/273/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/247/345/261/261/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/247/351/232/205/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/251/345/256/210/351/226/243/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/251/351/207/216/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/257/214/345/243/253/350/246/213/347/237/242/345/200/211.kif +7 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/347/216/211.kif +2 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/347/251/264/347/206/212.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/345/206/240.kif +10 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/347/204/241/345/217/214.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/207/221/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/351/212/200/345/206/240.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/202/252/345/275/242/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/203/223/343/203/203/343/202/2604.kif +6 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +6 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/344/270/262/343/202/253/343/203/204/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/345/233/233/346/236/232/347/276/216/346/277/203.kif +2 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/345/244/251/345/256/210/351/226/243/347/276/216/346/277/203.kif +2 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/347/253/257/347/216/211/351/212/200/345/206/240.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/234/250/346/235/221/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/235/276/345/260/276/346/265/201/347/251/264/347/206/212.kif +2 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/241/220/345/261/261/346/265/201/344/270/255/345/216/237/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/265/201/343/202/214/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/265/201/347/267/232/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/204/241/350/262/254/344/273/273/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/343/203/204/343/203/216/351/212/200/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/347/251/264/347/206/212.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/237/242/345/200/211/346/227/251/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/237/242/345/200/211/347/251/264/347/206/212.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/253/257/347/216/211/351/212/200/345/206/240.kif +2 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/256/261/345/205/245/343/202/212/345/250/230.kif +4 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/264/231/347/251/264/347/206/212.kif +4 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/267/217/347/237/242/345/200/211.kif +8 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/276/216/346/277/203/347/206/212/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/217/261/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/243/217/343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/243/276/345/233/272/343/202/201.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/247/222/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/261/206/350/205/220/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/200/243/347/233/237/347/276/216/346/277/203.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/345/244/232/344/274/235.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/347/204/241/345/217/214.kif +3 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/347/233/276/345/233/262/343/201/204.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/347/276/216/346/277/203.kif +3 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/351/226/200/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/345/206/240.kif +2 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/345/206/240/347/251/264/347/206/212.kif +3 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/345/244/232/344/274/235.kif +8 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/253/213/343/201/241/347/237/242/345/200/211.kif +2 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/276/216/346/277/203.kif +2 -2
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/233/242/343/202/214/351/207/221/347/204/241/345/217/214.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/253/230/347/237/242/345/200/211.kif +1 -1
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/253/230/347/276/216/346/277/203/345/233/262/343/201/204.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2633/343/203/213/351/243/233/346/210/246/346/263/225.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2633/344/272/214/351/212/200/343/202/267/343/202/271/343/203/206/343/203/240.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2636/344/272/214/351/212/200/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/5/346/211/213/347/210/206/345/274/276.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/5/347/255/213/344/275/215/345/217/226/343/202/212.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225/GAVA/350/247/222.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225/U/343/202/277/343/203/274/343/203/263/351/243/233/350/273/212.kif +11 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225/xaby/350/247/222/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2624/344/272/224/346/255/251/346/227/251/344/273/225/346/216/233/343/201/221.kif +2 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2624/345/205/255/351/212/200/345/217/263/346/200/245/346/210/246.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2625/344/270/203/351/207/221/346/210/246/346/263/225.kif +7 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2625/344/272/224/351/276/215/344/270/255/351/243/233/350/273/212.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2633/344/270/211/346/241/202/346/210/246/346/263/225.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2633/344/270/211/350/247/222/345/236/213/347/251/272/344/270/255/346/210/246/346/263/225.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2633/344/270/211/351/207/221/345/236/213/346/227/251/347/271/260/343/202/212/351/212/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2633/344/270/211/351/243/233/346/210/246/346/263/225.kif +9 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2634/344/272/224/350/247/222/346/210/246/346/263/225.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//342/226/2637/344/272/214/351/243/233/344/272/234/346/200/245/346/210/246.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/206/343/201/243/343/201/213/343/202/212/344/270/211/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/215/357/275/215/343/201/215/357/275/215/351/207/221.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/257/343/201/217/345/274/217/345/233/233/351/226/223/351/243/233/350/273/212.kif +10 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/201/270/343/201/252/343/201/241/343/202/207/343/201/223/346/200/245/346/210/246.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/204/343/201/260/343/203/234/343/203/274/343/202/272/346/265/201.kif +3 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/250/343/203/253/343/203/242/346/200/245/346/210/246.kif +15 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/252/343/202/266/343/203/257/343/202/267/343/202/271/343/203/206/343/203/240.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/253/343/203/213/343/202/253/343/203/213/351/207/221.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/253/343/203/213/343/202/253/343/203/213/351/212/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/263/343/203/274/343/203/244/343/203/263/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +9 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/202/255/343/202/262/343/203/263/344/270/255/351/243/233/350/273/212.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/203/252/343/202/264/343/203/252/351/207/221.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/203/252/343/203/251/343/201/256/345/217/263/346/211/213.kif +6 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/264/343/203/252/351/201/225/343/201/204/350/247/222.kif +27 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/267/343/203/247/343/203/274/343/203/200/343/203/263/343/202/252/343/203/252/343/202/270/343/203/212/343/203/253.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/202/267/343/203/247/343/203/274/343/203/200/343/203/263/343/202/267/343/202/271/343/203/206/343/203/240.kif +10 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/204/343/203/216/351/212/200/344/270/255/351/243/233/350/273/212.kif +7 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/204/343/203/216/351/212/200/345/236/213/345/217/263/347/216/211.kif +7 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/210/343/203/236/343/203/233/343/203/274/343/202/257.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/215/343/202/263/345/274/217/343/202/277/343/203/206/346/255/251/345/217/226/343/202/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/203/236/343/203/253/344/270/211/351/226/223/351/243/233/350/273/212.kif +6 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/203/236/343/203/253/345/233/233/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/222/343/203/251/343/203/241/346/210/246/346/263/225.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/240/343/203/252/343/203/244/343/203/252/346/227/251/347/237/263/347/224/260.kif +18 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/241/343/202/244/343/203/211/343/202/267/343/202/271/343/203/206/343/203/240.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/241/343/203/252/343/202/261/343/203/263/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/242/343/203/216/343/203/254/343/203/274/343/203/253/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +8 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/346/211/213/346/220/215/350/247/222/346/217/233/343/202/217/343/202/212.kif +6 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/347/233/264/347/267/232/347/251/264/347/206/212.kif +8 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/346/256/265/345/217/263/347/216/211.kif +7 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/213/347/224/272/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/216/237/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +11 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/216/237/346/265/201/347/233/270/346/216/233/343/201/213/343/202/212.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/216/237/351/243/233/350/273/212.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/272/247/351/243/233/350/273/212.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +10 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/271/205/344/277/235/346/265/201/346/227/251/347/237/263/347/224/260.kif +2 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/271/235/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/271/235/351/226/223/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +4 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2627/345/205/253/351/212/200/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/212/240/350/227/244/346/265/201/350/242/226/351/243/233/350/273/212.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/213/207/346/260/227/346/265/201.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/215/207/347/224/260/345/274/217/347/237/263/347/224/260/346/265/201.kif +20 -71
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/345/267/246/347/276/216/346/277/203.kif +4 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/346/200/245/346/210/246.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/350/266/205/346/200/245/346/210/246.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/217/263/347/216/211.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/220/214/345/236/213/347/237/242/345/200/211.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/233/233/346/211/213/350/247/222.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/234/260/344/270/213/351/211/204/351/243/233/350/273/212.kif +5 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/241/232/347/224/260/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +6 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/244/251/345/275/246/346/265/201/342/226/2626/345/205/255/350/247/222.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/244/251/345/275/246/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/254/211/351/207/216/346/265/201.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/256/244/345/262/241/343/202/267/343/202/271/343/203/206/343/203/240.kif +13 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/257/276/347/237/242/345/200/211/346/200/245/346/210/246/346/243/222/351/212/200.kif +9 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/261/213/346/225/267/346/265/201/344/272/214/346/236/232/351/212/200.kif +3 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/261/213/346/225/267/346/265/201/344/272/214/346/236/232/351/212/200/346/243/222/351/212/200/345/236/213.kif +2 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/267/246/347/276/216/346/277/203/346/200/245/346/210/246.kif +14 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/271/273/346/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/277/205/347/254/221/343/201/262/343/201/243/343/201/213/343/201/221/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/210/270/{351/203/250 → 350/276/272}/346/265/2014/342/206/2223/346/210/246/346/263/225.kif +3 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/345/254/211/351/207/216/346/265/201.kif +4 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/346/235/221/347/224/260/343/202/267/343/202/271/343/203/206/343/203/240.kif +6 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/237/263/347/224/260/346/265/201.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/261/263/351/225/267/347/216/211.kif +4 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/351/254/274/346/256/272/343/201/227.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/234/250/346/235/221/345/256/232/350/267/241.kif +7 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/235/221/347/224/260/343/202/267/343/202/271/343/203/206/343/203/240.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/241/220/345/261/261/346/265/201/343/202/277/343/203/206/346/255/251/346/243/222/351/212/200.kif +5 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/222/351/207/221.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/256/344/270/213/343/202/267/343/202/271/343/203/206/343/203/240.kif +8 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/245/240/346/234/254/345/274/217/347/237/263/347/224/260/346/265/201.kif +4 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/245/265/351/231/220/346/227/251/347/271/260/343/202/212/351/212/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/250/252/346/255/251/345/217/226/343/202/212.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/270/205/351/207/216/346/265/201/345/262/220/351/230/234/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/216/211/351/240/255/344/275/215/345/217/226/343/202/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/216/211/351/240/255/351/212/200.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/346/250/252/346/255/251/345/217/226/343/202/212.kif +2 -6
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/347/255/213/351/201/225/343/201/204/350/247/222.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/234/237/351/203/250/346/265/201.kif +5 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/342/226/2623/344/270/203/351/212/200/346/210/246/346/263/225.kif +5 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/344/270/255/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/346/243/222/351/212/200.kif +2 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/263/347/224/260/346/265/201.kif +135 -55
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/263/347/224/260/346/265/201/346/234/254/347/265/204/343/201/277.kif +60 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/250/262/345/272/255/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/251/264/350/247/222/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/251/264/350/247/222/346/210/246/346/263/225.kif +4 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/253/213/347/237/263/346/265/201/345/233/233/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/253/271/351/203/250/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/255/213/351/201/225/343/201/204/350/247/222.kif +5 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/261/263/351/225/267/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +17 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/263/270/350/260/267/346/265/201/345/217/263/347/216/211.kif +8 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/276/275/347/224/237/345/274/217/350/242/226/351/243/233/350/273/212.kif +8 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/276/275/347/224/237/346/265/201/345/217/263/347/216/211.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/200/200/351/276/215/343/201/262/343/201/255/343/202/212/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/200/200/351/276/215/345/233/233/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/205/260/346/216/233/343/201/221/351/212/200.kif +1 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/213/261/343/201/241/343/202/203/343/202/223/346/265/201/344/270/255/351/243/233/350/273/212.kif +8 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/213/261/346/230/245/346/265/201/343/201/213/343/201/276/343/201/204/343/201/237/343/201/241/346/210/246/346/263/225.kif +14 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/213/261/346/230/245/346/265/201/343/202/253/343/203/241/343/203/254/343/202/252/343/203/263.kif +6 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/217/205/344/272/225/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/217/234/343/200/205/346/262/263/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +4 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/227/244/346/243/256/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +2 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/242/226/351/243/233/350/273/212.kif +12 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/243/217/343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/344/272/244/346/217/233/346/214/257/343/202/212/351/243/233/350/273/212.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/345/217/263/347/216/211.kif +6 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/346/227/251/347/271/260/343/202/212/351/212/200.kif +11 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/346/243/222/351/212/200.kif +2 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/350/205/260/346/216/233/343/201/221/351/212/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/346/217/233/343/202/217/343/202/212/350/205/260/346/216/233/343/201/221/351/212/200/346/227/247/345/236/213.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/351/240/255/346/255/251/346/210/246/346/263/225.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/266/205/346/200/245/346/210/246.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/200/206/346/243/222/351/212/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/201/240/345/261/261/346/265/201.kif +5 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/203/275/346/210/220/346/265/201/342/226/2633/344/270/200/351/207/221.kif +24 -11
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/346/262/242/346/265/201.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/347/204/241/345/217/214/346/200/245/346/210/246.kif +3 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/351/212/200/346/251/213.kif +2 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/212/200/351/233/262/351/233/200.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/214/206/345/210/200/346/210/246/346/263/225.kif +54 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/230/252/347/224/260/346/265/2012/346/211/213/347/233/256/342/226/2639/345/233/233/346/255/251.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/230/252/347/224/260/346/265/201/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +4 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/230/277/344/271/205/346/264/245/346/265/201/346/200/245/346/210/246/347/237/242/345/200/211.kif +5 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/233/200/345/210/272/343/201/227.kif +8 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/233/201/346/234/250/345/217/263/347/216/211.kif +8 -3
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/242/250/350/273/212.kif +5 -2
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/243/233/351/250/250/343/201/256/344/270/255/351/243/233/350/273/212/345/220/210/346/216/214/351/200/240/343/202/212.kif +2 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/253/230/347/224/260/346/265/201/345/267/246/347/216/211.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/254/274/345/205/255/346/265/201/343/201/251/343/201/243/343/201/213/343/202/223/351/243/233/350/273/212.kif +54 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/254/274/346/256/272/343/201/227/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/255/224/347/225/214/345/233/233/351/226/223/351/243/233/350/273/212.kif +1 -1
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/267/272/345/256/256/345/256/232/350/267/241.kif +2 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213/2/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +1 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/237/343/201/215/343/201/256/346/255/251.kif +27 -9
- data/lib/bioshogi/analysis//346/211/213/347/255/213//343/203/221/343/203/263/343/203/204/343/202/222/350/204/261/343/201/220.kif +11 -11
- data/lib/bioshogi/analysis//346/211/213/347/255/213//344/270/213/346/256/265/343/201/256/351/246/231.kif +26 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//345/260/273/351/207/221.kif +28 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//345/261/205/351/243/233/350/273/212/343/201/256/347/250/216/351/207/221.kif +15 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//346/216/247/343/201/210/343/201/256/346/241/202.kif +23 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//346/255/251/351/240/255/343/201/256/346/241/202.kif +2 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213//347/253/257/347/216/211/343/201/253/343/201/257/347/253/257/346/255/251.kif +12 -14
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/202/251/351/207/221.kif +21 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/202/251/351/212/200.kif +21 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/205/271/351/207/221.kif +25 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/205/271/351/212/200.kif +2 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/243/276/351/207/221.kif +33 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/243/276/351/212/200.kif +21 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//350/267/263/343/201/255/351/201/225/343/201/204/343/201/256/346/241/202.kif +27 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/200/243/346/211/223/343/201/256/346/255/251.kif +2 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/201/240/350/246/213/343/201/256/350/247/222.kif +16 -6
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/207/221/351/240/255/343/201/256/346/241/202.kif +30 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/212/200/343/201/260/343/201/225/343/201/277.kif +1 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/212/200/345/206/240/343/201/256/345/260/217/351/203/250/345/261/213.kif +2 -1
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/240/255/351/207/221.kif +21 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/240/255/351/212/200.kif +21 -0
- data/lib/bioshogi/analysis.rb +4 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_club24.png +0 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_modern.png +0 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_paper.png +0 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_piyo.png +0 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_real.png +0 -0
- data/lib/bioshogi/assets/images/color_theme_preview/is_color_theme_shape.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/BS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/README.org +20 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/WS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/nureyon/convert.rb +43 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BB0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BB1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BG0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BK0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BL0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BL1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BN0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BN1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BP0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BP1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BR0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BR1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BS0.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BS1.svg +11 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/BX0.svg +12 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/README.org +5 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/convert.sh +15 -0
- data/lib/bioshogi/assets/images/piece/nureyon/original/style.rb +26 -0
- data/lib/bioshogi/assets/images/piece/portella/BB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/BS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/WS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/portella/convert.rb +89 -0
- data/lib/bioshogi/board/basic.rb +2 -1
- data/lib/bioshogi/board/csa_formatter.rb +2 -2
- data/lib/bioshogi/board/kakinoki_formatter.rb +5 -5
- data/lib/bioshogi/board/reader_methods.rb +8 -4
- data/lib/bioshogi/board_parser/kakinoki_board_parser.rb +2 -2
- data/lib/bioshogi/container/checkmate_yomiage.rb +1 -1
- data/lib/bioshogi/container/core_methods.rb +4 -4
- data/lib/bioshogi/counter_hash.rb +34 -0
- data/lib/bioshogi/dimension/base.rb +49 -10
- data/lib/bioshogi/dimension/column.rb +131 -0
- data/lib/bioshogi/dimension/module_methods.rb +19 -20
- data/lib/bioshogi/dimension/row.rb +128 -0
- data/lib/bioshogi/extreme_validator.rb +1 -1
- data/lib/bioshogi/formatter/animation/animation_mp4_builder.rb +17 -14
- data/lib/bioshogi/formatter/animation/ffmpeg_support.rb +14 -1
- data/lib/bioshogi/formatter/core.rb +9 -9
- data/lib/bioshogi/formatter/skill_embed.rb +45 -16
- data/lib/bioshogi/formatter/sugatayaki_validator.rb +2 -2
- data/lib/bioshogi/hand/drop.rb +1 -1
- data/lib/bioshogi/hand/move.rb +6 -6
- data/lib/bioshogi/input_adapter/ki2_adapter.rb +10 -10
- data/lib/bioshogi/input_adapter/shared_validation.rb +1 -1
- data/lib/bioshogi/location.rb +22 -2
- data/lib/bioshogi/official_formatter.rb +38 -38
- data/lib/bioshogi/order_info.rb +5 -3
- data/lib/bioshogi/parser/base.rb +4 -4
- data/lib/bioshogi/parser/pi.rb +11 -0
- data/lib/bioshogi/piece/piece_vector.rb +16 -10
- data/lib/bioshogi/piece.rb +17 -9
- data/lib/bioshogi/piller_cop.rb +47 -0
- data/lib/bioshogi/place.rb +159 -62
- data/lib/bioshogi/player/other_methods.rb +16 -33
- data/lib/bioshogi/player/piece_box_methods.rb +1 -1
- data/lib/bioshogi/player/soldier_methods.rb +12 -6
- data/lib/bioshogi/player.rb +1 -0
- data/lib/bioshogi/player_executor/base.rb +3 -2
- data/lib/bioshogi/screen_image/color_theme_info.rb +22 -7
- data/lib/bioshogi/screen_image/core_methods.rb +37 -23
- data/lib/bioshogi/screen_image/helper.rb +2 -2
- data/lib/bioshogi/screen_image/layer_methods.rb +6 -3
- data/lib/bioshogi/screen_image/nureyon_image_info.rb +43 -0
- data/lib/bioshogi/screen_image/pentagon.rb +2 -2
- data/lib/bioshogi/screen_image/piece_image_info.rb +26 -0
- data/lib/bioshogi/screen_image/soldier_methods.rb +16 -14
- data/lib/bioshogi/screen_image/soldier_model_methods.rb +14 -0
- data/lib/bioshogi/screen_image/stand.rb +10 -7
- data/lib/bioshogi/soldier/technique_matcher_methods.rb +57 -0
- data/lib/bioshogi/soldier.rb +15 -79
- data/lib/bioshogi/soldier_walker.rb +1 -1
- data/lib/bioshogi/turn_info.rb +2 -2
- data/lib/bioshogi/v/preset_vectors.rb +129 -0
- data/lib/bioshogi/v.rb +4 -2
- data/lib/bioshogi/version.rb +1 -1
- data/lib/bioshogi.rb +4 -1
- data//347/275/256/343/201/215/346/217/233/343/201/210/346/216/250/345/245/250.txt +1 -1
- metadata +179 -206
- data/lib/bioshogi/analysis/technique_matcher_info.rb +0 -810
- data/lib/bioshogi/assets/audios/any.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/any.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/any.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/any.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/any.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/any.band/Media/Audio Files/Strategy.caf +0 -0
- data/lib/bioshogi/assets/audios/any.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/any.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Media/Audio Files/Strategy.caf +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/breakbeat_long_strip.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/china_like.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/china_like.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/digit_blast_layers.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/foo.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Media/Audio Files/Strategy.caf +0 -0
- data/lib/bioshogi/assets/audios/foo.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/foo.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/headspin_long.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/headspin_long.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/loop_bgm_i.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/mastermind.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/mastermind.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/Autosave/.dummy +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/Autosave/2021-08-19 05:25:23Z.displayData +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/Autosave/2021-08-19 05:25:23Z.eventData +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/Autosave/2021-08-19 05:25:23Z.songData +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/positive_think.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/stg_like_type1.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/strategy.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Media/Audio Files/Strategy.caf +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/strategy.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/test1.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/test1.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/test1.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/test1.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/test1.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/test1.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/test1.band/projectData +0 -3183
- data/lib/bioshogi/assets/audios/test2.band/Alternatives/000/DisplayState.plist +0 -0
- data/lib/bioshogi/assets/audios/test2.band/Alternatives/000/DisplayStateArchive +0 -0
- data/lib/bioshogi/assets/audios/test2.band/Alternatives/000/MetaData.plist +0 -0
- data/lib/bioshogi/assets/audios/test2.band/Alternatives/000/ProjectData +0 -0
- data/lib/bioshogi/assets/audios/test2.band/Alternatives/000/WindowImage.jpg +0 -0
- data/lib/bioshogi/assets/audios/test2.band/Resources/ProjectInformation.plist +0 -0
- data/lib/bioshogi/assets/audios/test2.band/projectData +0 -3183
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Black.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Bold.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-ExtraBold.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Light.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Medium.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Regular.ttf +0 -0
- data/lib/bioshogi/assets/fonts/MPLUSRounded1c-Thin.ttf +0 -0
- data/lib/bioshogi/assets/fonts/NewTegomin-Regular.ttf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Black.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Bold.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Light.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Medium.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Regular.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSansJP-Thin.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-Black.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-Bold.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-ExtraLight.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-Light.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-Medium.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-Regular.otf +0 -0
- data/lib/bioshogi/assets/fonts/NotoSerifJP-SemiBold.otf +0 -0
- data/lib/bioshogi/assets/fonts/YuseiMagic-Regular.ttf +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/BX0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WB0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WB1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WG0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WK0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WL0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WL1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WN0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WN1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WP0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WP1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WR0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WR1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WS0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WS1.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/WX0.png +0 -0
- data/lib/bioshogi/assets/images/piece/Portella/convert.sh +0 -32
- data/lib/bioshogi/board/piece_counts_methods.rb +0 -43
- data/lib/bioshogi/dimension/place_x.rb +0 -27
- data/lib/bioshogi/dimension/place_y.rb +0 -57
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/README.org +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0FU.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0GI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0GY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0HI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0KA.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0KE.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0KI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0KI.svg +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0KY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0NG.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0NK.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0NY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0OU.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0RY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0TO.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/0UM.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1FU.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1GI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1GY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1HI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1KA.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1KE.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1KI.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1KY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1NG.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1NK.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1NY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1OU.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1RY.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1TO.png +0 -0
- /data/lib/bioshogi/assets/images/piece/{Portella → portella}/original/1UM.png +0 -0
@@ -101,28 +101,36 @@ module Bioshogi
|
|
101
101
|
@screen_image_renderer = ScreenImage.renderer(@container, params)
|
102
102
|
|
103
103
|
if factory_method_key == "is_factory_method_rmagick"
|
104
|
-
@progress_cop = ProgressCop.new(
|
104
|
+
@progress_cop = ProgressCop.new(begin_pages + 1 + @formatter.pi.move_infos.size + end_pages + 7, ¶ms[:progress_callback])
|
105
105
|
|
106
106
|
begin
|
107
107
|
list = Magick::ImageList.new
|
108
108
|
|
109
109
|
if v = params[:cover_text].presence
|
110
|
-
|
111
|
-
|
110
|
+
cover_image = CoverImage.renderer(text: v, **params.slice(:bottom_text, :width, :height)).render
|
111
|
+
begin_pages.times do |i|
|
112
|
+
@progress_cop.next_step("表紙描画 #{i}/#{begin_pages}")
|
113
|
+
tob("表紙描画 #{i}/#{begin_pages}") { list << cover_image.copy }
|
114
|
+
end
|
112
115
|
end
|
113
116
|
|
114
117
|
@progress_cop.next_step("初期配置")
|
115
118
|
list << @screen_image_renderer.next_build
|
119
|
+
|
120
|
+
# 駒の動き
|
116
121
|
@formatter.pi.move_infos.each.with_index do |e, i|
|
117
122
|
@progress_cop.next_step("(#{i}/#{@formatter.pi.move_infos.size}) #{e[:input]}")
|
118
123
|
@container.execute(e[:input])
|
119
124
|
list << @screen_image_renderer.next_build
|
120
125
|
logger.info { "move: #{i} / #{@formatter.pi.move_infos.size}" } if i.modulo(10).zero?
|
121
126
|
end
|
127
|
+
|
128
|
+
# 終了図
|
122
129
|
end_pages.times do |i|
|
123
130
|
@progress_cop.next_step("終了図 #{i}/#{end_pages}")
|
124
131
|
tob("終了図 #{i}/#{end_pages}") { list << @screen_image_renderer.last_rendered_image.copy }
|
125
132
|
end
|
133
|
+
|
126
134
|
@progress_cop.next_step("mp4 生成")
|
127
135
|
heavy_tob(:write) do
|
128
136
|
list.write("_output0.mp4") # staging ではここで例外も出さずに落ちることがある
|
@@ -143,23 +151,18 @@ module Bioshogi
|
|
143
151
|
end
|
144
152
|
|
145
153
|
if factory_method_key == "is_factory_method_ffmpeg"
|
146
|
-
|
147
|
-
@progress_cop = ProgressCop.new(1 + 1 + @formatter.pi.move_infos.size + end_pages + 1 + 6, ¶ms[:progress_callback])
|
154
|
+
@progress_cop = ProgressCop.new(begin_pages + 1 + @formatter.pi.move_infos.size + end_pages + 1 + 6, ¶ms[:progress_callback])
|
148
155
|
|
149
|
-
logger.info { "[TRACE] #{__FILE__}:#{__LINE__}" }
|
150
156
|
if v = params[:cover_text].presence
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
157
|
+
cover_image = CoverImage.renderer(text: v, **params.slice(:bottom_text, :width, :height)).render
|
158
|
+
begin_pages.times do |i|
|
159
|
+
@progress_cop.next_step("表紙描画 #{i}/#{begin_pages}")
|
160
|
+
tob("表紙描画 #{i}/#{begin_pages}") { cover_image.write(sfg.next) }
|
161
|
+
end
|
156
162
|
end
|
157
163
|
|
158
|
-
logger.info { "[TRACE] #{__FILE__}:#{__LINE__}" }
|
159
164
|
@progress_cop.next_step("初期配置")
|
160
|
-
logger.info { "[TRACE] #{__FILE__}:#{__LINE__}" }
|
161
165
|
tob("初期配置") { @screen_image_renderer.next_build.write(sfg.next) }
|
162
|
-
logger.info { "[TRACE] #{__FILE__}:#{__LINE__}" }
|
163
166
|
|
164
167
|
@formatter.pi.move_infos.each.with_index do |e, i|
|
165
168
|
@progress_cop.next_step("(#{i}/#{@formatter.pi.move_infos.size}) #{e[:input]}")
|
@@ -15,8 +15,13 @@ module Bioshogi
|
|
15
15
|
super.merge({
|
16
16
|
# 全体
|
17
17
|
:page_duration => 1.0, # 1手N秒 10000/60 = 166.666666667 なので 0.0166666666667 を指定すると 60 FPS になる
|
18
|
-
|
18
|
+
|
19
|
+
:begin_pages => 1, # 表紙を表示するフレーム数。空なら begin_duration / page_duration
|
20
|
+
:begin_duration => nil, # 表紙をN秒表示する (こちらを有効にするには同時に begin_pages を nil すること)
|
21
|
+
|
19
22
|
:end_pages => nil, # 終了図追加フレーム数。空なら end_duration / page_duration
|
23
|
+
:end_duration => 0, # 終了図をN秒表示する
|
24
|
+
|
20
25
|
:progress_callback => nil, # 進捗通知用
|
21
26
|
:cover_text => nil, # 表紙(nilなら作らない)
|
22
27
|
:bottom_text => nil, # 表紙の右下に小さく表示する1行
|
@@ -64,6 +69,14 @@ module Bioshogi
|
|
64
69
|
end
|
65
70
|
end
|
66
71
|
|
72
|
+
def begin_pages
|
73
|
+
if v = params[:begin_pages]
|
74
|
+
v.to_i
|
75
|
+
else
|
76
|
+
params[:begin_duration].fdiv(page_duration).ceil
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
67
80
|
# 最後の局面を追加で足す回数
|
68
81
|
# これを設定しても最終的な秒数は不明なため基本指定せず、指定した end_duration から算出した方がよい
|
69
82
|
# |------------------+------------------------+-----------+-----+----------------|
|
@@ -76,10 +76,10 @@ module Bioshogi
|
|
76
76
|
def container_new
|
77
77
|
container_class.new.tap do |e|
|
78
78
|
e.params.update(@parser_options.slice(*[
|
79
|
-
:
|
80
|
-
:
|
81
|
-
:
|
82
|
-
:
|
79
|
+
:analysis_feature,
|
80
|
+
:analysis_technique_feature,
|
81
|
+
:ki2_function,
|
82
|
+
:validate_feature,
|
83
83
|
:validate_double_pawn_skip,
|
84
84
|
:validate_warp_skip,
|
85
85
|
]))
|
@@ -90,10 +90,10 @@ module Bioshogi
|
|
90
90
|
def container_for_image
|
91
91
|
container = Container::Basic.new
|
92
92
|
container.params.update({
|
93
|
-
:
|
94
|
-
:
|
95
|
-
:
|
96
|
-
:
|
93
|
+
:analysis_feature => false,
|
94
|
+
:analysis_technique_feature => false,
|
95
|
+
:ki2_function => false,
|
96
|
+
:validate_feature => false,
|
97
97
|
})
|
98
98
|
container_init(container) # FIXME: これ、必要ない SFEN を生成したりして遅い
|
99
99
|
container
|
@@ -163,7 +163,7 @@ module Bioshogi
|
|
163
163
|
|
164
164
|
def container_run_all(container)
|
165
165
|
Runner.new(self, container).call
|
166
|
-
if @parser_options[:
|
166
|
+
if @parser_options[:analysis_feature]
|
167
167
|
SkillEmbed.new(self, container).call
|
168
168
|
StyleEmbed.new(self, container).call
|
169
169
|
end
|
@@ -15,6 +15,9 @@ module Bioshogi
|
|
15
15
|
|
16
16
|
def call
|
17
17
|
miyakodume_check
|
18
|
+
tsurushikei_check
|
19
|
+
settintsume_check
|
20
|
+
|
18
21
|
meijin_judgement # 力戦より前
|
19
22
|
rikisen_judgement
|
20
23
|
|
@@ -88,21 +91,15 @@ module Bioshogi
|
|
88
91
|
end
|
89
92
|
|
90
93
|
def miyakodume_check
|
91
|
-
if
|
92
|
-
if
|
93
|
-
if
|
94
|
-
if
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
# 最後の手にも入れておく
|
101
|
-
if hand_log = @container.hand_logs.last
|
102
|
-
hand_log.skill_set.list_push(tag)
|
103
|
-
end
|
104
|
-
end
|
105
|
-
end
|
94
|
+
if @xparser.pi.saigoha_tsumi_p
|
95
|
+
if soldier = @container.board["55"]
|
96
|
+
if soldier.piece.key == :king
|
97
|
+
if @container.lose_player.location == soldier.location
|
98
|
+
tag = Analysis::NoteInfo["都詰め"]
|
99
|
+
@container.win_player.skill_set.list_push(tag)
|
100
|
+
# 最後の手にも入れておく
|
101
|
+
if hand_log = @container.hand_logs.last
|
102
|
+
hand_log.skill_set.list_push(tag)
|
106
103
|
end
|
107
104
|
end
|
108
105
|
end
|
@@ -110,6 +107,38 @@ module Bioshogi
|
|
110
107
|
end
|
111
108
|
end
|
112
109
|
|
110
|
+
def settintsume_check
|
111
|
+
if @xparser.pi.saigoha_tsumi_p
|
112
|
+
found = ["11", "91", "19", "99"].any? do |e|
|
113
|
+
if soldier = @container.board[e]
|
114
|
+
if soldier.piece.key == :king
|
115
|
+
@container.lose_player.location == soldier.location
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
if found
|
120
|
+
tag = Analysis::NoteInfo["雪隠詰め"]
|
121
|
+
@container.win_player.skill_set.list_push(tag)
|
122
|
+
# 最後の手にも入れておく
|
123
|
+
if hand_log = @container.hand_logs.last
|
124
|
+
hand_log.skill_set.list_push(tag)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
def tsurushikei_check
|
131
|
+
if @xparser.pi.saigoha_tsumi_p
|
132
|
+
if hand_log = @container.hand_logs.last
|
133
|
+
tag = Analysis::NoteInfo["吊るし桂"]
|
134
|
+
if hand_log.soldier.piece.key == :knight
|
135
|
+
@container.win_player.skill_set.list_push(tag) # 勝者に入れておく
|
136
|
+
hand_log.skill_set.list_push(tag) # 最後の手にも入れておく
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
140
|
+
end
|
141
|
+
|
113
142
|
def ainyugyoku_judgement
|
114
143
|
if @container.players.all? { |e| e.skill_set.has_skill?(Analysis::NoteInfo["入玉"]) }
|
115
144
|
@container.players.each do |player|
|
@@ -181,7 +210,7 @@ module Bioshogi
|
|
181
210
|
if @container.turn_info.display_turn >= MIN_TURN
|
182
211
|
if win_side_location
|
183
212
|
player = @container.player_at(win_side_location)
|
184
|
-
if player.
|
213
|
+
if player.strong_piece_have_count.zero? # 最後の状態でも全ブッチ状態なら
|
185
214
|
if player.skill_set.has_skill?(Analysis::NoteInfo["大駒全ブッチ"]) # 途中、大駒全ブッチしいて (←これがないと 相入玉.kif でも入ってしまう)
|
186
215
|
player.skill_set.list_push(Analysis::NoteInfo["背水の陣"])
|
187
216
|
end
|
@@ -40,7 +40,7 @@ module Bioshogi
|
|
40
40
|
unless anaguma_formation? # 相手が穴熊状態か?
|
41
41
|
return
|
42
42
|
end
|
43
|
-
# unless
|
43
|
+
# unless strong_piece_completed? # 大駒コンプリートしている? → overwhelming_score? の方が汎用的
|
44
44
|
# return
|
45
45
|
# end
|
46
46
|
unless win_player.overwhelming_score? # 自分が圧倒的な戦力を持っているか?
|
@@ -84,7 +84,7 @@ module Bioshogi
|
|
84
84
|
if flop
|
85
85
|
place = place.flop
|
86
86
|
end
|
87
|
-
place = place.
|
87
|
+
place = place.white_then_flip(lose_side_location)
|
88
88
|
if soldier = container.board[place]
|
89
89
|
if soldier.location == lose_side_location
|
90
90
|
soldier
|
data/lib/bioshogi/hand/drop.rb
CHANGED
data/lib/bioshogi/hand/move.rb
CHANGED
@@ -35,8 +35,8 @@ module Bioshogi
|
|
35
35
|
end
|
36
36
|
|
37
37
|
# 成れる状態だった?
|
38
|
-
def
|
39
|
-
origin_soldier.
|
38
|
+
def state_where_it_can_become_promote?
|
39
|
+
origin_soldier.tsugini_nareru_on?(soldier.place)
|
40
40
|
end
|
41
41
|
|
42
42
|
# 人間には読みやすいがパースは大変
|
@@ -84,14 +84,14 @@ module Bioshogi
|
|
84
84
|
end
|
85
85
|
|
86
86
|
def type
|
87
|
-
if
|
87
|
+
if state_where_it_can_become_promote?
|
88
88
|
if promote_trigger?
|
89
|
-
|
89
|
+
:t_promote_on
|
90
90
|
else
|
91
|
-
|
91
|
+
:t_promote_throw
|
92
92
|
end
|
93
93
|
else
|
94
|
-
|
94
|
+
:t_move
|
95
95
|
end
|
96
96
|
end
|
97
97
|
|
@@ -86,13 +86,13 @@ module Bioshogi
|
|
86
86
|
if md = v.match(/[左右]/)
|
87
87
|
if piece.brave?
|
88
88
|
m = {"左" => :first, "右" => :last}.fetch(md.to_s)
|
89
|
-
m =
|
90
|
-
list = list.sort_by { |e| e.place.
|
89
|
+
m = white_then_flip(m)
|
90
|
+
list = list.sort_by { |e| e.place.column.value }.send(m, 1)
|
91
91
|
else
|
92
92
|
m = {"左" => :>, "右" => :<}.fetch(md.to_s)
|
93
|
-
m =
|
93
|
+
m = white_then_flip(m)
|
94
94
|
list = list.find_all do |e|
|
95
|
-
place.
|
95
|
+
place.column.value.send(m, e.place.column.value)
|
96
96
|
end
|
97
97
|
end
|
98
98
|
end
|
@@ -103,9 +103,9 @@ module Bioshogi
|
|
103
103
|
if v = up_down
|
104
104
|
if md = v.match(/[上引]/)
|
105
105
|
m = {"上" => :<, "引" => :>}.fetch(md.to_s)
|
106
|
-
m =
|
106
|
+
m = white_then_flip(m)
|
107
107
|
list = list.find_all do |e|
|
108
|
-
place.
|
108
|
+
place.row.value.send(m, e.place.row.value)
|
109
109
|
end
|
110
110
|
end
|
111
111
|
end
|
@@ -115,7 +115,7 @@ module Bioshogi
|
|
115
115
|
if list.size >= 2
|
116
116
|
if v = up_down
|
117
117
|
if v.include?("寄")
|
118
|
-
list = list.find_all { |e| e.place.
|
118
|
+
list = list.find_all { |e| e.place.row == place.row }
|
119
119
|
end
|
120
120
|
end
|
121
121
|
end
|
@@ -123,9 +123,9 @@ module Bioshogi
|
|
123
123
|
# 真下にあるもの
|
124
124
|
if list.size >= 2
|
125
125
|
if one_up?
|
126
|
-
y = place.
|
126
|
+
y = place.row.value + player.location.which_value(1, -1)
|
127
127
|
list = list.find_all { |e|
|
128
|
-
e.place.
|
128
|
+
e.place.column == place.column && e.place.row.value == y
|
129
129
|
}
|
130
130
|
end
|
131
131
|
end
|
@@ -144,7 +144,7 @@ module Bioshogi
|
|
144
144
|
!promoted && !suffix_exist? && candidate_soldiers.empty?
|
145
145
|
end
|
146
146
|
|
147
|
-
def
|
147
|
+
def white_then_flip(key)
|
148
148
|
if player.location.key == :white
|
149
149
|
key = self.class.flip_table[key]
|
150
150
|
end
|
data/lib/bioshogi/location.rb
CHANGED
@@ -12,8 +12,8 @@ module Bioshogi
|
|
12
12
|
class Location
|
13
13
|
include ApplicationMemoryRecord
|
14
14
|
memory_record [
|
15
|
-
{ key: :black, name: "▲", pentagon_mark: "☗", equality_name: "先手", handicap_name: "下手", equality_yomiage: "先手", handicap_yomiage: "したて", flip_mark: "▼", varrow: " ", csa_sign: "+", angle: 0, other_match_chars: ["☗"], to_sfen: "b", normalize_key: :itself,
|
16
|
-
{ key: :white, name: "△", pentagon_mark: "☖", equality_name: "後手", handicap_name: "上手", equality_yomiage: "後手", handicap_yomiage: "うわて", flip_mark: "▽", varrow: "v", csa_sign: "-", angle: 180, other_match_chars: ["☖"], to_sfen: "w", normalize_key: :flip,
|
15
|
+
{ key: :black, name: "▲", pentagon_mark: "☗", equality_name: "先手", handicap_name: "下手", equality_yomiage: "先手", handicap_yomiage: "したて", flip_mark: "▼", varrow: " ", csa_sign: "+", angle: 0, other_match_chars: ["☗"], to_sfen: "b", normalize_key: :itself, sign_dir: +1, checkmate_yomiage: "せめかた", },
|
16
|
+
{ key: :white, name: "△", pentagon_mark: "☖", equality_name: "後手", handicap_name: "上手", equality_yomiage: "後手", handicap_yomiage: "うわて", flip_mark: "▽", varrow: "v", csa_sign: "-", angle: 180, other_match_chars: ["☖"], to_sfen: "w", normalize_key: :flip, sign_dir: -1, checkmate_yomiage: "gyokugata", },
|
17
17
|
]
|
18
18
|
|
19
19
|
class << self
|
@@ -118,6 +118,26 @@ module Bioshogi
|
|
118
118
|
end
|
119
119
|
end
|
120
120
|
|
121
|
+
################################################################################
|
122
|
+
|
123
|
+
def top
|
124
|
+
Dimension::Row.top.white_then_flip(self)
|
125
|
+
end
|
126
|
+
|
127
|
+
def bottom
|
128
|
+
Dimension::Row.bottom.white_then_flip(self)
|
129
|
+
end
|
130
|
+
|
131
|
+
def left
|
132
|
+
Dimension::Column.left.white_then_flip(self)
|
133
|
+
end
|
134
|
+
|
135
|
+
def right
|
136
|
+
Dimension::Column.right.white_then_flip(self)
|
137
|
+
end
|
138
|
+
|
139
|
+
################################################################################
|
140
|
+
|
121
141
|
private
|
122
142
|
|
123
143
|
def call_name_method_name(handicap)
|
@@ -22,7 +22,7 @@ module Bioshogi
|
|
22
22
|
@hand_log = hand_log
|
23
23
|
|
24
24
|
unless candidate_soldiers
|
25
|
-
raise BioshogiError, "
|
25
|
+
raise BioshogiError, "ki2_function オプションが有効になっていないため KI2 の特殊な移動表記を作れません"
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
@@ -40,7 +40,7 @@ module Bioshogi
|
|
40
40
|
s << @options[:separator]
|
41
41
|
end
|
42
42
|
|
43
|
-
if type ==
|
43
|
+
if type == :t_drop
|
44
44
|
s << piece_name
|
45
45
|
# 日本将棋連盟 棋譜の表記方法
|
46
46
|
# https://www.shogi.or.jp/faq/kihuhyouki.html
|
@@ -53,15 +53,15 @@ module Bioshogi
|
|
53
53
|
if @options[:force_drop] || !candidate_soldiers.empty?
|
54
54
|
s << kw("打")
|
55
55
|
end
|
56
|
-
elsif type ==
|
56
|
+
elsif type == :t_promote_on
|
57
57
|
s << piece_name
|
58
58
|
s << motion
|
59
59
|
s << kw("成")
|
60
|
-
elsif type ==
|
60
|
+
elsif type == :t_promote_throw
|
61
61
|
s << piece_name
|
62
62
|
s << motion
|
63
63
|
s << kw("不成") # or "生"
|
64
|
-
elsif type ==
|
64
|
+
elsif type == :t_move
|
65
65
|
s << soldier_name
|
66
66
|
s << motion
|
67
67
|
else
|
@@ -80,26 +80,26 @@ module Bioshogi
|
|
80
80
|
|
81
81
|
def to_debug_hash
|
82
82
|
{
|
83
|
-
:place_from
|
84
|
-
:place_to
|
85
|
-
:candidate_soldiers
|
86
|
-
:koreru_c
|
87
|
-
:_migi_idou
|
88
|
-
:_hidari_idou
|
89
|
-
:_ue_idou
|
90
|
-
:_shita_idou
|
91
|
-
:_hidari_kara_c
|
92
|
-
:_migi_kara_c
|
93
|
-
:yoreru_c
|
94
|
-
:agareru_c
|
95
|
-
:sagareru_c
|
96
|
-
:shita_y
|
97
|
-
:_tx
|
98
|
-
:_ty
|
99
|
-
:_ox
|
100
|
-
:_oy
|
101
|
-
:_xr
|
102
|
-
:_yr
|
83
|
+
:place_from => place_from,
|
84
|
+
:place_to => place_to,
|
85
|
+
:candidate_soldiers => candidate_soldiers.collect(&:name),
|
86
|
+
:koreru_c => koreru_c,
|
87
|
+
:_migi_idou => _migi_idou?,
|
88
|
+
:_hidari_idou => _hidari_idou?,
|
89
|
+
:_ue_idou => _ue_idou?,
|
90
|
+
:_shita_idou => _shita_idou?,
|
91
|
+
:_hidari_kara_c => _hidari_kara_c,
|
92
|
+
:_migi_kara_c => _migi_kara_c,
|
93
|
+
:yoreru_c => yoreru_c,
|
94
|
+
:agareru_c => agareru_c,
|
95
|
+
:sagareru_c => sagareru_c,
|
96
|
+
:shita_y => shita_y,
|
97
|
+
:_tx => _tx,
|
98
|
+
:_ty => _ty,
|
99
|
+
:_ox => _ox,
|
100
|
+
:_oy => _oy,
|
101
|
+
:_xr => _xr,
|
102
|
+
:_yr => _yr,
|
103
103
|
}
|
104
104
|
end
|
105
105
|
|
@@ -281,37 +281,37 @@ module Bioshogi
|
|
281
281
|
|
282
282
|
# 左からこれる駒の数
|
283
283
|
def _hidari_kara_c
|
284
|
-
candidate_soldiers.count { |s| s.place.
|
284
|
+
candidate_soldiers.count { |s| s.place.column.value < _tx }
|
285
285
|
end
|
286
286
|
|
287
287
|
# 右からこれる駒の数
|
288
288
|
def _migi_kara_c
|
289
|
-
candidate_soldiers.count { |s| s.place.
|
289
|
+
candidate_soldiers.count { |s| s.place.column.value > _tx }
|
290
290
|
end
|
291
291
|
|
292
292
|
# 水平に寄れる駒の数
|
293
293
|
def yoreru_c
|
294
|
-
candidate_soldiers.count { |s| s.place.
|
294
|
+
candidate_soldiers.count { |s| s.place.row.value == _ty }
|
295
295
|
end
|
296
296
|
|
297
297
|
# 上がれる駒の数(移動先より下にある数)
|
298
298
|
def agareru_c
|
299
|
-
candidate_soldiers.count { |s| s.place.
|
299
|
+
candidate_soldiers.count { |s| s.place.row.value.send(_i(:>), _ty) }
|
300
300
|
end
|
301
301
|
|
302
302
|
# 下がれる駒の数(移動先より上にある数)
|
303
303
|
def sagareru_c
|
304
|
-
candidate_soldiers.count { |s| s.place.
|
304
|
+
candidate_soldiers.count { |s| s.place.row.value.send(_i(:<), _ty) }
|
305
305
|
end
|
306
306
|
|
307
307
|
# 移動先X
|
308
308
|
def _tx
|
309
|
-
@_tx ||= place_to.
|
309
|
+
@_tx ||= place_to.column.value
|
310
310
|
end
|
311
311
|
|
312
312
|
# 移動元Y
|
313
313
|
def _ty
|
314
|
-
@_ty ||= place_to.
|
314
|
+
@_ty ||= place_to.row.value
|
315
315
|
end
|
316
316
|
|
317
317
|
# プレイヤー視点から見た移動先の一つ下
|
@@ -326,31 +326,31 @@ module Bioshogi
|
|
326
326
|
|
327
327
|
# 移動元X
|
328
328
|
def _ox
|
329
|
-
@_ox ||= place_from.
|
329
|
+
@_ox ||= place_from.column.value
|
330
330
|
end
|
331
331
|
|
332
332
|
# 移動先Y
|
333
333
|
def _oy
|
334
|
-
@_oy ||= place_from.
|
334
|
+
@_oy ||= place_from.row.value
|
335
335
|
end
|
336
336
|
|
337
337
|
# 候補手の座標範囲
|
338
338
|
def _xr
|
339
|
-
@_xr ||= Range.new(*candidate_soldiers.collect { |e| e.place.
|
339
|
+
@_xr ||= Range.new(*candidate_soldiers.collect { |e| e.place.column.value }.minmax)
|
340
340
|
end
|
341
341
|
|
342
342
|
def _yr
|
343
|
-
@_yr ||= Range.new(*candidate_soldiers.collect { |e| e.place.
|
343
|
+
@_yr ||= Range.new(*candidate_soldiers.collect { |e| e.place.row.value }.minmax)
|
344
344
|
end
|
345
345
|
|
346
346
|
# 移動元で二つの龍が水平線上にいる?
|
347
347
|
def idou_moto_no_ryu_ga_suihei_ni_iru?
|
348
|
-
candidate_soldiers.collect { |e| e.place.
|
348
|
+
candidate_soldiers.collect { |e| e.place.row.value }.uniq.size == 1
|
349
349
|
end
|
350
350
|
|
351
351
|
# 移動先の水平線上よりすべて上 or すべて下
|
352
352
|
# つまり、移動先のYが候補のYの範囲に含まれている
|
353
|
-
# だから candidate_soldiers.all?{|s|s.place.
|
353
|
+
# だから candidate_soldiers.all?{|s|s.place.row.value < _ty} || candidate_soldiers.all?{|s|s.place.row.value > _ty} から !_yr.cover?(_ty) に変更できる
|
354
354
|
def idousakino_suiheisenjou_yori_subete_ue_mataha_shita?
|
355
355
|
!_yr.cover?(_ty)
|
356
356
|
end
|
data/lib/bioshogi/order_info.rb
CHANGED
@@ -1,12 +1,14 @@
|
|
1
1
|
# frozen-string-literal: true
|
2
2
|
|
3
|
-
#
|
3
|
+
# ▲△と混同しがちだが▲△は場所のことであって順番とは関係がない。
|
4
|
+
# たとえば駒落ちの場合は△から指すため「△=後手」と解釈しているとおかしくなる。
|
5
|
+
|
4
6
|
module Bioshogi
|
5
7
|
class OrderInfo
|
6
8
|
include ApplicationMemoryRecord
|
7
9
|
memory_record [
|
8
|
-
{ key: :
|
9
|
-
{ key: :
|
10
|
+
{ key: :order_first, name: "先手"}, # 奇数回に指す側
|
11
|
+
{ key: :order_second, name: "後手"}, # 偶数回に指す側
|
10
12
|
]
|
11
13
|
end
|
12
14
|
end
|
data/lib/bioshogi/parser/base.rb
CHANGED
@@ -25,11 +25,11 @@ module Bioshogi
|
|
25
25
|
# skip: 棋譜には記さない
|
26
26
|
# false: 例外を出す(デフォルト)
|
27
27
|
:typical_error_case => false,
|
28
|
-
:
|
29
|
-
:
|
30
|
-
:
|
28
|
+
:analysis_feature => true,
|
29
|
+
:analysis_technique_feature => true,
|
30
|
+
:ki2_function => true, # ki2にしないのであれば指定するとかなり速くなる
|
31
31
|
|
32
|
-
:
|
32
|
+
:validate_feature => true, # 将棋ウォーズの棋譜なら指定すると少し速くなる
|
33
33
|
:validate_double_pawn_skip => false, # 二歩を無視するか?
|
34
34
|
:validate_warp_skip => false, # 角ワープを無視するか?
|
35
35
|
}
|
data/lib/bioshogi/parser/pi.rb
CHANGED
@@ -51,6 +51,17 @@ module Bioshogi
|
|
51
51
|
end
|
52
52
|
end
|
53
53
|
end
|
54
|
+
|
55
|
+
# 詰みまで指したか?
|
56
|
+
def saigoha_tsumi_p
|
57
|
+
if last_action_params
|
58
|
+
if last_action_key = last_action_params[:last_action_key]
|
59
|
+
if last_action_info = Formatter::LastActionInfo[last_action_key]
|
60
|
+
last_action_info.key == :TSUMI
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
54
65
|
end
|
55
66
|
end
|
56
67
|
end
|