したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

ツクール質問スレ3

1名無しさん:2017/07/17(月) 08:50:47 ID:Qktcsy.2
ここはRPGツクールシリーズの製作技術に関する質問を扱うスレです。

■質問する前に■
質問前にマニュアルやヘルプを読んでみましょう。
ヘルプ・公式サイトの講座・FAQ・wikiを調べる、ググるなどしましょう
解決するかもしれません。

■質問者の心構え■
・質問の冒頭でツクールのバージョンは必ず申告すること。(2000/XP/VX/VX Ace/MVを書く)
・煽られても煽り返さず放置。(質問者にとってますます悪い結果になる)
・回答を催促しない。(回答が得られない理由を考えよう)
・納得のいかない回答しか得られなくても文句を言わない。
・情報の小出しはしない。一回にまとめて。
・回答が得られた場合、その経過を報告する。(上手く行ったかどうか)

■回答者の心構え■
・質問の答えが解り、気が向いたならレスを。解らないor気が向かないなら放置を。
・回答に関係のないレスは基本しない事。
・質問者への煽りは禁止。(気に入らない質問内容は放置で)
・荒らしには放置を徹底。
・質問者の態度等が気に入らない場合は放置してください。
・違法行為や不正に関する話題は放置する事。
・質問とは関係ない雑談はやめましょう。


【関連サイト】
●ツクール公式
http://tkool.jp/

311名無しさん:2018/10/28(日) 23:29:27 ID:zbz3IO8.
MVじゃねーの?

312名無しさん:2018/10/29(月) 02:35:04 ID:Fo1z8Mkk
失礼、MVです

313名無しさん:2018/10/29(月) 08:11:06 ID:jl3A7/8s
BattleManager.checkBattleEnd = function() {
if (this._phase) {
if (this.checkAbort()) {
return true;
} else if ($gameParty.isAllDead()) {
this.processDefeat();
return true;
} else if ($gameTroop.isAllDead()) {
if(this._phase === 'turnEnd'){
this.processVictory();
return true;
}
}
}
return false;
};

314名無しさん:2019/02/22(金) 16:23:30 ID:Ge3V5QZ.
余ってるWebMoneyでシーンビルダーを買おうかと思ったんですが
MVとシーンビルダーは同じところで買わないと使えないみたいな縛りはないですよね?
例えばジェイピーストアで買ったMVとツクールストアで買ったシーンビルダーは使えないとか
スチーム版はスチーム版同士でしか使えないとか

315名無しさん:2019/02/22(金) 21:44:10 ID:jn9ODI36
どこで買っても使えるよ
まあシーンビルダー微妙だから俺は買って後悔したからあまりオススメしない

316名無しさん:2019/02/24(日) 11:23:44 ID:YitWgzNo
MVでのプレイについての質問です
プレイしてみたいと思って購入したゲームあるのですがツクール本体を持っていません
検索して公式サイトのダウンロードページに行ったのですがあったのはアップデートファイルでした
もしかして有料の製作ソフトを購入しないとプレイも出来ないのでしょうか?

317名無しさん:2019/02/24(日) 12:30:19 ID:rBm2xALc
遊ぶのに本体いらないよ

318名無しさん:2019/02/24(日) 13:45:39 ID:YitWgzNo
必要はないのですか
回答ありがとうございました

検索しても製作サイドのことしか出てきません
https://www.google.com/search?q=RPG%E3%83%84%E3%82%AF%E3%83%BC%E3%83%ABMV%E3%81%A7%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E3%82%B2%E3%83%BC%E3%83%A0%E3%82%92%E3%83%97%E3%83%AC%E3%82%A4%E3%81%97%E3%81%9F%E3%81%84&rlz=1C1GTJE_jaJP510JP514&oq=RPG%E3%83%84%E3%82%AF%E3%83%BC%E3%83%ABMV%E3%81%A7%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E3%82%B2%E3%83%BC%E3%83%A0%E3%82%92%E3%83%97%E3%83%AC%E3%82%A4%E3%81%97%E3%81%9F%E3%81%84&aqs=chrome..69i57&sourceid=chrome&ie=UTF-8
わたしにはハードルが高かったようですね、ゲームも1000円しないものだったので諦めます

319名無しさん:2019/02/24(日) 14:58:23 ID:hWzLNeJs
(購入したものならなんでここで聞く前に作者に聞かないんだろ)

