忍者ブログ
RPG製作情報など
[7]  [8]  [9]  [10]  [11]  [12]  [13]  [14]  [15]  [16]  [17
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

RPGにおいて、重要な要素である宝箱。
町や洞窟に置かれていて、開けると中から、お金やアイテムが出てくる奴。

一口に宝箱と言っても様々で、例えば『ツボ』だったり『タンス』、
何も目印は無いけど、『怪しい場所』ってのも宝箱と言えるだろう。

前置きはさておき、今回は『Make_Party_Events 』を公開って話。
※スクリプトは、Interpreter 7より下、Mainより上に挿入してね。
--------------------------------------------------------
■『Make_Party_Events vol.01』特徴
某RPG(ド○クエ)の「このフロアには、あと3個宝箱があるようだ!」って、
教えてくれるアレ。 とうぞくのはな
あとは、宝箱の回収率とか...

①準備・・・↑前置きにも書いた『宝箱』イベントの
イベントページ1(1ページ目)、
実行内容の1行目(1番最初)に、
イベントコマンド『注釈』を挿入して、
内容を 宝箱 と記入する。↓こうなるハズ

◆注釈:宝箱
◆      ※

※の位置が2行目なので、ここから下にイベントを組む

多分、こんな感じかな?↓
◆注釈:宝箱
◆移動ルートの設定:このイベント
:180度回転
◆文章:ポーションを手に入れた!
◆アイテムの増減:ポーション+1
◆セルフスイッチの操作:A=ON

↑何度も開けられるのを禁止するため、スイッチをONにするハズだ。
※この場合は、セルフスイッチA=ON

スイッチをONにする前に、イベントコマンド『スクリプト』に
gain_treasur(MapID,EventID,true) ←を記入して挿入。

◆アイテムの増減:ポーション+1
◆スクリプト:gain_treasur(MapID,EventID,KEY)
◆セルフスイッチの操作:A=ON


MapIDは、宝箱を置いたマップIDを記入。
※Mapの設定-ID:001 ←ならば1
EventIDは、宝箱のイベントIDを記入。
※EV001 ←ならば1
KEYは、trueを記入(true=開けた false=開けていない)

基本的に宝箱イベントは、決定キーで開始するのがセオリーなので、
"このイベント"の場合は、(MapID,EventID,KEY)を省略することが可能!
※内部で、MapID=現在のMapID、EventID=このイベントID、KEY=true、としている為

◆スクリプト:gain_treasur ←コレだけでOK

②値の取得・・・
『Make_Party_Events vol.01』スクリプト内の、
class Game_Partyを参照。

・ゲーム全体の宝箱数を取得
$game_party.game_total_number
・現在のMapで既に開けている宝箱の数を取得
$game_party.map_open_number
etc...

長くなったので続く
PR
07/05/21記事で、『吹きだしメッセージ』スクリプト『MESSAGE vol.03β版』を公開したので、
今回は、その更新(β1.03)と使用例を踏まえた解説を少々…
※仕様の変更の為↑バージョンは使用不可。07/10/07を参照してね。

イベントコマンドの追加例①~

①ゴールドを獲得(宝箱など)・・・所持金の数値が回転しながら増減
◆スクリプト
a = message_window?(0)
a.copy = true
a.visible = false
a.break_count = 7
◆文章の表示
1000G\word[0]\g ←※もしくは、 1000G手に入れた!\g(¥word[ID]を使わない)
◆ゴールドの増減 + 1000

①の演出
メッセージ、『1000G手に入れた!』を表示すると同時に、
ゴールドウィンドウを表示する。(※画面端に現在の所持金を現すウィンドウが出現)
決定キー待ち状態(▽マークが出ている)でメッセージを閉じると、
ゴールドウィンドウは表示されたまま、所持金の数値が回転しながら増加する。
そして、7カウント後にゴールドウィンドウが閉じる(消える)

a.copy = trueの部分で、メッセージをコピーしているのだが、
それを描画するフラグvisibleがOFFの為(a.visible = false)、
コピー描画しているのだが、表示されない状態になる。

a.break_count = 7は、コピー描画したウィンドウを、数値後に削除する命令の為、
7カウント後にゴールドウィンドウが閉じる。
-------------------------------------------------------------------------------------
②歩いているイベントにメッセージを表示
◆スクリプト
a = message_window?(1)
a.copy = true
a.skip = true
##a.break_count = 7
◆文章の表示
---表示したい文章---
②の演出
歩き回っている状態のイベントID001に、メッセージを表示。
そのままイベントID001の動きに合わせて、メッセージも動く。(イベント追従)

イベントID001のイベント実行内容に追加するのではなく、
他のイベントから↑を実行しないと意味がない。

※イベントID001にプレイヤーが話しかけると(決定キーを押すと)、
ふつうに、イベントの移動は止まるし・・・
-------------------------------------------------------------------------------------
③同時に複数のメッセージを表示
◆スクリプト
a = message_window?(1)
a.top = true
a.copy = true
a.skip = true
a.visible = false
◆文章の表示
---表示したい文章---
◆スクリプト
a = message_window?(1)
a.under = true
a.copy = true
a.skip = true
a.visible = false
◆文章の表示
---表示したい文章---
◆スクリプト
one_copy_visible?(1)
-------------------------------------------------------------------
サンプルデータをUPした方が早いかな?
でも、全く反響ないしなぁ・・・(苦笑)
一ヶ月以上の歳月を費やし、遂に『MESSAGE vol.00β版』の公開!
とりあえず、1700行以上ある、デタラメスクリプトのなのだ。
07/05/08記事、語尾変換スクリプトの『Message_Ex vol.1.00』も公開!

※仕様の変更の為↑バージョンは使用不可。07/10/07を参照してね。

使用してみたい!って方は、
上から、『Message_Ex vol.1.00』、『MESSAGE vol.00β版』の順に、
『Interpreter 7』より下、『Main』より上に挿入してね。
--------------------------------------------------------------------------------
『吹きだし』スクリプトは、吹きだし表示をすることに重点を置いたスクリプトなので、
07/04/07記事の『カーソルアイコン+』との併用を想定して作られている。
デフォルトの四角いカーソルを使う場合は、見た目に不都合があるので注意!
--------------------------------------------------------------------------------

①解説・・・ファイルの準備

 背景画像(640x224)
←Windowskinsフォルダに入れる。
※フリー素材


テール画像(96x64)
←Windowskinsフォルダに入れる。
※フリー素材


内部で使用する効果音『se_gold』をDL解凍して、Audio/SEフォルダに入れる。
※↑zipで圧縮されているので、解凍してね。
--------------------------------------------------------------------------------
②解説・・・イベントスクリプト(メッセージの設定)

■イベントコマンドの『スクリプト』に↓を記入
a = message_window?(※ID)

※IDにイベントのID番号を記入する。
nil = そのイベント 0=プレイヤー n=指定したイベント
a = message_window?←そのイベント ※(nil)は省略可
a = message_window?(0)←ならば、プレイヤー
a = message_window?(5)←ならば、イベントID5のイベント

※バトル中の場合は、バトルコマンドの『スクリプト』に
a = message_window?("p1")← pはアクターで、数値はパーティ順番1~4を指定
a = message_window?("t1")← tはエネミーで、数値はトループで追加した順番1~8
※必ず、"   " を付ける

■続いて、イベントコマンドの『文章の表示』で、適当なメッセージを書く。

--------------------------------------------------------------------------------
イベントコマンドの『スクリプト』に例えば、
a = message_window?(0)
a.skip = true
a.copy = true
a.under = true
a.width = 160

↑みたいに、『MESSAGE vol.00β版』内の『公開インスタンス変数』を指定して、
それぞれの値を指定する。
--------------------------------------------------------------------------------
③解説・・・イベントスクリプト(コピーしたウィンドウを削除)
■イベントコマンドの『スクリプト』に↓を記入
one_copy_dispose?(ID,N)

ID = ②メッセージの設定と同じ
N = コピーした順番を指定 1番目なら 1
N = 0の場合は、表示中のコピーウィンドウ全て

■イベントコマンドの『スクリプト』に↓を記入
all_copy_dispose?(N)

Map上のイベント全てと、プレイヤーのコピーウィンドウを削除
N = コピーした順番を指定 1番目なら 1
N = 0の場合は、表示中のコピーウィンドウ全て

詳細説明は次回の更新で・・・ツカレタ
製作中のRPGでは、メッセージは『吹きだし』で行くことに決めたのだが、
バトル中は?ってことで、バトルも吹きだしで行くことにした♪

07/05/08記事でも触れたが、Mapでのメッセージ表示同様、
色々と機能を詰め込んでいた為、一ヶ月くらい掛かり切りになってしまった・・・

 ←サンプル画面

バトルのメッセージは比較的カンタンにできたのだが、
Mapのメッセージには大苦戦だ。
ツクールXPのデフォルト状態では、メッセージなどのウィンドウをMap上に表示したまま
『セーブ』することができないから。
↑まぁ、コレも解決したので、近々ベータ版をUPするかも・・・

とりあえず、表示済みのメッセージを指定した時間後に削除する機能と、
決定キーを待たずにウィンドウを閉じる機能に、
待ち時間を指定できる!って機能を追加中♪
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
最新コメント
[08/04 Faust]
[05/26 takku]
[11/12 ぱんだ]
[06/28 AntwerpBlue]
[06/28 AntwerpBlue]
[02/07 ジャリン]
[02/07 ジャリン]
[02/05 白豆]
[11/28 I・S]
[11/26 I・S]
プロフィール
管理人
hide
ホームページ
ブログ内検索
カウンター
忍者アナライズ
忍者ブログ [PR]