SRC質問掲示板Mk2
(現在 過去ログ105 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■18989 / inTopicNo.1)  一部の範囲にランダムで数種の敵を出す方法
  
□投稿者/ るみゃスキー -(2006/08/13(Sun) 03:33:58) [ID:fBPFN8YD]
    For i = 1 To 5
    If Random(100) <= 50 Then
    Create 敵 A 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    ElseIf Random(100) <= 80 Then
    Create 敵 B 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    Else
    Create 敵 C 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    EndIf
    Next


    50%の確率でAが、30%の確率でBが、20%の確率でCがX21〜27/Y10〜13の間に合計五体出すために書いたのですがElseIf Random(100) <= 80 Thenが変な気がします。
    最初にRandom(100)したのに次のElseIfでまたRandom(100)してしまうと30%じゃないと思うのですが、最初のRandom(100)を次のElseIfに持っていくにはどうすればいいのでしょうか?
    誰か解答またはヒントをお願いします。
引用返信/返信 削除キー/
■18990 / inTopicNo.2)  Re[1]: 一部の範囲にランダムで数種の敵を出す方法
□投稿者/ ハク -(2006/08/13(Sun) 05:46:22) [ID:lSVmYCFn]
    ハクです。

    >最初のRandom(100)を次のElseIfに持っていくにはどうすればいいのでしょうか?

    Set 今回のランダム数 Random(100)

    と、ある変数に予めランダムな数を入れてしまい、
    それを条件式に使えば複数の式で使いまわしできますが
    今回の場合はそれをせずとも二つ目の式を

    ElseIf Random(100) <= 60 Then

    にすれば50/100の60/100の確率、つまり30%の確率で条件を満たすことができます。

    =========

    ちなみにですがこんな方法もあります。参考までに。

    Switch Random(10)
    Case 1 2 3 4 5
     Create 敵 A 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    Case 6 7 8
     Create 敵 B 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    Case Else
     Create 敵 C 1 精鋭雑魚超強気(ザコ) 47 (20 + Random(7)) (9 + Random(4))
    EndSw
引用返信/返信 削除キー/
■18994 / inTopicNo.3)  Re[2]: 一部の範囲にランダムで数種の敵を出す方法
□投稿者/ るみゃスキー -(2006/08/13(Sun) 14:46:47) [ID:fBPFN8YD]
    なるほど、色んな方法があるのですね。
    書き込んでから寝る間際にランダム変数を使うというのは出来るかな?と浮かんだのですが二つ目のは全く予想外です。
    最後のSwitchは過去ログを検索して知ってはいたのですが今回はIf文でなんとか表してみたいと思い質問させていただきました。

    三つも解決策を出して、わかりやすい解説も込み、返答ありがとうございます。
解決済み!
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -