[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 12/12 11:09 / Filesize : 172 KB / Number-of Response : 638
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:名前は開発中のものです。 mailto:sage [2010/12/05(日) 09:57:49 ID:AN26SQm8]
無料Windows用2Dゲーム作成ツール"Game Maker"について、色々と語り合うスレッドです。

●本家(英語)
 ttp://www.yoyogames.com/
●GameMaker Japan - 非公式情報サイト(日本語)
 ttp://gamemaker.jpn.org/v1/(現在一時閉鎖中)
●The Game Maker's Apprentice
 ttp://book.gamemaker.nl/

前スレ
【2D】ゲーム作成ツールGameMaker part4【マンセー】
 ttp://hibari.2ch.net/test/read.cgi/gamedev/1240441868/

92 名前:名前は開発中のものです。 mailto:sage [2011/01/11(火) 00:54:20 ID:6rwKkJH8]
コントロールパネル→個人設定→ウィンドウの色とデザイン→効果→『次の方法でスクリーンフォントの縁をなめらかにする』を切る。
じゃないだろうか?
ttp://gmc.yoyogames.com/index.php?showtopic=411438

93 名前:名前は開発中のものです。 mailto:sage [2011/01/11(火) 13:04:51 ID:KQ702KI4]
>>92
ありがとう
スクリーンフォントの縁をなめらかにするオフでいけた
この状態でexeを作ればOKみたいだね

94 名前:名前は開発中のものです。 mailto:sage [2011/01/13(木) 16:04:14 ID:8hWHOTkd]
スーパーマリオのようなゲームを作ってるんですが、
落下中に限り、R_rakkatyuuというスプライトを表示する。といった方法はどうすれば出来るのでしょうか?
落下中は全くアニメーションをしなかったり、
着地しても、操作しないとR_rakkatyuuがずっと表示されたままだったりで、全く分かりません。
よろしくお願いします\(__ )

95 名前:名前は開発中のものです。 mailto:sage [2011/01/13(木) 17:43:08 ID:3HiLg4Mj]
ジャンプの仕方は?
壁オブジェを地面にしてジャンプしてるなら
地面と接触中にプレイヤーオブジェクトのsprite_indexがR_rakkatyuuなら地面との衝突イベントで通常に戻す処理を
もしくは落下して地面についたときにvspeed(だったか?)
もしくはy位置を調整してる部分に通常に戻す処理を

落下中、つまりvspeedが正の値になるとR_rakkatyuuのスプライトに変わるようにすればいい
左右の反転はimage_xscaleを1,-1にすれば右向き左向きと変えられるぜ

96 名前:名前は開発中のものです。 mailto:sage [2011/01/14(金) 02:16:02 ID:hUeQMI+z]
ルームに配置したタイルIDの取得方法とかどうすりゃいいの
なんか無駄に複雑になるか、コードでタイル配置してID記録しておくしかないとかやりにくいんだけど

97 名前:名前は開発中のものです。 mailto:sage [2011/01/15(土) 02:29:51 ID:adKnm0aS]
できないのはお前だけ、低脳でゆとりな自分を恨め

98 名前:名前は開発中のものです。 mailto:sage [2011/01/15(土) 10:57:49 ID:AelpLmZy]
>>96
俺も今試してみたけど、GMLを使うなら>>96と同じ方法しか思いつかない。
強いて加えるなら、別の配列にタイルの種類とかタイルの範囲の情報とかを取っておいて、
必要に応じて添え字を連動させてそこから情報を読み出すくらいだな。
レジストしてるならマップ構造とか使うと楽かも。

釣りかもしれないが>>97はより良い方法を知ってるんだろうか。

99 名前:名前は開発中のものです。 mailto:sage [2011/01/15(土) 11:53:29 ID:JoQ7ZXV/]
場所がわかってるならtile_layer_findするだけなんだけど
ルームに配置してあるタイルを全部探して一覧にしたいってことなのかな?
だとしたらループで回してfindするか(depthが一定でなかったら厄介だけど)
idを0から適当なところまで増やしていって、tile_existsで存在確認するとかいう手がある。

でも、どういう状況でタイルIDが必要なのか気になるな。
実現したいことによっては、別の手段(オブジェクト使うとか)の方が楽かもしれない。

100 名前:名前は開発中のものです。 mailto:sage [2011/01/15(土) 17:47:06 ID:lAq+Nvon]
ありがとう、あるスプライトのタイルを条件に画面移動させたりとかしたいので
そのタイルIDを取得する方法を探していました

ルームに先に配置すると、位置調整とかやりやすいんだけど
コードを使って配置すると位置調整とか面倒で面倒で・・・
obj化して使えばいいんだけど、タイルを使って簡単にやれる方法は無いのかな、と思って質問しました



101 名前:名前は開発中のものです。 mailto:sage [2011/01/16(日) 03:53:49 ID:r1CII5k9]
変数tempにinstance_id[n]を代入したくて、

temp = variable_global_array_get('instance_id' , n)

ってコードを書いたんですが、tempの中身が0のままなんです
このvariable_global_array_getの使い方って間違ってますか?

102 名前:名前は開発中のものです。 mailto:sage [2011/01/16(日) 12:39:50 ID:TQmeTJbV]
書き方は合ってると思うけど、instance_idみたいな組み込み変数に使えるという保証はない
素直に temp = instance_id[n]; じゃいけないの?

103 名前:名前は開発中のものです。 mailto:sage [2011/01/16(日) 12:54:40 ID:QB8GtBhB]
>>101
instance_id[n]はグローバル変数じゃなくてローカル変数だよ。
それでちゃんと読み込める。
だから>>102の書き方で間に合う。

104 名前:名前は開発中のものです。 mailto:sage [2011/01/17(月) 18:19:37 ID:3/s7EhMe]
簡単なパスで動く足場でプレイヤーが一緒に動くようにはできました。
ですが複雑なパスでpath_positionを使ってプレイヤーを移動させる向きを変えるのはあまり賢くないように思えたので質問します。
どんな関数をどのように書いて使うと良いのでしょうか?

105 名前:名前は開発中のものです。 mailto:sage [2011/01/17(月) 19:54:13 ID:YOejjkfI]
複雑に動く足場をパスを使わずにやりたいと?
それともそれに乗ってるオブジェクトの位置移動や向きの方向を変えたいと?

106 名前:名前は開発中のものです。 mailto:sage [2011/01/17(月) 20:38:00 ID:YOejjkfI]
配列に位置情報を何十個と格納して
それをステップ毎に読みにいって、参照,計算,反映した後値に+1
配列の最後まで行くと今度は-1ずつしていく
これで位置移動はできるけど、path使ったほうが楽なんじゃないの?

A地点まで来たら回転軌道とか
B地点からは縦にジグザグしながら横移動とか
そういう区切りに着くたびにifとかで計算しないといけないのなら
作業量的にpathのが楽だと思う

107 名前:名前は開発中のものです。 mailto:sage [2011/01/17(月) 23:35:48 ID:uvq5U5+6]
足場の向きを変えるための不可視オブジェクトを何種類か作っておく
(例えば↑のオブジェクトにぶつかったら上向きに変わるとか)
それらのオブジェクトをルームに配置してやれば簡単に軌道が作れる
スピードを変えるオブジェクトとかも作ってやると色々面白い動きができるよ

108 名前:104 mailto:sage [2011/01/18(火) 19:39:16 ID:fbzAY7tc]
>>105-107
回答ありがとうございます。
自分が言いたかったのは、動く足場の上に乗るとプレイヤーも一緒に動くようにしたくて、
ttp://eidwinds.com/tooru/GM6HP/step4_7.html
ここを見ながら作ったのです。
簡単な動きの足場ならpath_positionでプレイヤーを動かす向きを判定すれば良いのですが
複雑なパスで動く足場その関数を使うのは賢くないかなぁと思って質問したのです。

誤解をまねくような書き方をしてすみませんでした。

109 名前:名前は開発中のものです。 mailto:sage [2011/01/18(火) 19:47:04 ID:NoBN6TiT]
ステップ毎に足場の移動前の位置と足場の移動後の位置を計算
出た結果を足場の上にあるオブジェ全てのx,yに加算で
複雑な軌道でもオブジェ着いてくると思うけどどうなのかな?

110 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 00:08:25 ID:A5IaszrY]
銃を撃ったあとに若干隙を作りたいのですが
プレイヤーの操作がきかない硬直状態ってどう作れば良いのでしょうか?



111 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 00:21:56 ID:VrQOmjCs]
変数を作って、0の時は動ける。1の時は動けない。みたいにする。



112 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 02:21:36 ID:A5IaszrY]
>>111
できました!ありがとうございます!
ショットをキー入力していてかつrigid=0だったら動かすようにして、撃った後rigidを1にする。
STEPでalarmEnabled=0かつrigid=1だったらalarm[0]を適当な値、alarmEnabledを1にする。
alarm[0]が0になったらrigidとalarmEnabledを0にするというかんじにしました。
もっと良いやり方があれば教えていただけると嬉しいです。

113 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 02:37:18 ID:Ex+KSWZm]
rigidが0以上、かつ rigid が delay_shot_time 未満の場合 rigid+=1
rigidが上記以外の場合 rigid=0
rigid==0 だったらショットを撃てるように、撃った後 rigid=1。

delay_shot_time = 5; //5秒後に撃てるようになる
if(rigid>0&&rigid<delay_shot_time*room_speed) rigid += 1; else rigid = 0;
if(rigid==0){
撃つ処理;
rigid = 1;
}

賢いかどうかは知らないけど、自分でやるならこうする
アクションの方は面倒だから自分でやってくれw

114 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 03:45:24 ID:jQ6PGNCO]
タイムライン使わなくても時間制御できるんか
これは参考になる

115 名前:名前は開発中のものです。 mailto:sage [2011/01/22(土) 03:57:24 ID:Ex+KSWZm]
timelineはイベント中の行動制御に使ってるなぁ

弾発射とかのディレイ制御なら>>113みたいにやって
会話イベントしながら旋回させたりとかやるならtimeline
alarmはどうなんだろうこれ、使い道は分からん

116 名前:名前は開発中のものです。 mailto:sage [2011/01/23(日) 19:05:48 ID:7C5keGLv]
>>115
Alarmはどうだろう・・・ 自分は時限爆弾とかに使ってるけど

117 名前:名前は開発中のものです。 mailto:sage [2011/01/23(日) 22:02:38 ID:nMP0YIJR]
Alarmは別に問題ないんじゃないかな
>>112 のようにフラグとカウンタ分けるもよし
>>113 のように一まとめにするなら、rigid 変数がいらなくなって
alarm[0] > 0 でセットされているかどうかチェックすればよし
イベントフローのタイミングが問題になることがあるかもしれないけど

118 名前:名前は開発中のものです。 mailto:sage [2011/01/28(金) 06:33:23 ID:mRRjGSDa]
まだ規制かな

119 名前:名前は開発中のものです。 mailto:sage [2011/01/28(金) 06:43:19 ID:mRRjGSDa]
暫くは書けそうだ
スレ汚しスマソ。

120 名前:名前は開発中のものです。 mailto:sage [2011/01/29(土) 22:16:37 ID:rf3LkMoF]
今回もまとめ動画作成されてたんだな
2010: 100 Game Maker games in 10 minutes
ttp://www.youtube.com/watch?v=zn6W-5FbXGo

dustforceとか面白そうだと思ったけど、ゲームが始まらなかった・・・



121 名前:名前は開発中のものです。 mailto:sage [2011/02/01(火) 08:08:49 ID:NPjgEITA]
mb_textで漢字を使ずにひらがな、カタカナ、英数記号のみで使うにはどうしたらいいでしょうか

122 名前:名前は開発中のものです。 mailto:sage [2011/02/01(火) 10:04:13 ID:+IFgvRf2]
>>121
容量を節約したかったり、単に漢字がいらなかったりするなら
全角のスプライトを分割した後に、カタカナがあるimage 2までを残してそれより下を削除すればいい。
それだとmbtextが普通に使える。

ひらがな・カタカナ・半角英数記号のみをまとめて入れた画像から文字を切り出して使いたいなら、mbtextでは無理。
自分で使い道に合った関数を一から作るしかないだろうね。


123 名前:名前は開発中のものです。 mailto:sage [2011/02/02(水) 18:00:09 ID:4wQIL4SL]
どうもありがとうございます

124 名前:名前は開発中のものです。 mailto:sage [2011/02/03(木) 22:29:35 ID:gMDo3WrY]
64bit環境でもGM動きますか?

125 名前:名前は開発中のものです。 mailto:sage [2011/02/03(木) 22:44:44 ID:Lu4wbnuU]
DLして試してみれば?

126 名前:名前は開発中のものです。 mailto:sage [2011/02/03(木) 23:30:25 ID:gMDo3WrY]
すみません
そろそろPC買い換えたいなと思ってたので質問しました

127 名前:名前は開発中のものです。 mailto:sage [2011/02/04(金) 08:25:57 ID:4JF3Z1q0]
他は知らんけどGM8ならWIN7/64で何の問題も無く動いてるよ

128 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 08:53:19 ID:G/hmZHUQ]
インスタンスIDの番号に上限があるのかという無駄な心配をして検証してみた
50000000まで行った

本当に無駄だったけど、なんか参考になればいいと思ったの…

129 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 08:56:52 ID:G/hmZHUQ]
あ、ごめん補足
50000000以上いく

上の書き方だと50000000が上限みたいな書き方だね
そこまで確認したってことだけですた

130 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 15:15:23 ID:gNWM0hkF]
mbtextの文字にブレンドカラーを使えるようにするのってできるかな
スクリプト内のdraw_sprite_partをextにすればできそうな気がするけど
たぶんそれだけじゃ駄目なんだろうなあ



131 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 21:06:22 ID:oSz6wjKb]
>>128-129
特に理由がなければ32bitでサイズ確保するだろうから符号付きでも20億は余裕じゃない?

132 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 01:05:53 ID:Wk8BytYZ]
>>130
色つけるだけならdraw_sprite_extでやってる

>>131
ありがとう参考になった!

133 名前:名前は開発中のものです。 mailto:sage [2011/02/16(水) 20:10:21 ID:PYt9zTwf]
以前GM製ゲームで耳ぶっ壊されるかと思った経験あるんだが、音がおかしくなるバグって修正されてる?

134 名前:名前は開発中のものです。 mailto:sage [2011/02/16(水) 21:59:58 ID:we3raIYs]
>>132
draw_sprite_extだと文字表みたいなの丸々描画されちゃわない?
draw_sprite_part_extだとするとmbtextが受け取った文字データを関数の値に入れるって感じなのかな

135 名前:名前は開発中のものです。 mailto:sage [2011/02/18(金) 07:44:26 ID:p7uygRvl]
>>134
すまん、GM8で日本語表示するためにmbtextをベースに作り直したモノの話をしてた
たいして違わないとたかをくくって話してたけど結構違うのかな

文字に対応したスプライト番号でインスタンスとして表示ってだけならdraw_sprite_extで普通にいけたけど

136 名前:名前は開発中のものです。 mailto:sage [2011/02/20(日) 23:11:01.21 ID:q1nfIiKm]
需要ないかもしれないけど、複数入り口がある場合のルーム移動のサンプルを作った
初心者向け。難しい事してないからご自由にどうぞ

SomeGateExample.gmk

ttp://firestorage.jp/download/fa05b926aa602a7a8b5723451669fdf9edff9a82
Pass:gm2ch

137 名前:名前は開発中のものです。 mailto:sage [2011/02/23(水) 06:59:25.37 ID:1Hdmxju4]
キーを押したらスリープ もう一度押したら解除ってどうやればできるだろう

138 名前:名前は開発中のものです。 mailto:sage [2011/02/24(木) 03:06:57.78 ID:Dn7EBdpM]
>>137
シンプルにやるなら

if(keyboard_check_pressed(vk_space))
{
screen_refresh()
do keyboard_wait() until keyboard_check(vk_space)
}

検索すればもう少しましなのが出るかも

139 名前:名前は開発中のものです。 mailto:sage [2011/03/03(木) 00:54:08.65 ID:ELxZyYGb]
外部のテキストエディタでコード書いてる人っています?
やっぱコメントに日本語使えないのは痛いから、外部で書いてそれをコピペして作ろうかと考えているんですが
なにかいいエディタがあったら教えてください。

140 名前:名前は開発中のものです。 mailto:sage [2011/03/03(木) 02:47:30.21 ID:WBNvuqo0]
日本語の使えるGM5.3で7.0の日本語マニュアル参照しながらコード撃つ
試すときは最新の8.0にコピペしてやってる