320名無しさん:2019/02/24(日) 15:02:47 ID:hWzLNeJs
煽りにきこえるかもしれないからちゃんと書いておくと
なんか特殊な起動方法を要求するものなのかもしれないけど
リードミーみたいなのを読んで何も書いてないなら
買った物ならちゃんと製作者に尋ねてみればいいと思う
金払って買った客に対してだしちゃんと応対してくれるよ

MVのゲームはRTPもいらないから
一番起動も簡単だと思うんだけどな

321名無しさん:2019/02/25(月) 23:57:56 ID:n..y66UQ
普通にアイコンダブクリしても起動しないんか?

322名無しさん:2019/02/26(火) 06:34:45 ID:Lr44I8C.
MVは特殊なん?

323名無しさん:2019/02/26(火) 06:39:03 ID:B1g3mLD6
むしろ簡単

324名無しさん:2019/02/26(火) 19:37:35 ID:Lr44I8C.
Readmeに気付かないとか?

325名無しさん:2019/02/27(水) 12:24:58 ID:Bx5R0Tqc
ソレっきり来てないし釣りだったんだろ

326名無しさん:2019/02/27(水) 13:48:01 ID:6ZuCSpZg
圧縮ファイルを解凍するソフトを持ってないとか

327名無しさん:2019/02/27(水) 18:44:03 ID:EmwijIa.
そりゃこの流れでもう一度質問には来れないだろ

328名無しさん:2019/03/30(土) 11:27:44 ID:EYGI1TRk
質問させて下さい。
友人がゲームを作るのが好きで、よく私にプレイして感想を聞いていました。
私がディアブロ2みたいのを作ってくれと何度かお願いしていたら
自分で作ってみたら?と言われ、年末に作ったゲームを交換しようということになりました。
RPGツクールで作れるということを教えて貰ったので、それで作ろうと思うのですが
どのRPGツクールを使えば似たゲームが作れるでしょうか?
素材は別の知人に有料で用意してもらうことになりました。プログラミングは出来ません。

329名無しさん:2019/03/30(土) 12:06:59 ID:EYGI1TRk
>>328
この質問は解決したので取り下げます。
MVで作ることにして購入致しました。

330名無しさん:2019/04/01(月) 10:44:27 ID:kiR.eGbM
絶対完成しないだろうなw

331名無しさん:2019/04/07(日) 06:57:59 ID:PWCWF6K2
数百万は下らんぞ

332名無しさん:2019/05/30(木) 00:50:25 ID:YMyNsNAw
プログラミングはできませんまで読んだ

333名無しさん:2019/08/13(火) 17:20:49 ID:GeHntVpw
ちょっと質問
バージョンはMVの1.6.1

MVの仕様としてイベントが移動した後、マップ移動を挟んで元のマップに戻ってくるとイベントの位置が元に戻るよな。
それを、イベントの位置が元に戻らないようにしたくて準公式のYEP_SaveEventLocationsを導入してみたんだけど
どうもこのプラグインは「移動ルートの設定」で座標が変わったイベントはしっかり記憶してくれる一方で
「イベントの位置設定」や、直接指定して移動させるスクリプトで座標が変わったイベントは無視されるみたいなんだよね。
いかんせん大量のイベントを一括で記憶させたい関係で一つ一つに移動ルートを設定したくないってのがあって
なんとかプラグイン自体に対応させることできないかな?

334名無しさん:2019/08/15(木) 00:18:11 ID:Tm5ej2Kc
単純にマップ切り替わる時にイベントの位置を全部記録しておけばいいのでは?

335名無しさん:2019/08/15(木) 00:50:41 ID:wSuwdBaw
>>334
当初はそれも考えたんだけどどうしても量が多くて管理しずらいんだよ。
加えて1マップごとに見てもイベント数がそれなりにあるから
マップに出入りするたびに配置し直す仕様にするとどうしても重くなっちまう。

つーかなんで移動ルートの設定にしか対応してないんだよあのプラグイン…

336名無しさん:2019/08/15(木) 01:48:37 ID:Tm5ej2Kc
>>335
位置が初期位置と異なるものだけ記録するようにするのはどうだろう?

あと配置し直すだけなら重くならないと思うよ
最初にイベントに座標与える時に、保存しておいた座標を与えるだけだから

337名無しさん:2019/08/15(木) 02:18:12 ID:wSuwdBaw
>>336
実は初期位置と異なるものってのがほぼ全部なんだよ…

