- 455 名前:デフォルトの名無しさん mailto:sage [2007/04/03(火) 19:34:36 ]
- 折角なので、機械語で簡単に組んでみた。F020Hに、衝突元のスプライト番号を入れて、機械語を実行すると
F000HからF01FHに、スプライト番号0〜31と衝突したかどうかが入る。 (0なら衝突していない、1なら衝突している) F021H、F022Hも作業領域として使用している。 5 ' スプライト ショウトツハンテイサンプル 6 'F000~F01F ニ スプライトガ ショウトツシテイルカドウカガ ハイル(1:ショウトツ シテイル) 7 ' 8 DEFINT A-Z:CLEAR 3000,&HCFFF:SCREEN 1,2,0:KEY OFF:WIDTH 32:SPRITE$(0)=STRING$(32,255) 9 GOSUB 1000 10 X=100:Y=100'ジブン 20 TX(0)=50:TY(0)=70'テキ1 30 TX(1)=105:TY(1)=92'テキ2 40 PUTSPRITE 0,(X,Y),15,0 50 FOR I=0 TO 1 60 PUTSPRITE I+1,(TX(I),TY(I)),8,0 70 NEXT 80 POKE &HF020,0:A=USR(0):'F020ニ ハンテイモト ノ スプライトバンゴウ ヲ イレル 90 FOR I=0 TO 31:VPOKE 6144+32*10+I,PEEK(&HF000+I)+48:NEXT:END 1000 ' 1010 FOR I=0 TO &H5E 1020 READ A$ 1030 POKE &HD000+I,VAL("&H"+A$) 1040 NEXT 1050 DEFUSR=&HD000 1060 RETURN 1070 ' 1080 DATA 3a,20,f0,87,87,26,1b,6f, cd,4a,00,32,21,f0,23,cd 1090 DATA 4a,00,32,22,f0,06,00,78, 87,87,26,1b,6f,cd,4a,00 1100 DATA 4f,3a,21,f0,b9,28,0e,30, 05,57,79,92,18,01,91,fe 1110 DATA 10,38,02,18,17,23,cd,4a, 00,4f,3a,22,f0,b9,28,10 1120 DATA 30,05,57,79,92,18,01,91, fe,10,38,04,1e,00,18,02,1e 1130 DATA 01,78,26,f0,6f,7b,77,04, 78,fe,20,20,b9,c9
|

|