141 名前:名前は開発中のものです。 mailto:sage [2011/03/03(木) 15:32:17.91 ID:LVOwLF0+]
NoEditorとかNotepad++(EUC-JP対応版)なら自分で強調表示を作れるから良いよ。
作ったテキストファイルを独自の拡張子(俺の場合は.gmscr)で保存すれば、
対応エディタでの強調表示の他に、GameMakerを開かなくてもコードを見ることができるからお得。


142 名前:名前は開発中のものです。 mailto:sage [2011/03/03(木) 22:41:58.47 ID:ZDUSJLE+]
サクラエディタオススメ

143 名前:名前は開発中のものです。 mailto:sage [2011/03/04(金) 06:17:24.29 ID:/yW5hy/N]
>>140
7.0の日本語マニュアルってヘルプドキュメント?6.0のは公式であるのは知ってるけど7.0もある?

144 名前:名前は開発中のものです。 mailto:sage [2011/03/04(金) 06:47:32.73 ID:p5FLgEHX]
>>143
すまん、今見たら日本語版ヘルプドキュメントのバージョン 6.0 だった
6.0以降の日本語ヘルプは無いはず

145 名前:名前は開発中のものです。 [2011/03/04(金) 09:02:59.29 ID:gYV5jqov]
64bitOSで問題なく動きますかか?

146 名前:名前は開発中のものです。 mailto:sage [2011/03/04(金) 09:12:10.10 ID:p5FLgEHX]
>>145
>>127

147 名前:名前は開発中のものです。 mailto:sage [2011/03/05(土) 13:44:23.91 ID:A3DNRd0X]
>>144 サンクス!あったらほしいと思っただけなのよ

日本語対応してもらうより自分が英語に対応した方が早い気がするね

148 名前:名前は開発中のものです。 mailto:sage [2011/03/08(火) 06:02:37.63 ID:yDU6ZQlV]
138だけど>>137のもう少しマシなのを作ったよ
と思ったけどコード書いたら規制かかった…まんどくせ

やってることだけ書くと、
1.ポーズ変数を作る
2.ポーズになる直前の画面をキャプチャしてスプライトとして登録・描画
3.ポーズになってたら自分以外のインスタンスを非アクティブ化
4.ポーズ解除したらさっきの登録したスプライトをメモリから削除
これだけ!あとは自分でなんとかしてくれ!

149 名前:名前は開発中のものです。 mailto:sage [2011/03/08(火) 06:07:18.08 ID:URJuUFsM]
レジストしねーとつかえねーじゃねーか!!

150 名前:名前は開発中のものです。 mailto:sage [2011/03/08(火) 06:26:27.34 ID:yDU6ZQlV]
sprite_create_from_screenってレジストだけだっけ?
ならそれだけ省いて、instance_deactivate_all(1)を使ってDrawイベントでボーズ中の画面を出すとかどうだろう
ゲーム画面だしたままにしたいならそれじゃ不満かもしれないけど



151 名前:名前は開発中のものです。 mailto:sage [2011/03/08(火) 21:55:57.76 ID:/HJiXL+I]
レジストくらいしろよ
ゲーム製作なんて数ヶ月はかかるのが普通なんだから
その時間を思えば2000円なんて安いもんだろ

152 名前:名前は開発中のものです。 mailto:sage [2011/03/08(火) 22:02:48.68 ID:kTpVbqPa]
proは良いぞ
ブレンドカラー使えるしパーティクル使えるしエクステンション使えるし

153 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 02:36:04.63 ID:0A10g8Iv]
すべてのユーザーがレジストしてるわけじゃない
なら未レジストでも使える機能かどうか、きちんと書いておくべきだったと思う
>>149みたいな言い方はあれだけども

154 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 03:51:07.53 ID:b2ZIx76M]
148だけど、確認せずに書いたのは申し訳なかった

一応調べてみたんだけど、レジストしないと使えないのはdraw_primitive〜とかだよね?
一時的にメモリにsprite_create_from_screenでスプライトを作ってdraw_spriteするくらいできそうなもんだけど
ヘルプにもレジストしてないと使えない関数としては書いてなかった

めんどくせ、ちょっとサンプル作ってくる

155 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 03:59:14.95 ID:0A10g8Iv]
ちょっと調べてきたぜ
sprite_create_from_screenがレジスト機能みたいだな

