
参考資料
§ スプライト操作1・拡大、縮小、回転 §
スプライトの拡大・縮小は、SPSCALEステートメントで、回転は、SPROTステートメントで実現する事が出来ます。
下記のプログラムでは、拡大、縮小、回転を実現して居ます。キャラクタは、
ボタンで縦方向(上下)と横方向(左右)に夫々拡大・縮小し、
ボタンで右回転、
ボタンで左回転します。終了するには、
ボタンを押して下さい。
| 0000001 | OPTION STRICT |
| 0000002 | ACLS |
| 0000003 | DIM B,SV=1,SH=1,AN=0 |
| 0000004 | |
| 0000005 | SPSET 0,2544 |
| 0000006 | SPOFS 0,200,120 |
| 0000007 | SPHOME 0,8,8 |
| 0000008 | |
| 0000009 | WHILE TRUE |
| 0000010 | B=BUTTON(0) |
| 0000011 | |
| 0000012 | 'QUIT |
| 0000013 | IN B AND 64 THEN BREAK |
| 0000014 | |
| 0000015 | 'ENLARGE |
| 0000016 | IF B AND 1 THEN |
| 0000017 | DEC SV,0.5 : IF SV<0.5 THEN SV=0.5 |
| 0000018 | ENDIF |
| 0000019 | IF B AND 2 THEN |
| 0000020 | INC SV,0.5 : IF SV>10 THEN SV=10 |
| 0000021 | ENDIF |
| 0000022 | IF B AND 4 THEN |
| 0000023 | DEC SH,0.5 : IF SH<0.5 THEN SH=0.5 |
| 0000024 | ENDIF |
| 0000025 | IF B AND 8 THEN |
| 0000026 | INC SH,0.5 : IF SH>10 THEN SH=10 |
| 0000027 | ENDIF |
| 0000028 | SPSCALE 0,SH,SV |
| 0000029 | |
| 0000030 | 'ROTATE |
| 0000031 | IF B AND 16 THEN |
| 0000032 | INC AN : IF AN>359 THEN AN=0 |
| 0000033 | ENDIF |
| 0000034 | IF B AND 32 THEN |
| 0000035 | DEC AN : IF AN<0 THEN AN=359 |
| 0000036 | ENDIF |
| 0000037 | SPROT 0,AN |
| 0000038 | |
| 0000039 | VSYNC 1 |
| 0000040 | WEND |
| 0000041 | ACLS : END |