複数の条件分岐の簡略化について(解決済)
Posted: 2018年10月24日(水) 11:40
現在育成風のシミュレーションゲームを作っております。
ゲーム内で行動を選択可能なPCが4名おり、週の始めにそれぞれ行う行動を決めるシステムです。
誰がどんな行動をするかは、専用の変数[行動選択@キャラ名]で4名分決定し、
例えば「勉強」なら[1]を、「運動」なら[2]を、「外出」なら[3]を…と、決められた値を代入していきます。
(ここまでは問題なく作れました)
今回お尋ねしたいのは、
「同じ行動を選択したPCが2人だけいる場合」に特定のイベントを起こしたいのですが、
(PC1とPC3が「運動」という行動を選んだ場合に親密度が上がる/会話が発生する…みたいに)
その場合条件分岐を総当たり的に作らないといけないのか、何か別の方法はないものなのか、ということです。
「PCが2人だけ」という条件は、[人数用]の変数を別に用意したのでクリアできました。
しかし、「PC4人のうち、2人が同じ行動を選んだかどうか」を判定するには、
例)4人のうち「運動」[2]を選んだPCが2人いるかを判定する場合、
「PC1」の行動が[2]か、そうでないか。
YES(PC1の行動=[2])の場合は、[同じ行動かをチェックする変数]に定数を代入
「PC2」の行動が[2]か、そうでないか。
YES(PC2の行動=[2])の場合は、[同じ行動かをチェックする変数]に定数を代入
・・・
NOの場合は「PC2」の行動が[2]か、そうでないか…。
このように、4人分なら6回判定を行う必要があると思います。
PC1+PC2=[1]、PC1+PC3=[2]、PC1+PC4=[3]、PC2+PC3=[4]、PC2+PC4=[5]、PC3+PC4=[6]
このやり方でもできるのはできるのですが、複雑化すると単純なミスが発生しやすかったり、後の管理が煩雑になるのかなと思います。
一応web上や過去の質問にも目を通しましたが、私の知識量では良い方法が思いつきませんでした。
java scriptによる適切な条件分岐や、過去に公開されているプラグイン、同じようなトピックがある場合、教えて頂けると助かります。
拙い説明で大変申し訳ありませんが、どなたかお力添え願います。
ゲーム内で行動を選択可能なPCが4名おり、週の始めにそれぞれ行う行動を決めるシステムです。
誰がどんな行動をするかは、専用の変数[行動選択@キャラ名]で4名分決定し、
例えば「勉強」なら[1]を、「運動」なら[2]を、「外出」なら[3]を…と、決められた値を代入していきます。
(ここまでは問題なく作れました)
今回お尋ねしたいのは、
「同じ行動を選択したPCが2人だけいる場合」に特定のイベントを起こしたいのですが、
(PC1とPC3が「運動」という行動を選んだ場合に親密度が上がる/会話が発生する…みたいに)
その場合条件分岐を総当たり的に作らないといけないのか、何か別の方法はないものなのか、ということです。
「PCが2人だけ」という条件は、[人数用]の変数を別に用意したのでクリアできました。
しかし、「PC4人のうち、2人が同じ行動を選んだかどうか」を判定するには、
例)4人のうち「運動」[2]を選んだPCが2人いるかを判定する場合、
「PC1」の行動が[2]か、そうでないか。
YES(PC1の行動=[2])の場合は、[同じ行動かをチェックする変数]に定数を代入
「PC2」の行動が[2]か、そうでないか。
YES(PC2の行動=[2])の場合は、[同じ行動かをチェックする変数]に定数を代入
・・・
NOの場合は「PC2」の行動が[2]か、そうでないか…。
このように、4人分なら6回判定を行う必要があると思います。
PC1+PC2=[1]、PC1+PC3=[2]、PC1+PC4=[3]、PC2+PC3=[4]、PC2+PC4=[5]、PC3+PC4=[6]
このやり方でもできるのはできるのですが、複雑化すると単純なミスが発生しやすかったり、後の管理が煩雑になるのかなと思います。
一応web上や過去の質問にも目を通しましたが、私の知識量では良い方法が思いつきませんでした。
java scriptによる適切な条件分岐や、過去に公開されているプラグイン、同じようなトピックがある場合、教えて頂けると助かります。
拙い説明で大変申し訳ありませんが、どなたかお力添え願います。