Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

2019/07/14 21:22:08

MixJuice GET URL : kidspod.club/mj/877

Ichigo_Ken 必殺コマンドをたたき込め

コントローラーを分解して、内部のスイッチとIchigoJamのポートを接続します。
スイッチの端子の一方はまとめてGNDに接続、もう一方は1MでプルアップしてIN1-11に接続します。
OUTに-1を出力することで、BTN OUT1,2,3,4,5,6 がINとして機能します。
レバーの4つのスイッチ 1,2,3,4
ボタン 5,6,7,8,9
スタートボタン 10
セレクトボタン 11
に配線します。
IN()で11ポートの値をまとめて取得することができます。

スタートボタンを押すと
ボタンの入力を判定して、#E0-#FFのPCGキャラクタを表示します。
セレクトボタンを押すと、入力したキャラクタを判定して、
合っていれば、入力に掛かった時間と技名を表示します。

技の入力方法は「おぼえる」
30 N="カメハメハ":J="~E0~E1~E2~E3":GSB@C
~EOはパソコンで表示できるように16進表記に置き換え。
キーボードから入力するか、
キャラクタを入力してシッパイ判定を出してからESCで止めて、
画面上で1 REMで記録してから、プログラムを編集します。

技の名前と操作法を考えて増やしましょう。
レバー・ボタンの同時押しに対応させて改造してみよう。

  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

SOURCE CODE

NEW
10 イチゴケン_SET
20 FOR I=1 TO 11:OUT I,-1:NEXT
30 CLP
40 POKE#720,102,231,126,60,60,126,231,66
50 POKE#728,60,126,231,195,195,231,126,60
60 POKE#730,255,255,195,195,195,195,255,255
70 POKE#738,24,24,60,36,102,66,255,255
80 POKE#740,60,126,255,255,255,255,126,60
90 POKE#748,126,195,153,189,189,153,195,126
100 POKE#750,153,90,36,219,219,36,90,153
110 POKE #780,2,7,14,156,248,240,240,248
120 POKE #788,31,15,15,31,57,112,224,64
130 POKE #790,248,240,240,248,156,14,7,2
140 POKE #798,64,224,112,57,31,15,15,31
150 POKE#7A0,60,126,124,255,255,126,127,60
160 LRUNFILE()+1
SAVE0

NEW
10 'イチゴケン_IN
20 CLS:?"イチゴケン"
30 IFIN(10)CONT
31 IF!IN(10)CONT
40 FORI=20TO10STEP-1:BEEPI:WAIT1:NEXT
50 CLT:LC0,2
60 C=0:A=0
70 @LP
80 IF!IN(11)GOTO@N
90 A=A|(2047-IN())
100 IF(C>0)*(IN()=2047)GOTO@EX
110 IFA=4C=#E0
120 IFA=1C=#E1
130 IFA=8C=#E2
140 IFA=2C=#E3
150 IFA=3C=#F3
160 IFA=6C=#F0
170 IFA=12C=#F2
180 IFA=9C=#F1
190 IFA=16C=#E4
200 IFA=32C=#E5
210 IFA=64C=#E6
220 IFA=128C=#E7
230 IFA=256C=#E8
240 GOTO@LP
250 @EX:BEEP
260 ?CHR$(C);:C=0:A=0
270 GOTO@LP
280 @N:T=TICK()
290 FORI=10TO20:BEEPI:WAIT1:NEXT
300 LRUNFILE()+1
SAVE1

NEW
10 'イチゴケン
20 @H:F=0:T=TICK():?:?
30 N="カメハメハ":J="~E0~E1~E2~E3":GSB@C
40 N="ショウリュウハ":J="~E0~E1~E0~E1~E4~E5~E4~E5~E2":GSB@C
50 'N="ハドウホウ":J="":GSB@C
60 'N="メガリュウシホウ":J="":GSB@C
70 'N="チョウオンパ":J="":GSB@C
80 'N="ゼッタイオンカン":J="":GSB@C
90 'N="エンセキガイセン":J="":GSB@C
100 'N="ホノウノコマ":J="":GSB@C
110 IFF=0?"シッパイダ!"
120 @K:IFIN(10)CONT
130 LRUNFILE()-1
140 @C:V=#900+32*2:I=0
150 @N
160 IFPEEK(J+I)=34GOTO@S
170 IFPEEK(J+I)<>PEEK(V+I)RTN
180 I=I+1:GOTO@N
190 @S
200 F=1:?T;":";STR$(N)
210 FORS=0 TO 15:BEEPS:WAIT1:NEXT
220 RTN
SAVE2

COMMENT