座標を与えるっていうのはマップ読み込んだ後にイベントの自動実行で指定するんじゃなくて、
マップ読み込みのときに最初からその位置にイベントが置かれるようにするってこと?
そんなことプラグイン無しでできるの?

338名無しさん:2019/08/15(木) 09:56:29 ID:JAC8.66Y
>>337
ごめんプラグインありで考えてた
プラグイン改造しない前提なら厳しいかもね

プラグインありならイベントの位置保存、読み込みは比較的簡単、軽量にできる
全部のイベントの位置が変わってたとしても特に問題ないと思う
セーブ容量はかさむかもしれないけど

339名無しさん:2019/08/15(木) 11:58:25 ID:wSuwdBaw
>>338
ごめん話の流れからプラグイン無しでできるのかと勝手に勘違いしてた
プラグインありで全然いいし、セーブ容量も全く問題に感じないんだけど
改造するのも最初から自作するのも今の俺には少しハードル高いかもしれんw

やるとしたら件のYEP_SaveEventLocationsを改造するのが近道かな?
それとも最初から自分で作った方が楽だったりする?

340名無しさん:2019/08/16(金) 00:57:38 ID:AmK5ltEI
>>339
JavaScriptできるなら自分で組んだ方が、最初は時間かかるだろうけど後々自由に調整できていいんじゃないの
プログラミング全然できなくて1から勉強して作りますって場合は時間かかり過ぎてゲーム制作どころじゃなくなりそうだから改造かな

あとは実力のありそうなプラグイン作者に頼み込むのもいいかと
コミュ力は必要だが一番確実、プラグイン作れるようになるのが目的じゃなくてゲーム完成させるのが目的なら尚更
俺ならtwitterにいるプラグイン作者、もしくは英語ができるならYanfly氏本人に相談する

341名無しさん:2019/08/16(金) 02:02:27 ID:YkD.aQQQ
>>340
やっぱそうなるよなw
まあとりあえず自分で調べてみて、ダメそうなら人を頼るわ
色々アドバイスありがとうございました!

342名無しさん:2019/08/18(日) 15:27:41 ID:/2jlcyvU
ツクールMVでゲーム内全マップ全イベントのセルフスイッチのAだけを初期化するコマンドってありますか?

343名無しさん:2019/08/29(木) 01:20:20 ID:MpSP6HJE
ダメージ計算式について教えて下さい
FFのmp消費攻撃のようなものを作りたいのですが
mpが0の時に与ダメージが大幅減少、mpが1以上残っている時に通常ダメージを与えられる、という計算式はないでしょうか?

攻撃後にmpを減らすのはコモンイベントで行うとして

344名無しさん:2019/08/29(木) 10:38:18 ID:x65Glt9w
a.mp == 0 ? 0 : 1000

こんなのかな

345名無しさん:2019/09/01(日) 03:46:16 ID:dGZ01zQg
>>344
ありがとうございます
仕組みは何やらサッパリわからないのですができました!
ダメージ計算式をオリジナルのものにしたい場合はどう書くのでしょう

346名無しさん:2019/09/01(日) 05:43:13 ID:SFAIIyxI
a.mp == 0 ? ←使用者のMPが0かどうか分岐
0 : 1000 ←左側が0のときの計算式 右側は0以外の計算式

a.mp == 0 ? a.mp : a.mp*4+a.mat-b.mdf*2(適当)
とかにすればいい

347名無しさん:2019/09/01(日) 20:18:48 ID:dGZ01zQg
>>346
分かりやすい説明ありがとうございます
思ったとおりのスキルが作れそうです

348名無しさん:2019/09/04(水) 05:39:57 ID:Pk/4UawU
>>342
$gameSelfSwitches.clear(); でできるよ
これくらいはわざわざ質問スレで聞かないで自分で調べなよ。

349名無しさん:2019/09/04(水) 12:27:39 ID:ZxpGUZLE
>>348
そういうのってどうやって調べるんですか?
一覧だすコンソールコマンドとかあったりするのかな

いつもその段階でつまって勉強投げ出すものでw

350名無しさん:2019/09/04(水) 16:18:47 ID:zXm.3fz.
別に何質問したっていいだろ
答える答えないのも自由なんだから

351名無しさん:2019/09/05(木) 02:12:10 ID:aNT7HkKI
しかも>>342が聞いてるのってセルフスイッチのAだけって言ってんだからそのスクリプトじゃ無理なんじゃねえの?
知らんけど

