Perlコーディング初心者質問スレ Part 61
■ このスレッドは過去ログ倉庫に格納されています
0020nobodyさん
2010/06/06(日) 18:42:10ID:???@itesと、@itemsどっちかがtypoだ。
これ↓、前のバージョン用に整理した奴。
sub hokan {
my $target = shift;
if ($m{is_full_g}) { $mes = "$max_depot_g個までしか保管することはできません"; return; }
# 構造が同じ二次元配列を、別名で三つ作る必要あんの?
# $items[$m{ite}][1]とどっちが正しいの?
my @keys = qw( wea arm ite );
my %hash = ( wea => $weas[$m{wea}][1], arm => $arms[$m{arm}][1], ite => $ites[$m{ite}][1], ) ;
# if ~ elsif は、やることが同じなら
# for( next if 条件 ; 処理 ; last ) に纏められる
# typo も減らせるからそちらお勧め
for my $i ( 0 .. $#keys ){
next if $hash{$keys[$i]} ne $target ;
$npc_com = "$hash{$keys[$i]}を倉庫にいれました\n";
# $m{$keys[$i]}はsend_item2内で使ってないよ?渡すの?それでも
&send_item2($m, $i + 1, $m{$keys[$i]});
$m{$keys[$i]} = 0;
last ;
}
if ($npc_com) { &get_depot_cg; return; }
$mes = qq|どれを倉庫にいれますか?<br />|;
for my $key ( @keys ){
next if ! $m{$key} ;
$mes .= qq|<span onclick="text_set('@ほかん>$hash{$key} ')">$hash{$key}</span> / | ;
}
$act_time = 0;
}
■ このスレッドは過去ログ倉庫に格納されています