私設SoS2オーナー応援BBS

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

No.589  Re[3]:新アイテム
発言者: moon
発言日: 2003 05/19 22:33
> > sub foodを再利用するのであれば、use_afterのelsif ($sts =~ /Fd/) { &food }をelsif ($sts =~ /Fd|Pf/) { &food }に。
> > そして、foodでif(index($sts, 'Pf') < 0){〜}else{〜}として通常の食料と処理をわける。
> > umsgは変更しなくて良いのでfoodに直接push(@msg, "〜");を書いてメッセージを表示。
> > 商品設定や鑑定は他のアイテムを参考に変更。
> > といった流れかな。
> >
>
> ご解答ありがとうございます。
> food内がよく分からずてこずっているところです(汗)。

先に書いた分岐をもう少し詳細に書くと、
if(index($sts, 'Pf') < 0){
  &umsg('摂'); # 通常のメッセージ
}
else{
  push(@msg, '腐っていたようでお腹を壊しました。'); # 賞味期限切れのメッセージ
  $av = 'poison';
}

# 既に毒化している状態を考慮しないと上記のようになります。(&umsg('摂');だけの置換)

> > # 新しくPfというのを作るのではなく食料に'Pz'が付いていたら毒化する、というほうが自然かも。(変更も少なく済むだろうし)
>
> Pzでもいけるんですね。
> これだとPfと作業は変わるんでしょうか?
> (こちらのほうが楽そうですね)

こちらは「賞味期限切れ」と明示的には表示されないですが、上記のsub foodへの変更においてPfをPzに変更するだけで他の箇所はデフォルトで良いはずです。

▼関連発言

586:新アイテム [akira] 05/19 00:22
 └587:Re:新アイテム [moon] 05/19 09:05
  └588:Re[2]:新アイテム [akira] 05/19 12:23
   └589:Re[3]:新アイテム [moon] 05/19 22:33
    └590:Re[4]:新アイテム [akira] 05/20 09:08
     └591:Re[5]:新アイテム [moon] 05/20 19:32
      ├592:補足 [moon] 05/20 23:20
      └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

Pass 保存


CGIROOM