352名無しさん:2019/09/05(木) 06:40:01 ID:a5zBbLLY
イベントコマンド > 上級 > スクリプト
に↓を記述

for (key in $gameSelfSwitches._data) {
if(key.match(/A/)){
delete($gameSelfSwitches._data[key]);
}
}
$gameSelfSwitches.onChange();

353名無しさん:2019/09/05(木) 07:09:29 ID:a5zBbLLY
348じゃないけど>>349にこたえるならば

>>一覧だすコンソールコマンド
強いて言うならば
console.log(window);

そこでセルフスイッチがGame_Switchesクラスで管理されていることを知る
rpg_objects.js内からGame_Switchesクラスを見つけてどういう処理してるのか見る
みたいな段階踏めばやりたいことができるようになるかもしれない

MVもAceと似たような構成してるから僕はAceのスクリプト見てゲーム全体の構成学んだけどね
個人的にはだけどあっちの方がコメントアウトが日本語だからわかりやすいしスクリプトエディタがそこそこ使いやすい(CTRL+SHIFT+Fで全検索できたり)
MVのスクリプトはJSに慣れてたり高機能なエディタ持ってたり英語が得意だったりする人向け

354名無しさん:2019/09/05(木) 13:21:02 ID:KuLuZQtE
質問スレの意味とは

355名無しさん:2019/09/05(木) 17:13:43 ID:4g7dysUs
>>353
ほええ、そんなやり方が
やっぱそんな風にしてめっちゃ時間かけないとわかんないんですね

もうちょっと公式でまとめてくれてもいいのになあ
手軽さが売りのツクールなんだから・・・

356名無しさん:2019/10/02(水) 09:48:43 ID:rjDhDU7o
今更rgss3のイベントコマンドのスクリプトを触ってみています
スクリプトに関しては初心者です
x = $game_map.events[0].x
という感じで変数に実行しているイベントの座標を格納したいんですがエラーをはかれてしまいます
この記述は誤りなんでしょうか?

357名無しさん:2019/10/02(水) 15:04:35 ID:sBV9kwIk
エラーメッセージ書いた方がいいよ

358名無しさん:2019/10/02(水) 19:54:24 ID:fDMx/Kkk
x = $game_map.events[n].x
nはイベントID(1以上、0だとnil)

359名無しさん:2019/10/02(水) 20:27:30 ID:5X88x0eg
>>357
すみません
帰ったら確認します

>>358
つまりイベントコマンドでよくある「このイベント」のような指定はできないってことですか?

360名無しさん:2019/10/02(水) 20:47:24 ID:fDMx/Kkk
$game_map.events[@event_id]

361名無しさん:2019/10/03(木) 00:58:41 ID:h12ipJTg
>>360
できました
ありがとうございます

362名無しさん:2019/10/07(月) 04:44:25 ID:XPPWoFLM
質問
http://rpgmaker-script-wiki.xyz/allItemGain_kowazavxace.php
このページにあるスクリプトそのままコピペしたらエラー出たんだけどどこ修正すればいい?
教えてエロい人

363名無しさん:2019/10/07(月) 06:41:27 ID:XPPWoFLM
ごめんちょっと変な勘違いしてたわ
上の質問はなかったことに

364名無しさん:2019/10/07(月) 10:05:26 ID:AqgqWZIU
失敗談は後進の役に立つこともあるから
何やったのかは書いといてほしい

365名無しさん:2019/10/07(月) 17:52:34 ID:XPPWoFLM
>>364
なんてことない、使ってるのMVなのにスクリプトがVXAceのだって気付かなかっただけだよw

366名無しさん:2019/10/07(月) 19:04:08 ID:ZBaTBy56
あるある

367名無しさん:2019/10/08(火) 07:25:40 ID:EeOIUNIY
あるあ・・・ねーよw
VXとAceとかならまだしもw

368名無しさん:2019/10/08(火) 15:39:52 ID:R8HONAsE
プラグインじゃなくてイベント内で使うスクリプトだから詳しくないと見分け付かないことはあるだろ
MV スクリプト でググってもVXやAceが混じってヒットすることもよくあるし

