bioshogi 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/A/342/206/222B/342/206/222C/345/233/262/343/201/204.txt +14 -0
- data/A/342/206/222B/342/206/222C/346/210/246/346/263/225.txt +96 -0
- data/Gemfile.lock +18 -16
- data/README.org +3 -3
- data/bioshogi.gemspec +2 -2
- data/lib/bioshogi/ai/brain.rb +0 -1
- data/lib/bioshogi/ai/versus.rb +1 -1
- data/lib/bioshogi/{explain/skill_monitor.rb → analysis/analyzer.rb} +88 -35
- data/lib/bioshogi/{explain/monitor_mod.rb → analysis/analyzer_mod.rb} +31 -13
- data/lib/bioshogi/analysis/attack_info.rb +312 -0
- data/lib/bioshogi/{explain → analysis}/board_piller_methods.rb +1 -1
- data/lib/bioshogi/{explain → analysis}/chaos_info.rb +1 -1
- data/lib/bioshogi/analysis/defense_info.rb +178 -0
- data/lib/bioshogi/analysis/file_normalizer.rb +54 -0
- data/lib/bioshogi/analysis/frequency.rb +319 -0
- data/lib/bioshogi/{explain → analysis}/group_info.rb +1 -1
- data/lib/bioshogi/analysis/note_info.rb +100 -0
- data/lib/bioshogi/analysis/rocket_analyzer.rb +117 -0
- data/lib/bioshogi/{explain → analysis}/sect_info.rb +1 -1
- data/lib/bioshogi/{explain → analysis}/shape_info.rb +1445 -518
- data/lib/bioshogi/{explain → analysis}/shape_info_relation.rb +2 -2
- data/lib/bioshogi/{explain → analysis}/skill_set.rb +8 -3
- data/lib/bioshogi/analysis/style_accessor.rb +45 -0
- data/lib/bioshogi/analysis/style_info.rb +15 -0
- data/lib/bioshogi/analysis/tactic_hit_turn_table.rb +408 -0
- data/lib/bioshogi/{explain → analysis}/tactic_hit_turn_table_generator.rb +23 -22
- data/lib/bioshogi/{explain → analysis}/tactic_info.rb +55 -32
- data/lib/bioshogi/analysis/tactic_stat.rb +14 -0
- data/lib/bioshogi/analysis/tactic_validator.rb +60 -0
- data/lib/bioshogi/{explain → analysis}/tech_accessor.rb +30 -15
- data/lib/bioshogi/analysis/technique_info.rb +63 -0
- data/lib/bioshogi/analysis/technique_matcher_helper.rb +8 -0
- data/lib/bioshogi/analysis/technique_matcher_info.rb +810 -0
- data/lib/bioshogi/{explain//346/211/213/347/255/213 → analysis//345/202/231/350/200/203}//343/203/255/343/202/261/343/203/203/343/203/210.kif +8 -11
- data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//345/205/245/347/216/211.kif +6 -4
- 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 +96 -0
- 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 +155 -0
- 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 +76 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/345/261/205/351/243/233/350/273/212.kif +10 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/346/212/227/345/275/242.kif +11 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/346/214/257/343/202/212/351/243/233/350/273/212.kif +11 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//345/257/276/347/251/264/347/206/212.kif +121 -0
- data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//345/261/205/351/243/233/350/273/212.kif +2 -4
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/200/245/346/210/246.kif +54 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/211/213/345/276/227/350/247/222/344/272/244/346/217/233/345/236/213.kif +15 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/211/213/346/220/215/350/247/222/344/272/244/346/217/233/345/236/213.kif +10 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/214/201/344/271/205/346/210/246.kif +162 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//346/214/257/343/202/212/351/243/233/350/273/212.kif +11 -0
- data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//347/233/270/345/205/245/347/216/211.kif +3 -3
- data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//347/233/270/345/261/205/347/216/211.kif +7 -5
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/345/261/205/351/243/233/350/273/212.kif +32 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +16 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/233/270/347/251/264/347/206/212.kif +87 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/242/345/200/211/346/226/26024/346/211/213/347/265/204.kif +39 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/242/345/200/211/346/227/24724/346/211/213/347/265/204.kif +39 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/237/255/346/211/213/346/225/260.kif +29 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//347/251/264/347/206/212.kif +121 -0
- 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 +121 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//350/203/214/346/260/264/343/201/256/351/231/243.kif +150 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//350/247/222/344/270/215/346/210/220.kif +23 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//350/247/222/344/272/244/346/217/233/345/236/213.kif +17 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/203/275/350/251/260/343/202/201.kif +90 -0
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/225/267/346/211/213/346/225/260.kif +356 -0
- data/lib/bioshogi/{explain → analysis}//345/202/231/350/200/203//351/243/233/350/273/212/344/270/215/346/210/220.kif +2 -4
- data/lib/bioshogi/analysis//345/202/231/350/200/203//351/247/222/346/237/261.kif +191 -0
- data/lib/bioshogi/{explain → 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 +9 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/204/343/201/213/343/201/240/345/233/262/343/201/204.kif +43 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/204/343/201/241/343/201/224/345/233/262/343/201/204.kif +10 -8
- data/lib/bioshogi/{explain → 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 +17 -10
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/232/343/202/214/347/276/216/346/277/203.kif +6 -6
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/201/241/343/202/207/343/202/223/343/201/276/343/201/222/347/276/216/346/277/203.kif +42 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/201/270/343/201/223/343/201/277/347/237/242/345/200/211.kif +7 -7
- 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 +110 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/250/343/203/253/343/203/242/345/233/262/343/201/204.kif +6 -4
- 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 +119 -0
- data/lib/bioshogi/{explain → 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 +7 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/202/256/345/233/262/343/201/204.kif +178 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/202/277/345/233/262/343/201/204.kif +12 -10
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/213/345/233/262/343/201/204.kif +8 -5
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/213/347/274/266/345/233/262/343/201/204.kif +3 -3
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/345/233/262/343/201/204.kif +32 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/347/276/216/346/277/203.kif +9 -6
- data/lib/bioshogi/{explain → 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 +13 -6
- data/lib/bioshogi/{explain → 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 +7 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/201/343/203/247/343/202/263/343/203/254/343/203/274/343/203/210/345/233/262/343/201/204.kif +9 -8
- 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 +48 -0
- 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 +117 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//343/203/223/343/203/203/343/202/2604.kif +16 -10
- data/lib/bioshogi/{explain → 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 +12 -10
- 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 +166 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//343/203/240/343/203/252/343/203/244/343/203/252/347/237/242/345/200/211.kif +45 -0
- data/lib/bioshogi/{explain → 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 +6 -3
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//344/270/200/346/226/207/345/255/227/347/237/242/345/200/211.kif +5 -4
- data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/255/344/275/217/343/201/276/343/201/204.kif +123 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//344/270/255/345/216/237/345/233/262/343/201/204.kif +34 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//344/270/262/343/202/253/343/203/204/345/233/262/343/201/204.kif +10 -10
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/215/207/347/224/260/347/276/216/346/277/203.kif +5 -3
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/217/263/347/237/242/345/200/211.kif +11 -7
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/233/233/346/236/232/347/251/264/347/206/212.kif +66 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/236/232/347/276/216/346/277/203.kif +12 -10
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/236/232/351/212/200/345/206/240.kif +16 -8
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/256/265/347/253/257/347/216/211.kif +12 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/346/256/265/347/253/257/347/216/2112.kif +1 -3
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/233/233/350/247/222/347/237/242/345/200/211.kif +10 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/234/237/345/261/205/347/237/242/345/200/211.kif +7 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/235/212/344/270/273/347/276/216/346/277/203.kif +48 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/247/345/261/261/347/276/216/346/277/203.kif +9 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/247/347/233/276/345/233/262/343/201/204.kif +6 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/247/351/232/205/345/233/262/343/201/204.kif +23 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/251/345/256/210/351/226/243/345/233/262/343/201/204.kif +7 -5
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/244/251/345/256/210/351/226/243/347/276/216/346/277/203.kif +10 -9
- data/lib/bioshogi/analysis//345/233/262/343/201/204//345/244/251/351/207/216/347/237/242/345/200/211.kif +40 -0
- 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 +154 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/261/205/347/216/211.kif +10 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/261/205/351/243/233/347/251/264/351/237/263/347/204/241/343/201/227/343/201/256/346/247/213/343/201/210.kif +9 -21
- 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 +56 -0
- 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 +136 -0
- 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 +51 -0
- data/lib/bioshogi/{explain → 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 +8 -8
- 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 +57 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/267/246/345/261/261/345/233/262/343/201/204.kif +6 -4
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//345/267/246/347/276/216/346/277/203.kif +7 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/202/252/345/275/242/347/237/242/345/200/211.kif +5 -3
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/343/202/250/343/203/253/343/203/242.kif +7 -5
- data/lib/bioshogi/{explain → 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 +12 -9
- data/lib/bioshogi/{explain → 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 +14 -11
- data/lib/bioshogi/{explain → 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 +7 -5
- data/lib/bioshogi/{explain → 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 +12 -7
- data/lib/bioshogi/{explain → 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 +7 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/347/251/264/347/206/212.kif +8 -8
- data/lib/bioshogi/{explain → 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 +6 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/214/257/343/202/212/351/243/233/350/273/212/351/212/200/345/206/240/347/251/264/347/206/212.kif +10 -9
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/226/207/351/216/256/345/233/262/343/201/204.kif +10 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/226/260/345/236/213/351/233/201/346/234/250.kif +6 -4
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/227/251/345/233/262/343/201/204.kif +5 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/234/250/346/235/221/347/276/216/346/277/203.kif +53 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/235/276/345/260/276/346/265/201/347/251/264/347/206/212.kif +12 -9
- data/lib/bioshogi/{explain → 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 +8 -5
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//346/265/201/343/202/214/347/237/242/345/200/211.kif +10 -6
- data/lib/bioshogi/analysis//345/233/262/343/201/204//346/265/201/347/267/232/347/237/242/345/200/211.kif +65 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/204/241/346/225/265/345/233/262/343/201/204.kif +20 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/204/241/350/262/254/344/273/273/347/237/242/345/200/211.kif +6 -5
- 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 +50 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/347/251/264/347/206/212.kif +51 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/211/207/347/276/216/346/277/203/345/233/262/343/201/204.kif +34 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/211/207/351/212/200/345/206/240.kif +9 -8
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/237/242/345/200/211/346/227/251/345/233/262/343/201/204.kif +9 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/237/242/345/200/211/347/251/264/347/206/212.kif +9 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/245/236/345/220/211/346/265/201/347/251/264/347/206/212.kif +10 -8
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/251/272/344/270/255/346/245/274/351/226/243.kif +59 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/253/257/347/216/211/351/212/200/345/206/240.kif +63 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/256/261/345/205/245/343/202/212/345/250/230.kif +49 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//347/264/231/347/251/264/347/206/212.kif +12 -9
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/267/217/347/237/242/345/200/211.kif +139 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//347/276/216/346/277/203/345/233/262/343/201/204.kif +37 -0
- 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 +52 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204.kif +31 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204DX.kif +9 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//350/217/212/346/260/264/347/237/242/345/200/211.kif +63 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/217/261/347/237/242/345/200/211.kif +10 -6
- data/lib/bioshogi/{explain → 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 +8 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/243/276/345/233/272/343/202/201.kif +8 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/247/222/347/237/242/345/200/211.kif +6 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/247/222/351/201/223/344/270/215/347/252/201/343/201/215/345/267/246/347/276/216/346/277/203.kif +6 -4
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//350/261/206/350/205/220/347/237/242/345/200/211.kif +11 -9
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/200/243/347/233/237/347/276/216/346/277/203.kif +7 -5
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/345/244/232/344/274/235.kif +4 -1
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/204/241/345/217/214.kif +16 -8
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/233/276/345/233/262/343/201/204.kif +7 -5
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/207/221/347/237/242/345/200/211.kif +50 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/347/276/216/346/277/203.kif +12 -8
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/207/221/351/226/200/347/237/242/345/200/211.kif +8 -6
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/212/200/345/206/240.kif +10 -8
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/345/206/240/347/251/264/347/206/212.kif +93 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/212/200/345/244/232/344/274/235.kif +7 -4
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/237/242/345/200/211.kif +46 -0
- 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 +52 -0
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/212/200/347/276/216/346/277/203.kif +52 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/232/205/347/237/242/345/200/211.kif +8 -8
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/233/242/343/202/214/351/207/221/347/204/241/345/217/214.kif +8 -8
- data/lib/bioshogi/analysis//345/233/262/343/201/204//351/233/262/351/232/240/343/202/214/347/216/211.kif +42 -0
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/253/230/347/237/242/345/200/211.kif +9 -7
- data/lib/bioshogi/{explain → analysis}//345/233/262/343/201/204//351/253/230/347/276/216/346/277/203/345/233/262/343/201/204.kif +9 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213/2/346/211/213/347/233/256/342/226/263/357/274/223 → 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 +15 -9
- 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 +10 -0
- 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 +10 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225/2/346/211/213/347/233/256/342/226/2637/345/233/233/346/255/251/346/210/246/346/263/225.kif +9 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225/3/342/206/2224/342/206/2223/346/210/246/346/263/225.kif +25 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213/4/346/211/213/347/233/256/342/226/263/357/274/223 → analysis//346/210/246/346/263/225/4/346/211/213/347/233/256/342/226/2633}/344/270/211/350/247/222/346/210/246/346/263/225.kif +5 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225/5/346/211/213/347/210/206/345/274/276.kif +42 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225/5/347/255/213/344/275/215/345/217/226/343/202/212.kif +48 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225/5/347/255/213/344/275/215/345/217/226/343/202/212/344/270/255/351/243/233/350/273/212.kif +17 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//357/274/226 → analysis//346/210/246/346/263/225/6}/347/255/213/344/275/215/345/217/226/343/202/212.kif +12 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}/GAVA/350/247/222.kif +10 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}/UFO/351/212/200.kif +9 -7
- 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 +124 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225/xaby/350/247/222/346/210/246/346/263/225.kif +17 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → 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 +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → 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 +9 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/224 → analysis//346/210/246/346/263/225//342/226/2624}/345/205/255/351/212/200/345/267/246/346/200/245/346/210/246.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/225 → analysis//346/210/246/346/263/225//342/226/2625}/344/270/203/351/207/221/346/210/246/346/263/225.kif +13 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/262/357/274/225 → 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 +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/222 → analysis//346/210/246/346/263/225//342/226/2632}/344/270/211/346/255/251/346/210/246/346/263/225.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → analysis//346/210/246/346/263/225//342/226/2633}/344/270/211/346/241/202/346/210/246/346/263/225.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → 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 +10 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213/33 → 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 +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/223 → analysis//346/210/246/346/263/225//342/226/2633}/344/270/211/351/243/233/346/210/246/346/263/225.kif +16 -11
- data/lib/bioshogi/{explain//346/210/246/345/236/213//342/226/263/357/274/224 → analysis//346/210/246/346/263/225//342/226/2634}/344/272/224/350/247/222/346/210/246/346/263/225.kif +8 -6
- 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 +94 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +5 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/215/343/202/223/343/201/250/343/201/206/343/202/223/346/210/246/346/263/225.kif +7 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/215/357/275/215/343/201/215/357/275/215/351/207/221.kif +8 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/244/343/201/217/343/201/244/343/201/217/343/201/274/343/201/206/343/201/227/346/210/246/346/263/225.kif +7 -5
- 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 +176 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/201/262/343/201/255/343/202/212/351/243/233/350/273/212.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -8
- 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 +93 -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 +110 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/246/343/202/275/347/237/242/345/200/211.kif +5 -4
- 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 +140 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/253/343/203/213/343/202/253/343/203/213/351/207/221.kif +9 -7
- 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 +39 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/253/343/203/241/343/203/254/343/202/252/343/203/263/346/210/246/346/263/225.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213//344/270/255/347/224/260/345/212/237XP.kif → 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} +11 -7
- 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 +113 -0
- 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 +55 -0
- 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 +127 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +18 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +20 -10
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/202/277/343/203/251/343/203/263/343/203/201/343/203/245/343/203/251/346/210/246/346/263/225.kif +10 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/200/343/202/244/343/203/254/343/202/257/343/203/210/345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +10 -7
- 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 +122 -0
- 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 +123 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/210/343/203/236/343/203/233/343/203/274/343/202/257.kif +9 -7
- 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 +31 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//343/203/216/343/203/274/343/202/254/343/203/274/343/203/211/346/210/246/346/263/225.kif +76 -0
- 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 +95 -0
- 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 +42 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/221/343/203/203/343/202/257/343/203/236/343/203/263/346/210/246/346/263/225.kif +6 -4
- 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 +53 -0
- 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 +47 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +6 -5
- 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 +11 -0
- 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 +49 -0
- 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 +173 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//343/203/254/343/202/260/343/202/271/343/203/232.kif +13 -10
- 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 +118 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/200/347/233/264/347/267/232/347/251/264/347/206/212.kif +12 -13
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/351/226/223/351/243/233/350/273/212.kif +22 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/200/351/226/223/351/243/233/350/273/212/347/251/264/347/206/212.kif +42 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/346/256/265/345/217/263/347/216/211.kif +139 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/211/351/226/223/351/243/233/350/273/212.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/211/351/226/223/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +9 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/211/351/226/223/351/243/233/350/273/212/350/227/244/344/272/225/343/202/267/343/202/271/343/203/206/343/203/240.kif +38 -0
- 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 +49 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +14 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +13 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/270/255/345/216/237/351/243/233/350/273/212.kif +10 -11
- data/lib/bioshogi/analysis//346/210/246/346/263/225//344/270/255/345/272/247/351/243/233/350/273/212.kif +61 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +8 -6
- 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 +182 -0
- 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 +27 -0
- 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 +36 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//344/271/235/351/226/223/351/243/233/350/273/212.kif +18 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +11 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/205/210/346/211/213/344/270/255/351/243/233/350/273/212.kif +5 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2623/345/205/255/346/255/251/346/210/246/346/263/225.kif +8 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//345/210/235/346/211/213/357/274/227 → 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 +8 -6
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/210/235/346/211/213/342/226/2627/345/205/253/351/243/233/346/210/246/346/263/225.kif +11 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/212/233/346/210/246.kif +7 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/213/207/346/260/227/346/265/201.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -10
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/216/237/345/247/213/344/270/255/351/243/233/350/273/212.kif +5 -4
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/216/237/345/247/213/346/243/222/351/212/200.kif +9 -7
- 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.kif +31 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212.kif → 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} +11 -9
- 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 +16 -0
- data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//345/217/263/347/216/211.kif +10 -10
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/220/214/345/236/213/347/237/242/345/200/211.kif +60 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/220/221/343/201/213/343/201/204/351/243/233/350/273/212.kif +7 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/233/233/346/211/213/350/247/222.kif +11 -8
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/233/233/351/226/223/351/243/233/350/273/212.kif +17 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/233/233/351/226/223/351/243/233/350/273/212/343/203/237/343/203/254/343/203/213/343/202/242/343/203/240.kif +9 -7
- 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 +153 -0
- 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 +101 -0
- 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 +13 -0
- 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 +33 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/254/211/351/207/216/346/265/201.kif +118 -0
- 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 +195 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/257/276/343/201/262/343/201/255/343/202/212/351/243/233/350/273/212/343/201/237/343/201/223/351/207/221/346/210/246/346/263/225.kif +70 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/257/276/346/214/257/343/202/212/346/214/201/344/271/205/346/210/246.kif +11 -13
- 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 +151 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//345/261/261/345/264/216/346/265/201/343/203/221/343/203/203/343/202/257/343/203/236/343/203/263.kif +3 -4
- data/lib/bioshogi/analysis//346/210/246/346/263/225//345/261/261/347/224/260/345/256/232/350/267/241.kif +45 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//347/237/242/345/200/211 → analysis//346/210/246/346/263/225/}/345/267/246/347/276/216/346/277/203/346/200/245/346/210/246.kif +13 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +10 -8
- 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 +41 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/210/270/351/203/250/346/265/2014/342/206/2223/346/210/246/346/263/225.kif +23 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +41 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/345/254/211/351/207/216/346/265/201.kif +132 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/237/263/347/224/260/346/265/201.kif +21 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/347/261/263/351/225/267/347/216/211.kif +139 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/226/260/351/242/250/350/273/212.kif +7 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/226/260/351/254/274/346/256/272/343/201/227.kif +37 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/227/251/347/237/263/347/224/260.kif +16 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/232/264/351/212/200.kif +11 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/234/250/346/235/221/345/256/232/350/267/241.kif +14 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +5 -4
- 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 +111 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/222/347/216/211.kif +26 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/243/222/351/207/221.kif +9 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/222/351/212/200.kif +41 -0
- 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 +94 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//346/243/256/345/256/211/346/265/201/350/242/226/351/243/233/350/273/212/347/251/264/347/206/212.kif +39 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +15 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +8 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//346/250/252/346/255/251/345/217/226/343/202/212.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +14 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/216/211/351/240/255/344/275/215/345/217/226/343/202/212.kif +11 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/216/211/351/240/255/351/212/200.kif +119 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/256/343/201/217/343/202/211/343/201/276/343/201/227/346/210/246/346/263/225.kif +5 -6
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +10 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/233/270/346/216/233/343/201/213/343/202/212.kif +20 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/346/216/233/343/201/213/343/202/212/346/243/222/351/212/200.kif +8 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/346/250/252/346/255/251/345/217/226/343/202/212.kif +11 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/233/270/347/255/213/351/201/225/343/201/204/350/247/222.kif +10 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/234/237/351/203/250/346/265/201.kif +19 -11
- 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 +83 -0
- 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 +37 -0
- data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/237/242/345/200/211/345/217/263/347/216/211.kif +7 -5
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/237/242/345/200/211/346/243/222/351/212/200.kif +12 -8
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/237/242/345/200/211/346/265/201/344/270/255/351/243/233/350/273/212.kif +38 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/237/263/347/224/260/346/265/201.kif +8 -6
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/245/236/345/220/211/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +41 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/250/262/345/272/255/346/210/246/346/263/225.kif +8 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +6 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/251/264/350/247/222/346/210/246/346/263/225.kif +19 -13
- 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 +60 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/253/257/346/243/222/351/212/200.kif +12 -10
- 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 +45 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//347/255/213/351/201/225/343/201/204/350/247/222.kif +15 -9
- data/lib/bioshogi/analysis//346/210/246/346/263/225//347/255/213/351/201/225/343/201/204/350/247/222/350/237/273/345/234/260/347/215/204/346/210/246/346/263/225.kif +56 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -7
- data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/263/270/350/260/267/346/265/201/345/217/263/347/216/211.kif +11 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +16 -8
- data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//347/276/275/347/224/237/346/265/201/345/217/263/347/216/211.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +6 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/204/207/343/202/267/343/202/271/343/203/206/343/203/240.kif +8 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/205/260/346/216/233/343/201/221/351/212/200.kif +13 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/212/261/346/235/221/346/265/201/345/220/215/345/217/244/345/261/213/346/210/246/346/263/225.kif +14 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +12 -10
- data/lib/bioshogi/{explain//346/210/246/345/236/213/ → 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 +21 -14
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +15 -12
- 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 +24 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//350/217/234/343/200/205/346/262/263/346/265/201/342/226/263/357/274/224 → analysis//346/210/246/346/263/225//350/217/234/343/200/205/346/262/263/346/265/201/342/226/2634}/345/233/233/350/247/222.kif +5 -4
- 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 +167 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/227/244/344/272/225/343/202/267/343/202/271/343/203/206/343/203/240.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -8
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/242/226/351/243/233/350/273/212.kif +256 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +9 -7
- 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 +116 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/247/222/346/217/233/343/202/217/343/202/212.kif +8 -5
- 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 +134 -0
- 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 +159 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +10 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213//350/247/222/346/217/233/343/202/217/343/202/212/346/226/260/345/236/213.kif → 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} +9 -8
- 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 +52 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/247/222/351/201/223/343/202/252/343/203/274/343/203/227/343/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +13 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//350/247/222/351/240/255/346/255/251/346/210/246/346/263/225.kif +5 -6
- data/lib/bioshogi/analysis//346/210/246/346/263/225//350/266/205/346/200/245/346/210/246.kif +38 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//350/266/205/351/200/237/342/226/262/357/274/223/344/270/203/351/212/200.kif → analysis//346/210/246/346/263/225//350/266/205/351/200/237/342/226/2623/344/270/203/351/212/200/346/210/246/346/263/225.kif} +13 -9
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/200/206/346/243/222/351/212/200.kif +42 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/201/240/345/261/261/346/265/201.kif +11 -11
- data/lib/bioshogi/{explain//346/210/246/345/236/213//351/203/275/346/210/220/346/265/201/342/226/263/357/274/223 → 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 +7 -5
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/207/221/346/262/242/346/265/201.kif +11 -0
- 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 +51 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/207/221/351/212/200/346/251/213.kif +14 -11
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/210/264/346/234/250/346/265/201/346/227/251/347/237/263/347/224/260.kif +40 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/212/200/351/233/262/351/233/200.kif +12 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/216/226/351/216/214/351/212/200.kif +11 -8
- data/lib/bioshogi/{explain//346/210/246/345/236/213/ → analysis//346/210/246/346/263/225//351/226/223/345/256/256}/344/271/205/345/244/242/346/265/201.kif +10 -6
- 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 +10 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213//351/230/252/347/224/260/346/265/201/345/220/221 → 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 +12 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +10 -7
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/231/275/345/213/225/346/214/257/343/202/212/351/243/233/350/273/212.kif +14 -0
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/233/200/345/210/272/343/201/227.kif +94 -0
- data/lib/bioshogi/{explain//345/233/262/343/201/204 → analysis//346/210/246/346/263/225}//351/233/201/346/234/250/345/217/263/347/216/211.kif +12 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/235/222/351/207/216/346/265/201.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/242/250/350/273/212.kif +8 -7
- 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 +102 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/243/257/345/263/266/346/265/201/345/274/225/343/201/215/350/247/222/346/210/246/346/263/225.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/243/257/345/263/266/346/265/201/347/233/270/346/216/233/343/201/213/343/202/212/345/274/225/343/201/215/350/247/222/346/210/246/346/263/225.kif +11 -9
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/253/230/347/224/260/346/265/201/345/267/246/347/216/211.kif +15 -11
- data/lib/bioshogi/analysis//346/210/246/346/263/225//351/254/274/346/256/272/343/201/227.kif +26 -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 +43 -0
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → 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 +5 -6
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/263/245/345/210/272/343/201/227.kif +9 -7
- data/lib/bioshogi/{explain//346/210/246/345/236/213 → analysis//346/210/246/346/263/225}//351/267/272/345/256/256/345/256/232/350/267/241.kif +12 -6
- 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 +25 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213/3/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213/4/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213/5/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +22 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213/6/346/256/265/343/203/255/343/202/261/343/203/203/343/203/210.kif +24 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/223/343/201/263/343/202/223/346/224/273/343/202/201.kif +28 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/231/343/201/215/343/201/256/350/247/222.kif +35 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//343/201/237/343/201/231/343/201/215/343/201/256/351/212/200.kif +35 -0
- 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 +26 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//343/201/265/343/202/223/343/201/251/343/201/227/343/201/256/346/241/202.kif +0 -4
- data/lib/bioshogi/{explain → 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 +0 -4
- data/lib/bioshogi/analysis//346/211/213/347/255/213//344/270/200/351/226/223/347/253/234.kif +21 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//344/275/215/343/201/256/347/242/272/344/277/235.kif +50 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/211/262/343/202/212/346/211/223/343/201/241/343/201/256/351/212/200.kif +0 -4
- data/lib/bioshogi/analysis//346/211/213/347/255/213//345/234/237/344/270/213/345/272/247/343/201/256/346/255/251.kif +22 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/236/202/343/202/214/346/255/251.kif +0 -4
- data/lib/bioshogi/analysis//346/211/213/347/255/213//345/260/273/351/212/200.kif +32 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//345/271/275/351/234/212/350/247/222.kif +7 -5
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//346/241/202/351/240/255/343/201/256/351/212/200.kif +0 -4
- data/lib/bioshogi/analysis//346/211/213/347/255/213//346/255/251/351/240/255/343/201/256/346/241/202.kif +34 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//347/224/260/346/245/275/345/210/272/343/201/227.kif +34 -0
- data/lib/bioshogi/analysis//346/211/213/347/255/213//347/252/201/343/201/215/351/201/225/343/201/204/343/201/256/346/255/251.kif +21 -0
- 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 +24 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//347/266/231/343/201/216/346/241/202.kif +2 -6
- data/lib/bioshogi/analysis//346/211/213/347/255/213//347/266/231/343/201/216/346/255/251.kif +46 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//350/205/271/351/212/200.kif +13 -10
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/200/243/346/211/223/343/201/256/346/255/251.kif +28 -0
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//351/201/240/350/246/213/343/201/256/350/247/222.kif +0 -4
- data/lib/bioshogi/{explain → analysis}//346/211/213/347/255/213//351/207/221/345/272/225/343/201/256/346/255/251.kif +0 -4
- data/lib/bioshogi/analysis//346/211/213/347/255/213//351/212/200/343/201/260/343/201/225/343/201/277.kif +29 -0
- data/lib/bioshogi/{explain → 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 +13 -9
- data/lib/bioshogi/application_memory_record.rb +4 -11
- data/lib/bioshogi/assertion.rb +6 -2
- data/lib/bioshogi/assets/images/background/matrix.png +0 -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_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/kifu_formats/sample.ki2 +3 -3
- data/lib/bioshogi/board/basic.rb +1 -1
- data/lib/bioshogi/board_parser/compare_board_parser.rb +27 -4
- data/lib/bioshogi/container/core_methods.rb +2 -2
- data/lib/bioshogi/container/execute_methods.rb +1 -1
- data/lib/bioshogi/container/fast.rb +1 -1
- data/lib/bioshogi/container/simple.rb +1 -1
- data/lib/bioshogi/converter.rb +6 -2
- data/lib/bioshogi/csa_header_info.rb +2 -0
- data/lib/bioshogi/errors.rb +2 -2
- data/lib/bioshogi/extreme_validator.rb +1 -1
- data/lib/bioshogi/formatter/animation/demo_builder.rb +1 -1
- data/lib/bioshogi/formatter/core.rb +25 -5
- data/lib/bioshogi/formatter/last_action_info.rb +26 -22
- data/lib/bioshogi/formatter/skill_embed.rb +147 -34
- data/lib/bioshogi/formatter/style_embed.rb +27 -0
- data/lib/bioshogi/formatter/sugatayaki_validator.rb +96 -0
- data/lib/bioshogi/kanji_number.rb +0 -45
- data/lib/bioshogi/kifu_format_info.rb +5 -5
- data/lib/bioshogi/parser/base.rb +2 -2
- data/lib/bioshogi/parser/pi.rb +11 -0
- data/lib/bioshogi/piece/piece_scale.rb +9 -8
- data/lib/bioshogi/piece/piece_score.rb +14 -0
- data/lib/bioshogi/piece.rb +33 -69
- data/lib/bioshogi/player/other_methods.rb +26 -6
- data/lib/bioshogi/player.rb +1 -1
- data/lib/bioshogi/player_executor/base.rb +2 -2
- data/lib/bioshogi/player_executor/human.rb +1 -1
- data/lib/bioshogi/player_executor/{without_monitor.rb → without_analyzer.rb} +1 -1
- data/lib/bioshogi/preset_info.rb +1 -1
- data/lib/bioshogi/screen_image/core_methods.rb +1 -1
- data/lib/bioshogi/single_clock.rb +6 -6
- data/lib/bioshogi/stat.rb +7 -0
- data/lib/bioshogi/tasks/chore.rake +1 -1
- data/lib/bioshogi/tasks/clean.rake +1 -1
- data/lib/bioshogi/tasks/demo.rake +2 -2
- data/lib/bioshogi/tasks/generate.rake +5 -5
- data/lib/bioshogi/tasks/normalize.rake +4 -4
- data/lib/bioshogi/tasks/{test.rake → spec.rake} +8 -6
- data/lib/bioshogi/tasks/tactic.rake +8 -0
- data/lib/bioshogi/tasks/tactic_validator.rake +1 -1
- data/lib/bioshogi/turn_info.rb +1 -1
- data/lib/bioshogi/version.rb +1 -1
- data/lib/bioshogi.rb +11 -5
- data//347/275/256/343/201/215/346/217/233/343/201/210/346/216/250/345/245/250.txt +57 -0
- metadata +442 -351
- data/lib/bioshogi/explain/attack_info.rb +0 -199
- data/lib/bioshogi/explain/defense_info.rb +0 -130
- data/lib/bioshogi/explain/distribution_ratio.rb +0 -1895
- data/lib/bioshogi/explain/distribution_ratio_generator.rb +0 -48
- data/lib/bioshogi/explain/file_normalizer.rb +0 -20
- data/lib/bioshogi/explain/note_info.rb +0 -63
- data/lib/bioshogi/explain/tactic_hit_turn_table.rb +0 -320
- data/lib/bioshogi/explain/tactic_validator.rb +0 -40
- data/lib/bioshogi/explain/technique_info.rb +0 -28
- data/lib/bioshogi/explain/technique_matcher_info.rb +0 -298
- data/lib/bioshogi/explain//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 +0 -19
- data/lib/bioshogi/explain//345/202/231/350/200/203//345/244/247/351/247/222/345/205/250/346/266/210/345/244/261.kif +0 -19
- data/lib/bioshogi/explain//345/202/231/350/200/203//345/257/276/346/212/227/345/236/213.kif +0 -12
- data/lib/bioshogi/explain//345/202/231/350/200/203//345/257/276/346/214/257/343/202/212.kif +0 -12
- data/lib/bioshogi/explain//345/202/231/350/200/203//346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -12
- data/lib/bioshogi/explain//345/202/231/350/200/203//347/233/270/345/261/205/351/243/233/350/273/212.kif +0 -8
- data/lib/bioshogi/explain//345/202/231/350/200/203//347/233/270/346/214/257/343/202/212.kif +0 -16
- data/lib/bioshogi/explain//345/202/231/350/200/203//350/203/214/346/260/264/343/201/256/351/231/243.kif +0 -34
- data/lib/bioshogi/explain//345/202/231/350/200/203//350/247/222/344/270/215/346/210/220.kif +0 -16
- data/lib/bioshogi/explain//345/202/231/350/200/203//351/247/222/346/237/261.kif +0 -48
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/201/241/343/202/207/343/202/223/343/201/276/343/201/222/347/276/216/346/277/203.kif +0 -25
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/242/343/203/222/343/203/253/345/233/262/343/201/204.kif +0 -148
- data/lib/bioshogi/explain//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 +0 -40
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/253/343/202/256/345/233/262/343/201/204.kif +0 -40
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/202/253/343/203/226/343/203/210/345/233/262/343/201/204.kif +0 -29
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/345/236/213/345/217/263/347/216/211.kif +0 -45
- data/lib/bioshogi/explain//345/233/262/343/201/204//343/203/204/343/203/216/351/212/200/351/233/201/346/234/250.kif +0 -113
- data/lib/bioshogi/explain//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 +0 -96
- data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/211/346/211/213/345/233/262/343/201/204.kif +0 -23
- data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/211/346/256/265/345/217/263/347/216/211.kif +0 -50
- data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/255/344/275/217/343/201/276/343/201/204.kif +0 -71
- data/lib/bioshogi/explain//345/233/262/343/201/204//344/270/255/345/216/237/345/233/262/343/201/204.kif +0 -69
- data/lib/bioshogi/explain//345/233/262/343/201/204//345/235/212/344/270/273/347/276/216/346/277/203.kif +0 -79
- data/lib/bioshogi/explain//345/233/262/343/201/204//345/244/251/351/207/216/347/237/242/345/200/211.kif +0 -76
- data/lib/bioshogi/explain//345/233/262/343/201/204//345/257/214/345/243/253/350/246/213/347/237/242/345/200/211.kif +0 -45
- data/lib/bioshogi/explain//345/233/262/343/201/204//345/261/205/351/243/233/350/273/212/347/251/264/347/206/212.kif +0 -76
- data/lib/bioshogi/explain//345/233/262/343/201/204//346/234/250/346/235/221/347/276/216/346/277/203.kif +0 -88
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/204/241/346/225/265/345/233/262/343/201/204.kif +0 -136
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/211/207/347/276/216/346/277/203/345/233/262/343/201/204.kif +0 -68
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/251/272/344/270/255/346/245/274/351/226/243.kif +0 -126
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/253/257/347/216/211/351/212/200/345/206/240.kif +0 -88
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/256/261/345/205/245/343/202/212/345/250/230.kif +0 -72
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/267/217/347/237/242/345/200/211.kif +0 -78
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/276/216/346/277/203/345/233/262/343/201/204.kif +0 -52
- data/lib/bioshogi/explain//345/233/262/343/201/204//347/276/216/346/277/203/347/206/212/345/233/262/343/201/204.kif +0 -50
- data/lib/bioshogi/explain//345/233/262/343/201/204//350/210/237/345/233/262/343/201/204.kif +0 -67
- data/lib/bioshogi/explain//345/233/262/343/201/204//350/217/212/346/260/264/347/237/242/345/200/211.kif +0 -93
- data/lib/bioshogi/explain//345/233/262/343/201/204//350/247/222/346/217/233/343/202/217/343/202/212/345/217/263/347/216/211.kif +0 -45
- data/lib/bioshogi/explain//345/233/262/343/201/204//351/207/221/347/237/242/345/200/211.kif +0 -78
- data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/345/206/240/347/251/264/347/206/212.kif +0 -89
- data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/237/242/345/200/211.kif +0 -72
- data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/253/213/343/201/241/347/237/242/345/200/211.kif +0 -90
- data/lib/bioshogi/explain//345/233/262/343/201/204//351/212/200/347/276/216/346/277/203.kif +0 -77
- data/lib/bioshogi/explain//346/210/246/345/236/213/2/346/211/213/347/233/256/342/226/26374/346/255/251/346/210/246/346/263/225.kif +0 -10
- data/lib/bioshogi/explain//346/210/246/345/236/213/5/347/255/213/344/275/215/345/217/226/343/202/212/344/270/255/351/243/233/350/273/212.kif +0 -16
- data/lib/bioshogi/explain//346/210/246/345/236/213/xaby/350/247/222/346/210/246/346/263/225.kif +0 -18
- data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/223/344/270/203/351/212/200/346/210/246/346/263/225.kif +0 -74
- data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/227/344/272/214/351/243/233/344/272/234/346/200/245/346/210/246.kif +0 -100
- data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/227/345/205/253/351/243/233/346/210/246/346/263/225.kif +0 -12
- data/lib/bioshogi/explain//346/210/246/345/236/213//342/226/262/357/274/230/344/272/224/351/243/233/350/273/212/346/210/246/346/263/225.kif +0 -77
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/201/257/343/201/217/345/274/217/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -34
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/204/343/201/260/343/203/234/343/203/274/343/202/272/346/265/201.kif +0 -35
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/242/343/203/222/343/203/253/346/210/246/346/263/225.kif +0 -65
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/250/343/203/253/343/203/242/346/200/245/346/210/246.kif +0 -44
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/253/343/203/213/343/202/253/343/203/213/351/212/200.kif +0 -83
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/202/264/343/202/255/343/202/262/343/203/263/344/270/255/351/243/233/350/273/212.kif +0 -16
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/204/343/203/216/351/212/200/344/270/255/351/243/233/350/273/212.kif +0 -103
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/216/343/203/274/343/202/254/343/203/274/343/203/211/346/210/246/346/263/225.kif +0 -34
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/235/343/203/263/343/203/235/343/203/263/346/241/202.kif +0 -115
- data/lib/bioshogi/explain//346/210/246/345/236/213//343/203/241/343/202/244/343/203/211/343/202/267/343/202/271/343/203/206/343/203/240.kif +0 -14
- data/lib/bioshogi/explain//346/210/246/345/236/213//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 +0 -29
- data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/346/211/213/346/220/215/350/247/222/346/217/233/343/202/217/343/202/212.kif +0 -14
- data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/351/226/223/351/243/233/350/273/212.kif +0 -63
- data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/200/351/226/223/351/243/233/350/273/212/347/251/264/347/206/212.kif +0 -30
- data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/255/351/243/233/350/273/212/345/267/246/347/251/264/347/206/212.kif +0 -95
- data/lib/bioshogi/explain//346/210/246/345/236/213//344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +0 -23
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/210/235/346/211/213/357/274/223/345/205/255/346/255/251/346/210/246/346/263/225.kif +0 -11
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/217/263/345/233/233/351/226/223/351/243/233/350/273/212/346/200/245/346/210/246.kif +0 -79
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -60
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/234/260/344/270/213/351/211/204/351/243/233/350/273/212.kif +0 -102
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/241/232/347/224/260/343/202/271/343/203/232/343/202/267/343/203/243/343/203/253.kif +0 -95
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/254/211/351/207/216/346/265/201.kif +0 -9
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/267/246/347/276/216/346/277/203/346/200/245/346/210/246.kif +0 -76
- data/lib/bioshogi/explain//346/210/246/345/236/213//345/271/263/347/233/256.kif +0 -110
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/211/213/345/276/227/350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -14
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/211/213/346/220/215/350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -12
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/344/270/270/345/261/261/343/203/257/343/202/257/343/203/201/343/203/263.kif +0 -24
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/345/254/211/351/207/216/346/265/201.kif +0 -15
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/347/237/263/347/224/260/346/265/201.kif +0 -90
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/347/261/263/351/225/267/347/216/211.kif +0 -10
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/226/260/351/254/274/346/256/272/343/201/227.kif +0 -113
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/227/251/347/237/263/347/224/260.kif +0 -68
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/222/347/216/211.kif +0 -80
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/222/351/212/200.kif +0 -65
- data/lib/bioshogi/explain//346/210/246/345/236/213//346/243/256/344/270/213/343/202/267/343/202/271/343/203/206/343/203/240.kif +0 -118
- data/lib/bioshogi/explain//346/210/246/345/236/213//347/216/211/351/240/255/351/212/200.kif +0 -68
- data/lib/bioshogi/explain//346/210/246/345/236/213//347/233/270/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -14
- data/lib/bioshogi/explain//346/210/246/345/236/213//347/233/270/346/216/233/343/201/213/343/202/212.kif +0 -45
- data/lib/bioshogi/explain//346/210/246/345/236/213//347/237/242/345/200/211/344/270/255/351/243/233/350/273/212.kif +0 -71
- data/lib/bioshogi/explain//346/210/246/345/236/213//347/253/213/347/237/263/346/265/201/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -43
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/217/205/344/272/225/346/265/201/344/270/211/351/226/223/351/243/233/350/273/212.kif +0 -23
- data/lib/bioshogi/explain//346/210/246/345/236/213//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 +0 -24
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/242/226/351/243/233/350/273/212.kif +0 -60
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/344/272/244/346/217/233/345/236/213.kif +0 -19
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/344/272/244/346/217/233/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -64
- data/lib/bioshogi/explain//346/210/246/345/236/213//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 +0 -76
- data/lib/bioshogi/explain//346/210/246/345/236/213//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 +0 -76
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/247/222/351/201/223/343/202/252/343/203/274/343/203/227/343/203/263/345/233/233/351/226/223/351/243/233/350/273/212.kif +0 -12
- data/lib/bioshogi/explain//346/210/246/345/236/213//350/266/205/346/200/245/346/210/246.kif +0 -28
- data/lib/bioshogi/explain//346/210/246/345/236/213//351/231/275/345/213/225/346/214/257/343/202/212/351/243/233/350/273/212.kif +0 -62
- data/lib/bioshogi/explain//346/210/246/345/236/213//351/233/200/345/210/272/343/201/227.kif +0 -140
- data/lib/bioshogi/explain//346/210/246/345/236/213//351/254/274/346/256/272/343/201/227.kif +0 -173
- data/lib/bioshogi/explain//346/210/246/345/236/213//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 +0 -73
- data/lib/bioshogi/explain//346/210/246/345/236/213//357/274/224/342/206/222/357/274/223/346/210/246/346/263/225.kif +0 -72
@@ -0,0 +1,810 @@
|
|
1
|
+
# frozen-string-literal: true
|
2
|
+
|
3
|
+
module Bioshogi
|
4
|
+
module Analysis
|
5
|
+
class TechniqueMatcherInfo
|
6
|
+
LRUD_PLUS_TWO = [
|
7
|
+
[ 2, 0],
|
8
|
+
[-2, 0],
|
9
|
+
[ 0, 2],
|
10
|
+
[ 0, -2],
|
11
|
+
]
|
12
|
+
|
13
|
+
LR = [-1, +1]
|
14
|
+
LR2 = [[1, 2], [-1, -2]]
|
15
|
+
|
16
|
+
include ApplicationMemoryRecord
|
17
|
+
memory_record [
|
18
|
+
{
|
19
|
+
key: "金底の歩",
|
20
|
+
logic_desc: "打った歩が一番下の段でその上に自分の金がある",
|
21
|
+
verify_process: proc {
|
22
|
+
if false
|
23
|
+
p executor.drop_hand
|
24
|
+
soldier = executor.hand.soldier
|
25
|
+
p soldier.piece.key
|
26
|
+
p soldier.bottom_spaces
|
27
|
+
p soldier.place
|
28
|
+
p Place.lookup([soldier.place.x.value, soldier.place.y.value - soldier.location.value_sign])
|
29
|
+
end
|
30
|
+
|
31
|
+
# # 「打」でないとだめ
|
32
|
+
# unless executor.drop_hand
|
33
|
+
# throw :skip
|
34
|
+
# end
|
35
|
+
|
36
|
+
soldier = executor.hand.soldier
|
37
|
+
|
38
|
+
# 「最下段」でないとだめ
|
39
|
+
if soldier.bottom_spaces != 0
|
40
|
+
throw :skip
|
41
|
+
end
|
42
|
+
|
43
|
+
# # 「歩」でないとだめ
|
44
|
+
# if soldier.piece.key != :pawn
|
45
|
+
# throw :skip
|
46
|
+
# end
|
47
|
+
|
48
|
+
# 1つ上の位置
|
49
|
+
place = soldier.place
|
50
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
51
|
+
|
52
|
+
# 1つ上の位置になにかないとだめ
|
53
|
+
s = surface[v]
|
54
|
+
unless s
|
55
|
+
throw :skip
|
56
|
+
end
|
57
|
+
|
58
|
+
# 1つ上の駒が「自分」の「金」でないとだめ
|
59
|
+
unless s.piece.key == :gold && s.location == soldier.location
|
60
|
+
throw :skip
|
61
|
+
end
|
62
|
+
},
|
63
|
+
},
|
64
|
+
|
65
|
+
{
|
66
|
+
key: "一間竜",
|
67
|
+
logic_desc: "上下左右+2の位置に相手の玉がある",
|
68
|
+
verify_process: proc {
|
69
|
+
soldier = executor.hand.soldier
|
70
|
+
|
71
|
+
place = soldier.place
|
72
|
+
retv = LRUD_PLUS_TWO.any? do |x, y|
|
73
|
+
v = Place.lookup([place.x.value + x, place.y.value + y])
|
74
|
+
if s = surface[v]
|
75
|
+
s.piece.key == :king && s.location != soldier.location
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
unless retv
|
80
|
+
throw :skip
|
81
|
+
end
|
82
|
+
},
|
83
|
+
},
|
84
|
+
|
85
|
+
{
|
86
|
+
key: "こびん攻め",
|
87
|
+
logic_desc: "玉や飛の斜めの歩を攻める",
|
88
|
+
verify_process: proc {
|
89
|
+
soldier = executor.hand.soldier
|
90
|
+
place = soldier.place
|
91
|
+
|
92
|
+
# 端の場合は「こびん」とは言わないため省く
|
93
|
+
if place.x.value == 0 || place.x.value == Dimension::PlaceX.dimension.pred
|
94
|
+
throw :skip
|
95
|
+
end
|
96
|
+
|
97
|
+
# 相手が歩か?
|
98
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
99
|
+
if (s = surface[v]) && s.piece.key == :pawn && !s.promoted && s.location != soldier.location
|
100
|
+
else
|
101
|
+
throw :skip
|
102
|
+
end
|
103
|
+
|
104
|
+
# その歩の後ろの左右に玉か飛があるか?
|
105
|
+
retv = LR.any? do |x|
|
106
|
+
v = Place.lookup([place.x.value + x, place.y.value - (soldier.location.value_sign * 2)])
|
107
|
+
if s = surface[v]
|
108
|
+
(s.piece.key == :king || (s.piece.key == :rook && !s.promoted)) && s.location != soldier.location
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
unless retv
|
113
|
+
throw :skip
|
114
|
+
end
|
115
|
+
},
|
116
|
+
},
|
117
|
+
|
118
|
+
{
|
119
|
+
key: "位の確保",
|
120
|
+
logic_desc: "5段目の歩の下に銀を移動する",
|
121
|
+
verify_process: proc {
|
122
|
+
soldier = executor.hand.soldier
|
123
|
+
place = soldier.place
|
124
|
+
|
125
|
+
# 6段目に移動した
|
126
|
+
unless place.y.value == (Dimension::PlaceY.dimension / 2 + soldier.location.value_sign)
|
127
|
+
throw :skip
|
128
|
+
end
|
129
|
+
|
130
|
+
# 両端2列は含まない
|
131
|
+
padding = 2
|
132
|
+
unless (padding...(Dimension::PlaceX.dimension - padding)).cover?(place.x.value)
|
133
|
+
throw :skip
|
134
|
+
end
|
135
|
+
|
136
|
+
# 自分の歩の下に移動した
|
137
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
138
|
+
unless (s = surface[v]) && s.piece.key == :pawn && !s.promoted && s.location == soldier.location
|
139
|
+
throw :skip
|
140
|
+
end
|
141
|
+
|
142
|
+
# 自分の歩の上には何もないこと
|
143
|
+
v = Place.lookup([place.x.value, place.y.value - (soldier.location.value_sign * 2)])
|
144
|
+
if surface[v]
|
145
|
+
throw :skip
|
146
|
+
end
|
147
|
+
},
|
148
|
+
},
|
149
|
+
|
150
|
+
{
|
151
|
+
key: "パンツを脱ぐ",
|
152
|
+
logic_desc: "開戦前かつ、跳んだ桂が下から3つ目かつ、(近い方の)端から3つ目かつ、移動元の隣(端に近い方)に自分の玉がある",
|
153
|
+
verify_process: proc {
|
154
|
+
if false
|
155
|
+
p executor.move_hand
|
156
|
+
soldier = executor.move_hand.soldier
|
157
|
+
p soldier.piece.key
|
158
|
+
p soldier.bottom_spaces
|
159
|
+
p soldier.place
|
160
|
+
p Place.lookup([soldier.place.x.value, soldier.place.y.value - soldier.location.value_sign])
|
161
|
+
end
|
162
|
+
|
163
|
+
soldier = executor.move_hand.soldier
|
164
|
+
|
165
|
+
# 「3段目」でないとだめ
|
166
|
+
if soldier.bottom_spaces != 2
|
167
|
+
throw :skip
|
168
|
+
end
|
169
|
+
|
170
|
+
# 「端から3つ目」でなければだめ
|
171
|
+
if soldier.smaller_one_of_side_spaces != 2
|
172
|
+
throw :skip
|
173
|
+
end
|
174
|
+
|
175
|
+
# 移動元は「端から2つ目」でなければだめ(△61から飛んだ場合を除外する)
|
176
|
+
if executor.move_hand.origin_soldier.smaller_one_of_side_spaces != 1
|
177
|
+
throw :skip
|
178
|
+
end
|
179
|
+
|
180
|
+
# FIXME: origin_soldier
|
181
|
+
# 下に2つ、壁の方に2つ
|
182
|
+
place = soldier.place
|
183
|
+
v = Place.lookup([place.x.value + soldier.sign_to_goto_closer_side * 2, place.y.value + soldier.location.value_sign * 2])
|
184
|
+
|
185
|
+
# そこに何かないとだめ
|
186
|
+
s = surface[v]
|
187
|
+
unless s
|
188
|
+
throw :skip
|
189
|
+
end
|
190
|
+
|
191
|
+
# その駒が「自分」の「玉」でないとだめ
|
192
|
+
unless s.piece.key == :king && s.location == soldier.location
|
193
|
+
throw :skip
|
194
|
+
end
|
195
|
+
},
|
196
|
+
},
|
197
|
+
|
198
|
+
{
|
199
|
+
key: "腹銀",
|
200
|
+
logic_desc: "銀を打ったとき左右どちらかに相手の玉がある",
|
201
|
+
verify_process: proc {
|
202
|
+
soldier = executor.hand.soldier
|
203
|
+
|
204
|
+
# 左右に相手の玉がいるか?
|
205
|
+
place = soldier.place
|
206
|
+
retv = LR.any? do |x|
|
207
|
+
v = Place.lookup([place.x.value + x, place.y.value])
|
208
|
+
if s = surface[v]
|
209
|
+
s.piece.key == :king && s.location != soldier.location
|
210
|
+
end
|
211
|
+
end
|
212
|
+
unless retv
|
213
|
+
throw :skip
|
214
|
+
end
|
215
|
+
},
|
216
|
+
},
|
217
|
+
|
218
|
+
{
|
219
|
+
key: "尻銀",
|
220
|
+
logic_desc: "銀を打ったとき下に相手の玉がある",
|
221
|
+
verify_process: proc {
|
222
|
+
soldier = executor.hand.soldier
|
223
|
+
place = soldier.place
|
224
|
+
v = Place.lookup([place.x.value, place.y.value + soldier.location.value_sign])
|
225
|
+
unless s = surface[v]
|
226
|
+
throw :skip
|
227
|
+
end
|
228
|
+
unless s.piece.key == :king && s.location != soldier.location
|
229
|
+
throw :skip
|
230
|
+
end
|
231
|
+
},
|
232
|
+
},
|
233
|
+
|
234
|
+
{
|
235
|
+
key: "垂れ歩",
|
236
|
+
logic_desc: "打った歩の前が空で次に成れる余地がある場合",
|
237
|
+
verify_process: proc {
|
238
|
+
soldier = executor.hand.soldier
|
239
|
+
|
240
|
+
# 2, 3, 4段目でなければだめ(1段目は反則)
|
241
|
+
v = soldier.top_spaces
|
242
|
+
unless 1 <= v && v <= Dimension::PlaceY.promotable_depth
|
243
|
+
throw :skip
|
244
|
+
end
|
245
|
+
|
246
|
+
# 一歩先が空
|
247
|
+
place = soldier.place
|
248
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
249
|
+
if surface[v]
|
250
|
+
throw :skip
|
251
|
+
end
|
252
|
+
},
|
253
|
+
},
|
254
|
+
|
255
|
+
# 単に「18角打」をチェックした方がいい
|
256
|
+
# {
|
257
|
+
# key: "遠見の角",
|
258
|
+
# logic_desc: "打った角の位置が下から2番目かつ近い方の端から1番目(つまり自分の香の上の位置)",
|
259
|
+
# verify_process: proc {
|
260
|
+
# soldier = executor.hand.soldier
|
261
|
+
#
|
262
|
+
# # 8段目でなければだめ
|
263
|
+
# if soldier.bottom_spaces != 1
|
264
|
+
# throw :skip
|
265
|
+
# end
|
266
|
+
#
|
267
|
+
# # 端でなければだめ
|
268
|
+
# if soldier.smaller_one_of_side_spaces != 0
|
269
|
+
# throw :skip
|
270
|
+
# end
|
271
|
+
# },
|
272
|
+
# },
|
273
|
+
|
274
|
+
{
|
275
|
+
key: "割り打ちの銀",
|
276
|
+
logic_desc: "打った銀の後ろの左右両方に相手の飛か金がある",
|
277
|
+
verify_process: proc {
|
278
|
+
soldier = executor.hand.soldier
|
279
|
+
place = soldier.place
|
280
|
+
retv = LR.all? do |x|
|
281
|
+
v = Place.lookup([place.x.value + x, place.y.value + soldier.location.value_sign])
|
282
|
+
if s = surface[v]
|
283
|
+
if s.location != soldier.location
|
284
|
+
(s.piece.key == :rook && !s.promoted) || s.piece.key == :gold
|
285
|
+
end
|
286
|
+
end
|
287
|
+
end
|
288
|
+
unless retv
|
289
|
+
throw :skip
|
290
|
+
end
|
291
|
+
},
|
292
|
+
},
|
293
|
+
|
294
|
+
{
|
295
|
+
key: "たすきの銀",
|
296
|
+
logic_desc: "打った銀の斜めに飛と金がある",
|
297
|
+
verify_process: proc {
|
298
|
+
soldier = executor.hand.soldier
|
299
|
+
place = soldier.place # 72
|
300
|
+
retv = [1, -1].any? do |x|
|
301
|
+
v = Place.lookup([place.x.value - x, place.y.value - soldier.location.value_sign]) # 81
|
302
|
+
if s = surface[v]
|
303
|
+
if s.piece.key == :rook && !s.promoted && s.location != soldier.location # 左上に相手の飛車がある
|
304
|
+
v = Place.lookup([place.x.value + x, place.y.value + soldier.location.value_sign]) # 63
|
305
|
+
if s = surface[v]
|
306
|
+
(s.piece.key == :gold || (s.piece.key == :silver && s.promoted)) && s.location != soldier.location # 右下に相手の金または成銀がある
|
307
|
+
# s.piece.key == :gold && s.location != soldier.location # 右下に相手の金がある
|
308
|
+
end
|
309
|
+
end
|
310
|
+
end
|
311
|
+
end
|
312
|
+
unless retv
|
313
|
+
throw :skip
|
314
|
+
end
|
315
|
+
},
|
316
|
+
},
|
317
|
+
|
318
|
+
{
|
319
|
+
key: "たすきの角",
|
320
|
+
logic_desc: "打った角の斜めに飛と金がある",
|
321
|
+
verify_process: proc {
|
322
|
+
instance_eval(&TechniqueMatcherInfo[:"たすきの銀"].verify_process)
|
323
|
+
},
|
324
|
+
},
|
325
|
+
|
326
|
+
{
|
327
|
+
key: "桂頭の銀",
|
328
|
+
logic_desc: "打った銀の上に相手の桂がある",
|
329
|
+
verify_process: proc {
|
330
|
+
soldier = executor.hand.soldier
|
331
|
+
place = soldier.place
|
332
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
333
|
+
unless s = surface[v]
|
334
|
+
throw :skip
|
335
|
+
end
|
336
|
+
unless s.piece.key == :knight && !s.promoted && s.location != soldier.location
|
337
|
+
throw :skip
|
338
|
+
end
|
339
|
+
},
|
340
|
+
},
|
341
|
+
|
342
|
+
{
|
343
|
+
key: "歩頭の桂",
|
344
|
+
logic_desc: "打った桂の上に相手の歩がある",
|
345
|
+
verify_process: proc {
|
346
|
+
soldier = executor.hand.soldier
|
347
|
+
place = soldier.place
|
348
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
349
|
+
unless s = surface[v]
|
350
|
+
throw :skip
|
351
|
+
end
|
352
|
+
unless s.piece.key == :pawn && !s.promoted && s.location != soldier.location
|
353
|
+
throw :skip
|
354
|
+
end
|
355
|
+
},
|
356
|
+
},
|
357
|
+
|
358
|
+
{
|
359
|
+
key: "銀ばさみ",
|
360
|
+
logic_desc: "動かした歩の左右どちらかに相手の銀があり、その向こうに自分の歩がある。また歩の前に何もないこと。",
|
361
|
+
verify_process: proc {
|
362
|
+
# 「打」ではだめ
|
363
|
+
if executor.drop_hand
|
364
|
+
throw :skip
|
365
|
+
end
|
366
|
+
|
367
|
+
# 「同歩」ではだめ
|
368
|
+
if executor.move_hand.captured_soldier
|
369
|
+
throw :skip
|
370
|
+
end
|
371
|
+
|
372
|
+
soldier = executor.hand.soldier
|
373
|
+
place = soldier.place
|
374
|
+
|
375
|
+
# 進めた歩の前が空である
|
376
|
+
flag = false
|
377
|
+
if v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
378
|
+
unless surface[v]
|
379
|
+
flag = true
|
380
|
+
end
|
381
|
+
end
|
382
|
+
unless flag
|
383
|
+
throw :skip
|
384
|
+
end
|
385
|
+
|
386
|
+
matched = LR2.any? do |x1, x2|
|
387
|
+
silver_exist = false
|
388
|
+
pawn_exist = false
|
389
|
+
|
390
|
+
# 隣に相手の銀がある
|
391
|
+
if v = Place.lookup([place.x.value + x1, place.y.value])
|
392
|
+
if s = surface[v]
|
393
|
+
if s.piece.key == :silver && !s.promoted && s.location != soldier.location
|
394
|
+
silver_exist = true
|
395
|
+
end
|
396
|
+
end
|
397
|
+
end
|
398
|
+
# その隣に自分の歩がある
|
399
|
+
if silver_exist
|
400
|
+
if v = Place.lookup([place.x.value + x2, place.y.value])
|
401
|
+
if s = surface[v]
|
402
|
+
if s.piece.key == :pawn && !s.promoted && s.location == soldier.location
|
403
|
+
pawn_exist = true
|
404
|
+
end
|
405
|
+
end
|
406
|
+
end
|
407
|
+
end
|
408
|
+
# その歩の前が空
|
409
|
+
if pawn_exist
|
410
|
+
if v = Place.lookup([place.x.value + x2, place.y.value - soldier.location.value_sign])
|
411
|
+
unless surface[v]
|
412
|
+
true
|
413
|
+
end
|
414
|
+
end
|
415
|
+
end
|
416
|
+
end
|
417
|
+
|
418
|
+
unless matched
|
419
|
+
throw :skip
|
420
|
+
end
|
421
|
+
},
|
422
|
+
},
|
423
|
+
|
424
|
+
{
|
425
|
+
key: "端玉には端歩",
|
426
|
+
logic_desc: nil,
|
427
|
+
verify_process: proc {
|
428
|
+
soldier = executor.hand.soldier
|
429
|
+
place = soldier.place
|
430
|
+
|
431
|
+
# 端の場合のみ
|
432
|
+
if place.x.value == 0 || place.x.value == Dimension::PlaceX.dimension.pred
|
433
|
+
else
|
434
|
+
throw :skip
|
435
|
+
end
|
436
|
+
|
437
|
+
# 進めた歩の前が歩である
|
438
|
+
pawn_found = false
|
439
|
+
if v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
440
|
+
if s = surface[v]
|
441
|
+
if s.piece.key == :pawn && !s.promoted && s.location != soldier.location
|
442
|
+
pawn_found = true
|
443
|
+
end
|
444
|
+
end
|
445
|
+
end
|
446
|
+
unless pawn_found
|
447
|
+
throw :skip
|
448
|
+
end
|
449
|
+
|
450
|
+
# その相手の歩の奥に相手の玉がいる
|
451
|
+
king_found = false
|
452
|
+
(2...Dimension::PlaceY.dimension).each do |y|
|
453
|
+
if v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign * y])
|
454
|
+
if s = surface[v]
|
455
|
+
if s.piece.key == :king && s.location != soldier.location
|
456
|
+
king_found = true
|
457
|
+
end
|
458
|
+
break
|
459
|
+
else
|
460
|
+
# 空ならさらに奥を見る
|
461
|
+
end
|
462
|
+
else
|
463
|
+
break
|
464
|
+
end
|
465
|
+
end
|
466
|
+
unless king_found
|
467
|
+
throw :skip
|
468
|
+
end
|
469
|
+
|
470
|
+
# 端の下に香がいる
|
471
|
+
lance_found = false
|
472
|
+
bottom_place = Place.lookup([place.x.value, place.y.value + soldier.location.value_sign * soldier.bottom_spaces]) # 99
|
473
|
+
Dimension::PlaceY.dimension.times do |y|
|
474
|
+
v = Place.lookup([bottom_place.x.value, bottom_place.y.value - (soldier.location.value_sign * y)])
|
475
|
+
if s = surface[v]
|
476
|
+
if s.piece.key == :lance && !s.promoted && s.location == soldier.location
|
477
|
+
lance_found = true
|
478
|
+
end
|
479
|
+
break
|
480
|
+
else
|
481
|
+
# 空ならさらに上を見る
|
482
|
+
end
|
483
|
+
end
|
484
|
+
unless lance_found
|
485
|
+
throw :skip
|
486
|
+
end
|
487
|
+
},
|
488
|
+
},
|
489
|
+
|
490
|
+
# {
|
491
|
+
# key: "ロケット",
|
492
|
+
# logic_desc: "打った香の下に自分の香か飛か龍がある",
|
493
|
+
# verify_process: proc {
|
494
|
+
# # p ["#{__FILE__}:#{__LINE__}", __method__, ]
|
495
|
+
# soldier = executor.hand.soldier
|
496
|
+
# # p soldier.bottom_spaces
|
497
|
+
# # p place
|
498
|
+
# # p place.y
|
499
|
+
# # p place.y.flip
|
500
|
+
# # place = Place.lookup([place.x.value, place.y.value + soldier.bottom_spaces * soldier.location.value_sign])
|
501
|
+
#
|
502
|
+
# rook_count = 0
|
503
|
+
# lance_count = 0
|
504
|
+
# if soldier.piece.key == :rook
|
505
|
+
# rook_count += 1
|
506
|
+
# else
|
507
|
+
# lance_count += 1
|
508
|
+
# end
|
509
|
+
#
|
510
|
+
# [1, -1].each do |sign| # 1:↓ -1:↑
|
511
|
+
# (1..).each do |i|
|
512
|
+
# place = Place.lookup([soldier.place.x.value, soldier.place.y.value + (i * soldier.location.value_sign * sign)])
|
513
|
+
# unless place
|
514
|
+
# break
|
515
|
+
# end
|
516
|
+
# if s = surface[place]
|
517
|
+
# if s.location == soldier.location
|
518
|
+
# if s.piece.key == :rook
|
519
|
+
# rook_count += 1
|
520
|
+
# elsif s.piece.key == :lance && !s.promoted
|
521
|
+
# lance_count += 1
|
522
|
+
# else
|
523
|
+
# break
|
524
|
+
# end
|
525
|
+
# else
|
526
|
+
# break
|
527
|
+
# end
|
528
|
+
# end
|
529
|
+
# end
|
530
|
+
# end
|
531
|
+
#
|
532
|
+
# p rook_count
|
533
|
+
# p lance_count
|
534
|
+
#
|
535
|
+
# count = rook_count + lance_count
|
536
|
+
# if lance_count >= 1 && count >= 2
|
537
|
+
# # raise "ここで count 段ロケットということはわかったがこれをどうタグに入れるか?"
|
538
|
+
# else
|
539
|
+
# throw :skip
|
540
|
+
# end
|
541
|
+
# },
|
542
|
+
# },
|
543
|
+
|
544
|
+
{
|
545
|
+
key: "田楽刺し",
|
546
|
+
logic_desc: "角の頭に打つ",
|
547
|
+
verify_process: proc {
|
548
|
+
soldier = executor.hand.soldier
|
549
|
+
place = soldier.place
|
550
|
+
mode = :walk_to_bishop
|
551
|
+
loop do
|
552
|
+
place = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
553
|
+
unless place
|
554
|
+
throw :skip # 盤面の外なので終わり
|
555
|
+
end
|
556
|
+
if s = surface[place]
|
557
|
+
if s.location == soldier.location
|
558
|
+
throw :skip # 自分と同じ駒があった場合はおわり
|
559
|
+
end
|
560
|
+
if mode == :walk_to_bishop
|
561
|
+
if s.piece.key == :bishop && !s.promoted
|
562
|
+
mode = :walk_to_king
|
563
|
+
end
|
564
|
+
else
|
565
|
+
if s.piece.dengaku_target
|
566
|
+
break
|
567
|
+
end
|
568
|
+
end
|
569
|
+
else
|
570
|
+
# 駒がないので次のマスに進む
|
571
|
+
end
|
572
|
+
end
|
573
|
+
},
|
574
|
+
},
|
575
|
+
|
576
|
+
{
|
577
|
+
key: "ふんどしの桂",
|
578
|
+
logic_desc: "打った桂の2つ前の左右に自分より価値の高い相手の駒がある",
|
579
|
+
verify_process: proc {
|
580
|
+
soldier = executor.hand.soldier
|
581
|
+
place = soldier.place
|
582
|
+
retv = LR.all? do |x|
|
583
|
+
v = Place.lookup([place.x.value + x, place.y.value - soldier.location.value_sign * 2])
|
584
|
+
if s = surface[v]
|
585
|
+
if s.location != soldier.location
|
586
|
+
s.abs_weight > soldier.abs_weight
|
587
|
+
end
|
588
|
+
end
|
589
|
+
end
|
590
|
+
unless retv
|
591
|
+
throw :skip
|
592
|
+
end
|
593
|
+
},
|
594
|
+
},
|
595
|
+
|
596
|
+
{
|
597
|
+
key: "土下座の歩",
|
598
|
+
logic_desc: nil,
|
599
|
+
verify_process: proc {
|
600
|
+
soldier = executor.hand.soldier
|
601
|
+
place = soldier.place
|
602
|
+
|
603
|
+
# 8,9段目であること
|
604
|
+
if soldier.bottom_spaces < 2
|
605
|
+
else
|
606
|
+
throw :skip
|
607
|
+
end
|
608
|
+
|
609
|
+
# 一つ上が空であること
|
610
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
611
|
+
if surface[v]
|
612
|
+
throw :skip
|
613
|
+
end
|
614
|
+
|
615
|
+
# 二つ上に相手の前に進める駒があること
|
616
|
+
flag = false
|
617
|
+
v = Place.lookup([place.x.value, place.y.value - (soldier.location.value_sign * 2)])
|
618
|
+
if s = surface[v]
|
619
|
+
if s.location != soldier.location
|
620
|
+
if s.promoted || s.piece.maesusumeru
|
621
|
+
flag = true
|
622
|
+
end
|
623
|
+
end
|
624
|
+
end
|
625
|
+
unless flag
|
626
|
+
throw :skip
|
627
|
+
end
|
628
|
+
},
|
629
|
+
},
|
630
|
+
|
631
|
+
{
|
632
|
+
key: "たたきの歩",
|
633
|
+
logic_desc: "取ると取り返せるような場合もたたきの歩として判別されるのであまり正しくない",
|
634
|
+
verify_process: proc {
|
635
|
+
soldier = executor.hand.soldier
|
636
|
+
place = soldier.place
|
637
|
+
|
638
|
+
# # 中盤以降は無効とする
|
639
|
+
# if executor.container.turn_info.display_turn.next >= 42
|
640
|
+
# throw :skip
|
641
|
+
# end
|
642
|
+
|
643
|
+
# 打った位置が1から4段目である
|
644
|
+
if soldier.top_spaces <= Dimension::PlaceY.promotable_depth
|
645
|
+
else
|
646
|
+
throw :skip
|
647
|
+
end
|
648
|
+
|
649
|
+
# 相手が「成駒」または「飛金銀香玉」である
|
650
|
+
flag = false
|
651
|
+
v = Place.lookup([place.x.value, place.y.value - soldier.location.value_sign])
|
652
|
+
if s = surface[v]
|
653
|
+
if s.location != soldier.location
|
654
|
+
if s.promoted || s.piece.tatakare_target
|
655
|
+
flag = true
|
656
|
+
end
|
657
|
+
end
|
658
|
+
end
|
659
|
+
unless flag
|
660
|
+
throw :skip
|
661
|
+
end
|
662
|
+
|
663
|
+
# 打った位置の後ろに自分の(前に進めることのできる)駒があるなら無効とする (厳密な判定ではない)
|
664
|
+
v = Place.lookup([place.x.value, place.y.value + soldier.location.value_sign])
|
665
|
+
if s = surface[v]
|
666
|
+
if s.location == soldier.location
|
667
|
+
if s.promoted || s.piece.maesusumeru
|
668
|
+
throw :skip
|
669
|
+
end
|
670
|
+
end
|
671
|
+
end
|
672
|
+
},
|
673
|
+
},
|
674
|
+
|
675
|
+
{
|
676
|
+
key: "継ぎ歩",
|
677
|
+
logic_desc: "",
|
678
|
+
verify_process: proc {
|
679
|
+
# 0手前: ▲25歩打 継ぎ歩 したらここに来る
|
680
|
+
|
681
|
+
soldier = executor.hand.soldier
|
682
|
+
x = soldier.place.x
|
683
|
+
y = soldier.place.y
|
684
|
+
y2 = y.value - soldier.location.value_sign # 24歩のY座標(整数値)
|
685
|
+
|
686
|
+
# 1手前: △24同歩 取らされる
|
687
|
+
flag = false
|
688
|
+
if hand_log = executor.container.hand_logs[-1]
|
689
|
+
if s = hand_log&.move_hand&.soldier
|
690
|
+
flag = (s.place.x == x && s.place.y.value == y2 && s.piece.key == :pawn && !s.promoted && s.location != soldier.location)
|
691
|
+
end
|
692
|
+
end
|
693
|
+
unless flag
|
694
|
+
throw :skip
|
695
|
+
end
|
696
|
+
|
697
|
+
# 2手前: ▲24歩(25) 突き
|
698
|
+
flag = false
|
699
|
+
if hand_log = executor.container.hand_logs[-2]
|
700
|
+
if s = hand_log&.move_hand&.soldier # 最初を突き捨てとするため hand ではなく move_hand にすること
|
701
|
+
flag = (s.place.x == x && s.place.y.value == y2 && s.piece.key == :pawn && !s.promoted && s.location == soldier.location)
|
702
|
+
end
|
703
|
+
end
|
704
|
+
unless flag
|
705
|
+
throw :skip
|
706
|
+
end
|
707
|
+
},
|
708
|
+
},
|
709
|
+
|
710
|
+
{
|
711
|
+
key: "連打の歩",
|
712
|
+
logic_desc: "",
|
713
|
+
verify_process: proc {
|
714
|
+
# 0手前: ▲25歩打 継ぎ歩 したらここに来る
|
715
|
+
|
716
|
+
soldier = executor.hand.soldier
|
717
|
+
x = soldier.place.x
|
718
|
+
y = soldier.place.y
|
719
|
+
y2 = y.value - soldier.location.value_sign # 24歩のY座標(整数値)
|
720
|
+
|
721
|
+
# 1手前: △24同歩 取らされる
|
722
|
+
flag = false
|
723
|
+
if hand_log = executor.container.hand_logs[-1]
|
724
|
+
if s = hand_log&.move_hand&.soldier
|
725
|
+
flag = (s.place.x == x && s.place.y.value == y2 && s.location != soldier.location)
|
726
|
+
end
|
727
|
+
end
|
728
|
+
unless flag
|
729
|
+
throw :skip
|
730
|
+
end
|
731
|
+
|
732
|
+
# 2手前: ▲24歩打
|
733
|
+
flag = false
|
734
|
+
if hand_log = executor.container.hand_logs[-2]
|
735
|
+
if s = hand_log&.drop_hand&.soldier
|
736
|
+
flag = (s.place.x == x && s.place.y.value == y2 && s.location == soldier.location)
|
737
|
+
end
|
738
|
+
end
|
739
|
+
unless flag
|
740
|
+
throw :skip
|
741
|
+
end
|
742
|
+
},
|
743
|
+
},
|
744
|
+
|
745
|
+
{
|
746
|
+
key: "継ぎ桂",
|
747
|
+
logic_desc: "打った桂の2つ後ろの左右のどちらかに自分の桂がある",
|
748
|
+
verify_process: proc {
|
749
|
+
soldier = executor.hand.soldier
|
750
|
+
place = soldier.place
|
751
|
+
retv = LR.any? do |x|
|
752
|
+
v = Place.lookup([place.x.value + x, place.y.value + soldier.location.value_sign * 2])
|
753
|
+
if s = surface[v]
|
754
|
+
s.piece.key == :knight && !s.promoted && s.location == soldier.location
|
755
|
+
end
|
756
|
+
end
|
757
|
+
unless retv
|
758
|
+
throw :skip
|
759
|
+
end
|
760
|
+
},
|
761
|
+
},
|
762
|
+
|
763
|
+
{
|
764
|
+
key: "入玉",
|
765
|
+
logic_desc: "玉が移動して上のスペースが3つの状態から2つの状態になった",
|
766
|
+
verify_process: proc {
|
767
|
+
soldier = executor.hand.soldier
|
768
|
+
if soldier.top_spaces != Dimension::PlaceY.promotable_depth - 1
|
769
|
+
throw :skip
|
770
|
+
end
|
771
|
+
|
772
|
+
origin_soldier = executor.hand.origin_soldier
|
773
|
+
if origin_soldier.top_spaces != Dimension::PlaceY.promotable_depth
|
774
|
+
throw :skip
|
775
|
+
end
|
776
|
+
|
777
|
+
# ここで相手を見て、相手も入玉していたら、次のように相入玉とする方法もあるが
|
778
|
+
# player.skill_set.note_infos << Analysis::NoteInfo["相入玉"]
|
779
|
+
# それでなくてもここは処理が重いのでやらない
|
780
|
+
# formatter.container_run_once の方で、最後にチェックしている
|
781
|
+
},
|
782
|
+
},
|
783
|
+
|
784
|
+
{
|
785
|
+
key: "角不成",
|
786
|
+
logic_desc: "相手陣地に入るときと出るときの両方チェックする",
|
787
|
+
verify_process: proc {
|
788
|
+
unless executor.hand.origin_soldier.next_promotable?(executor.soldier.place)
|
789
|
+
throw :skip
|
790
|
+
end
|
791
|
+
},
|
792
|
+
},
|
793
|
+
|
794
|
+
{
|
795
|
+
key: "飛車不成",
|
796
|
+
logic_desc: "角不成と同じ方法でよい",
|
797
|
+
verify_process: proc {
|
798
|
+
unless executor.hand.origin_soldier.next_promotable?(executor.soldier.place)
|
799
|
+
throw :skip
|
800
|
+
end
|
801
|
+
},
|
802
|
+
},
|
803
|
+
]
|
804
|
+
end
|
805
|
+
end
|
806
|
+
end
|
807
|
+
# ~> -:16:in `<class:TechniqueMatcherInfo>': uninitialized constant Bioshogi::Analysis::TechniqueMatcherInfo::ApplicationMemoryRecord (NameError)
|
808
|
+
# ~> from -:5:in `<module:Analysis>'
|
809
|
+
# ~> from -:4:in `<module:Bioshogi>'
|
810
|
+
# ~> from -:3:in `<main>'
|