sdim longRange@Chess,,5,5 longRange@Chess(0,0)="\& […]
sdim longRange@Chess,,5,5 longRange@Chess(0,0)="\& […]
sdim longRange@Chess,,5,5longRange@Chess(0,0)="\","","|","","/"longRange@Chess(0,1)="","\","|","/",""longRange@Chess(0,2)="―","―","*","―","―"longRange@Chess(0,3)="","/","|","\",""longRange@Chess(0,4)="/","","|","","\"#module Chess __name,__type,virtual_attack#define super(%1) \__name=%1 :\virtual_attack=*override_attackreturn#modcfunc namereturn __name#modfunc set_name str _name__name=_name:return#modcfunc typereturn __type#modfunc set_type str _type__type=_type:return#modfunc local attack int _x,int _yx=_x:y=_ygosub virtual_attack: return#define global attack(%1,%2=ginfo_cx,%3=ginfo_cy) attack@Chess %1,%2,%3#deffunc local attackCore str _type,array rangemargin=23repeat length2(range)xnt=cntrepeat length(range)if xnt=2 & cnt=2 {pos x,ymes _type}else:if range(xnt,cnt) {pos x+(xnt-2)*margin,y+(cnt-2)*marginif range(xnt,cnt)=2 {mes longRange(xnt,cnt)}else {mes "☆"}}looploopreturn#global#module Fu __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Fu,%2#define news(%1,%2) newmod %1,Fu,%2#modinit str _name__type="歩"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,0,0,0range(0,1)=0,0,1,0,0range(0,2)=0,0,5,0,0range(0,3)=0,0,0,0,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#global#module Kyosha __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Kyosha,%2#define news(%1,%2) newmod %1,Kyosha,%2#modinit str _name__type="香"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,2,0,0range(0,1)=0,0,2,0,0range(0,2)=0,0,5,0,0range(0,3)=0,0,0,0,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#global#module Kema __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Kema,%2#define news(%1,%2) newmod %1,Kema,%2#modinit str _name__type="桂"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,1,0,1,0range(0,1)=0,0,0,0,0range(0,2)=0,0,5,0,0range(0,3)=0,0,0,0,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#global#module Ginsho __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Ginsho,%2#define news(%1,%2) newmod %1,Ginsho,%2#modinit str _name__type="銀"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,0,0,0range(0,1)=0,1,1,1,0range(0,2)=0,0,5,0,0range(0,3)=0,1,0,1,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#global#module Kinsho __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Kinsho,%2#define news(%1,%2) newmod %1,Kinsho,%2#modinit str _name__type="金"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,0,0,0range(0,1)=0,1,1,1,0range(0,2)=0,1,5,1,0range(0,3)=0,0,1,0,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#global#module Kakusho __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Kakusho,%2#define news(%1,%2) newmod %1,Kakusho,%2#modinit str _name__type="角"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=2,0,0,0,2range(0,1)=0,2,0,2,0range(0,2)=0,0,5,0,0range(0,3)=0,2,0,2,0range(0,4)=2,0,0,0,2attackCore@Chess __type@Chess,rangereturn#global#module Hisha __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Hisha,%2#define news(%1,%2) newmod %1,Hisha,%2#modinit str _name__type="飛"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,2,0,0range(0,1)=0,0,2,0,0range(0,2)=2,2,5,2,2range(0,3)=0,0,2,0,0range(0,4)=0,0,2,0,0attackCore@Chess __type@Chess,rangereturn#global#module Ryuma __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Ryuma,%2#define news(%1,%2) newmod %1,Ryuma,%2#modinit str _name__type="馬"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=2,0,0,0,2range(0,1)=0,2,1,2,0range(0,2)=0,1,5,1,0range(0,3)=0,2,1,2,0range(0,4)=2,0,0,0,2attackCore@Chess __type@Chess,rangereturn#global#module Ryuoh __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Ryuoh,%2#define news(%1,%2) newmod %1,Ryuoh,%2#modinit str _name__type="龍"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,2,0,0range(0,1)=0,1,2,1,0range(0,2)=2,2,5,2,2range(0,3)=0,1,2,1,0range(0,4)=0,0,2,0,0attackCore@Chess __type@Chess,rangereturn#global#module Gyokusho __name,__type,virtual_attack#define new(%1,%2) dimtype %1,5: newmod %1,Gyokusho,%2#define news(%1,%2) newmod %1,Gyokusho,%2#modinit str _name__type="玉"super@Chess _namereturn*override_attackdim range,5,5range(0,0)=0,0,0,0,0range(0,1)=0,1,1,1,0range(0,2)=0,1,5,1,0range(0,3)=0,1,1,1,0range(0,4)=0,0,0,0,0attackCore@Chess __type@Chess,rangereturn#globalnew@Fu unit,"ポーン"news@Kyosha unit,"ランス"news@Kema unit,"ナイト"news@Ginsho unit,"シルバージェネラル"news@Kinsho unit,"ゴールドジェネラル"news@Kakusho unit,"ビショップ"news@Hisha unit,"ルーク"news@Ryuma unit,"Pビショップ"news@Ryuoh unit,"Pルーク"news@Gyokusho unit,"キング"foreach unitx=cnt\5*120+10y=cnt/5*200+10pos x+45-strlen(name(unit.cnt))*4.5,ymes "【"+name(unit.cnt)+"】"attack unit.cnt,x+50,y+70loop