烏賊先生のプログラミング道場

プチコン3号


参考資料

§ 横スクロール(キャラ中央型) §

バックグラウンド画面は、夫々の画面に、幅×高さが16383以下の大きさを設定する事が出来ます。横長の画面を作り、BGOFSステートメントで表示位置を移動させる事で横スクロールを行う事が出来ます。

下記のプログラムでは、キャラクタが、 ボタンで左右に動き、背景がスクロールします。終了するには、キーボード画面の STOP をタップして下さい。

0000001OPTION STRICT
0000002ACLS
0000003DIM I,B,X,Y,BX,BY
0000004
0000005GFILL 0,0,399,239,#BLUE
0000006
0000007BGSCREEN 0,50,15
0000008FOR I=0 TO 49
0000009  BGPUT 0,I,13,614
0000010  BGPUT 0,I,14,646
0000011NEXT
0000012FOR I=5 TO 45
0000013  BGPUT O,I,10,167
0000014  BGPUT O,I,11,199
0000015  BGPUT O,I,12,231
0000016NEXT
0000017
0000018X=184 : Y=160
0000019SPSET 0,1016
0000020SPSCALE 0,2,2
0000021SPOFS 0,X,Y
0000022
0000023BX=0 : BY=0
0000024WHILE TRUE
0000025  B=BUTTON(0)
0000026  IF B AND 4 THEN
0000027    SPANIM 0,"I",8,1025,8,1026,8,1027,8,1024,0
0000028    IF X>184 THEN
0000029      DEC X : IF X<184 THEN X=184
0000030    ELSE
0000031      DEC BX : IF BX<0 THEN BX=0
0000032      IF BX==0 THEN
0000033        DEC X : IF X<0 THEN X=0
0000034      ENDIF
0000035    ENDIF
0000036  ENDIF
0000037  IF B AND 8 THEN
0000038    SPANIM 0,"I",8,1017,8,1018,8,1019,8,1016,0
0000039    IF X<184 THEN
0000040      INC X : IF X>184 THEN X=184
0000041    ELSE
0000042      INC BX : IF BX>400 THEN BX=400
0000043      IF BX==400 THEN
0000044        INC X : IF X>367 THEN X=367
0000045      ENDIF
0000046    ENDIF
0000047  ENDIF
0000048  LOCATE 0,0 : PRINT FORMAT$("%2D",BX)
0000049  BGOFS 0,BX,BY
0000050  SPOFS 0,X,Y
0000051  VSYNC 1
0000052WEND



ゲームプログラミング道場 ニンテンドー3DS Smile BASIC  Visual Basic,Visual C#

Copyright © King of Squid, All rights reserved.