🌸 「なでしこ」
>
🍯 「貯蔵庫」
ルーレット(当選率調整可能)
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
ルーレット(当選率調整可能) 📖
簡単なルーレットです。選択肢はcsvで指定します。当選率を調整可能です。アニメーションはありません。
プログラム:
(→大)
// 簡単なルーレット // 選択肢はCSVで読み込み。ドラッグ&ドロップ可能 // 当選率を整数で指定可能。~~デフォルトは10。~~未実装 // ----- ライブラリ ----- // cf. https://n3s.nadesi.com/id.php?735 !「https://n3s.nadesi.com/plain/nadesiko3-FileReader.js」を取込む // ----- ライブラリ〆 ----- // ----- DOM ----- WINDOWへドロップ禁止。 # テキスト 「【選択肢】」のラベル作成してそれの"文字サイズ"に"25px"をDOMスタイル設定 改行作成 『CSVは1行目を「選択肢名, 当選率」として書いてください。』のラベル作成。改行作成。改行作成。 「CSVファイルを選択してください。または、テキストエリアにドロップしてください。」のラベル作成。改行作成。//改行作成。 ファイル選択作成してテキストファイル選択に代入。 テキストファイル選択の「accept」に「.csv,.txt」をDOM属性設定。 テキストファイル選択の「change」に、「選択テキスト取得」をDOMイベント追加。 改行作成。 「Shift_JISの場合はチェック」のチェックボックス作成して、文字コードチェックに代入。 文字コードチェックの「change」に、「選択テキスト取得」をDOMイベント追加。 改行作成。改行作成。 「選択肢名, 当選率{改行}」のテキストエリア作成して取得テキストに代入。改行作成。改行作成。 取得テキストの「幅」に「90%」をDOMスタイル設定。 取得テキストの「高さ」に「150px」をDOMスタイル設定。 取得テキストへファイルドロップした時には、 テキストファイル選択["files"]=対象。 選択テキスト取得。 ここまで。 ●選択テキスト取得 選択ファイルリスト=テキストファイル選択["files"] ファイル=選択ファイルリスト[0] // ファイル["name"]を表示 //ファイル名(パス無し) // ファイル["size"]を表示 //ファイルサイズ(バイト) // ファイル["type"]を表示 //ファイルタイプ(text/plainとか) 文字コード=空。//空はUTF-8 もし、(文字コードチェックの「checked」をDOM属性取得)=はいならば、文字コードは「Shift_JIS」 文字コードでファイルのテキストファイル開いた時には、 取得テキストに対象をテキスト設定。 ここまで。 ここまで。 抽選ボタン=「抽選」のボタン作成 抽選ボタンに{ "余白": "7px", "文字サイズ": "25px" }をDOMスタイル一括設定 改行作成。改行作成 「当選したのは 」のラベル作成。それの"文字サイズ"に"20px"をDOMスタイル設定 当選ラベル=「---」のラベル作成。それの"文字サイズ"に"30px"をDOMスタイル設定 「 です!」のラベル作成。それの"文字サイズ"に"20px"をDOMスタイル設定 改行作成 「当選確率:」のラベル作成 当選選択肢数ラベル=「-」のラベル作成 「 / 」のラベル作成 総選択肢数ラベル=「-」のラベル作成 「 = 」のラベル作成 当選率ラベル=「---」のラベル作成 「%」のラベル作成 抽選ボタンをクリックした時には、 抽選結果=抽選 // 抽選結果@"当選結果"を表示 // 抽選結果@"当選選択肢数"を表示 // 抽選結果@"総選択肢数"を表示 当選ラベルに抽選結果@"当選結果"をDOMテキスト設定 当選選択肢数ラベルに抽選結果@"当選選択肢数"をDOMテキスト設定 総選択肢数ラベルに抽選結果@"総選択肢数"をDOMテキスト設定 当選率ラベルに抽選結果@"当選選択肢数"/抽選結果@"総選択肢数"*100をDOMテキスト設定 ここまで // ----- DOM〆 ----- ●抽選とは、 選択肢=取得テキストのDOMテキスト取得してCSV取得 // 選択肢名を当選率の数だけ配列に入れる 抽選配列=空配列 i=0 j=0 (選択肢の要素数-1)回 i=回数 (選択肢[i, 1])回 j=回数 抽選配列=抽選配列に選択肢[i,0]を配列追加 ここまで ここまで // JSONで返す 抽選乱数=抽選配列の要素数の乱数 { "当選結果":抽選配列[抽選乱数], "当選選択肢数":抽選配列で抽選配列[抽選乱数]の配列該当数, "総選択肢数":抽選配列の要素数 }で戻る ここまで ●(AAでBの)配列該当数とは、 i=0 AAを反復 もし、対象=Bならば、 iを1増やす ここまで ここまで iで戻る ここまで
プログラムを実行
⭐ ユメミノウツツ 作
タイトル:
ルーレット(当選率調整可能)
ライセンス:
CC0 (著作権破棄)
タイプ:
wnako
タグ:
-
利用バージョン:
3.7.8
作成日時:
2025/10/20 18:02 (編集: 2025/10/20 18:19)
公開の投稿
ログイン
して★を付けよう!
Twitterへ投稿
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
📍なでしこハブ (最新版の反映は1日後):
ソースの確認
編集履歴の確認
通報数:
0
通報って何?