トップページgamedev
981コメント382KB

【2D】ゲーム作成ツールGameMaker part4【マンセー】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/04/23(木) 08:11:08ID:iAS0afeL
無料Windows用2Dゲーム作成ツール"Game Maker"について、色々と語り合うスレッドです。

●本家(英語)
 ttp://www.gamemaker.nl/
●GameMaker Japan - 非公式情報サイト(日本語)
 ttp://gamemaker.main.jp/(現在一時閉鎖中)

前スレ
【2D】ゲーム作成ツールGameMaker part3【マンセー】
ttp://pc11.2ch.net/test/read.cgi/gamedev/1210437707/
0200名前は開発中のものです。2009/07/18(土) 00:20:17ID:lmxBXlGJ
>>196
発想を逆にして
with (obj) {
if (collision_line(other.x, other.y, .., id, ...)) { 処理 }
}
みたいにする方法もある。withの中ではselfとotherが逆転するのに注意だけど
0201名前は開発中のものです。2009/07/18(土) 16:01:59ID:HY50PxeX
回答ありがとうございます。

>>199
んおお・・?
攻撃判定用のオブジェクトを先に作っておいて
プレイヤと同期させて、プレイヤーと目標物が当たったら
攻撃判定用のオブジェクトと目標物でコリジョンイベントを行うような感じです・・・かね?

>>200
なるほど。シンプルですね。
欠点としてはcollision_〜関数を実行するインスタンスが
場合によっては大量になる点でしょうか。
0202名前は開発中のものです。2009/07/20(月) 09:08:57ID:s1CnwUHQ
ちょっと質問いいですか?
スプライトのアニメの制御で、OtherイベントのAnimationEndとImage_Indexをif構文で制御する以外の方法ってありますか?
if構文で制御すると安定しないんです。
(インスタンスの移動スピードが速いと判定をすり抜けてしまうようような感じ)

キャラクターの向きや状態ごとに新規のオブジェクトとスプライトを設定してそこで制御すると安定するんだけど、
ソースがややこしくなってしまいました。
(雛形のオブジェクトを親、新規の空オブジェクトを子にして、スプライトやパラメーターで個性を出すと言うことが出来なくなってしまった)
0203名前は開発中のものです。2009/07/20(月) 10:25:28ID:S0Bac2pO
if文で出来ないことなんてないと思うけど・・・。ifの条件文を見直してみたら?

確かに、image_speed に小数点以下の値を設定していて、かつ、条件を == (等しい) でやっていると
すり抜ける場合があるんで(丸め誤差による)、
>= (以上) とか、 <= (以下) で比較してみるとよいかも。
0204名前は開発中のものです。2009/07/20(月) 23:39:21ID:s1CnwUHQ
さんきゅです。

動作ごとにオブジェクトに分けて(親にデフォルト移動のオブジェクト)、
向きごとに空オブジェクト(スプライトはそれぞれの向きで親は元の向き)で設定完了しちゃったあとなんで
確認使用がありません。

