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

2023/02/11 16:54:18

MixJuice GET URL : kidspod.club/mj/2182

パラメータバトル

■説明
最初に文字の速度を入力します。(大きいほど遅い)
体力、攻撃、防御、素早さにパラメータを振り分け、戦います。
各パラメータは最低1です。
体力がなくなると負けです。
勝つと体力が回復して次の戦いが始まります。

■操作
カーソル上下:↑↓
→:ポイントを加算
←:ポイントを減算
リターンキー:戦闘開始

■変数
C COMのレベル
D 残りの振り分け値(初期値:96)
E WORK
F あなたの体力MAX値
G WORK
I FOR
K INKEY
N 文字速さ
T 攻撃番(0:あなた 1:COM)
U 攻撃順のチェック用
V 攻撃順のチェック用
Z 矢印カーソルのY
[0] あなた体力(初期値:1)
[1] あなた攻撃(初期値:1)
[2] あなた防御(初期値:1)
[3] あなた素早さ(初期値:1)
[4] COM体力
[5] COM攻撃
[6] COM防御
[7] COM素早さ

■プログラム
10-20 文字速さ入力、初期画面作成
30-40 パラメータ振り分け
50-70 COMのパラメータをランダムで作成
80-170 攻撃順決定、ダメージ算出、勝敗判定
180-190 コメント枠表示処理

  • 1
  • 1

SOURCE CODE

10 CLS:CLV:D=96:Y=13:LET[0],1,1,1,1:INPUT"モジハヤサ(0-5)",N:FORI=2TO19:LCI,12:?CHR$(255):LCI,21:?CHR$(255):NEXT
20 LC98:?"タイリョク:":LC2,5:?"コウゲキ:":LC1,7:?"ボウギョ:":LC2,9:?"スバヤサ:":LC36:?"アナタ":LC45:?"COM"
30 @A:FORI=0TO3:LC8,I*2+3:?[I]:NEXT:LC356:?"ノコリ:";D;" ":K=INKEY():LC10,Z*2+3:?" ":Z=(Z+(K=31)-(K=30)+4)%4:E=(K=29)*(D>0)-(K=28)*([Z]>1):D=D-E:[Z]=[Z]+E:IFK=10GOTO@B
40 LC10,Z*2+3:?CHR$(224):GOTO@A
50 @B:LC48:?C+1:F=[0]:FORI=4TO7:[I]=RND(95)+2:NEXT:LC8,3:?[0];"  "
60 E=0:FORI=4TO7:E=E+[I]:NEXT:IFE>100+C*10FORI=4TO7:[I]=[I]-([I]>2):NEXT:CONT
70 FORI=4TO7:LC13,I*2-5:?[I];"  ":NEXT:U=[7]:V=[3]
80 @C:U=U-1:V=V-1:IFU&&VCONT
90 IF!U&&!VV=1
100 T=V=0:IF!UU=[7]ELSEV=[3]
110 LC2,Y:IFT?"COM";C+1;ELSE?"アナタ";
120 ?"ノコウゲキ":GSB@P:E=[T*4+1]-[6-T*4]:IFE<1E=1
130 LC2,Y:IFT?"アナタ";ELSE?"COM";C+1;
140 ?"ハ";E;"ノダメージヲウケタ":GSB@P:G=4-(T=1)*4:[G]=[G]-E:LC8,3:?[0];"  ":LC13,3:?[4];"  "
150 IF[0]<1END
160 IF[4]<1C=C+1:[0]=F:GOTO@B
170 GOTO@C
180 @P:Y=Y+1:WAITN*10:IFY=21COPY#AA0,#AC0,224:LC2,20:?"                  ":Y=20
190 RTN

COMMENT