忍者ブログ

しいたけサイクロン

主にRPGツクールVXAceを扱うブログです。 ここに公開してあるスクリプトは全部自由に使用してもらってかまいません。 改造なり何なりして好きに使ってください。

15パズル - 改良版

×

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

コメント

1. お久しぶりです

どうもお久しぶりです。未だゲームが出来ず四苦八苦しております(苦笑)

さて、この度こちらのスクリプトに追加していただけたらと思った機能がありご連絡を差し上げました。
各パズルに、クリア時スイッチのON動作、もしくは変数の操作を追記できないでしょうか?
希望としましては、
SceneManager.call_puzzle_4cycle(v1, v2, v3) に V4を追記してもらい、それをスイッチの条件といった具合です。
よろしくご検討ください。

2. お久しぶりです

どうもお久しぶりです。未だゲームが出来ず四苦八苦しております(苦笑)

さて、この度こちらのスクリプトに追加していただけたらと思った機能がありご連絡を差し上げました。
各パズルに、クリア時スイッチのON動作、もしくは変数の操作を追記できないでしょうか?
希望としましては、
SceneManager.call_puzzle_4cycle(v1, v2, v3) に V4を追記してもらい、それをスイッチの条件といった具合です。
よろしくご検討ください。

3. 返信

お久しぶりです。
ゲームを作るのも結構むずかしいですよね。
私も実感を得るためにテストゲームを作ったりしますけどちょっとしたセリフでさえ苦労します。

提案の件ですけれども追加してみようと思います。
現状$MINIGAMERESULT_puzzle15に指定したIDに結果が入るのですが
これだと複数のパズルを用意したときに変数が競合してしまうってことですよね?
一応すごく面倒ですけど競合を回避する方法はありまして
$MINIGAMERESULT_puzzle15 = xとするとx番の変数を一時的なものとして利用する方法です。
つまり各パズルごとに変数を用意して各パズルに対応する変数に変数xの値を代入するのですが
結構タイミングが難しくて、シーンが終わったあとじゃないとうまくいかないため
変数xが0以外の数字になると実行する並列イベントを用意しておいて
そこで各パズルに対応する変数にxの値を代入しxには0を入れておくとうまくいきます。
ただ非常に面倒ですし、並列イベントをあまり増やすのも何なので
すぐに実行できるように改良してみようと思います。
この土日にアップできると思います。

上に書いたやり方で2つのパズルを実行させて結果を2つの変数に格納するテスト
http://blog.cnobi.jp/v1/blog/user/3d98d60619f35633a8bcdbe904a90e7c/1510932598 (1.5MB)

ただいまコメントを受けつけておりません。

15パズル - 改良版

15パズルの改良版です。
変更点は
・1つのゲームで複数のパターンのゲームができるようにしたこと
・画像サイズが300*300以外でもできるようにしたこと
・カウントの有無を設定できるようにしたこと
です。


・スクリプト
DataManager
SceneManager

Scene_Puzzle15

Window_Puzzle15
Tile_Tip





・導入方法 :
上のスクリプトを全て入れて
DataManagerのself.initのload_databaseの下の辺りに
load_normal_data_takopuzzle15を挿入します。


使い方:
ここでアップしているDataManagerの
$puzzle15_count_flagでカウントによる勝敗の有無を選択します。(trueで有り、falseで無し)
$MINIGAMERESULT_puzzle15で指定されたIDの変数にゲームの結果が代入されます。
残りカウントが0以上の場合は1,負の数の場合は2が入ります。
$puzzle15_count_flag = falseの場合はゲーム終了時に1が代入されます。
$data_puzzle15_board_widthで使う画像の横幅
$data_puzzle15_board_heightで使う画像の縦幅を指定します。
これらの値があまりに大きいと表示されないマスが発生します。
使う画像素材は/Graphics/Picturesに入れてください。
$data_puzzle15Pic_filenamesは画像素材のファイル名の配列です。
(例:$data_puzzle15Pic_filenames = ["testest.png", "fray.jpg"])
・実行
・その1(直接定義)
イベントコマンドのスクリプトでSceneManager.call_puzzle15(v1v2v3)によって実行できます。
v1は使用する画像ファイルのidです。
$data_puzzle15Pic_filenames[v1]のファイル名の画像が使用されます。
上の例だと0で"testest.png"、1で "fray.jpg"を使用します。)
v2は横のマス目の数です。(つまり横の分割数)
v3は縦のマス目の数です。(つまり縦の分割数)

・その2(変数による定義)
イベントコマンドのスクリプトでSceneManager.call_puzzle15v(v1v2v3)によって実行できます。
v1は使用する画像ファイルのidとして参照する変数のIDです。
(つまりv1番の変数の値をVとすると$data_puzzle15Pic_filenames[V]のファイル名の画像が使用されます。)
v2は横のマス目として参照する変数のID
v3は縦のマス目として参照する変数のIDです。


細かく分割しすぎるとゲームの動作が重くなるので注意してください。
(縦横1桁程度までにしておいてください)
PR

コメント

1. お久しぶりです

どうもお久しぶりです。未だゲームが出来ず四苦八苦しております(苦笑)

さて、この度こちらのスクリプトに追加していただけたらと思った機能がありご連絡を差し上げました。
各パズルに、クリア時スイッチのON動作、もしくは変数の操作を追記できないでしょうか?
希望としましては、
SceneManager.call_puzzle_4cycle(v1, v2, v3) に V4を追記してもらい、それをスイッチの条件といった具合です。
よろしくご検討ください。

2. お久しぶりです

どうもお久しぶりです。未だゲームが出来ず四苦八苦しております(苦笑)

さて、この度こちらのスクリプトに追加していただけたらと思った機能がありご連絡を差し上げました。
各パズルに、クリア時スイッチのON動作、もしくは変数の操作を追記できないでしょうか?
希望としましては、
SceneManager.call_puzzle_4cycle(v1, v2, v3) に V4を追記してもらい、それをスイッチの条件といった具合です。
よろしくご検討ください。

3. 返信

お久しぶりです。
ゲームを作るのも結構むずかしいですよね。
私も実感を得るためにテストゲームを作ったりしますけどちょっとしたセリフでさえ苦労します。

提案の件ですけれども追加してみようと思います。
現状$MINIGAMERESULT_puzzle15に指定したIDに結果が入るのですが
これだと複数のパズルを用意したときに変数が競合してしまうってことですよね?
一応すごく面倒ですけど競合を回避する方法はありまして
$MINIGAMERESULT_puzzle15 = xとするとx番の変数を一時的なものとして利用する方法です。
つまり各パズルごとに変数を用意して各パズルに対応する変数に変数xの値を代入するのですが
結構タイミングが難しくて、シーンが終わったあとじゃないとうまくいかないため
変数xが0以外の数字になると実行する並列イベントを用意しておいて
そこで各パズルに対応する変数にxの値を代入しxには0を入れておくとうまくいきます。
ただ非常に面倒ですし、並列イベントをあまり増やすのも何なので
すぐに実行できるように改良してみようと思います。
この土日にアップできると思います。

上に書いたやり方で2つのパズルを実行させて結果を2つの変数に格納するテスト
http://blog.cnobi.jp/v1/blog/user/3d98d60619f35633a8bcdbe904a90e7c/1510932598 (1.5MB)

プロフィール

HN:
tentako
性別:
非公開

P R

フリーエリア