This function is only available in the Pro Edition.

156 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 04:09:18.68 ID:0A10g8Iv]
6.0の日本語ヘルプだと
レジストしないと使えない機能なのに書かれてなかったりするなこれ

まぁポーズさせるぐらい簡単だろ
1、ポーズ変数でチェック
2、ポーズ中には処理が発生しないようにifで分岐
3、1度ポーズ状態になったときに全てのインスタンスのhspeed等を保存
4、戻すときに3を逆にやるだけ

うむ

157 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 04:28:20.59 ID:b2ZIx76M]
保存処理がBGMに適応できなかったりするからあんまり好きじゃないだけなんだけどね
一応サラっと作った。Proのみらしいから申し訳ないけど

firestorage.jp/download/f9ea293036226b37182bc0119a6b712a0dab36cb

158 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 04:39:04.57 ID:b2ZIx76M]
ついでに未レジスト用にも

すべてのオブジェクトに「Control」という変数作る
Pauseオブジェクトからポーズ状態ならステップイベントでwith(all) Control = falseにして
各ステップイベントの行頭にif(!Control) exit って書いておくだけでもまぁできるけど
これだけだとimage_speedが保存できなかったりするから注意なんだけど 一応こんな方法も一時期やってた
image_speedが一貫して0か1で制御できればなんら問題はないんだけどね

>>157のやってることとほぼ同じですわ

159 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 04:39:46.97 ID:b2ZIx76M]
連投すまそ
修正:>>156とやってることほぼ同じ

160 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 06:06:07.12 ID:ziWZfUHY]
ポーズって

var c;
c = 0;
while (c != ord('P')) {
keyboard_wait();
c = keyboard_lastkey;
}

これじゃあ駄目なんか?



161 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 06:45:00.87 ID:b2ZIx76M]
>>138で書いたけど、それだとキーボード以外の入力を受け付けなくなるから割と不便なんだよなあ
駄目ではないと思うけど

162 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 13:49:47.53 ID:mq+G7FDV]
Proは良いし20ドルくらい払っても構わないけど1バージョンのみってのが引っかかるんだよな
俺は6しか使った事無いが機能考えれば7の方が良いかなと思ったけど8も出てるし今後もっと良い機能が追加されたのが出るかもしれない

163 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 20:17:07.93 ID:GM2GEscm]
キー以外も受け付けたかったら

