罪と罰++二律背反


[[罪罰改造]]

同一国への戦争をカウント、制限するまたはペナルティを与える
*戦争カウント [#a537354e]
**変数を用意する ./inc/ore_sub-system.cgiへ変数を追加[#dafa7f98]
罪罰/変数の追加を参考にキャラ変数を追加
-最後に戦争を行った相手国
--war_cr
-同一国への連続戦争回数
--war_cnt

**カウントアップ ./inc/ore_sub-wartime.cgi [#v19ddef7]

       if(!$ck){
                $log .="$date $cmp[$nation] に進入しました<br>\n";
                $tm=0;
 
                #-----------------------------------------------------ここから
                if ($war_cr == $nation){
                  # 前回と同一国
                  $war_cnt++;
                }else{
                  # 同一国で無いならカウントを初期化
                  $war_cnt = 1;
                  $war_cr = $nation;     # ←抜けていたので追加
                }
                #-----------------------------------------------------ここまで
 

**ステータス表示 [#red71b9c]
画面に表示するなら、./inc/ore_sub-base_p1.cgiとかに記述する

**最後に同一国への戦争回数制限を作って完成 ./inc/ore_sub-war.cgi[#w1d32f34]
-戦争コマンドと$war_cntで条件分岐させれば

                }elsif($sogo==4){
                        $log .= "まずは借金を返済して$sogo_p[$sogo] の烙印を消してください。<br>\n";
                        $tm = $cmd = 0;
                        $type='';
                        &call_main_st;
                #---------------------------------------------------ここから
                }elsif($war_cr==$cmd && $war_cnt>=3){
                        $log .= "同一国へは連続3回は侵攻できません<br>\n";
                        $tm=$cmd=0;
                        $type='';
                        &call_main_st;
                #---------------------------------------------------ここまで
                }else{

**交戦中の場合、回数制限を無効化 [#hb2b19a1]
-罪罰外交が必要です。
-以下の改造は罪罰/同一国への戦争には不要です。必要な方のみ利用してください
-上で追加した回数制限に手を加えます。
 }elsif($war_cr==$cmd && $war_cnt>=3){
 ↓
 }elsif($war_cr==$cmd && $war_cnt>=3
    && ((($camp<$cmd) ? $cfs[$camp.$cmd] : $cfs[$cmd.$camp])!=2) 
    ){

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS