回 帖 发 新 帖 刷新版面

主题:坦克

CLS
SCREEN 12
x = 320: y = 240
DIM u(300), g(300), t(300), n(300), p(300)
FOR i = 1 TO 4: READ a(i), b(i): NEXT i
DATA -1,0,0,1,1,0,0,-1
FOR i = 1 TO 4: READ c(i), d(i), e(i), f(i): NEXT i
DATA 15,20,15,-10,25,30,55,30,15,40,15,70,5,30,-25,30
w = 1
DO
LINE (x, y)-(x + 30, y + 50), 2, BF
LINE (x, y)-(x + 5, y + 50), 0, BF
LINE (x + 25, y)-(x + 30, y + 50), 0, BF
LINE (x + 5, y + 20)-(x + 25, y + 40), 1, B
q = x + e(w): b = y + f(w)
LINE (x + c(w), y + d(w))-(x + e(w), y + f(w))
FOR i = 1 TO 300
IF p(i) = 1 THEN
CIRCLE (u(i), g(i)), 2, 4
u(i) = u(i) + t(i) * 7: g(i) = g(i) + n(i) * 7
IF u(i) > 640 OR u(i) < 0 AND g(i) > 480 OR g(i) < 0 THEN p(i) = 0: r = r - 1
END IF
NEXT i
FOR i = 1 TO 200000: NEXT i
LINE (0, 0)-(640, 480), 3, BF
k$ = UCASE$(INKEY$)
IF k$ = "W" THEN w = 1
IF k$ = "D" THEN w = 2
IF k$ = "S" THEN w = 3
IF k$ = "A" THEN w = 4
IF k$ = CHR$(0) + "K" THEN x = x - 15
IF k$ = CHR$(0) + "M" THEN x = x + 15
IF k$ = CHR$(0) + "H" THEN y = y - 15
IF k$ = CHR$(0) + "P" THEN y = y + 15
IF k$ = CHR$(32) THEN
r = r + 1: IF r <= 300 THEN p(r) = 1: u(r) = q: g(r) = b: t(r) = b(w): n(r) = a(w)
END IF
IF k$ = CHR$(27) THEN END
LOOP

回复列表 (共2个回复)

沙发

支持一下..
一般来说...
我们在判断按键太多的情况下...不用IF...
用select case ......这样看起来爽一点
另外.如果刻意的去追求效果的话..还是调用图片可能效果更好一点

板凳


很好!我目前是做不出来!!!没想到坦克也能漂移!!![em2]

我来回复

您尚未登录,请登录后再回复。点此登录或注册