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

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

No.499　 Re[3]:こまごま質問
`発言者： きりう 発言日： 2003 01/15 15:16`

`１、ファイルの書き込みとか読み込みって苦手で、やったことないんでよくわかん ないですけど、 死体処理のハイスコアファイル（$filescore）の処理の時に、死因（$deaddata[3] ）が生還（alive）なら上位に来るようにする って処理を加えれば出来ると思います。 俺はその詳しいやり方がわかんなかったので、殺害記録と生還記録に分けてるわけ です。 Ⅱはデフォルトで生還者が上位に来ますんで、そっちを参考に出来るんなら参考に してみてください。 ２、 # 全範囲で位置も特定できる双眼鏡 }elsif($i == 60){ Out('<b>双眼鏡</b>：他の人がどこにいるか、確認します。'); foreach(1..42){ next if($pos[$_] > 999 || !$pos[$_]); # 追加修正 if($pos[$_] && $_ != $num){ $i = int($status[3] / 10); # 追加、自分の位置 my $k = int($pos[$_] / 10); # 追加、相手の位置 $j = substr($pos[$_],1,1) || 10; $used = '-'."$j"; # 追加 $j = ($j != 10) ? substr($pos[$_],0,1) : substr($pos[$_],0,1) - 1; # 追加修正 $j = ('A','B','C','D','E','F','G','H','I','J')[$j]; $used = $j.$used; $used = '同じエリア内' if($i == $k); # 追加 Out("$victims[$_]：<b>$used</b><br>\n"); } } $writestatus = 0; 以上、菅原さんの大会verから抜粋。勝手に抜粋とかしちゃって良いんでしょうか ね？ダメだったら消しますんで、ダメだったら誰か言ってやってください。 分かってると思いますが、最初の }elsif($i == 60){ の60はアイテムNoです。 双眼鏡の範囲を狭くする場合 例）自分の位置から上下左右に2マス □□□□□ □□□□□ □□自□□ □□□□□　　自：自分の位置 □□□□□　　□：双眼鏡の届く範囲 # 双眼鏡 }elsif($i == 60){ Out('<b>双眼鏡</b>：他の生徒がどこにいるか見つけだします。'); foreach(1..42){ next if $pos[$_] > 999; my $x1=int($status[3]%100/10);　　#自分のx座標 my $y1=int($status[3]/100);　　　 #自分のy座標 my $x2=int($pos[$_]100/10);　　　 #相手のX座標 my $y2=int($pos[$_]100);　　　 #相手のy座標 if((x1-x2<3 || x2-x1<3)&&(y1-y2<3 || y2-y1<3)){　　#一定距離以上は なれている敵を表示しない ～中略～ Out("$victims[$_]：<b>$used</b>"); } } } $writestatus = 0; こんな感じでif文使って要らん部分を省いてやれば出来ると思います。動作確認し てないので動かなかったらごめんなさい。 ３、btlryl.cgiの頭の方にある if($FM{'action'} && $status[2] < 1){undef %FM;&Cookieset;} をコメントアウトすれば出来るはずです。 これもちょっと自信ないんでおかしなことになったらごめんなさいです。`

`▼関連発言 │ └◆490:こまごま質問 [こう] 01/14 00:07 └◆494:Re:こまごま質問 [きりう] 01/14 02:16 └◆497:Re[2]:こまごま質問 [こう] 01/15 00:03 └◆499:Re[3]:こまごま質問 [きりう] 01/15 15:16`

`過去ログには返信できません。`

`Pass 保存`