私設SoS2オーナー応援BBS

新規発言一覧最新記事過去一覧検索ダウンロードページHOME

スレッド

└◇593:
Re[6]:新アイテム [akira] 05/21 05:31

 └◇594:Re[7]:新アイテム [moon] 05/21 08:37
  └◇595:Re[8]:新アイテム [akira] 05/21 09:45
   └◇597:Re[9]:新アイテム [masaki] 05/21 13:14
    └◇598:Re[10]:新アイテム [moon] 05/21 19:25
     └◇599:できました! [akira] 05/21 22:06
      └◇600:Re:できました! [masaki] 05/22 16:46<-last


593● Re[6]:新アイテム[ akira ] 2003 05/21 05:31

> &umsg('摂');を置き換えるだけです。
>
> # そのままコピペして全角空白の変換をしていないとか。(笑)

# Sub Food #
sub food {
    if ($av eq 'dead') { &umsg('死') }
    elsif ($bp =~ /Hb/) {
        $item = $bn . $item; $bp =~ tr/a-zA-Z//d;
        $iak *= $bp; $iak = 999 if $iak > 999; $iak = -99 if $iak < -99;
        $sts = sprintf("%04d%03d%03d",0,$iak,0) . "FdWi";
        &umsg('作'); $bp = $bn = '';
if(index($sts, 'Pf') < 0){
   &umsg('摂'); # 通常のメッセージ
}
else{
   push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
   $av = 'poison';
}
}
文法チェックは大丈夫だったのですが、
毒状態にならないしメッセージも出ません。
上はコピペしたのでスペース加減は違って見えるかもしれないんですが。
スレッド一覧


594● Re[7]:新アイテム[ moon ] 2003 05/21 08:37
>
> > &umsg('摂');を置き換えるだけです。
> >
> > # そのままコピペして全角空白の変換をしていないとか。(笑)
>
> # Sub Food #
> sub food {
>     if ($av eq 'dead') { &umsg('死') }
>     elsif ($bp =~ /Hb/) {
>         $item = $bn . $item; $bp =~ tr/a-zA-Z//d;
>         $iak *= $bp; $iak = 999 if $iak > 999; $iak = -99 if $iak < -99;
>         $sts = sprintf("%04d%03d%03d",0,$iak,0) . "FdWi";
>         &umsg('作'); $bp = $bn = '';
> if(index($sts, 'Pf') < 0){
>    &umsg('摂'); # 通常のメッセージ
> }
> else{
>    push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
>    $av = 'poison';
> }
> }
> 文法チェックは大丈夫だったのですが、
> 毒状態にならないしメッセージも出ません。
> 上はコピペしたのでスペース加減は違って見えるかもしれないんですが。

元の&umsg('摂');を囲んであったelse{}が無いようですが。
スレッド一覧


595● Re[8]:新アイテム[ akira ] 2003 05/21 09:45
> > > &umsg('摂');を置き換えるだけです。
> 元の&umsg('摂');を囲んであったelse{}が無いようですが。

結局のところ勉強不足というか言葉がいまいち分からず、
「置き換え」の仕方が分からないです。
置き換え、置換で探しても置換演算子あたりでヒットしてしまって。これとは別物ですよね。

何度も同じところですみませんが、
# Sub Food #
sub food {
    if ($av eq 'dead') { &umsg('死') }
    elsif ($bp =~ /Hb/) {
        $item = $bn . $item; $bp =~ tr/a-zA-Z//d;
        $iak *= $bp; $iak = 999 if $iak > 999; $iak = -99 if $iak < -99;
        $sts = sprintf("%04d%03d%03d",0,$iak,0) . "FdWi";
        &umsg('作'); $bp = $bn = '';
    } else { &umsg('摂'); $hp = &hpcheck($hp,$xp,$iak); $gn = 1 }
if(index($sts, 'Pf') < 0){
   &umsg('摂'); # 通常のメッセージ
}
else{
   push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
   $av = 'poison';
}
}
にすると当然「置き換え」の指示通りではないし
単に書き込んだだけ、文法もだめになっちゃいます。
スレッド一覧


597● Re[9]:新アイテム[ masaki ] 2003 05/21 13:14
akiraさん初めまして(^^
moonさんいつもお世話になっております。m(_ _)m
ちょっと覗きに来て、思ったので一言w
>else { &umsg('摂'); $hp = &hpcheck($hp,$xp,$iak); $gn = 1 }
>if(index($sts, 'Pf') < 0){
>   &umsg('摂'); # 通常のメッセージ
>}
>else{
>   push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
>   $av = 'poison';
>}
ではなく、
else {
if(index($sts, 'Pf') < 0){
&umsg('摂'); # 通常のメッセージ
}
else{
push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
$av = 'poison';
}
$hp = &hpcheck($hp,$xp,$iak); $gn = 1;}
ということではないでしょうか?
置き換えとはそのまま置きかえるだけですから、深く考えないほうが言いと思います(^^;
間違っているかもしれませんw
失礼しました(^^
スレッド一覧


598● Re[10]:新アイテム[ moon ] 2003 05/21 19:25
masakiさんが書かれた通りです。

変更のついでに、push(@msg, '腐っていたようでお腹を壊しました。');をpush(@msg, "$itemを摂取したら腐っていたようでお腹を壊しました。");のような感じにしたほうが良いと思います。
スレッド一覧


599● できました![ akira ] 2003 05/21 22:06
moonさん、いつもありがとうございます。
無事できました。

masakiさん、はじめまして。
masakiさんの書き込みをみてはこういうのもできるんだ、
と思っていました。
ご指摘ありがとうございました。
無事できました♪

それでは、失礼します。
本当に助かりました。
これからもよろしくお願いします。
スレッド一覧


600● Re:できました![ masaki ] 2003 05/22 16:46
> moonさん、いつもありがとうございます。
> 無事できました。
>
> masakiさん、はじめまして。
> masakiさんの書き込みをみてはこういうのもできるんだ、
> と思っていました。
> ご指摘ありがとうございました。
> 無事できました♪
>
> それでは、失礼します。
> 本当に助かりました。
> これからもよろしくお願いします。
僕はなにもしてないですけどねw
勉強中ですから〜(^^
これからも宜しくお願いします。
スレッド一覧

CGIROOM