X



MSX-BASICの奥義を伝授するスレ

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
NGNG
忘れない内に皆に伝授しときましょう。

・多色刷り、
・ドット単位横スクロール、
・エスケープシークエンス・・・
色々ありましたよね。
思い出したらなんでも書き込みよろしく。
2007/04/09(月) 22:39:16
S=STICK(0)+STICK(1)

任意のドット数で動かす(この場合、2ドットずつ)

X=X-2*(S=7)*(X>0)+2*(S=3)*(X<100)
Y=Y-2*(S=1)*(Y>0)+2*(S=5)*(Y<100)

斜め移動

X=X-(S=2)-(S=3)-(S=4)+(S=6)+(S=7)+(S=8)
Y=Y-(S=4)-(S=5)-(S=6)+(S=8)+(S=1)+(S=2)

簡単に書けば、こうだな。カッコの中の条件が揃えば−1になるから、
そこから考えれば。
2007/04/09(月) 23:20:51
ベーマガとかでは、この書き方が推奨されていたけど
漏れ自身は必ずしもこの書き方にこだわる必要もないと思っている。
べーしっ君(ベーシックコンパイラ)でもコンパイルできないし。

10 DEFINT A-Z:SCREEN1,2,0:KEYOFF:WIDTH32
20 SPRITE$(0)=STRING$(32,255)
30 X=100:Y=100
40 GOSUB 1000
100 S=STICK(0)+STICK(1)
110 X=X+MX(S):Y=Y+MY(S)
120 PUTSPRITE 0,(X,Y),15,0
130 GOTO 100
1000 '
1010 DIM MX(8),MY(8)
1020 FOR I=0 TO 8
1030 READ A,B
1040 MX(I)=A:MY(I)=B
1050 NEXT I
1060 RETURN
1070 DATA 0,0, 0,-2, 2,-2, 2,0, 2,2, 0,2, -2,2, -2,0, -2,-2

機械語ライクに考えると、こんな書き方になる。
ON S GOSUB〜よりもスッキリとして良かろう。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況