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

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

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に固定。
・・・無駄記述の削除
-------------------------------------------------------------------------------------------
 ←前回、公開した画像の、高さを間違えていた...(修正済み)
PR
最近のRPGには、ミニゲームを収録しているものが多々ある。
ミニゲームで手に入れる景品は、本編に必ず必要という訳ではないが、
レアなアイテムや、強力な武具などを取得できる場合が多く、
本編を盛り上げる意味合いもあるようだ。

ただ、独りよがりに成りがちで、実際ツマラナイものも多い(笑
某RPGの雷を200回よけるとか

せっかく作って、その評価では悲しいので、今回は、無難なスロットゲーム
Slot_Machine vol.1.00』を作ったよ!って話し。

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

一応スクリプト素材なので、Scene_Mapより下に挿入してね。
 ←こんな感じの画面
----------------------------------------------------------------------------------------
■スロットマシーン解説
①コインを獲得
↓を実行するとコインを獲得。(イベントコマンド『スクリプト』に記入しても有効)

$game_party.gain_coin(n)
※n=獲得するコインの枚数。

$game_party.lose_coin(n) ←減らす場合

②スロットマシーンで遊ぶ(実行イベントを作る)
↓をイベントコマンド『スクリプト』に記入。
make_slot(0,0)

■スロットマシーンのキー操作
上キーでコイン投入、下キーで投入したコインを減らす。
決定キーで開始&スロット停止、キャンセルで終了!

『Charactersフォルダ』に↓画像をインポート(2種類作ったので好きな方を)

※↑イベントのグラフィックに設定してね(『停止アニメ』にチェックを入れると回転アニメ有り)

③スロットのタイプを指定
スロットタイプとは、例えば、100枚賭けのスロットマシーン、10枚賭け、1枚賭け
みたいに、賭けるコイン枚数と当たりコイン数を設定する!ってこと。
※『Slot_Machine vol.1.00』内の『■スロットタイプの設定』を参照

④スロットの絵柄パターンを設定
※『Slot_Machine vol.1.00』内の『■スロットの絵柄パターンを設定』を参照

⑤画像を準備
↓画像を『Windowskinsフォルダ』にインポート(フリー素材)

slot_background.png(640x480)
スロットのメイン背景

※『Windowskinsフォルダ』にインポート

slot_back.png(400x240)
(0,0,80,240) スロットパターンの背景
(80,0,80,240)スロットパターンの上
(160,0,80,48)コイン①未投入
(240,0,80,48)コイン①投入済み
(320,0,80,48)コイン①当たり点滅
②~⑤etc...

※『Windowskinsフォルダ』にインポート

slot_hit.png(147x160)
当たりの演出(点滅)
(0,0,147,20)パターン①当たり
②~⑤etc...

※『Windowskinsフォルダ』にインポート

slot_icon.png(40x80)
当たりリストのアイコン
10x10が1つの絵柄(8種類)

※『Windowskinsフォルダ』にインポート

slot_pattern(160x320)
スロットの絵柄
80x80が1つの絵柄(8種類)

※『Windowskinsフォルダ』にインポート

slot_switch.png(128x256)
各種ボタン
32x64が1つの画像
縦はアニメーションパターン
※『Windowskinsフォルダ』にインポート

今回は、07/05/29記事の『MESSAGE vol.00β版』に新たな機能を付けた、
Message_i 』、『MESSAGE_ii』、『MESSAGE_iii』の公開って話し。

何故、3個のスクリプトかと言うと・・・記述が長くなったので、分割しただけ。
一応、スクリプトの追加順は、上から i→ii→iii の順。
※『Message_Ex vol.1.00』は、『MESSAGE_i』に名称を変更!(内容も更新)

※仕様の変更の為↑バージョンは使用不可。07/10/07を参照してね。
------------------------------------------------------------------------------------------------------
■追加した機能
①・・・文章の制御文字を追加
\pos[n] ←表示する文章の揃え
n=0 左揃え n=1 中央揃え n=2 右揃え

例えば、\pos[1]を記入した行は、ウィンドウの幅に対して、文字を中央に表示するってこと。
※1行目は、中央揃え、2行目は、左揃えとかできる。

\text[n] ←登録した文字を表示。
文字置換するだけなら、制御文字を\Pだの\Dだの追加するのは億劫なので、
自分が必要なものだけ、自分で設定したら?ってことで追加。
※一応、サンプルとして、↓を作ってみた。
n=0 ・・・所持金+通貨単位(システム)
※100G
n=1 ・・・プレイ時間
※00時間00分01秒
n=2 ・・・現在のMapの上位Map名+現在のMap名
※コレだけチョット説明。
"マップの設定"で作成したMapのフォルダが、
ツリー状になっているハズ。↓

・フロアAにいるならば、
○○の町/道具屋/1階/フロアA
と表示される。


\word(id)[n] ←登録した文字を表示(アクター別)。
『Message_Ex vol.1.00』では、アクターIDは先頭のアクターに固定!だったのだが、
(id)にアクターIDを指定することができるように変更。
\word[n] ←(id)を省略すると、先頭のアクター。
\word2[n]  ←アクターIID2のアクター

※一応、サンプルとして
n=6
装備中の武器アイコン+装備中の武器名
n=7
装備中の盾アイコン+装備中の盾名

②・・・ポーズサインの位置(0=左、1=中央、2=右)
イベントコマンドの『スクリプト』に例えば、
a = message_window?
a.pause = 0
↑ならば、ポーズサインを左に表示。
※記述詳細は、07/05/27参照

③バグ修正
・・・ \c[n]などデフォルトの制御文字を使うと、ウィンドウの幅が正しく補正されないバグ。
・・・ \gでゴールドウィンドウを表示中、所持金Max(9999999)を超える、
お金を獲得した場合の、回転数値の動作不良。
・・・ バトル開始直後、稀にViewportの取得エラー。

 ←こんな感じ(合成してます...)
前回、『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記事を参照してね。
カレンダー
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]