RPG製作情報など
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
07/07/04記事で『スロットマシーン』を公開したのだが、
コインで遊べるゲームが、スロットだけなのは寂しい。
そこで、コインゲームを他にも作る為、『スロットマシーン』を更新したよ!って話し。
とりあえず『スロットマシーン』のコイン追加(Game_Party)部分と、
回転する数値(コイン数)部分を、独立したスクリプトにしてみた。
①ゲームパーティにコインを追加・・・『Game_Party_Coin vol.1.00』
②回転数値機構・・・『Window_digits_number』
③スロットマシーン実行・・・『Slot_Machinevol.2.00』
※仕様変更の為↑バージョンは、使用不可。07/09/12記事を参照してね。
なぜ独立させたかと言うと、①コイン追加と②回転数値は、
使いまわしの利くスクリプトなので、新しいコインゲームを作った場合にも、
使用するスクリプトなのだ。
ちなみに、現在『ポーカー』を製作中♪近日公開予定
-------------------------------------------------------------------------
■↓スクリプトの改造に興味のある方は、読んでね♪
回転数値機構『Window_digits_number』は、
他の目的にも使用できるよう、機能を拡張している。
特徴、回転数値描画。高速数値描画。
例えば、ショップ(お店)の所持金を、回転しながら増減するものに変更可能。
※↓の改造方法では、メニューの所持金表示が消えるので注意!
■改造方法
Ⅰ・・・Scene_Shopの@gold_window = Window_Gold.newの真下に↓を挿入!
@digits_window = Window_digits_number.new(33+480,64,100,$game_party.gold,8)
(X座標,Y座標,Z座標,描画する数値,最大桁数)
Ⅱ・・・# ウィンドウを解放 の真下に↓を挿入!
@digits_window.dispose
Ⅲ・・・def update の真下に↓を挿入!
@digits_window.update($game_party.gold,$data_system.cancel_se)
※$data_system.cancel_se ←は回転するときのSEを指定。
省略すると、SE無し → @digits_window.update($game_party.gold)
Ⅳ・・・Window_Goldのゴールド表示部分をコメントアウト(↓#を頭に付ける)
#self.contents.draw_text(4, 0, 120-cx-2, 32, $game_party.gold.to_s, 2)
-------------------------------------------------------------------------
一応、開発者向けのスクリプトなので設定はメンドウ...
@digits_window.refresh(num) ←で更新(回転無し)
詳細は、スクリプトを見てね♪
PR
コインで遊べるゲームが、スロットだけなのは寂しい。
そこで、コインゲームを他にも作る為、『スロットマシーン』を更新したよ!って話し。
とりあえず『スロットマシーン』のコイン追加(Game_Party)部分と、
回転する数値(コイン数)部分を、独立したスクリプトにしてみた。
①ゲームパーティにコインを追加・・・『Game_Party_Coin vol.1.00』
②回転数値機構・・・『Window_digits_number』
③スロットマシーン実行・・・『
※仕様変更の為↑バージョンは、使用不可。07/09/12記事を参照してね。
なぜ独立させたかと言うと、①コイン追加と②回転数値は、
使いまわしの利くスクリプトなので、新しいコインゲームを作った場合にも、
使用するスクリプトなのだ。
ちなみに、現在『ポーカー』を製作中♪
■↓スクリプトの改造に興味のある方は、読んでね♪
回転数値機構『Window_digits_number』は、
他の目的にも使用できるよう、機能を拡張している。
特徴、回転数値描画。高速数値描画。
例えば、ショップ(お店)の所持金を、回転しながら増減するものに変更可能。
※↓の改造方法では、メニューの所持金表示が消えるので注意!
■改造方法
Ⅰ・・・Scene_Shopの@gold_window = Window_Gold.newの真下に↓を挿入!
@digits_window = Window_digits_number.new(33+480,64,100,$game_party.gold,8)
(X座標,Y座標,Z座標,描画する数値,最大桁数)
Ⅱ・・・# ウィンドウを解放 の真下に↓を挿入!
@digits_window.dispose
Ⅲ・・・def update の真下に↓を挿入!
@digits_window.update($game_party.gold,$data_system.cancel_se)
※$data_system.cancel_se ←は回転するときのSEを指定。
省略すると、SE無し → @digits_window.update($game_party.gold)
Ⅳ・・・Window_Goldのゴールド表示部分をコメントアウト(↓#を頭に付ける)
#self.contents.draw_text(4, 0, 120-cx-2, 32, $game_party.gold.to_s, 2)
-------------------------------------------------------------------------
一応、開発者向けのスクリプトなので設定はメンドウ...
@digits_window.refresh(num) ←で更新(回転無し)
詳細は、スクリプトを見てね♪
hideの公開している『RGSSスクリプト』は、
基本的に、hideが製作しているRPGの為に作成しているものだ。
ゆえに、バグを見つける(報告する)のもhideだし、修正するのもhideなのだ。
これは、利用者が居ないって事で、けっこう悲しい...
スクリプト公開も、このブログも、全て自己満足なで、別に良いのだが...マケオシミ
戯言は、これくらいにして、
今回は07/02/03記事『Original_Act01』、07/03/31記事『点滅コマンド』を修正したよ!って話し。
■『Original_Act01 vol.1.02』1の修正内容
・・・変化スキルが成功した場合にエラーを吐く・・・致命的!を修正。
■『Blink_Window_Command vol.1.20』の修正内容
・・・ウィンドウがアクティブではない場合(self.active=false)
カーソル点滅文字色を透明度250に固定。
・・・無駄記述の削除
-------------------------------------------------------------------------------------------
←前回、公開した画像の、高さを間違えていた...(修正済み)
基本的に、hideが製作しているRPGの為に作成しているものだ。
ゆえに、バグを見つける(報告する)のもhideだし、修正するのもhideなのだ。
これは、利用者が居ないって事で、けっこう悲しい...
スクリプト公開も、このブログも、全て自己満足なで、別に良いのだが...
戯言は、これくらいにして、
今回は07/02/03記事『Original_Act01』、07/03/31記事『点滅コマンド』を修正したよ!って話し。
■『Original_Act01 vol.1.02』1の修正内容
・・・変化スキルが成功した場合にエラーを吐く・・・致命的!を修正。
■『Blink_Window_Command vol.1.20』の修正内容
・・・ウィンドウがアクティブではない場合(self.active=false)
カーソル点滅文字色を透明度250に固定。
・・・無駄記述の削除
-------------------------------------------------------------------------------------------
前回、『Make_Party_Events』を公開したのだが、
その続きを…
--------------------------------------------------------
②値の取得・・・
『Make_Party_Events vol.01』スクリプト内の、
class Game_Partyを参照。
↓特に解説することないか…
・ゲーム全体にある、宝箱の回収率(%)を返す(全Map)
$game_party.game_percent
・ゲーム全体にある、宝箱の数を返す(全Map)
$game_party.game_total_number
・ゲーム全体で、既に開けている宝箱の数を返す(全Map)
$game_party.game_open_number
・Mapの宝箱数を返す(現在のMap)
$game_party.map_total_number
・Mapで、既に開けている宝箱の数を返す(現在のMap)
$game_party.map_open_number
・Mapで、開けていない宝箱の数を返す(現在のMap)
$game_party.map_closes_number
↑の値を『文章』に表示したい場合は、チョット面倒。
ヘルプにも有るが、\V[1] ←は文章に『変数』を表示する命令だ。
コレを利用して、表示することになる。
適当な『変数』を用意する…とりあえず、0001:番(1番)
イベントのスクリプトに↓を記入
a = $game_party.game_percent
$game_variables[1] = a
※$game_variablesってのが、変数で[1]は、0001:番(1番)ってこと。
・使用例…
◆スクリプト:a = $game_party.game_percent
:$game_variables[1] = a
◆文章:宝箱の回収率は\V[1]%だ!
--------------------------------------------------------
↓コレだけ、チョット特別なので…
・Mapデータを変更した場合、再構築(MapInfos.rxdataの追加に対応)
$game_party.make_events
宝箱のデータ(ON=開けている/OFF=開けていない)は、ゲーム開始時に格納される。
その為、一度セーブして、そのセーブデータから開始する場合に問題がある。
それは、セーブ後に追加した宝箱のデータは、セーブデータに反映されないってこと。
ゲームを作成している段階では、関係ないのだが、
例えば、完成したゲームを公開したとする。
その後、追加シナリオで、新Map(宝箱イベント)を含むファイルを配布した場合、
新Mapの宝箱データはセーブデータに反映されない。
その為、追加以前のセーブデータでは、回収率や全Mapのデータが正しい値にならない。
そこで、$game_party.make_eventsを実行させれば、
既に開けた宝箱はONのままで、新たに追加した宝箱をOFFで追加できるのだ。
・改造とかに興味のある方は読んでね↓
--------------------------------------------------------
そもそも、改造次第では、宝箱の数だけでなく、
特定のイベントカテゴリーも格納できるので、↓を参考に…
class Make_Party_Eventsに、attr_accessor:tekitou みたいに追加して、
if (/宝箱/.match(text))~end の下に、
if (/適当/.match(text))
@tekitou[map_id][event.id] = "適当" って具合に追加。
end
$game_party.events.tekitou ←で参照する。
※event.pages[0].list[0].code == 108では無く、event.nameとかでも良いかな?
・ネタ…
@treasur_map[map_id][event.id] = [map_id,event.x,event.y]格納して、
宝の地図…「南に3歩、西に6歩に宝が眠っているようだ!」とか。
イベントの配置は、ランダムだろうな…
--------------------------------------------------------
PS.
今回のスクリプトも『Open_text』を作成しているので、
興味のある方は、07/01/05記事を参照してね。
その続きを…
--------------------------------------------------------
②値の取得・・・
『Make_Party_Events vol.01』スクリプト内の、
class Game_Partyを参照。
↓特に解説することないか…
・ゲーム全体にある、宝箱の回収率(%)を返す(全Map)
$game_party.game_percent
・ゲーム全体にある、宝箱の数を返す(全Map)
$game_party.game_total_number
・ゲーム全体で、既に開けている宝箱の数を返す(全Map)
$game_party.game_open_number
・Mapの宝箱数を返す(現在のMap)
$game_party.map_total_number
・Mapで、既に開けている宝箱の数を返す(現在のMap)
$game_party.map_open_number
・Mapで、開けていない宝箱の数を返す(現在のMap)
$game_party.map_closes_number
↑の値を『文章』に表示したい場合は、チョット面倒。
ヘルプにも有るが、\V[1] ←は文章に『変数』を表示する命令だ。
コレを利用して、表示することになる。
適当な『変数』を用意する…とりあえず、0001:番(1番)
イベントのスクリプトに↓を記入
a = $game_party.game_percent
$game_variables[1] = a
※$game_variablesってのが、変数で[1]は、0001:番(1番)ってこと。
・使用例…
◆スクリプト:a = $game_party.game_percent
:$game_variables[1] = a
◆文章:宝箱の回収率は\V[1]%だ!
--------------------------------------------------------
↓コレだけ、チョット特別なので…
・Mapデータを変更した場合、再構築(MapInfos.rxdataの追加に対応)
$game_party.make_events
宝箱のデータ(ON=開けている/OFF=開けていない)は、ゲーム開始時に格納される。
その為、一度セーブして、そのセーブデータから開始する場合に問題がある。
それは、セーブ後に追加した宝箱のデータは、セーブデータに反映されないってこと。
ゲームを作成している段階では、関係ないのだが、
例えば、完成したゲームを公開したとする。
その後、追加シナリオで、新Map(宝箱イベント)を含むファイルを配布した場合、
新Mapの宝箱データはセーブデータに反映されない。
その為、追加以前のセーブデータでは、回収率や全Mapのデータが正しい値にならない。
そこで、$game_party.make_eventsを実行させれば、
既に開けた宝箱はONのままで、新たに追加した宝箱をOFFで追加できるのだ。
・改造とかに興味のある方は読んでね↓
--------------------------------------------------------
そもそも、改造次第では、宝箱の数だけでなく、
特定のイベントカテゴリーも格納できるので、↓を参考に…
class Make_Party_Eventsに、attr_accessor:tekitou みたいに追加して、
if (/宝箱/.match(text))~end の下に、
if (/適当/.match(text))
@tekitou[map_id][event.id] = "適当" って具合に追加。
end
$game_party.events.tekitou ←で参照する。
※event.pages[0].list[0].code == 108では無く、event.nameとかでも良いかな?
・ネタ…
@treasur_map[map_id][event.id] = [map_id,event.x,event.y]格納して、
宝の地図…「南に3歩、西に6歩に宝が眠っているようだ!」とか。
イベントの配置は、ランダムだろうな…
--------------------------------------------------------
PS.
今回のスクリプトも『Open_text』を作成しているので、
興味のある方は、07/01/05記事を参照してね。
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した方が早いかな?
でも、全く反響ないしなぁ・・・(苦笑)
今回は、その更新(β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した方が早いかな?
でも、全く反響ないしなぁ・・・(苦笑)
カレンダー
02 | 2025/03 | 04 |
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]
ブログ内検索
最古記事
(09/12)
(09/15)
(09/15)
(09/15)
(09/16)
カウンター
忍者アナライズ