## CGIゲーム用掲示板 過去ログ

新規発言 ｜ 一覧 ｜ 過去ログ ｜ 最新ログ ｜ 検索 ｜ ＨＯＭＥ

`▼関連発言 │ └◆498:相手の動作 [るか・ぶ] 01/15 01:00 └◆500:Re:相手の動作 [きりう] 01/15 15:26 └◆501:Re[2]:相手の動作 [クッキー] 01/16 17:56 └◆503:Re[3]:相手の動作 [きりう] 01/16 19:41 └◆508:Re[4]:相手の動作 [クッキー] 01/17 00:46 └◆510:Re[5]:相手の動作 [きりう] 01/17 02:32 └◆521:Re[6]:相手の動作 [クッキー] 01/19 10:53 └◆522:Re[7]:相手の動作 [きりう] 01/19 11:32 └◆523:Re[8]:相手の動作 [鮎] 01/19 14:07 └◆524:Re[9]:相手の動作 [きりう] 01/19 14:56 └◆525:Re[10]:相手の動作 [鮎] 01/19 15:19 └◆526:Re[11]:相手の動作 [きりう] 01/19 15:38 └◆527:結果 [鮎] 01/19 16:31 └◆528:Re:結果 [きりう] 01/19 17:25 └◆529:Re[2]:結果 [鮎] 01/19 18:29 └◆530:Re[3]:結果 [きりう] 01/19 19:44 └◆531:Re[4]:結果 [鮎] 01/19 19:50 └◆532:Re[5]:結 [ケンシロ] 01/19 21:45`

``

``

No.498　 相手の動作
`[返信] 発言者： るか・ぶらいと 発言日： 2003 01/15 01:00 こうさんへの回答を盗み見しているるか・ぶらいとです(笑 速い武器に関してはご協力のおかげで完成させることが出来ました！ もう一つ質問させていただきたいのですが、 こちらの攻撃に対して、どのような反応を見せるか、 周辺の生徒のところに表示させたく、 if($guest[7] == 0){$mamo="反撃姿勢";} elsif($guest[7] == 1){$mamo="おどおどしている";} elsif($guest[7] == 2){$mamo="反撃姿勢";} elsif($guest[7] == 3){$mamo="友好的";} else{$mamo="防御姿勢";} print "<b class=$color>$victims[$i]</b> ($k番)$mamo<br>\n"; を付け足してみたのですが、うまくいきませんでした。 アドバイスをお願いします。`

``

No.500　 Re:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/15 15:26 考え方はそれでいいです。 けれどその部分はちょっとややこしくて、$guest[7]じゃダメなんですよ。 それで、ステータス読み込みの # 位置 の $pos[$i] = $status0[3] + (($status0[5] =~ m/<>/) ? 1000 : 0); の下辺りに $taiou[$i]=$status0[7]; ※$taiouは任意の名前でOK を加えます。 そして、 if($guest[7] == 0){$mamo="反撃姿勢";} elsif($guest[7] == 1){$mamo="おどおどしている";} elsif($guest[7] == 2){$mamo="反撃姿勢";} elsif($guest[7] == 3){$mamo="友好的";} の $guest[7] の部分を $taiou[$i] に書き換えれば出来ます。`

``

No.501　 Re[2]:相手の動作
`[返信] 発言者： クッキー消しちゃったるか・ぶらいと 発言日： 2003 01/16 17:56 こんな設定が必要だったのかぁ・・・ すぐに出来ましたｗ あのー・・・改造質問ばかりしてきたんですけど フツーの質問しまーす(坂持風 # デイパック:165 はずれ:!165 }elsif($i == 65){ Out('デイパックを開けた。'); $i = 0; my @denai = (43,51,52,54,55,56,58,62,65); ($status[$used] == 165) || push @denai, (4,5,6,10,38); while(!$i){ $i = int(rand 66) + 1; $i = 0 if grep {$i == $_} @denai; } の中のmy @denai = (43,51,52,54,55,56,58,62,65); ($status[$used] == 165) || push @denai, (4,5,6,10,38); で、@denaiが二つあるのですが、これについての説明をお願いします。 あと、int(rand 66) + 1;はアイテム総数(０から始まるので+1) と考えていいのでしょうか？ また、アイテムを増やすときは、この値を変更する必要があるのでしょうか？`

