- 注册时间
- 2008-5-4
- 最后登录
- 1970-1-1
|
想编一个能判胜负的五子棋游戏,可是判胜负的部分总是写不好,代码很繁琐,还总是有BUG:Q :Q
昨天看到o_o写的很简单的五子棋,判胜负的语句很简单,可我改成用数组时却不行!!
↑↑↑
源码:
10 GRAPH:CLS:FOR X= 4 TO 148 STEP 8: FOR Y=4 TO 68 STEP 8: BOX X,Y,X+8,Y+8: NEXT:NEXT
20 A=1:X=76:Y=44 :B=0
30 X=X+160*(X<4)-160*(X>156):Y=Y+80*( Y<4 )-80*(Y>76)
40 BOX X-4,Y-4,X+4,Y+4,1,2:M=ASC(INKEY$):BOX X-4,Y-4,X+4,Y+4,1,2
50 Y=Y-8*(M=20)+8*(M=21):X=X+8*(M=22)-8*(M=23) :IF M=29 GOTO 10
60 IF M=13 AND PEEK(20*Y+(X-4)/8+2436)<>62 GOTO 100
70 IF M=31 AND B=1 THEN CIRCLE W,V,3,1,0 : LINE W-4,V,W+4,V : LINE W,V-4,W,V+4:A=(A=0) :B=0
80 IF M=27 THEN CLS:LOCATE 3,9:PRINT"退出":END
90 GOTO 30
100 CIRCLE X,Y,3,A,1:CIRCLE X,Y,2,1,A:W=X:V=Y:B=1
110 Z=65+62*A:K$(1)="白棋":K$(2)="黑棋":P=0:Q=0:R=0:S=0:FOR L=-32 TO 32 STEP +8
120 E=(PEEK(20*(Y+L)+(X+L-4)/8+2536)=Z):F=(PEEK(20*(Y-L)+(X+L-4)/8+2536)=Z)
130 G=(PEEK(20*Y+(X+L-4)/8+2536)=Z):H=(PEEK(20*(Y+L)+(X-4)/8+2536)=Z)
140 P=E*(P+E):Q=F*(Q+F):R=G*(R+G):S=H*(S+H)
150 IF P=5 OR Q=5 OR R=5 OR S=5 THEN CLS:LOCATE 3,6: PRINT K$(A+1);"胜啦!":END
160 NEXT:A=(A=0):GOTO 30
这是为什么啊!!!:Q
还有谁能写一段判断胜负的语句,语句不要太多啊,帮帮我啊
[[i] 本帖最后由 Amlo 于 2008-8-25 14:32 编辑 [/i]] |
|