スクリプト公開所

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
79 / 101 ツリー ←次へ | 前へ→

カードを消費してモンスターを召喚 ふぃなーれ 07/2/8(木) 19:12
Re:カードを消費してモンスターを召喚 ふぃなーれ 07/2/8(木) 19:13 [添付]
ごめんなさい。 らの字 07/2/9(金) 19:24
↑のスクリプトの追記 ふぃなーれ 07/2/9(金) 21:59

カードを消費してモンスターを召喚
 ふぃなーれ  - 07/2/8(木) 19:12 -
  
モンスター名を入力することによって、
「モンスター名+”カード”」のアイテムを一枚消費して、
モンスターを10体召喚するNPCのスクリプトです。
ふぃなーれの処女作です。
倍率の高いサーバーだとポリンカード大量生産できますね。
アップロードは自己満足なので、使う方は頑張ってください。

三つの命令・関数に関するちょっとした不具合も載せたので、
読んでおくと今度の参考になるかも知れません。
Script_red.txtは信用なりませんね、ほんと。
引用なし
パスワード

Re:カードを消費してモンスターを召喚
 ふぃなーれ  - 07/2/8(木) 19:13 -
  
添付!!
引用なし
パスワード

[添付]〜添付ファイル〜
・名前 : npc_misc_callmonster.txt
・サイズ : 4.7KB

ごめんなさい。
 らの字  - 07/2/9(金) 19:24 -
  
今までAthenaの開発に参加した方々の努力が無駄にならないために、
これからスクリプトの書き方を学ぼうとする者が誤解しないために、
つっこませていただきます。

>1.モンスターが出てこねぇよ!!
> 数時間自分を悩ませました。
> 原因はHideonnpc命令の後にmonster命令があったことのようです。
> 順番を変えたら動いただけなので確証はありません。

script_ref.txtの内容をよく読んでみてください。
    hideonnpc [<npcname>];
    <npcname>をハイディング状態にします。
        同時に<npcname>を無効にします。

注目すべきなのは「同時に<npcname>を無効にします。」の部分です
無効にされたNPCがそれ以降の命令を実行できなくて当たり前です。


>2.モンスターが削除されねぇよ!!
> script_ref.txtのkillmonster命令の説明では、
> モンスターを出現させたevent名を指定すれば殺せるとありますが、
> 無理でした。monster命令によって殺した後のeventを組み込んで出したモンスターは、
> 組み込んだevent名を指定することで、killmonster命令で殺すことが出来ます。
> つまり。「killmonster 殺したいマップ,殺したいmobが死んだときに発動するevent名」
> になります。eventを組み込まずに出したモンスターに関しては未確認です。

もちろんこれもちゃんとscript_ref.txtに載ってます。
    monster命令
        monster <gatname>,<x>,<y>,<mobname>,<mobid>,<num>[,<event>];
            そのモンスターを倒したとき<event>を開始します。

    killmonster命令
        killmonster <gatname>[,<event>];

        <gatname>に存在するモンスターをすべて殺します。
        マップ名を"this"にすると、命令を実行したNPCのMAPを参照します。
        <event>によって呼び出されたモンスターのみ殺すことも可能です。
        <event>をAllにするとそのマップにある一時的に召喚されたモンスターを全て殺します。

killmonster命令は「 <event>によって呼び出されたモンスターのみ殺すことも可能です。」
何も間違ってません。


>3.存在しないモンスター名でも召喚できちまうよ!!
> countitemという関数は、因数として渡したモノが、数字であった場合はそのまま、
> アイテムの数を数えに行きますが、文字列だった場合一度アイテムIDに直します。

これに関しては確かに参考になると思いますが、
不特定多数の人間によって開発されたAthenaに付属された
script_ref.txtのような「使用説明」はユーザーのために
用意されたものというより「開発者のために用意された物」
だと思います。

すべての命令の特性までscript_ref.txtに載るべきと思ってるなら、
ここにではなくて開発版に書き込むべきと思います。


それと、script_ref.txtだけではなく、
他人の作品やAthenaの付属サンプルを読むことも大切です。

もう手遅れですが、MOB召還と特定MOB削除の使用例は
\script\sample\npc_custom_branch.txt か
古いAthenaなら \script\extension\eda.txt を
参考してください。

*あるいは \script\npc\quest\npc_event_momotaro.txt

初心者の方々へ:
確かに「3」によると「script_ref.txtが信用なりません」
と言えるかもしれません。
ですが、script_ref.txtをちゃんと読まないと、
「1」と「2」のようにscript_ref.txtの内容に
載られたとこまでたどり着くために何時間が掛かることになる。

ふぃなーれさんへ:
以上、えらそうに説教するつもりでもなく、
挑発するつもりでもありませんですが、
気が触ってしまったらごめんなさい。

Blazeさんへ:
不適切書き込みと見なしましたら削除してください。orz
引用なし
パスワード

↑のスクリプトの追記
 ふぃなーれ  - 07/2/9(金) 21:59 -
  
タイトルで謝りながら本文で強く批判されたのは、とても不快になりましたが、
らの字さんの書いたことが正しいと思います。
自分の書いたスクリプトを使われたり、コメント部分に書いてあることを、
参考にする方は、らの字さんの書いてくれたことも留意してください。
引用なし
パスワード

  新規投稿 ┃ツリー表示 ┃一覧表示 ┃トピック表示 ┃検索 ┃設定 ┃ホーム  
79 / 101 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:   
152078
(SS)C-BOARD v3.8 is Free