``

No.503　 Re[3]:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/16 19:41 ふむふむ、俺の使ってるverのデイパの処理とちょっと違いますねえ、新しめのverのやつ ですかねえ。 デイパックは初期配布用デイパック（165）と民家用デイパック（265）の2種類あります 。 my @denai = (43,51,52,54,55,56,58,62,65); こっちは初期用からも民家用からも出ないアイテム（拳、車ｘ２、写真、腹腹、ロック 解除、マック、デイパ）を設定しています。 ($status[$used] == 165) || push @denai, (4,5,6,10,38); こっちは165（初期用パック）以外を使ったとき、つまり、民家パックを使ったとき、出 ない物リスト（@denai）に(4：チョッキ,5：レミ,6：イン,10：フルフェ,38：ウージー) を追加するという処理をしています。 簡単に言うと、初期パック（165）からはアイテムNo(43,51,52,54,55,56,58,62,65)の物 が出ない、 民家パック（265）からは(43,51,52,54,55,56,58,62,65)に加えて、(4,5,6,10,38)の物 も出ないということです。 そして、int(rand 66) + 1;　は int(rand 66)　で0～65の整数の中からランダムで数字をひとつ選ぶ。 アイテムNoが0のアイテムは首輪、アイテムの総数は66なので+1してるというわけです。 アイテムを増やすときは、 int(rand 66) + 1; の66を変更、 増やしたアイテムをデイパックから出したくない時は my @denai = (43,51,52,54,55,56,58,62,65); もしくは ($status[$used] == 165) || push @denai, (4,5,6,10,38); に出したくないアイテムのNoを追加すればいいわけです。`

``

No.508　 Re[4]:相手の動作
`[返信] 発言者： クッキー消しちゃったるか・ぶらいと 発言日： 2003 01/17 00:46 ありがとうございますｗ これでイッパイアイテムを増やすことが出来ます。 ところで、BRⅡに全島放送ってのがありますよねぇ(管理人用のメガホンみたいな) あれをⅠで実行するにはどういう改造をすればいいのでしょうか？ 私的にはメガホンのアイテムのところをコピペかなと思ってます。`

``

No.510　 Re[5]:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/17 02:32 特定の名前で行動記録で発言した時に島内放送になるって考え方で出来ました。 btlryllg.cgiの書き込みの push @log,",,mo,$name,$FM{'message'}"; を if($name eq $housou){ push @log,",,housou,$name,$FM{'message'}"; }else{ push @log,",,mo,$name,$FM{'message'}"; } って風にしてやったら、特定の名前（$housou　←btlrylcm.cgiで設定してください）で 発言しようとしたらmo（普通の発言←行動記録の緑の発言）じゃなくてhousouになるんで 、読み込みのところで好きな風にやっちゃってください。 一応、例出しとくと #コメント }elsif($i eq 'housou'){ $chat_on && ($pre2 ne $log[5]) && print qq|<b class=kinsi>坂持金発が島内放送で 「$log[5]」と言った。</b><br>\n|; next; みたいな感じで。 あと、ステータス読み込みの行動記録のif文のところに $status0[3]がhousouの時をor条件で付け加えて、 最近の行動の# 第3者の行動の上辺りに }elsif($i eq 'housou'){ $m = "坂持金発が島内放送で$log[5]と言った"; と加えればステータス画面の最近の行動のところにも島内放送が表示されるようになり ます。 最後に、ステータス表示の $m && Out("<b>$j</b>から$mました。"); の下に }else{ $m = ($t[3] eq 'housou') ? "<b>島内放送</b>で「$t[5]」" : # 攻撃された ''; $m && Out("$m。"); ってやってやれば攻撃された時とか話し掛けられたときみたいにステータス画面の上の ほうにも表示されるようになります。 この3点でBRⅡの島内放送と同じ風になるんではないでしょうか。`

``