うーん、マウスイベントに変なの仕込んじゃったかなぁ・・・。
マウスホイールの動作中にSTEPイベントが無視されてる気がしたんですよ。
0205名前は開発中のものです。2009/07/23(木) 11:11:26ID:siugnnVT
このスレに書き込んでる奴って、どっかでゲーム公開してたりすんの?
そういうまとめサイトがあればGMユーザーの存在感も増すだろうけど
0206名前は開発中のものです。2009/07/23(木) 12:27:13ID:9sYuv18d
俺はまだ製作中で公開に至ってない。
あと、まとめよりは日本語フォーラムが欲しい。
0207名前は開発中のものです。2009/07/23(木) 15:10:50ID:CphK7ga9
フォーラムだと排他的になるぜ
目的が存在感アップなら向かない
0208名前は開発中のものです。2009/07/23(木) 15:18:28ID:MsF2cp7s
似たような話が前出てたな
確かに日本での皆で公開する場所ができれば嬉しいかも
0209名前は開発中のものです。2009/07/23(木) 17:12:53ID:4NdzeTGq
双葉のID板で、途中のやつを公開してみたけど。そのくらいかなぁ。
ゲーム開発自体は初心者だし。
0210名前は開発中のものです。2009/07/23(木) 21:49:01ID:9sYuv18d
GMユーザーの活動を広報したいのか、GMユーザーの裾野を広げたいのか。
0211名前は開発中のものです。2009/07/24(金) 00:54:57ID:4oRtOW6p
そんな細かく目的を分ける必要ないだろ・・・
0212名前は開発中のものです。2009/07/24(金) 01:28:06ID:VftsPVOX
ま、やりたい奴がやりゃそれでいいんじゃね?
俺は別にGMでドーコーってのは無くて普通に公開するけど。
0213名前は開発中のものです。2009/07/24(金) 17:31:08ID:JepbGxNy
俺も普通に公開するかな
まだ体験版にすら至ってないが…
0214名前は開発中のものです。2009/07/24(金) 20:36:34ID:rsS/wSle
ここがもうちょっとにぎわってからだね
0215名前は開発中のものです。2009/07/24(金) 22:42:14ID:p6tGynQg
昔作りかけで飽きて投げたのを久しぶりにやったら面白かったんで、大規模に改良したのを作ってみてる。
ところで、国内でTDS(TopDownShooter,真上から見た視点のFPSみたいなの)作ってる人っているのだろうか?
公式フォーラムではアメリカや西欧だけでなく東欧や南米の人も作ってるみたいだけど、日本で作ってる人はいるかな。
0216名前は開発中のものです。2009/07/26(日) 17:08:53ID:HUXpWVlV
みんなどういうもの作ってるのかというのは気になるね。
マイナージャンルで仲間見つけたら嬉しいってのもあるだろうし
他人のを見て色々と勉強になることもあるだろうし。
0217名前は開発中のものです。2009/07/26(日) 23:11:50ID:wjKvaZZx
これ課金したらGMで作ったとわからなくなるの?
Cとか出来ないからGM6で結構時間かけてゲーム作ってるんだけど
いざ配布するとかなるとGMで作ったってのは何か恥ずかしい
0218名前は開発中のものです。2009/07/26(日) 23:24:05ID:MBQlOFLN
なにが恥ずかしいのかワケワカメ
そんな恥ずかしいならCの勉強でもすれば
0219名前は開発中のものです。2009/07/26(日) 23:39:44ID:svPTsVsB
どんなツール使おうが名作は名作、駄作は駄作。
0220名前は開発中のものです。2009/07/27(月) 01:24:39ID:GXQZBDGy
Cで基礎から必死こいて作ったショボいゲームと、GMで基礎に手間がかからない分他に手を掛ける余裕があったゲームなら当然後者のほうがいいに決まってる。
ただ、ファイルサイズを小さくしたりファミコン風音源を使おうってのなら不利かもしれない。
0221名前は開発中のものです。2009/07/27(月) 01:46:39ID:pfTBKVpb
C++でRPG作って、そのマップエディタをGMで作ってる俺のようなのも居る
0222名前は開発中のものです。2009/07/27(月) 08:58:58ID:NneejjYT
>>217
わからんでもないが、ライセンス書かなくも音割れバグとかで簡単にバレるよ
0223名前は開発中のものです。2009/07/27(月) 10:02:43ID:X0yauOKd
俺も>>220に同意
まず基礎が出来てる状態でゲーム作りを学んで、余裕が出来たり不足を感じたら
C++なりなんなりに移行しようと思ってる
pro版でextensionとか使えば大体の用は足りるしな
日本語描画もよこしまさんのスクリプトで補完されたし
0224名前は開発中のものです。2009/07/28(火) 07:48:38ID:BtFahcpx
最初のロード画面をなんとかできないかな
非表示じゃ味気ないからバーじゃなくてgifアニメ表示できるとか
0225名前は開発中のものです。2009/07/29(水) 17:01:01ID:vVv3xV/u
ゲーム中マウスでMSペイントみたいに自由に線をかくことはできますか?
あとその線を辿るようにオブジェクトを動かしたりすることはできるでしょうか?
0226名前は開発中のものです。2009/07/29(水) 17:35:46ID:5nVguQsg
グローバル変数の値のみを保存する方法ってありますか?
gamemakerのセーブを使うと丸ごと保存してしまうので・・・
0227名前は開発中のものです。2009/07/29(水) 20:31:01ID:p52lIH/W
ファイルに書き出す
0228名前は開発中のものです。2009/07/29(水) 21:01:59ID:/KofeTr0
>>225
自由に線を描くのは面倒。特に曲線となるとね。
ステップイベントで、マウスの左クリックが押されているときのルーム座標を配列で記録する、ということをして、
ドローイベントで、配列に入れた座標をたどるように直線を描く、ということをする。
MSペイントのような直線の描画の仕方をしたければ、
最初にクリックした座標を記録し、次にドラッグして離した座標を記録して、
その2点間を直線で描くようにする。