369名無しさん:2019/10/08(火) 22:34:37 ID:qVAywazE
VXAceです
イベントが他のイベントと重なっているかで分岐したいんですけど
イベントコマンドスクリプトで
x = $game_map.events[@event_id].x
y = $game_map.events[@event_id].y
value = $game_map.event_id_xy(x, y)
$game_variables[100] = value
として条件分岐で変数100が1以上の時とすればいけるかな?と思ったら
実行中のイベントのIDを返されてしまいます
当然と言えば当然なんですが詰まってしまいました
もう条件分岐のスクリプト欄で一発で分岐できる記述とかないのでしょうか

370名無しさん:2019/10/09(水) 23:16:30 ID:d6EqLO7Q
変数100にx,yにあるイベントの数が入るようにしてみるとか

x = $game_map.events[@event_id].x
y = $game_map.events[@event_id].y
value = $game_map.events_xy(x, y)
$game_variables[100] = value.size



条件分岐に記述する場合:
$game_map.events_xy(get_character(0).x, get_character(0).y).size > 1

371名無しさん:2019/10/10(木) 12:43:22 ID:RCp5R8Rw
>>370
ありがとうございます
条件分岐だけでできたので想定よりもかなりスマートになりました
座標のイベント数までsizeで取得できるんですね
しかし結局重なったイベントのIDが取得できないと意味がないことが新たに発覚してしまいました
指定位置の座標取得はイベントが複数重なっているとIDが大きい方を取得する仕様のようですがこれを小さい方を取得するように変更したりできるんでしょうか
該当箇所のスクリプトも見てみましたが大きい方を取得とか分岐とかそういった記述は見当たらず…
小さい方を取得してくれればすべて解決かつスマートにできるんですが

372名無しさん:2019/10/10(木) 15:30:30 ID:okDd/SBM
$game_map.events_xy(get_character(0).x, get_character(0).y).reverse[0].id

373名無しさん:2019/10/10(木) 23:41:40 ID:RCp5R8Rw
>>372
すみません
reverseの後の[0]は何を表しているんでしょうか

374名無しさん:2019/10/10(木) 23:58:09 ID:RCp5R8Rw
>>372
で教えて頂いたコードの使い方が分からずにいます
条件分岐に使うと重なっていなくても常にtrueを返しているようです
しかしreverseというメソッドを知れました
本当にありがとうございます
このメソッドは配列変数に使うということでしょうか
つまり指定位置の情報取得で配列変数の形で変数に代入すれば重なったIDをすべて格納できるという解釈で良いのでしょうか
少しやってみます

375名無しさん:2019/10/11(金) 00:55:37 ID:h0kaAqCg
[0] ←配列の0番目
reverse ←配列内を逆順に並び替え
だったんだけどIDが小さい方を取得したいならreverse要らないね?

条件分岐に入れるときIDが小さい方を取得するなら
$game_map.events_xy(get_character(0).x, get_character(0).y)[0].id == 3

IDが大きい方を取得するなら
$game_map.events_xy(get_character(0).x, get_character(0).y).reverse[0].id == 3

ってすると重なったEVのIDが3のときTrue


でもなんかこの調子だと複数のイベントが重なった時の分岐でもまた詰まりそうだね?

376名無しさん:2019/10/11(金) 01:13:42 ID:51yvplyA
>>375
理解できました
ありがとうございます
value = $game_map.events_xy(get_character(0).x,
get_character(0).y)[0].id
$game_variables[100] = value
でできました
状況的に3つ以上のイベントが重なることはほぼないのでこれでいけそうです
ありがとうございました

377名無しさん:2019/10/13(日) 08:42:02 ID:8Kvnv5hg
>>355

こういう変数とかメソッドは有志が色々まとめてくれてるよ。トリアコンタンさんとかやってたかな。たしかに本来は公式の役割じゃないか、と思ったりはする

あとはスクリプト開いてみたりとかかな。テキストだからメモ帳でも開けるんだけど、AtomとかVSCodeあたりを使ってみた方が色々便利よ。全く知らないところからだと導入は手間に感じるかもしれないけど、そこは慣れなので

378名無しさん:2019/10/17(木) 23:03:36 ID:n.bS8PfQ
使用してるのはMVです。
バトルにおいて、敵キャラが行動する直前にコモンイベントを挿入する方法ってあるでしょうか?
例えば、戦闘に参加しているキャラの行動順がハロルド、テレーゼ、スライム、マーシャ、ルキウスだったとして

ハロルド

テレーゼ
↓   ←このタイミングでコモンイベントを挿入することはできないでしょうか?
スライム

マーシャ

ルキウス