while (true) {
io_handle();
if (keyboard_check(ord('P')) break; // Pでポーズ解除
if (mouse_check_button(mb_left) && position_meeting(mouse_x, mouse_y, obj_button))
break; // ボタンをクリックしたら解除
// その他必要なマウスやキーの処理
screen_refresh(); // 場合によってはscreen_redraw()
sleep(1000 / room_speed);
}

みたいにすればこの中でメニュー処理とかもできる
ちょっと頑張ればアニメーションとかもできるよ

164 名前:名前は開発中のものです。 mailto:sage [2011/03/09(水) 23:04:05.38 ID:djP5S+Y6]
pause 状態を管理するオブジェクトを作成してactivate、deactivate 切り替えるのが楽
ループを自分でやると閉じるボタンが効かなくなることがある

Begin step
//アニメーションをさせたくない場合 下2行をコメント解除
//instance_activate_all();
//screen_redraw();
instance_deactivate_all(true);
//instance_activate(parent_menu_object) //メニュー表示などをする場合

End step
instance_activate_all(); //アニメーションをしない場合、この行を消す

キー入力は普通にkeyboard event に作ればいい

165 名前:名前は開発中のものです。 mailto:sage [2011/03/10(木) 06:03:15.54 ID:rN8C/d6H]
最初に質問した人ではありませんが
参考にさせてもらって使わせていただきました、ありがとうございます

166 名前:名前は開発中のものです。 mailto:sage [2011/03/10(木) 07:43:54.63 ID:RIOc5T7c]
>>162
確かにバージョンで金取られるのが悔しいのもわかるけどGMに限ったことじゃないだろ
今後よくなるかもで手が出せないんならずっと手出せないんじゃねーかな

167 名前:164 mailto:sage [2011/03/10(木) 20:21:28.20 ID:1TAXMbhC]
アニメーションさせる場合が間違ってたので修正
pause 管理をするオブジェクトのdepthを一番高く設定(depth = 100000 ぐらい)
Begin step
instance_deactivate_all(true);
//instance_activate_object(parent_menu_object) //メニュー表示などをする場合

End step 必要なし

Draw event
instance_activate_all();

Keyboard event(ポーズ状態にするとき)
instance_deactivate_all(true);

164 だと他のEnd step event が動いてしまうので修正

168 名前:名前は開発中のものです。 mailto:sage [2011/03/10(木) 20:28:10.20 ID:RIOc5T7c]
文字列の入った配列のサイズを取得するにはどうしたらいいだろう?
何故かわからないけどvariable_local_array2_getを使うとエラー出るんだよね
まだまだ理解不足だなあ

169 名前:名前は開発中のものです。 mailto:sage [2011/03/10(木) 20:38:18.14 ID:RIOc5T7c]
168 自己解決した

170 名前:名前は開発中のものです。 mailto:sage [2011/03/12(土) 00:19:05.47 ID:csZUew4U]
GM8だけれど
インスタンス名からオブジェクト名を得るのは簡単なん?

object_get_name(インスタンス)
だとならないんだが・・・



171 名前:170 mailto:sage [2011/03/12(土) 00:32:25.78 ID:csZUew4U]
with(インスタンス)で自己解決しました

172 名前:名前は開発中のものです。 mailto:sage [2011/03/12(土) 05:55:20.49 ID:MMg6Pv8C]
自分が思い込んでた間違いと
うまくいった結果を載せてくれよ

173 名前:170 mailto:sage [2011/03/12(土) 12:59:33.29 ID:csZUew4U]
object_get_name(インスタンスID)でオブジェクト名が取得できると思ってたけど
パラメータはオブジェクトIDしか無理なようなので

var obj_id;
var obj_name;

with(インスタンスID)other.obj_id = object_index

obj_name = object_get_name(obj_id)

でできました

174 名前:168 mailto:sage [2011/03/12(土) 17:16:39.71 ID:H04pfBlp]
地震でHDDとんだけど・・・

思い込んでた間違いは、variable_local_array_getで値が存在するかしないかが返ってくると思ってた
実際は代入されている値が返って来るから文字列か数値かで処理を変えれば問題なかった

175 名前:名前は開発中のものです。 mailto:sage [2011/03/12(土) 20:30:47.61 ID:ohio90gF]
>>173
なんでそんな遠回りなんだw
obj_name = object_get_name(インスタンスID.object_index); だけでいい

ついでだけど、varで宣言した変数はインスタンス変数ではなくローカル変数になる
だからwithの中から参照する時にotherを付けるのは間違い。何も付けなくていい

176 名前:170 mailto:sage [2011/03/12(土) 20:40:53.73 ID:csZUew4U]
>>175
ありがとう!
参考になりました

177 名前:名前は開発中のものです。 mailto:sage [2011/03/13(日) 22:07:35.85 ID:XHHbxYaG]
すげー今更だけどスプライトでPSDファイル読めるのな…便利すぎて屁が出た

178 名前:名前は開発中のものです。 mailto:age [2011/03/17(木) 10:00:41.41 ID:FiAydu5S]
あげ

179 名前:名前は開発中のものです。 [2011/03/20(日) 18:15:56.73 ID:n9f7tcZ5]
みんなは敵のAIとかどうやって組んでいるんだろう・・・


180 名前:名前は開発中のものです。 mailto:sage [2011/03/20(日) 20:27:12.84 ID:tVTC6o5k]
>>179
シューティングゲーム作ってるけど、
自機とか自機弾の速度や方向に応じて自機の後ろにつかせてみたり攻撃の避け方を変えてみたりしてる
他にも自機の攻撃方向を学習して敵全体で共有するってのも考えてみたけど、バランスが崩壊しそうだからやめた
GMはAI作るのに役立つ関数が多いから作りやすくて良い



181 名前:名前は開発中のものです。 mailto:sage [2011/03/20(日) 21:47:41.83 ID:qNX/YYGZ]
ボンバーマンですら中々難しいが格ゲーとかもうキチガイの領域
下手すると勇次郎クラスの化け物になるし作れる奴は凄いよな

182 名前:名前は開発中のものです。 mailto:sage [2011/03/21(月) 23:48:52.97 ID:WI6Usfsf]
ビーム的な物の当たり判定にcollision_rectangleあたりを使いたいのですが
範囲内にオブジェクトがあった場合、そのオブジェクトより後ろを判定外にするにはどうするのがスマートでしょうか?

分かり難いので図で説明するとこんな感じです
● 始点 ○ 終点 □ 範囲 ★ オブジェクト

  □□□□□□
●□□□□□□○
  □□□□□□

↓途中にオブジェクトがあると

  □□□★
●□□□□□□○
  □□□□□□

思いついた限りでは★オブジェクトからもcollision_rectangleを後ろに伸ばし両方に干渉する場合〜といった所ですが
どうもかなり複雑になってしまう上、斜め等に対応させると非常に面倒かなと思います
皆さんならどのようにしますでしょうか。よろしくお願いします

183 名前:名前は開発中のものです。 mailto:sage [2011/03/22(火) 01:02:20.76 ID:gB5rTKn/]
GMLscriptsのcollision_triangleじゃいかんの?

184 名前:名前は開発中のものです。 mailto:sage [2011/03/22(火) 04:17:42.19 ID:ya/xFXIz]
>>183
ありがとうございます。教えて貰ってなんですがあまり理解出来ず…
何となくこんな感じかなというのは出来たのですが
    B

A

    C
こんな感じで3点を取って

    B

A
  ■
    C
オブジェクト■が僊BC内にある時、Aから(■x,■y)を通る直線A■を延ばしてA■とBCの交点にCを移動
というような感じで変な風に解釈して遠回りをしてるかもしれませんが三角形の当たり判定なら出来そうです

しかしまた質問で申し訳ないのですが点A,B,Cを取ったとして三角形ABCを当たり判定として使うにはどうすれば良いでしょうか?
日本語ヘルプを見た所、衝突判定は点、線、矩形、円しかなくこれらを組み合わせて三角形の範囲を作る方法は思いつきませんでした
線を無数に引くとか強引な方法は好ましくありません。寝ボケておかしな見落としをしているかも知れませんがご教授お願いします

185 名前:名前は開発中のものです。 mailto:sage [2011/03/22(火) 08:12:42.90 ID:iR906dOg]
GMLscriptsって言うサイトがあってそこに三角形衝突判定のコードがあるんよ
他にも色々便利なのあるから見ておくといいかも

186 名前:名前は開発中のものです。 mailto:sage [2011/03/22(火) 09:45:03.18 ID:iR906dOg]
ttp://www.dotup.org/uploda/www.dotup.org1450607.zip.html
とりあえず頭悪い方法かも知れんけど,自分なりに作ってみた(*‘ω‘ *)
判定領域を分割して,分割された小領域の中で一番近いオブジェクトに処理をするような感じ
めんどいからやってないけど斜めにもできないことはない・・・と思う

スペースで縦横変更 カーソルで移動

187 名前:名前は開発中のものです。 mailto:sage [2011/03/22(火) 20:14:48.48 ID:ya/xFXIz]
ありがとうございます
Proではないので実行は出来ませんでしたが何となく分かりました

188 名前:名前は開発中のものです。 mailto:sage [2011/03/24(木) 00:31:37.54 ID:6D2aExw3]
畜生
スプライン補間のスクリプト作ったのに
もうGMLscritpsにあるじゃんかよ

189 名前:名前は開発中のものです。 mailto:sage [2011/03/31(木) 07:11:25.20 ID:Rw3hKzTx]
自分は何か自作する前に必ずGMToolBox見てる
ここ見てると普通にWindowsアプリ作れそうだ

190 名前:名前は開発中のものです。 mailto:sage [2011/03/31(木) 09:07:46.03 ID:JmnOgD/s]
楽しいのはわかるけど、ちょっとだけ勉強が足らないみたい



191 名前:名前は開発中のものです。 mailto:sage [2011/03/31(木) 22:10:05.94 ID:pPPL63YW]
だれか8のヘルプ翻訳してください・・・

192 名前:名前は開発中のものです。 mailto:sage [2011/04/01(金) 01:21:44.04 ID:fKVwW7xQ]
6のヘルプで十分だろ。中学英語レベルで読めるし、わからなければ翻訳かければそんなに苦じゃないけどな






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<172KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef