罪と罰++二律背反


*代表処理 ./inc/ore_sub-changes.cgi [#e166bdb3]

-$cshu[1]とか$cshu[3]とかで代表者を表示させることが出来ます

**代表更新履歴 [#t8baa06b]
-2004.02.28 辞任を追加しました。罪罰称号レベルのため、$sogo3の処理を追加


**sub changes_menu2 [#qd02bb84]
 
 foreach(0 .. $#cmp){ $log2 .=qq|<option value="$_">$cmp[$_]</option>\n|;}
 #-----------
 $log2 .= qq|<option style="background-color:gray;" value="13" disabled >■代表\者を選ぶ</option>|;
 $log2 .= qq|<option value="10">代表\者を支持する</option>|;
 $log2 .= qq|<option value="11">代表\者を指示しない</option>|;
 $log2 .= qq|<option value="12">立候補する</option>|;
 $log2 .= qq|<option value="14">辞任する</option>|;
 #-----------
 $log2 .=qq|</select><br>\n|;


**sub changes_exe [#s162ed98]
  sub changes_exe{
    if($cmd == 13) { $tm = 0; }                 # この1行をまず、追加

-次にその下に追加、修正を加える
  if($cmd<=-1 || $cmd>$#cmp){
  #----------------------------------------------ここから追加
        if($cmd==10 && $camp>=1 && $camp<=5){
      # 支持
      if($cshu[$camp] eq ""){
        $log .= qq|代表\者がいません<br>|;
      }elsif($ushu eq "$cgen[$camp]*$camp"){
        $log .= qq|同一代表\には1度だけ支持・不支持を表\明できます($ushu/$cgen[$camp]*10+$camp)<br>|;
      }else{
        $ushu = "$cgen[$camp]*$camp";
        $cshu_rank[$camp]++;
        $log .= qq|支持を表\明しました<br>|;
      }
        }elsif($cmd==11 && $camp>=1 && $camp<=5){
      if($ushu eq "$cgen[$camp]*$camp"){
        $log .= qq|同一代表\には1度だけ支持・不支持を表\明できます<br>|;
      }elsif($cshu[$camp] eq ""){
        $log .= qq|現在、代表\者が決まっていません<br>|;
      }else{
        $log .= qq|不支持を表\明しました<br>|;
        $ushu = "$cgen[$camp]*$camp";
        $cshu_rank[$camp]--;
        if($cshu_rank[$camp]<1){
          $log .= qq|現代表\ $cshu[$camp] は失脚しました|;
          $wr_mes = qq|$date $cmp[$camp]の代表\$cshu[$camp]は失脚しました|;
          &hist_write;
 
          $cshu[$camp] = ""; 
          $cshu_rank[$camp] = 0;
 
          $sogo = $sogo2;
          $sogo3 = $sogo; # 称号レベルのため
          $sogo2 = "";
 
        }
      }
        }elsif($cmd==12 && $camp>=1 && $camp<=5){
      if($cshu_rank[$camp]<1){
        # 立てる
        $cshu[$camp] = $nm;
        $ushu = "$cgen[$camp]*$camp";
        $cshu_rank[$camp] = 2;
        $cgen[$camp]++;
 
        $sogo2 = $sogo;
        $sogo = 111;
        $log .= qq|$nmは、$cmp[$camp]の代表\者になりました<br>|;
        $wr_mes = qq|$date $cmp[$camp]の代表\に$nmが就任しました|;
        &hist_write;
      }else{
        $log .= qq|代表\がいない場合のみ立候補できます<br>|;
      }
 
                    }elsif($cmd==14){
                	# 辞任する
                	if($sogo == 111){
			$cshu[$camp] = "";
			$cshu_rank[$camp] = 0;
                        $sogo = $sogo2; $sogo2 = ""; 	
			$sogo3 = $sogo;	# 称号レベルを無効化
 			
                        $log .= qq|あなたは、代表\者を辞任しました<br>|;
                        $wr_mes = qq|$date $nmは、$cmp[$camp]の代表\者を辞任しました<br>|;
                        &hist_write;
                	}else{
                        $log .= qq|辞任は代表\者のみが行うことが出来ます<br>|;
                	}
 
        }elsif($camp<1){
      $log .= qq|放浪の身では、立候補することは出来ない<br>|;
        }else{
  #----------------------------------------------ここまで追加
      $log .= "やめておきます<br>\n";
        }                                        # ←閉じ括弧(})を追加
 
        $tm = $cmd = 0;
        $type='';
        &call_main_st;
 
 
    # ここから仕官
    }elsif($cmd>=0 && (($c1 >= $c1a && $cmd == 1)||($c2 >= $c2a && $cmd == 2)||($c3 >= $c3a && $cmd == 3)||($c4 >= $c4a && $cmd == 4)||($c5 >= $c5a && $cmd == 5))){

*./inc/ore_sub-system.cgi [#jedc6533]
罪罰/変数の追加も参考に
-キャラ変数:sogo2,ushu
-国変数:以下の変数を追加する。それぞれ、下のように配列に格納する
--cshu1,cshu2,cshu3,cshu4,cshu5
--cshu_rank1,cshu_rank2,cshu_rank3,cshu_rank4,cshu_rank5
--cgen1,cgen2,cgen3,cgen4,cgen5

**sub hash_data [#pec4fdbf]
 # 代表
 $sogo2		= $DAT{'sogo2'};	# 代表者になったら称号を保持
 $ushu		= $DAT{'ushu'};   # 支持・不支持を決めた記録
**sub cdata_open [#g3f5b282]
  $cshu[1] = $CP{'cshu1'};
  $cshu_rank[1] = $CP{'cshu_rank1'};
  $cshu[2] = $CP{'cshu2'};
  $cshu_rank[2] = $CP{'cshu_rank2'};
  $cshu[3] = $CP{'cshu3'};
  $cshu_rank[3] = $CP{'cshu_rank3'};
  $cshu[4] = $CP{'cshu4'};
  $cshu_rank[4] = $CP{'cshu_rank4'};
  $cshu[5] = $CP{'cshu5'};
  $cshu_rank[5] = $CP{'cshu_rank5'};

  $cgen[1] = $CP{'cgen1'};
  $cgen[2] = $CP{'cgen2'};
  $cgen[3] = $CP{'cgen3'};
  $cgen[4] = $CP{'cgen4'};
  $cgen[5] = $CP{'cgen5'};
**sub dat_write [#u63fe8d0]
 $dat[0].="ushu;$ushu,sogo2;$sogo2,";
**sub cdat_write [#hcdf8068]
 $cdat .= "cshu1;$cshu[1],cshu_rank1;$cshu_rank[1],cgen1;$cgen[1],cshu2;$cshu[2],cshu_rank2;$cshu_rank[2],cgen2;$cgen[2],cshu3;$cshu[3],cshu_rank3;$cshu_rank[3],cgen3;$cgen[3],cshu4;$cshu[4],cshu_rank4;$cshu_rank[4],cgen4;$cgen[4],cshu5;$cshu[5],cshu_rank5;$cshu_rank[5],cgen5;$cgen[5],";

**sub read_data [#we7c44b5]
 # 国データ読み込み
 &cdata_open;
 
 # 代表者
 if($cshu[$camp] ne $nm && $sogo == 111){
    $sogo = $sogo2;
    $sogo2 = 0;
    $log .= qq|代表\の称号を失いました<br>|;
    if($cshu[$camp] eq ""){
	$log .= qq|現在、代表\者はいません<br>|;
    }else{
	$log .= qq|現在の代表\者は、$cshu[$camp]です<br>|;
    }
 }

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