【無駄の極み】じゃんけん関数とあっち向いてホイ関数【つくってみた】
投稿者: PAPEL3 投稿日:2020/12/05 23:55
今年今月いっぱいで終了するFlashですが…悪あがきです(?)。
そういえば、caseの中にcaseなどを併用すると変数の中身を入れても反応してくれなかったりするんですよね。どゆこと、、、
あとはcase文のwhen条件で、||(または)や、&&(とともに(?))って使えないんでしょうか…時々変数に中身が入らなかったりするんですよねえ…
質問掲示板に投げとけ!って話ですけどね(((
使われてない変数ですってエラーでしょっちゅう出てくるの、ちゃんと入れてるのに機能してくれてない!ってことが多々あってホーントヤンナッチャイマス
愚痴はともかく、case文は数字だけじゃなく文字列でも機能してくれたことに今更感動しているこの頃です。
余談もさておき、とりあえず置いておきます。
どちらも配列になっており、[0]にプレイヤーの出した手、 [1]に対戦相手の手、 [2]に結果が文字列で記録されます。
相手の出す手or向きは乱数を使っていますが、確率を操作して個性を出すのも面白そう
使用例
RPG系は使えます。ノベルゲームにもまだ試していませんが使えると思います。
バグがあれば報告してください。
ツイート
そういえば、caseの中にcaseなどを併用すると変数の中身を入れても反応してくれなかったりするんですよね。どゆこと、、、
あとはcase文のwhen条件で、||(または)や、&&(とともに(?))って使えないんでしょうか…時々変数に中身が入らなかったりするんですよねえ…
質問掲示板に投げとけ!って話ですけどね(((
使われてない変数ですってエラーでしょっちゅう出てくるの、ちゃんと入れてるのに機能してくれてない!ってことが多々あってホーントヤンナッチャイマス
愚痴はともかく、case文は数字だけじゃなく文字列でも機能してくれたことに今更感動しているこの頃です。
余談もさておき、とりあえず置いておきます。
#じゃんけん関数 第一引数 0=最初はグー 1=あいこ続行 def janken(ja) kaesu = createArray() rival = rand(3) case ja when 0 jabun = "最初はグー、じゃんけん…" when 1 jabun = "あいこで…" end case speakWithSelect(3,"グー","チョキ","パー", jabun) when 0 dasu = 0 when 1 dasu = 1 when 2 dasu = 2 end #0=グー 1=チョキ 2=パー case rival when 0 kaesu[1] = "グー" when 1 kaesu[1] = "チョキ" when 2 kaesu[1] = "パー" end case dasu when 0 kaesu[0] = "グー" when 1 kaesu[0] = "チョキ" when 2 kaesu[0] = "パー" end #勝負の判定 if rival == 0 && dasu == 2 kaesu[2] = "勝ち" elsif rival == 1 && dasu == 0 kaesu[2] = "勝ち" elsif rival == 2 && dasu == 1 kaesu[2] = "勝ち" elsif rival == dasu kaesu[2] = "あいこ" elsif rival == 0 && dasu == 1 kaesu[2] = "負け" elsif rival == 1 && dasu == 2 kaesu[2] = "負け" elsif rival == 2 && dasu == 0 kaesu[2] = "負け" end speak("あなたの出した手:" + kaesu[0] + "\n相手の出した手:" + kaesu[1]) return kaesu end #四方向勝負関数 def attimuiteHoi() kaesu = createArray() rival = rand(4) case speakWithSelect(4,"↑","→","←","↓", "あっち向いて…") when 0 sasu = 0 when 1 sasu = 1 when 2 sasu = 2 when 3 sasu = 3 end #0=上↑ 1=右→ 2=左← 3=下↓ case rival when 0 kaesu[1] = "↑" when 1 kaesu[1] = "→" when 2 kaesu[1] = "←" when 3 kaesu[1] = "↓" end case sasu when 0 kaesu[0] = "↑" when 1 kaesu[0] = "→" when 2 kaesu[0] = "←" when 3 kaesu[0] = "↓" end #勝負の判定 if rival == sasu kaesu[2] = "勝ち" else kaesu[2] = "負け" end speak("あなたの向き:" + kaesu[0] + "\n相手の向き:" + kaesu[1]) return kaesu end
どちらも配列になっており、[0]にプレイヤーの出した手、 [1]に対戦相手の手、 [2]に結果が文字列で記録されます。
相手の出す手or向きは乱数を使っていますが、確率を操作して個性を出すのも面白そう
使用例
#じゃんけん関数の使い方 syobu = 0 loop = true while loop don = janken(syobu) case don[2] when "勝ち" speak("あなたの勝ちです。") loop = false when "あいこ" syobu = 1 when "負け" speak("あなたの負けです。") loop = false end end #ループによりあいこで勝負をやり直せますが、あいこで勝負をつけることも可能にしています。 #あっち向いてホイ関数の使い方 hoisa = attimuiteHoi() case hoisa[2] when "勝ち" speak("あなたの勝ちです。") when "負け" speak("あなたの負けです。") end #あっち向いてホイは勝ちか負けのみになります。乱数だと勝てる確率が4分の1になります
RPG系は使えます。ノベルゲームにもまだ試していませんが使えると思います。
バグがあれば報告してください。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
コメントはありません。