No.521　 Re[6]:相手の動作
`[返信] 発言者： クッキー消しちゃったるか・ぶらいと 発言日： 2003 01/19 10:53 やっと完成しました！ ・・・さて・・・デイバックの謎を解明してからはどんどんアイテムを増やして、 もうすぐ100を超えそうです。 そこで一つ疑問に思うのですが、３桁でアイテムを区別しているところ (例えば食料の毒のあるなしやデイバックの区分など) があるのなら、アイテムナンバーが100を超えると、 どこかにバグが出るような気がして怖いです。 このまま増やしていってもいいのでしょうか？`

``

No.522　 Re[7]:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/19 11:32 2桁目以下がアイテムNo、3桁目以上はアイテムの数を示しているので、基本的にアイテム は100種類までしか増やせません。 No.100のアイテムを作っても首輪になっちゃいます。（下2桁が00なので） 100種類以上増やしたいときは、3桁目以下がアイテムNo、4桁目以上がアイテムの数って 風にすれば一気に1000種類まで増やせるようになります。 主な変更箇所は、/100（100で割った値でアイテムの使用回数を割り出す）、%100（100 で割った余りの値でアイテムNoを割り出す）、-100（アイテムの使用回数を-1）です。も ちろん他にもあります。 変更箇所がかなり多いのでがんばってください。`

``

No.523　 Re[8]:相手の動作
`[返信] 発言者： 鮎 発言日： 2003 01/19 14:07 アイテム９９こまでってのは私もきになっていました。 現在９２個なのでっｗ １０００――　大変ですね 522で管理人様が言った以外の方法でできないかな と思っています……`

``

No.524　 Re[9]:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/19 14:56 大変ですがあの方法が一番正攻法で楽だと思います。 > 他の方法 アイテムリスト（btlrylit.txt）をアイテムの種類ごとに別ける方法とか思いついたん ですが、かなりめんどくさそうです。とてもやる気になれません。`

``

No.525　 Re[10]:相手の動作
`[返信] 発言者： 鮎 発言日： 2003 01/19 15:19 ですよねー・・・あの方法が一番いい。 00～99じゃなく 00～zzにすることは不可能かな……（たぶん無理だ）`

``

No.526　 Re[11]:相手の動作
`[返信] 発言者： きりう 発言日： 2003 01/19 15:38 > 00～zz なるほど、zzは無理かもしれないけどffならいけるかもしれませんね。 けど、perlで16進数使うのってどうやったら良いのか分かりませぬ。(;´－｀)`

``

No.527　 結果
`[返信] 発言者： 鮎 発言日： 2003 01/19 16:31 16進数やるんだったら やはり1000にしたほうが簡単そうですね…… アイテムリストを種類（接近/防具…）にわけてミタラ どうかなーなんて思ったんですけどね……難しいですぃ アイテムが99まで到達したらいろいろ考えて見ます。`

``

No.528　 Re:結果
`[返信] 発言者： きりう 発言日： 2003 01/19 17:25 > 16進 ややこしい上に256までしか増やせませんしね。 やるなら早いうちにやっておいた方がいいですよ。改造箇所が増えるに連れて修正箇所 も増えちゃいますから。うちのはもう目も当てられません (;´д｀)ﾄﾎﾎ`

``

No.529　 Re[2]:結果
`[返信] 発言者： 鮎 発言日： 2003 01/19 18:29 うむぅ？管理人様も99までですか？`

``

No.530　 Re[3]:結果
`[返信] 発言者： きりう 発言日： 2003 01/19 19:44 99までです。 大量に増やす機会が無いんで、増やしては消し、増やしては消ししてます。`

``

No.531　 Re[4]:結果
`[返信] 発言者： 鮎 発言日： 2003 01/19 19:50 うーんそうですか 難しそうだなー。`

``

No.532　 Re[5]:結果
`[返信] 発言者： ケンシロウ 発言日： 2003 01/19 21:45 実は私もその問題に直面しています。 私のサイトでは奥義システム(ケンシロウだけに・・・) を導入しました。 それに伴い、自然とアイテムの個数が増え、思うように追加できないでいます。 どなたか１０００まで可能にしたら、改造箇所プリーズ(藁`

``

`CGIROOM`