このあたりに必要な変数や関数は、
mouse_x mouse_y draw_line()
あたりか。あとは、配列(array)についての知識が必要だ。

つぎに、線を辿るようオブジェクトを制御したければ、
記録した座標を元に、move_towards_point()を実行してやればよいかと。
Pro版であれば、ゲーム実行中にもPathリソースを作ることが可能なので、
これを利用しても出来るはず。(調整とか難しそうだけど)
必要な関数は、helpの Changing Resource にある Path の項目にある。

これらを駆使すれば可能。結構むずかしめの内容だから、それ相応の知識と経験が必要。
0229名前は開発中のものです。2009/07/29(水) 23:05:51ID:drifYlMd
>>226
iniファイルに書き出すのが一番簡単かな
プレイヤー簡単に書き換えられちゃうけど
0230名前は開発中のものです。2009/07/29(水) 23:23:03ID:5nVguQsg
>>229
できれば詳しく教えていただけませんか?
まとめwikiにもそれらしいのが見つからなかったです・・・
0231名前は開発中のものです。2009/07/30(木) 00:05:05ID:3O7J4K1+
>>230
日本語版ヘルプの「ファイル、レジストリの操作、プログラムの実行」の中の「INIファイル」を参照
0232名前は開発中のものです。2009/07/30(木) 00:10:55ID:J2rqCKCO
>>231
ありがとうございます!
じっくり読んで出直してきます
0233名前は開発中のものです。2009/07/30(木) 00:27:39ID:nNQ8sNDh
I wanna be the englineをもとにして作ろうとしているのですが、
trigger01に触れたら、上方向のトゲが飛び、
trigger02に触れたら、別の右方向のトゲが飛ぶ
このようにしたいのですが、trigger01に触れると上方向のトゲは飛ぶのですが、trigger02に触れても右方向のトゲが飛びません。
また、先にtrigger02に触れると逆のパターンになります。

上方向のトゲのイベント
Create:Execute a piece of code depth=1000002;
step:Execute a piece of code
if (vspeed==0) {
if (trigger01.triggered) {
vspeed=-8;
}
}
else {
}

Outside Room:Execute a piece of code instance_destroy();

右方向のトゲのイベント
Create:Execute a piece of code depth=1000002;
step:Execute a piece of code
if (hspeed==0) {
if (trigger02.triggered) {
hspeed=-7;
}
}
else {
Outside Room:Execute a piece of code instance_destroy();

trigger01のDepth:1000002 trigger02のDepth:1000002
たすけてください。お願いします。
0234名前は開発中のものです。2009/07/30(木) 00:29:33ID:nNQ8sNDh
sageるの忘れていました。すいません。
0235名前は開発中のものです。2009/07/30(木) 00:38:50ID:kAinn6XT
右方向ならhspeedはマイナスの値でなくプラスの値なんでないの?
hspeed=7
に変えてみ。
0236名前は開発中のものです。2009/07/30(木) 00:40:18ID:nNQ8sNDh
あ、すいません。左方向でした。

ご指摘ありがとうございます。
0237名前は開発中のものです。2009/07/30(木) 00:57:04ID:kAinn6XT
ああ、思い出した。これ、前に俺も嵌ったわ。
これはエンジン側のバグで、triggerParent の player との衝突イベントで、

with (instance_id) ...

ってあるけど、これを

with (object_index) ...

と直せば、トリガ別に反応するようになる。
…多分エンジン作者はこういう意図だったのではないかと思ってる。
0238名前は開発中のものです。2009/07/30(木) 01:25:59ID:nNQ8sNDh
nNQ8sNDhです。
そうなんですか!エンジン側のバグだとは・・・
今はちょっとパソコンが使えないのでまたあとでやって見ます。
どうも親切に教えて頂きありがとうございました。
0239名前は開発中のものです。2009/08/01(土) 00:00:40ID:W+p5V0Gb
>>229
txtファイルに書き出した後、ファイル暗号化のextensionを使う、とかどうだろう
俺も考えてはいるがまだ試してはない
0240名前は開発中のものです。2009/08/01(土) 14:46:38ID:cciNANQN
ゲーム名変更ってどうやるのですか?
0241名前は開発中のものです。2009/08/05(水) 15:11:10ID:b5+ghAk/
>>240
キャプションならルームの設定画面で変えられたはず
タスクバーに出る名前ならファイル名
0242名前は開発中のものです。2009/08/06(木) 20:49:12ID:kaETpL1/
>>241
解決しました!ありがとうございます。

0243名前は開発中のものです。2009/08/08(土) 11:10:52ID:ZmtbojIq
日本でGM製のゲームを販売した人とかいるのかね(prolite問わず)
0244名前は開発中のものです。2009/08/10(月) 03:10:31ID:Td6rAmr8
prolite?
俺のモニタじゃないか
0245名前は開発中のものです。2009/08/10(月) 08:05:12ID:+vzKASON
今年の冬に体験版頒布する予定
冬コミ受かればだけど…
0246名前は開発中のものです。2009/08/11(火) 20:03:31ID:hxrL4l1F
数字の描画で3桁ごとにカンマをつけるみたいな関数はないのか
0247名前は開発中のものです。2009/08/11(火) 21:13:40ID:+JCwviha
Youさくっと作っちゃいなよ
var i, s; s = string(argument0);
for (i = string_length(s) - 2; i > 1; i -= 3) s = string_insert(',', s, i);
return s;
みたいにさ。え、小数点?マイナス?何それおいしい?
0248名前は開発中のものです。2009/08/12(水) 10:32:00ID:zJpdpp9d
>>247
おお、なるほど
さっそく使わせてもらいます
0249名前は開発中のものです。2009/08/13(木) 19:29:05ID:n7BrVf28
コピペじゃなくて自分で考えながら打てよ
0250名前は開発中のものです。2009/08/14(金) 15:03:45ID:QmqtuE6D
GM6.1Aを使用してます。
小さめのドット絵を使ったゲームで、
プレイするときには2倍に拡大して表示させたいのですが、
Scalingから200%を指定すると、補間がかかった状態で拡大されてしまいます。
個人的な好みではあるのですが、ドット絵は補間がかかっていないほうが好きなので、
補間をかけずに拡大する方法はあるのでしょうか?
0251名前は開発中のものです。2009/08/14(金) 16:36:24ID:5GXcCdrT
Global Game Settings
>□ Interpolate colors between pixels
 ↑off

「ピクセル間の色を補間する」って意味。
これ試した?
0252名前は開発中のものです。2009/08/15(土) 03:16:16ID:9d6KyXWa
試したんですが、どうやらそれは、
スプライトやタイルなどのの回転や縮小などを行った際に
潰れたピクセルの補間を行うかどうかのチェックのようで、
OffにしてScaleを200に設定しても補間がかかったままになってしまいます。
0253名前は開発中のものです。2009/08/15(土) 12:37:05ID:ppqDPS8T
ラスタ画像だから拡大して読み込みしたら、そうなりそうな気がしないでもなかったけど
6持ってないから7で試した
7だと色の補間はデフォではされないな
0254名前は開発中のものです。2009/08/15(土) 15:03:13ID:X/GGZr0+
素直に最初から2倍サイズで描くか、画面サイズだけ2倍にするか
0255名前は開発中のものです。2009/08/16(日) 12:38:41ID:XtteL4+o
http://www.dotup.org/uploda/www.dotup.org37407.zip.html
pass:game
なんか作ってみました
不評なら無視してください
0256名前は開発中のものです。2009/08/16(日) 13:07:24ID:KGsCaqBn
ReadMeすらなしで骨組みだけ見せられても何ともコメントしづらいが

動きはぬるぬる動く感じでいいと思う
デバッグ表示はルームの左上じゃなくて常に画面のどこかに表示できるようにしたほうがいい
動くカーソルの意味がよく分からない。赤い的にキャラが隠れたときにカーソルも同時に隠れるので
0257名前は開発中のものです。2009/08/16(日) 13:21:32ID:XtteL4+o
動くカーソルはViewsのObject followingに設定してあります。
0258名前は開発中のものです。2009/08/16(日) 14:23:23ID:XtteL4+o
何かアイデアとか書いてくれるとうれしいです
0259名前は開発中のものです。2009/08/16(日) 20:40:04ID:rBixYuWx
構ってちゃんなら「不評なら無視してください」なんて書くなよ…
一切苦情や駄目出しするなってことだろ?
0260名前は開発中のものです。2009/08/17(月) 09:29:59ID:ZujRoECo
話は変わるが、誰かGame Maker製ゲームのパッチの作り方知っている奴いる?
とりあえず目に入ったのは
http://gmc.yoyogames.com/index.php?showtopic=425567
くらいだろうか。
これはパッチ作るというよりオートアップデータみたいだけど。
0261名前は開発中のものです。2009/08/17(月) 09:57:19ID:ZujRoECo
連投すまん。
これとかも使えるのかな。
ttp://www.clickteam.com/website/usa/patchmaker.html
0262名前は開発中のものです。2009/08/17(月) 11:13:12ID:Ueaog0aD
データベースが使えればなぁ
二次配列だけじゃちと大変
0263名前は開発中のものです。2009/08/17(月) 11:56:20ID:Qgv3R6CG
>>260
説明文読む限り後者のほうが使い勝手がいいような気がする
試してないから分からないけど

ただ根本的にパッチは当てるバージョンの問題が出てくるので
ゲームみたいな頻繁に更新があるものは、実行ファイルとリソースを分けて配布して
更新の際に実行ファイルの新しい奴をそのまま出すほうが無難だと思う
GMはこのリソースを分けるって機能がすこぶる弱いのが難点ではあるけども
0264名前は開発中のものです。2009/08/18(火) 13:56:57ID:9A1tpfH5
前から思ってたんだけどスプライトの当たり判定決める時の矩形ってRightとBottomがマイナス方向に1ドットずれてない?
0265名前は開発中のものです。2009/08/18(火) 18:47:44ID:V95lH0QN
処理系にもよると思うけど、
DirectXとかWinAPIなんかだとRightとBottomは矩形範囲外になってるから
間違ってるとも言えないよ。
0266名前は開発中のものです。2009/08/18(火) 19:20:34ID:XY3wfPj9
5.3Aで作ってたゲームがグラボ新しくした瞬間に全滅したよ……
グラボが古いDirectXに対応してなくて常時15fpsきるとかw
0267名前は開発中のものです。2009/08/19(水) 00:09:19ID:8UMBNhvo
グラディウスみたいな地形横スクSTGってやっぱりroomをステージ分の長さにして予め地形をつくっておいて
横移動するオブジェクトをカメラで追うって形でつくるのかな
この方法だと速度が1未満だとガクガクしちゃうんだよなー

地形無しならroomを解像度と同じにしてタイムラインで敵を出すって方法でいいんだろうけど
0268名前は開発中のものです。2009/08/19(水) 01:36:00ID:gfZ128LH
突然だが、GMのround関数は「銀行家の四捨五入」と呼ばれるちょっと特殊なもので
小数部がちょうど0.5の場合、近い方の偶数に丸められる。
たとえばround(1.5)=2だが、round(2.5)もやはり2となる。なので
10.0, 10.5, 11.0, 11.5, 12.0, 12.5, 13.0, ... といった数列をroundで丸めると
10, 10, 11, 12, 12, 12, 13, 14, 14, 14, ... という結果になる。

スプライトとかビューの座標も内部的にはroundで丸められるから
ちょうど0.5刻みで増やしていくとガタガタになるんだよね。
もしそれに当てはまるようだったら、自分でfloorで丸めてやれば滑らかになる。
0269名前は開発中のものです。2009/08/19(水) 01:48:51ID:wXabhXLH
>>268
うお、そんなん知らなかった
なんか背景だけ変にガクガクすることがあったのはそのせいだったのか

試しに補間切ってみたら全体が恐ろしくガタガタになって笑ったw
0270名前は開発中のものです。2009/08/21(金) 22:57:15ID:Q14mr33w
>>268
説明上手ね 勉強になるわ
0271名前は開発中のものです。2009/08/22(土) 15:43:54ID:rmxnEHai
情報サイトが復活せずなかなか使う事ができません・・・
何か役に立つ参考書や代わりの基礎がわかるサイトとかないでしょうか?
0272名前は開発中のものです。2009/08/23(日) 16:29:46ID:aoeKXHFm
英語ばっかりだもんなぁ

なんか最近ニコニコでもGM講座上げられてるっぽいよ
見た事は無いからどうとも言えないけど
0273名前は開発中のものです。2009/08/23(日) 17:05:09ID:wXNv9n59
いちお、Gamemakerの書籍執筆してる。
ちゃんと出るか分からないけど。

GMJのチュートリアルや、
GM6日本語ヘルプ(これが一番参考になる)でこと足りる気がするけど、
サンプルベースで解説してるとこあんまない気がする。

書いてて、8になっても多言語化に
前向きじゃないとこが不安だなぁ。
仕方なく5.3Aベース。
0274名前は開発中のものです。2009/08/23(日) 20:47:22ID:MlQYahV9
>>273
すげぇ…本出すのか
絶対買います

俺も日本語ヘルプに一番頼ってるなぁ
というかアレしか参考にしてない
0275名前は開発中のものです。2009/08/24(月) 02:46:58ID:eI7HA7BS
>>272
あれすんごい役に立つよ。
インスタンスのID管理(with構文の解説とか)があれば完璧。

完全初心者の自分は、これとGM6の日本語ヘルプだけで何とかできるようになったよ。
0276名前は開発中のものです。2009/08/24(月) 18:12:12ID:Xzm++a1G
ひとつのタイムラインで同種の複数のインスタンス(ザコ敵など)の動作を管理することは可能?
移動アクションはタイムライン通りに動作するんだけど
なぜか弾発射アクションがインスタンスの数の分繰り返されちゃう(発射タイミングも同調してる)
0277名前は開発中のものです。2009/08/25(火) 18:54:59ID:rkoG69qV
事故解決しました
self、other、objectの選択ミスでした
0278名前は開発中のものです。2009/08/29(土) 00:49:32ID:oZsv/vS3
情報サイト復活しないなあ・・・このまま閉鎖かなあ
0279名前は開発中のものです。2009/08/29(土) 22:25:35ID:P1d63aqY
講座動画みて使い方はわかったんですがアニメーション機能って
GameMakerにはついてないですか?gif使えば解決はするんですが
どうもgifって色合いとかが好かないからbmpでやりたいと思ってたのですが
0280名前は開発中のものです。2009/08/29(土) 23:35:54ID:Flg6LP3J
普通にbmpでも出来るだろ?
0281名前は開発中のものです。2009/08/30(日) 01:45:45ID:j2Hdof3G
静止画をある一定の間隔で表示するだけでアニメになるんだよ、知ってた?
0282名無しさん@そうだ選挙に行こう2009/08/30(日) 09:42:06ID:QbWxYMZ7
一つのスプライトに複数の画像を登録したら普通にアニメーションするよ
Sprite Editor上で add from file とかやってサブイメージを増やすようにすればよい
0283名無しさん@そうだ選挙に行こう2009/08/30(日) 09:58:18ID:w2mc7ljU
ヘルプもまともに読めないようじゃ、絶対に作品は完成しないな
0284名無しさん@そうだ選挙に行こう2009/08/30(日) 13:35:06ID:vWZLqWIv
>>282
ありがとうございます、試してみます

>>283
ヘルプにアニメーション表示させる方法って書いてました?
0285名無しさん@そうだ選挙に行こう2009/08/30(日) 13:40:15ID:w2mc7ljU
>>284
余裕で書いてある
0286名無しさん@そうだ選挙に行こう2009/08/30(日) 14:11:24ID:qWj+aYrC
>>283
大人げないぞ
0287名前は開発中のものです。2009/08/30(日) 21:24:11ID:pRVo7FMi
レジストでのみ使えるアクションの簡単な解説などを載せているサイトや文書などはないでしょうか?
0288名前は開発中のものです。2009/08/30(日) 21:28:25ID:CRpFUzJB
現在一番イイ文書がマニュアル
0289名前は開発中のものです。2009/08/30(日) 21:42:53ID:vGUVZRLY
俺も日本語マニュアルに育てられてきた
0290名前は開発中のものです。2009/08/30(日) 23:09:16ID:w2mc7ljU
6と7で微妙に違ってたりするね
パーティクル関係で、6の日本語マニュアルに書いてある関数定数がいくつか使えなかったりした。
0291名前は開発中のものです。2009/08/30(日) 23:21:43ID:lQ/SzS0M
実は、6.0→6.1で仕様がかなり変更されたんだよね。
パーティクル関係も変更され、6.0と互換性がなくなった。
エフェクト(パーティクルの簡易版)の導入もこの頃だし。
正直、コンマ1以上の仕様変更が成されてると思う。
0292名前は開発中のものです。2009/08/31(月) 00:00:32ID:9/zf57qv
あるインスタンスがあってそれにぶつかったら変数(仮にAとする)が1増えて、
ルームをリスタートしてもAが1のままにするのってどうやるの?教えてエロい人。
説明下手でごめん。
0293名前は開発中のものです。2009/08/31(月) 00:15:27ID:xoC9a6jx
ルームのリスタートは、改めてそのルームに移動したのと同じと考えるべし。
そのルームに配置されているインスタンスは全て作り直されるので、それまでルーム内で変更されていたものはリセットされてしまう。
ということなので、そのルームに配置されているオブジェクト等で変数Aを変更していても無駄。
(ただし、persistent指定のオブジェクトならその限りにあらず)

つまるところ、グローバル変数を使用しろということ。
ルーム間をまたいで変数を保持したければ、グローバル変数を使うのが最も楽な方法だ。
ぶつかったときに、
global.A = 1
というようにしておけばよい。
0294名前は開発中のものです。2009/08/31(月) 00:45:01ID:8wkxvCk1
Aの部屋で特定のもの触れたら 「global.testing」 加算1(set variableでapplication to は other)でそのあとにこのインスタンスを廃棄。
その状態でBの部屋にいくと「global.testing」が0よりも大きければ消えるブロック(step)は確かに消えてるが、リスタートしたら元に戻る。

ますます分からないです。
0295名前は開発中のものです。2009/08/31(月) 02:18:53ID:Mg29Csoo
global.testing はそのほかで絶対にいじっていないか?
ルーム開始時に初期化していないか?(global.testingをクリエイトイベントとかでいじっているオブジェクトとかいたら注意)
とか確認するべし。

>リスタートしたら元に戻る
の「リスタート」がなにを指すのか不明確なんでわからないけど。
ブロックが消えた状態のルームBをリスタートするのか、
それともルームAで、触れた後リスタートして、触れずにルームBにいくのか、とか、
いろいろ考えられるのでよくわからん。
0296名前は開発中のものです。2009/08/31(月) 13:04:25ID:8wkxvCk1
>>295 http://ux.getuploader.com/testglobal/ 試しに作ってみた。これ見て原因をつきとめてくれたら俺が喜ぶ。
0297名前は開発中のものです。2009/08/31(月) 18:11:39ID:CPbVIc8V
>>296を見てみたが、本題に入る前にコメント。
global.testingが0より大きいかどうかのチェックは、
Stepイベント内ではなくCreateイベントがいいかと。
Stepイベント内に入れるということは毎ステップ確認するということ。
考えてみれば、別に毎ステップ確認する必要はない。
作った直後にglobal.testingを確認して、大きければ消す。
Stepイベントに入れていることが、ルーム移動後に一瞬ブロックが見える原因。

んで、本題と思われるglobal.testingについてだが、
Debugモードでglobal変数を見ながらRを押せば、testingが消えることが確認できる。
で、探してみて見つかったのが、ScriptのloadGameにてgame_restart()が使われているってこと。
>>292>>294での『リスタート』ってのはこのことだと思われるが、
これはゲームをリスタートしているのであって、ルームをリスタートしているんじゃない。
そこが、>>293>>295を混乱させてしまった問題点。
game_restartってのは、本当に最初からゲームを開始するということ。
『一度ゲームを終了して再起動する』『全部白紙の状態から始める』等と思えばいい。
リスタート前に設定したglobal変数? あるわけないわな。再起動したんだから。

解決策としては、game_restartじゃなくて、room_gotoを使うこと。
ゲームを再起動するのではなく、最初の部屋に行けばいい。
0298名前は開発中のものです。2009/08/31(月) 18:25:47ID:CPbVIc8V
んー、混乱ってのは違うか。正しくは誤解だな。
まぁ自分が何をやっているのかをもう少し理解しましょう。
0299名前は開発中のものです。2009/08/31(月) 19:02:36ID:wpAfIbhX
例のアイワナ改造のおしえて君でしょ。懲りないよなぁ。
■ このスレッドは過去ログ倉庫に格納されています