379名無しさん:2019/10/18(金) 15:56:32 ID:/9Ge7Q/k
行動前イベントっていうプラグインがあった気がする

380名無しさん:2019/10/18(金) 17:25:28 ID:FYmY1NEA
>>379
こんなちょうどいいプラグインがあるとは思いませんでした。
ありがとうございます!

381名無しさん:2019/10/19(土) 11:12:40 ID:vJFPtWtg
VXAceです
イベントに追従するゲージと文字を作りたくてヘルプを見たりググったりしながら試行錯誤したのですが、
一応形にはなったものの少しカクつくような気がします
というかハチャメチャな組み方をしている気がしてならないので見て頂きたいです

条件分岐 @window.nil?
正なら
@x = get_character(@event_id).screen_x - 50 #-50は微調整
@y = get_character(@event_id).screen_y
@w = 100 #縦幅
@h = 50 #横幅
@m = 1000 #ゲージの最大値
@window = Window_Base.new(@x, @y, @w, @h) #ウインドウ生成
@window.opacity = 0 #ウインドウを透明化
@window.contents.fill_rect(0, 0, @w, @h, Color.new(0, 0, 0)) #ゲージの背景を描写
@w2 = $game_variables[1] * @w / @m #ゲージ本体の横幅 変数1番を参照
@window.contents.fill_rect(0, 0, @w2, @h, Color.new(0, 180, 250)) #ゲージ本体を描写
@window.contents.font.size = 20 #フォントサイズ変更
@window.contents.draw_text(0, 0, 100, 25, $game_variables[1]) #変数1を表示

偽なら
@x = get_character(@event_id).screen_x - 50 #-50は微調整
@y = get_character(@event_id).screen_y
@window.dispose #解放
@window = Window_Base.new(@x, @y, @w, @h) #ウインドウ生成
@window.opacity = 0 #ウインドウを透明化
@window.contents.fill_rect(0, 0, @w, @h, Color.new(0, 0, 0)) #ゲージの背景を描写
@w2 = $game_variables[1] * @w / @m #ゲージ本体の横幅 変数1番を参照
@window.contents.fill_rect(0, 0, @w2, @h, Color.new(0, 180, 250)) #ゲージ本体を描写
@window.contents.font.size = 20 #フォントサイズ変更
@window.contents.draw_text(0, 0, 100, 25, $game_variables[1]) #変数1を表示


ゲージを移動する方法が見つからなかったので毎フレーム生成と解放を繰り返しているのですが
これでいいのか納得できていません
改善点とかあればアドバイス頂けると嬉しいです

382名無しさん:2019/10/19(土) 14:37:04 ID:9iSQ0RrY
>>少しカクつくような気が
もし並列処理で実行してる場合はウェイトが2フレ入るのでこれが原因かと
1フレームのループで処理すると解決

>>毎フレーム生成と解放を繰り返し
これは良くない、座標の変更のみで十分

他にも変数名が競合しそうであるとかWindow_BaseではなくSpriteで十分であるとか問題点はあるけど今回はスルー

◆条件分岐 @window.nil?
@w = 100 #縦幅
@h = 50 #横幅
@m = 1000 #ゲージの最大値
@x = get_character(0).screen_x - 50
@y = get_character(0).screen_y
@window = Window_Base.new(@x, @y, @w, @h)
@window.opacity = 0 #ウインドウを透明化
@window.contents.font.size = 20 #フォントサイズ変更
@_gauge_color = Color.new(0, 0, 0)
@_gauge_background_color = Color.new(0, 180, 250)
:分岐終了
◆ループ
@x = get_character(0).screen_x - 50
@y = get_character(0).screen_y
@window.contents.fill_rect(0, 0, @w, @h,
@_gauge_color) #ゲージの背景を描写
@w2 = $game_variables[1] * @w / @m
@window.contents.fill_rect(0, 0, @w2, @h,
@_gauge_background_color) #ゲージ本体を描写
@window.contents.draw_text(0, 0, 100, 25,
$game_variables[1]) #変数1を表示
@window.x = @x
@window.y = @y
◆ウェイト:1フレーム
:以上繰り返し

ttp://iup.2ch-library.com/i/i2020538-1571463140.png

383名無しさん:2019/10/22(火) 09:20:47 ID:Zpe7YfF2
>>382
返信が遅くなってしまい申し訳ありません
カクつきも減り綺麗にできました
.x = で座標が指定できるんですね
ありがとうございました

