罪と罰++二律背反


* 国技の廃止(テキスト削除)+α [#f782136f]

- ページ: [[罪罰改造板2]]
- 投稿者: [[劉]]
- 優先順位: 低
- 状態: 着手
- カテゴリー: こんなのが欲しい♪
- 投稿日: 2007-05-13 (日) 20:42:04
- バージョン: 

** メッセージ [#lfcd6fe9]
こんばんわ。RIGHT改めまして劉と名前を変更しました。
よろしくお願いします。

今回は国技の廃止(テキストを削除して)をしたくて試みたのですがどうしてもエラーがでてしまいます。
試した方法はsub attack_myself{の
 if($v<int($lv/5) && $mp>=$sp_mp[$v]){
から
 $log .="</font>\n";
を削除をしてみたところCGIエラーがでてしまいました。

それと敵としてでてくる相手は国技を使えるようにしたいのです。

それともう1件相談なのですがここにて失礼します。
称号技での相談の時に

	 if($mp >= 20 && $sogo == 10){
		 $v = int($mp/20);
		 $log2 .="<option value=16>必殺管理人アタック[$v\]</option>\n";
 
         }
と、このような構文を教えてもらったのでこれを利用して国技の鳳凰転生や魂砕きなどの技を導入できるのでしょうか?

乱文ですみません。

それではよろしくお願いします。
--------
- まず、ひとつひとつ完全に動作するようにしてからでないと、どこが間違っているのかわからなくなりますよ。 -- [[あくあ]] &new{2007-05-13 (日) 21:15:04};
-- で、本題ですが上記『$log.=""』の行を削除しただけで、CGIエラーになることは無いはずですが、それ以外の制御文などが消えてませんか?perlチェックをすればすぐ判明すると思います -- [[あくあ]] &new{2007-05-13 (日) 21:17:52};
- 返信ありがとうございます。 消してみたところは
- です。(長くてすみません。あとで削除しておきます。)なお、チェッカーを使用したところ、最後の行+1行目が構文ミスやカンマなどが足りない可能性があるとでてしまいます。それではよろしくお願いします。 -- [[劉]] &new{2007-05-13 (日) 22:18:10};
- 一番最後の「 } 」を削除してみては? -- [[Gun]] &new{2007-05-14 (月) 09:56:57};
- そこは国技を選んだ際の処理部では。。。?>コマンド選択部分は削除されましたか?(処理部はそのままでも国技はなくなったように見せることは可能。) -- [[三毛猫]] &new{2007-05-14 (月) 11:25:32};
- 無くなったように、、、っとぃぅか、そのままで条件での組み換えをすればぃぃだけですよね?>称号による国技?の発動。 -- [[三毛猫]] &new{2007-05-14 (月) 11:27:57};
- Gunさん、三毛猫さん、返信有難うございます。三毛猫さんが仰っていたように削除した部分は処理部分でした。configの国技の部分を削除すれば選択肢に出ないようになりました。有難うございます。しかし、できればですが処理部分を削除をしたいのですが可能でしょうか?Gunさんが仰っている } とはbattleファィルの一番最後のほうにある } のことでしょうか? 乱文すみません。 それではよろしくお願いします。 -- [[劉]] &new{2007-05-14 (月) 21:57:24};
- それと、技の件ですが、$sogo == 10を $dg_data == 1 や job == 1 (job=職業)などにすることにより武器に必殺技を持たせ、その武器で鳳凰転生のような効果を発動させたいのです。この改造は上の称号技の構文に国技の鳳凰転生を工夫していれてみたのですがこれまた挫折してしまいました。それではよろしくお願いします。 -- [[劉]] &new{2007-05-14 (月) 22:01:36};
- 私の言う選択部とは、#戦闘時のセレクトメニュー表示のsub spell_sp {〜の部分のことです。>batle.cgi全文を熟読して、全体の処理の流れと何をしているのかを、まず掴れる事をオススメします。 -- [[三毛猫]] &new{2007-05-15 (火) 09:35:22};
- 三毛猫さん、返信ありがとうございます。

 	for($i=0,$j=2;$i<int($lv/5) && $i<=$#spell;$i++,$j++){
 		next if($mp<$sp_mp[$i]);
 		$v = int($mp/$sp_mp[$i]);
 		$log2 .="<option value=$j>$spell[$i]\[$v\]</option>\n";
 	}#;
三毛猫さんの指摘してくれた、#戦闘時のセレクトメニュー表示のsub spell_sp { の場所を見てみると、国技に関連する記述があったのでそこを削除してみたら国技は選択肢にでなくなりました。ありがとうございます。
それと技についてですが鳳凰転生の $camp == 0 を $camp > 0 に、$v == 6
を cmd==17 にしてみて、技が出るか試してみたのですができませんでした。
 -- [[劉]] &new{2007-05-15 (火) 16:29:57};
- すみません。このようにしてみたら、選べるようになりました。
 # 攻撃--自分
 sub attack_myself{

 #〜省略〜

 # 称号技-------------------------------------------------#
 			if($cmd==16){
 				if($mp >= 20){
 					$thp = 0;
 					$mp -=20;
 					$log .="必殺管理人アタック!敵を成敗した!<br>\n";
 				}
 			}elsif($cmd==17){
 				$dh =int(rand(3)) ;
 				if($dh==0){
 					$log .="技を出すのに失敗した!<br>\n";
 				}elsif($dh>0){
 					$v = int($thp*0.5);
 					$thp -= int($thp*0.5);
 					$thp = 1 if($thp < 1);
 					$vv = int($mp/4);
 					$mp -= int($mp/4);
 					$log .="奥義 鳳凰転生!!$tnm を瀕死の状態に追い込んだ!<br>しかし余波を食らい $nm は $vv の精神を失った。<br>\n" if($thp <= 1);
 					$log .="奥義 鳳凰転生!!$tnm に$vの傷を与えた!<br>しかし余波を食らい $nm は $vv の精神を失った。<br>\n" if($thp > 1);
 				}
 			}
 #ここまで-----------------------------------------------------------





 #戦闘時のセレクトメニュー表示
 sub spell_sp {

 #〜省略〜
 
 #ここから称号技------------------------------------------#
 	if($mp >= 20 && $sogo == 10){
 		$v = int($mp/20);
 		$log2 .="<option value=16>必殺管理人アタック[$v\]</option>\n";
 
         }
 	if($mp >= 2 && $sogo == 10){
 		$v = int($mp/4);
		$log2 .="<option value=17>鳳凰転生[$v\]</option>\n";
 
         }
 #ここまで称号技----------------------------------------#

尚、$camp>0 などのほかのところには手を加えておりません。
しかし、鳳凰転生をして、$dh==0(つまり技が成功)すると何故か他のアルメリアの
技も一緒に発動してしまいます。(いろいろな技が。)それではよろしくお願いします。
-- [[劉]] &new{2007-05-15 (火) 17:00:39};

#comment

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