パスワードネタの第3弾、バトルゲームを作ってみました。
キミは最強のパスワードを作れるか?
- 最初に自分のパスワードを聞かれるので、10文字以内で入力します。
- 敵のモンスターが出現して、バトルが始まります。互いのパスワードで強さのパラメータが決まります。
- HP:体力
- AT:攻撃力
- DF:守備力
- SP:すばやさ
- 互いに攻撃して、HPが0以下になった方が負けです。自分が勝てば次のバトルに進み、だんだん敵モンスターが強くなります。自分が負けたらゲームオーバーです。
プログラムリスト
※3/30 攻撃時の効果音を追加しました。
1 CLV:CLS:?"Password(<10c)?" 2 K=INKEY():IF!KCONT 3 IFK<>10?CHR$(K);:GOTO2 4 FORJ=0TO9:[J]=PEEK(#920+J):NEXT 5 GSB14:A=B:D=E:S=T:G=I:SRND(TICK()) 6 CLS:W=W+1:?"[BATTLE";W;"]":H=G 7 M=M+(M<10):O=20:GSB21:GSB14 8 GSB22:O=0:GSB22 9 X=A*2+S/2-E-T/2:O=20:GSB29:WAIT20:IFI<=0GOTO12 10 X=B*2+T/2-D-S/2:O=0:GSB29:WAIT20:IFH<=0GOTO13 11 GOTO9 12 LC0,10:?"You WIN!":BEEP10,30:WAIT60:GOTO6 13 LC0,10:?"You Lose":BEEP30,30:END 14 I=10:B=10:E=10:T=10 15 FORJ=0TO9:Z=[O+J]:IF!ZGOTO20 16 IFZ>96&&Z<123B=(B*2)^Z:GOTO20 17 IFZ>64&&Z<91E=(E*2)^Z:GOTO20 18 IFZ>47&&Z<58I=(I*2)^Z:GOTO20 19 T=T^Z 20 NEXT:RTN 21 FORJ=0TOM-1:[O+J]=RND(94)+33:NEXT:RTN 22 LCO,2:IFO?"@Monster"ELSE?"*You" 23 LCO,3:FORJ=0TO9:?CHR$([O+J]);:NEXT 24 LCO,5:?"HP=";:IFO?IELSE?H 25 LCO,6:?"AT=";:IFO?BELSE?A 26 LCO,7:?"DF=";:IFO?EELSE?D 27 LCO,8:?"SP=";:IFO?TELSE?S 28 RTN 29 X=X*(X>0)+RND(11) 30 FORJ=1TO3:LCO,5:?"HP=";:IFO?IELSE?H 31 BEEP30,1:WAIT5:LCO,5:?" ":WAIT5:NEXT 32 IFOI=I-XELSEH=H-X 33 LCO,5:?"HP=";:IFO?IELSE?H 34 RTN
Web版
ヒント
相手に与えるダメージ量は、自分の攻撃力・相手の守備力・お互いのすばやさで決まります。(乱数が若干足されます)
各パラメータは、以下の文字種から算出されます。
- 体力:数字
- 攻撃力:アルファベット小文字
- 守備力:アルファベット大文字
- すばやさ:記号
基本的にはその種類の文字数が多いほど数値が上がりますが、文字によっても変わります。また、すばやさ(記号)のみ文字数によらない計算をしています。
全体で最大10文字なので、その中でバランスを探ってください。