罪と罰++二律背反


*統一ボーナス [#j0b709d8]

-ページ: [[罪罰改造板2]]
-投稿者: [[SMO]]
-優先順位: 普通
-状態: 完了
-カテゴリー: 設置できません
-投稿日: 2006-03-05 (日) 16:45:45
-バージョン: 

**内容 [#a5adea01]
またまたすみません・・・
内政ポイントとか関係なく、統一国に、ある一定の金額(例えば100万)を所属者全員に、統一時に与えるにはどうすればいいですか?
----
-これが、簡単そうに見えて意外とめんどうです -- [[あくあ]] &new{2006-03-07 (火) 00:03:26};
-ぱっと思いつくのは -- [[あくあ]] &new{2006-03-07 (火) 00:04:32};
+統一時に統一国に所属しているキャラ全員の金額を加算する
+受け取ったか受け取ってないかを管理して全員が受け取れるようにする
-1の方法は、他人のキャラデータを修正するスクリプトが必要になります、が、これはココでは配布していません。こさどさんが作られたものがあるので、[[罪罰改造配布サイト:http://tumi.s81.xrea.com/xoops/index.php]]の「着信表示&相手のステータスを変更するスクリプト」を改造すれば出来るかもしれません -- [[あくあ]] &new{2006-03-07 (火) 00:09:21};
-次に2の方法ですが、これを実現しているのが罪罰/同期イベントになります。が、使い方が難しいのと導入がうまくできなかったときの被害が大きいので、自分で解決できる人のみ使ってもらうことにしています。っていうかフォロー出来ないです、ごめんなさい -- [[あくあ]] &new{2006-03-07 (火) 00:12:26};
-うわぁ!難しそうですね。初心者の自分では無理そう・・・むむむ、頑張ります。 -- [[SMO]] &new{2006-03-09 (木) 17:32:33};
-うちのサイトも統一ボーナスを取り入れているのですが、他の人にもらったものなので添付はできないんすけど簡単に書くと、
まず、キャラパラメータを1つ新たに作ります。(ウチでは$s_gとしています)。
ore_sub-main.cgiにて、もし$s_gと$goal_noが違うならば統一国の人の賞金を増やすという処理をやっています!-- [[カイ]] &new{2006-03-10 (金) 17:50:51};
-わかりにくくてすみません。。 -- [[カイ]] &new{2006-03-10 (金) 17:56:39};
-カイさん、ありがとうございます。$s_gは追加しました。『もし$s_gと$goal_noが違うならば統一国の人の賞金を増やすという処理』のところをどうやるのか、どこに入れるのか、詳しく教えていただけませんか?すみません。 -- [[SMO]] &new{2006-03-11 (土) 18:26:25};
-罪罰/統一ボーナスを追加しました -- [[あくあ]] &new{2006-03-11 (土) 20:33:08};
-その通りにやったんですが、何故か作動してません・・・。あと、統一時に、統一国所属者全員、現状維持すると 我が国が統一しました って表示されるようにして、統一できなかった他国所属者全員が現状維持すると 他国に統一されました と表示するにはどうすればいいですか? -- [[SMO]] &new{2006-03-13 (月) 00:45:17};
-ユーザファイルの中を見たときに$s_gはどうなってますか? -- [[あくあ]] &new{2006-03-14 (火) 22:57:55};
-SMOさんの言ってる後半部分は 
 	}elsif($s_g < $goal_no){
 		if($hcamp == $camp){
 			# ボーナス
 			my $g = 50000; # ボーナス金額
 			$log .= qq|我が国が大陸を統一しました!!<br>|;
 			$log .= qq|統一ボーナス $g が支給されました!!<br/>|;
 			$gold += $g;
 		}else{
 			$log .= qq|他国に統一されました<br>|;
 		}
 			$s_g = $goal_no;
 	}
	#-----------------------------------ここまで
としたらどうでしょう??-- [[カイ]] &new{2006-03-15 (水) 03:19:52};
-あくあさん、ユーザファイルにも$s_gをくわえるんですか?だとしたら加えてませんでした。どこにどのような形でいれればよいのでしょうか?キャラデータの中に加えるのであれば、登録したキャラにいちいち加えなければいけないんですか?とんちんかんなことを言ってるかもしれませんが、お願いします。 -- [[SMO]] &new{2006-03-15 (水) 17:00:49};
-カイさん、ありがとうございます!確認しだい報告します。 -- [[SMO]] &new{2006-03-15 (水) 17:02:21};
-ore_sub-system に変数を加えるとキャラデータに値が保存されるようになります。 -- [[あくあ]] &new{2006-03-15 (水) 17:53:01};
-$s_gは国ログじゃなくてキャラログっすよ!ore_sub-system.cgiが間違ってるんだと思いますよ〜! -- [[カイ]] &new{2006-03-15 (水) 17:53:34};
-$s_g= $DAT{'s_g'};を# ハッシュ割り当てのsub hash_data{の一番上にいれてるんですが、だめでしょうか? -- [[SMO]] &new{2006-03-15 (水) 18:45:06};
-キャラデータの書き込み部分に 「 s_g;$s_g, 」のように追加する必要があります。罪罰キャラパラメータを参考に -- [[あくあ]] &new{2006-03-15 (水) 21:57:47};
-あ、あくあさん、それ自分やったつもりなんですが、一回system.cgiのデータとんだからそこを加えるの忘れてました。ありがとうございます。しかし、現在なぜか500鯖エラーでどうしようもない状況に・・・以前のバグってない時のデータをアップロードしてもなぜか鯖エラー・・・これを解決してから、統一ボーナス挑戦します -- [[SMO]] &new{2006-03-18 (土) 15:33:48};
-↑は直って、s_g追加時の# 新しい変数を $dat[0]に 変数名;変数, のように追加する は、わかるんですが、#$dat[0]に加えた変数を各キャラデータに書き込む の部分がいまいちわからないのですが、お願いします。  -- [[SMO]] &new{2006-03-25 (土) 17:14:45};
-ore_sub-system.cgiで 
 sub hash_data{
 	$s_g		= $DAT{'s_g'};		# 統一ボーナス

 # キャラデータ書き込み
 sub dat_write{
 	$dat[1] = "$date<>$addr<>$host<>$agent<>\n";
         $dat[0] .="s_g;$s_g,"; # この行を追加
としてください!これとあとはadminの方も書き換える必要があるのですが、とりあえず、これだけで正常に動くかと思うのですが〜-- [[カイ]] &new{2006-03-25 (土) 20:26:44};
-あくあさん、カイさん大変ありがとうございました。多分できました。原因はmain.cgiのかっこがひとつ多かったみたいです。確認しだいまた報告致します。 -- [[SMO]] &new{2006-03-28 (火) 12:01:27};
-あ、それと結局adminの方は触らなくてもいいんですか? -- [[SMO]] &new{2006-03-28 (火) 12:02:12};
-今確認したところ、できてました。本当にありがとうございました。 -- [[SMO]] &new{2006-03-28 (火) 12:18:56};

#comment

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