384名無しさん:2019/10/25(金) 00:40:33 ID:jDtREFjk
質問です
MVでスキルの速度補正に変数を代入する方法ってありますか?

385384:2019/10/25(金) 20:48:05 ID:jDtREFjk
すいません自己解決しました。失礼しました。

386名無しさん:2019/10/26(土) 00:54:09 ID:JyAwrddE
失礼なのは解決方法を書いていかないことだぞ
方法を書いていくなら後からログ見た人の役に立つ(ことがある)からそれはそれでいいんだよ

387名無しさん:2019/10/26(土) 02:47:29 ID:fT8r4oy6
諦めたので解決です

388名無しさん:2019/10/26(土) 03:49:31 ID:WsydOChQ
ツクールMVなんだけどさ、スキルのランダム4体ってあるじゃん?
あれHPの低いザコ4体が出てきたときそのスキルで一掃しようとしたら
なんか途中死体蹴りが入って敵が残ることもある仕様なんだよな。
ドラクエのばくれつけんみたいに、すでに死んだ敵は攻撃しない仕様に改造ってできないかな?

389名無しさん:2019/11/01(金) 15:45:00 ID:LTEiQ/PQ
RGSS3です
イベントコマンドのスクリプトにてグローバル変数ではなくインスタンス変数で作ったウィンドウを
外部から解放する方法はあるのでしょうか
場所移動やゲームオーバーでゲージが消えるようにしたいです
複数ゲージを表示かつ状況によって表示数が変わる構想のためグローバル変数では競合してしまいます
それかゲージ数に応じて変数名を変える方法があるのでしょうか
自分でも少しやってみたのですが変数名に変数が使えないようなので上手くいかず
ご教授願えると嬉しいです

390名無しさん:2019/11/01(金) 16:17:45 ID:7NnUEgQs
イベントコマンドだけでやろうとするな
ちゃんとクラスとメソッドを理解しろ

391名無しさん:2019/11/01(金) 16:40:25 ID:i3tupoBk
Hash使う能力があれば名前問題は解決するだろうけどスクリプトエディタで全部かけるぐらいの能力がないとバグだらけになるのがオチ

392名無しさん:2019/11/01(金) 17:06:37 ID:k/W4s0ig
ハッシュの勉強をします
ありがとうございました
スレ汚しをしてしまい申し訳ありません

393名無しさん:2019/11/02(土) 02:28:41 ID:2VCmcHLg
MVで質問なんですが
ステートの継続ターン数に値を代入することってできますか?

394名無しさん:2019/11/02(土) 03:36:16 ID:2FqsM0sg
//敵のステート
idx = 0 //敵集団の先頭
state_id = 10 //ステートのID(デフォの10は睡眠)
turn = 1 //継続ターン数
$gameTroop._enemies[idx]._stateTurns[state_id] = turn

//味方のステート
idx = 0 //パーティの先頭
state_id = 10 //ステートのID(デフォの10は睡眠)
turn = 1 //継続ターン数
actor_id = $gameParty._actors[idx]
$gameActors._data[actor_id]._stateTurns[state_id] = turn

395名無しさん:2019/11/02(土) 04:24:48 ID:2VCmcHLg
>>394
ありがとうございます、
やってみたところ
Cannot read property '_stateTurns' of undefined
と出てしまったのですがどうするべきでしょうか…

396名無しさん:2019/11/02(土) 04:27:15 ID:2VCmcHLg
すいませんもう少し試したところ
idx のところに定数を代入すると正常に動作したようでした。
最初に変数で試したのがいけなかったようです、失礼しました。

397名無しさん:2019/11/02(土) 04:52:00 ID:2VCmcHLg
しつこくて申し訳ないです
最後の行を
$gameActors._data[idx]._stateTurns[state_id] = turn
にして試したらできました!
ありがとうございます!

398名無しさん:2019/11/02(土) 19:46:12 ID:2FqsM0sg
なんかあんまり仕組み理解してなさそうで不安だけど出来たならいいや

399名無しさん:2019/11/07(木) 01:20:36 ID:f0/OEg.M
質問です
MVでスキル効果でコモンイベント実行を指定して、
そのスキルの対象が味方パーティか敵パーティかを判定するスクリプトを作りたかったんですが
色々調べてみたもののどうしてもうまくできません。

var action = BattleManager._action;
$gameVariables._data[6] = action.isForOpponent() ? 1 : 2;

