つい先日、vbsをいじりだしたばかりの初心者です。
このプログラムなんですが・・・
msgbox("冒険はじまりー"),,("冒険")
msgbox("てくてく")
i = msgbox("分かれ道だ" & vbCrLf & "はい:左 いいえ:真ん中 キャンセル:右",3,"わかれみち")
if (i=6) then
msgbox("いきどまり")
msgbox("ゲームオーバー")
elseif (i=2) then
msgbox("いきどまり")
msgbox("ゲームオーバー")
else
msgbox("モンスターがあらわれた",48,"バトル")
myhp=10
mymp=5
youhp=20
for i=0 to 10 step 0
num=msgbox("HP(" & myhp & ")" & vbCrLf &_
"MP(" & mymp & ")" & vbCrLf &_
"モンスターHP (" & youhp & ")" & vbCrLf &_
"こうげき:はい かいふく:いいえ まほう:キャンセル",3,"バトル")
if(num=6)then
myhp = myhp-1
mymp = mymp+1
youhp = youhp-1
msgbox("こうげき!" & vbCrLf &_
"モンスターHP-1" & vbCrLf & "自分のHP-1" & vbCrLf & "自分のMP+1")
elseif (num=7) then
myhp = myhp+3
mymp = mymp-3
msgbox"HPが3回復 MPが3減った"
else
youhp = myhp-2
mymp = mymp-2
msgbox"まほうをつかった MP-2 モンスターHP-2"
end if
if(youhp=0)then
msgbox"モンスターに勝った!",64,"やったね"
msgbox"おしまい"
exit for
elseif(myhp=0)then
msgbox"負けた",16,"ざんねん"
msgbox"ゲームオーバー",16,"ざんねん"
exit for
end if
next
end if
これの、攻撃とか魔法とかのところでmsgboxにランダムで違うメッセージを出すことは
できますか?(3パターンくらいです)
調べてみても書き方がよくわかりませんでした・・・。
それと、ゲームオーバーの場合、もう一度やるかどうかの選択メッセージの出し方も
教えていただけると嬉しいです。
質問が多くてごめんなさい、どうぞよろしくお願いしますm(_ _)m
No.2ベストアンサー
- 回答日時:
MsgBox "まほうをつかった"
n = Int(Rnd * 3) + 1 '1~3の乱数発生、それぞれ1/3の確立
If n = 1 Then
MsgBox "効かなかった"
ElseIf n = 2 Then
MsgBox "○○ポイントのダメージを与えた"
ElseIf n = 3 Then
MsgBox "相手は逃げた"
End If
MsgBox "まほうをつかった"
n = Int(Rnd * 10) + 1 '1~10の乱数発生、それぞれ20%、30%、50%の確立
If n < 3 Then
'20%の確立
MsgBox "効かなかった"
ElseIf n < 6 Then
'30%の確立
MsgBox "○○ポイントのダメージを与えた"
Else
'50%の確立
MsgBox "相手は逃げた"
End If
>もう一度やるかどうかの選択メッセージの出し方も
GoTo ステートメント
http://msdn.microsoft.com/ja-jp/library/69whc95c …
No.1
- 回答日時:
vbs 使ったことないですが、
dim a as integer
randomize
a = int((3*rnd)+1)
とすると、aにランダムで1,2,3のいずれかの値が入ります。
中を(5*rnd)とすると、1~5のいずれかになります。
http://www.kanaya440.com/contents/script/vbs/fun …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
レコードセットにnullの場合
-
タイムアウトする仕組みを作りたい
-
subsequentとnextの違いってな...
-
リスト間のアイテム移動について
-
C#のループでtextboxに値を入れ...
-
VBA public変数はどのようなこ...
-
プロシージャまたは関数の引数...
-
マウスポインタの変更
-
【VBS】クリップボード操作につ...
-
【VB6.0】 あるフォームから他...
-
共有フォルダの「共有のアクセ...
-
VB.NETでのイベントの途中終了
-
C言語のサフィックスについて
-
プロシージャを呼び出したプロ...
-
String型の値にスラッシュをつ...
-
Excel ユーザーフォームで計算 ...
-
エクセルVBAでテキストボッ...
-
VC++ (byte)(col & 0xFF) の意味
-
他のフォームから別のフォーム...
-
ACCESS 除算での小数点切上げ方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
タイムアウトする仕組みを作りたい
-
subsequentとnextの違いってな...
-
レコードセットにnullの場合
-
verilogのcase文
-
Verilog-HDLのFF記述について
-
Why is 77+33 not equal to 100?
-
パスカル言語
-
Verilogの文法
-
pascalでの二分探索(バイナリ...
-
リスト間のアイテム移動について
-
最大公約数を再帰で求める(pas...
-
TreeViewのTag情報取得
-
整順リスト形式の英単語辞書(pa...
-
MATLABによるラグランジェ補間
-
片方のみ成り立つif分岐
-
Delphiでコンポーネント名を変...
-
変数に「.」が含まれる場合...
-
「for next」文と「if then els...
-
文字の連結がうまくいかない
-
Matlab
おすすめ情報