私設SoS2オーナー応援BBS

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

スレッド

└◇387:
Re[5]:プレイヤー全員の〜 [moon] 02/19 08:44

 └◇388:関係ないこと [moon] 02/19 08:47
  └◇389:Re:関係ないこと [masaki] 02/19 11:02
   └◇390:Re[2]:関係ないこと [moon] 02/19 20:28
    └◇391:Re[3]:関係ないこと [masaki] 02/19 20:36
     └◇392:Re[4]:関係ないこと [moon] 02/19 21:03
      └◇393:Re[5]:関係ないこと [masaki] 02/20 18:05
       └◇394:Re[6]:関係ないこと [moon] 02/20 21:08
        └◇395:Re[7]:関係ないこと [masaki] 02/20 21:43<-last


387● Re[5]:プレイヤー全員の〜[ moon ] 2003 02/19 08:44
> if ($dm >= $mdd) {$star=$star+=1; push (@msg,"$inmを倒した!$inmははじけて星になりました。。"); next;}
> となっている場合、
> $star=$star+=1;の後ろに追加でいいのですか?

星の数は全員での共有ですよね?
そうすると$starフラグはいらないので追加ではなく置き換えです。

ちなみに、「プレイヤー毎の星の数」という概念がなくなるのでプレイヤー毎に表示したい場合は負荷が高いユーザデータ毎に保存する方法にするしかありません。(全体のを表示したい場合はファイルから読み込んでただ表示するだけで済みますが。)
スレッド一覧


388● 関係ないこと[ moon ] 2003 02/19 08:47
書いた後で気付いたのですが$star=$star+=1;は、
  $star = $star + 1;
  $star = $star; # 余計
とやっていることと同じです。
こういう場合の書き方は、$star += 1;だけでOKですよ。
スレッド一覧


389● Re:関係ないこと[ masaki ] 2003 02/19 11:02
星を20個集めたときの出来事として
レアアイテムを所持品に加える事は可能でしょうか?(^^;
できればヒントでもいいので教えて欲しいです(^^
スレッド一覧


390● Re[2]:関係ないこと[ moon ] 2003 02/19 20:28
> 星を20個集めたときの出来事として
> レアアイテムを所持品に加える事は可能でしょうか?(^^;
> できればヒントでもいいので教えて欲しいです(^^

それなら、
1. レアアイテムを記述したファイルを作成する。
2. 星が20個集まったときにレアアイテムファイルを読み込んでrandで一つ選択する。(改行を読み込まないように注意)
3. レアアイテムを所持品に入れる。
かな?

# 閃いたのですが、所持品に入れるのではなくて探索アイテムファイル(itm.dat)に入れたほうが面白いかも。(この場合はレアアイテムが発見されたらitm.datから消えるというデフォルト仕様にする必要がありますが。)
スレッド一覧


391● Re[3]:関係ないこと[ masaki ] 2003 02/19 20:36
> 1. レアアイテムを記述したファイルを作成する。
ファイル内のデータは、item.datなどとおなじ書き方でいいのでしょうか?(^^;
> 3. レアアイテムを所持品に入れる。
この方法がよくわかりません(;;
詳しく教えて欲しいです。。
> # 閃いたのですが、所持品に入れるのではなくて探索アイテムファイル(itm.dat)に入れたほうが面白いかも。(この場合はレアアイテムが発見されたらitm.datから消えるというデフォルト仕様にする必要がありますが。)
いいかもしれません(^^
(僕のsos、レアの出現率以上に低いですからw
 昔のMoon Edition並みです(^^)
スレッド一覧


392● Re[4]:関係ないこと[ moon ] 2003 02/19 21:03
> > 1. レアアイテムを記述したファイルを作成する。
> ファイル内のデータは、item.datなどとおなじ書き方でいいのでしょうか?(^^;

それでも良いですけれど全てのレアアイテムが一定確率なら、
レア1<>ステータス1<>
レア2<>ステータス2<>
レア3<>ステータス3<>
の形式で書いたほうが後々の処理で楽です。

> > 3. レアアイテムを所持品に入れる。
> この方法がよくわかりません(;;
> 詳しく教えて欲しいです。。

選択したレアアイテムが$rareitem,$rarestsだとすると通常のアイテム処理と同様に、
  push(@items,"$rareitem△$rarests");
とすれば良いです。
スレッド一覧


393● Re[5]:関係ないこと[ masaki ] 2003 02/20 18:05
$rarestsというのは、LiやSwのことでいいのでしょうか?(^^;
よくわからないので、確認の意味も含めて(あと、おかしいところがあるので(^^;)
if(open(FILE,'<count/star.dat')){ # ファイルを読み込みモードで開く
    $count = <FILE>; # カウント数を読み込む
    close(FILE);
    $count++; # カウントアップ
    if($count>=20){ # 20個以上になったか?
push (@msg,"あなたは20個目の星を見つけました。");
##########20個以上になったときに実行する処理#############
if(open(RARE,'rare/rare.dat')){
$rare = <RARE>;
$rarests = Li;
push(@items,"$rare△$rarests");
close(RARE);
}
    $count = 0; # 20個以上になったら処理後にクリア
    }
    if(open(FILE,'>count/star.dat')){ # 書き込みモードで開く
    print FILE $count; # カウント数を書き込む
    close(FILE);
    }
    }
こんな感じになっています(^^;
$rarestsがよくわからないので、適当に(ぉぃ
アイテムが
アイテム<>00010101Fd<>
だとすると、そのまま
アイテム<>00010101Fd<>
がアイテムに追加されてしまいます(^^;
なぜでしょうか?
スレッド一覧


394● Re[6]:関係ないこと[ moon ] 2003 02/20 21:08
> $rarestsがよくわからないので、適当に(ぉぃ
> アイテムが
> アイテム<>00010101Fd<>
> だとすると、そのまま
> アイテム<>00010101Fd<>
> がアイテムに追加されてしまいます(^^;
> なぜでしょうか?

$rareitem,$rarestsは$itemや$stsのレア版として書いたのですが分からなかったですか・・・。
($rareitem,$rarests) = split(/<>/,$rare);が必要です。

もちろん$rarests = Li;は要りませんし、"$rare△$rarests"は"$rareitem△$rarests"です。
スレッド一覧


395● Re[7]:関係ないこと[ masaki ] 2003 02/20 21:43
できました(;;
ありがとうございました〜!!!
スレッド一覧

CGIROOM