ちょっと調べてみてこんな感じで書いてみたんですが当然うまく動くはずもなく困っています。
混乱などにも対応できるようにするにはどのように書けばよいのでしょうか?

400名無しさん:2019/11/07(木) 03:17:23 ID:QlxY3FVA
アクション起こす度にターゲット情報が初期化されてるっぽいからプラグインというかスクリプトを自作しないといけないかも?


↓プラグイン
(function() {
var __Game_Battler_prototype_setLastTarget = Game_Battler.prototype.setLastTarget;
Game_Battler.prototype.setLastTarget = function(target) {
__Game_Battler_prototype_setLastTarget.call(this, target);
this._lastTarget = target;
};
})();


↓スクリプト
var subject = BattleManager._subject;
$gameVariables._data[6] = subject.isActor() === subject._lastTarget.isEnemy() ? 1 : 2;

401名無しさん:2019/11/07(木) 03:25:03 ID:QlxY3FVA
ああ、こういう書き方するとセーブが膨れ上がるかも?
プラグインの中でisActorとか使って判定した方が良いのかも

402名無しさん:2019/11/07(木) 03:37:19 ID:QlxY3FVA
↓プラグイン
(function() {
var __Game_Battler_prototype_setLastTarget = Game_Battler.prototype.setLastTarget;
Game_Battler.prototype.setLastTarget = function(target) {
__Game_Battler_prototype_setLastTarget.call(this, target);
this._lastTargetIsEnemy = this.isActor() === target.isEnemy();
};
})();

↓スクリプト
$gameVariables._data[6] = BattleManager._subject._lastTargetIsEnemy ? 1 : 2;

403名無しさん:2019/11/07(木) 04:46:27 ID:f0/OEg.M
>>400-402
実装してみたら完璧な動作をしてくれました!
本当にありがとうございました!

404名無しさん:2019/11/08(金) 01:38:37 ID:jYTvv9so
質問
MVでマザー2のエナジーロボみたいに、HP0になると最後に爆発して道連れにしようとする敵って作る方法ないかな?

405404:2019/11/08(金) 20:56:17 ID:jYTvv9so
自己解決できそうになったところまで書いてみる。
rpg_object.jsにそれっぽい記述を見つけたんでプラグインにしてみたかった。

(function(){
Game_Battler.prototype.refresh = function() {
Game_BattlerBase.prototype.refresh.call(this);
if (this.hp === 0) {
if(this.enemy().meta.deathtrigger){
$gameTemp.reserveCommonEvent(10);
}
this.addState(this.deathStateId());
} else {
this.removeState(this.deathStateId());
}
};
})();

と、ここまで書いて敵キャラのメモ欄に<deathtrigger>を入れたら
ちゃんと倒した瞬間にコモンイベント10は実行された…んだけど
代わりに味方キャラが死んだときに this.enemy() is not a function とか言われた。
つーかなんで一個手前の this.hp ってやつは this だけでちゃんと敵味方双方に機能するのに
meta は this.meta でエラー出るんだよクソ

406名無しさん:2019/11/08(金) 21:37:43 ID:4J32/uaY
ぱっと見ただけで全然テストしてないから適当なこと言うかもしれないけど
Game_BattlerじゃなくてGame_Enemyにしてみるとか?
それとも味方も道連れ技使いたい感じ?

407404:2019/11/08(金) 21:42:53 ID:jYTvv9so
>>406
それでできたわwwwありがとうw
味方側に実装する気は無かったんで十分よw助かったわw

408名無しさん:2019/11/15(金) 00:50:05 ID:PXhU1eXc
Rgss3です
疑問のようなものなんですがここでしか聞けないので申し訳ありません
Game_Interpreterクラスにget_character(引数)というメソッドがありますが
これを呼び出して変数に代入したあとコンソールに表示すると引数で指定したIDのキャラクターの情報がズラッと並びますが
.xを付け加えるとその中からx座標だけを取得できますよね?
.で呼び出すのはメソッドだと思っていたのですがスクリプトエディタにもヘルプにもどこにも見当たりません
またイベントコマンドのスクリプトでしか使えないのも気になります
スクリプトエディタでやるとNomethoderrorになります
この.xは何者なんですか?

409名無しさん:2019/11/15(金) 02:30:46 ID:zeindyyA
Game_CharacterBaseのattr_reader :x

410名無しさん:2019/11/16(土) 10:53:47 ID:QSfKms9E
>>409
理解しました
ありがとうございます


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板