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

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/12/05(日) 09:57:49ID: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/
0248名前は開発中のものです。2011/04/26(火) 06:41:34.92ID:Tg5NYkhP
>>247
ファイルから配列に1行おきにループで代入してる
テキストファイルあまり見られたくないならテンポラリファイルに展開するようにすればあんまり問題ないしね
0249名前は開発中のものです。2011/04/26(火) 14:09:25.33ID:iIkImGvC
これでタワーディフェンス作りたいんだけどGML使わないとやっぱ無理かな?
0250名前は開発中のものです。2011/04/26(火) 15:32:37.25ID:KekkYEKd
たぶんGMLのが簡単だと思うけど
アクションだけでも問題無いと思う
0251名前は開発中のものです。2011/04/26(火) 16:05:36.00ID:iIkImGvC
>>250
GMLのが簡単ってこともあるのか
まだGM自体触ったばっかだからもっと使ってみる
0252名前は開発中のものです。2011/04/26(火) 16:49:36.12ID:TbagIrwc
アクションだけでも関数とローカル変数を使えば大抵の事はできるよ
プログラムを全くやった事が無いならアクションから始めたほうがいいと思う
アクションで覚えた事はGMLに移る時も無駄にならないし
0253名前は開発中のものです。2011/04/27(水) 08:59:32.68ID:iohphExa
>>248
そうなるよね
文字列と対応するIDを別々のリストにいれておけば参照する時楽かな
0254名前は開発中のものです。2011/04/27(水) 20:19:30.93ID:EEtUA/Hm
>250-252
GMLのが簡単っていうのは表記ミスの発見や変更が加えやすいから簡単って言う意味だろうなあ
アクションでも同じ事はできるけど正直見づらくて、同じ事やろうと思うと結構グチャグチャになる
0255名前は開発中のものです。2011/04/27(水) 22:07:08.31ID:5ZsESPRo
あとアクションだと一個ゲーム作って次を作るときに再利用しにくい
0256名前は開発中のものです。2011/04/28(木) 01:11:43.89ID:FOVplmLs
ifやforをたくさん使うようになると、GMLで書いたほうが分かりやすくなる
0257名前は開発中のものです。2011/04/28(木) 22:22:01.79ID:0X5ghGKS
ttp://www.blackratstudios.com/games/DD_to_GML_7/Drag%20and%20Drop%20Icons%20and%20their%20GML%20Equals_Ver%207.html

アクションをGMLに書き換えてくれた勇者がいるので紹介しておきますね
0258名前は開発中のものです。2011/04/30(土) 02:01:30.31ID:CeAb+bJr
↑のサイト見て気になったんだけどaction_系のコマンドってヘルプに乗ってる?
検索かけても引っかからないから今までずっと知らなかった
タイムラインGMLで呼び出せないのかと諦めてたけどこれで随分楽になる。すごい助かったよ
0259名前は開発中のものです。2011/04/30(土) 04:37:58.57ID:0CGYVCn/
紹介したサイトにも書いてあるんだけど

action関数はGM自体に含まれているんだけど、初心者の混乱を避けるためにヘルプには載せていないみたい
さらに引数のガイドもコードエディタで表示してくれないからあまり支持されていないそうだ

上記のサイトで引数についての説明もされてるから見れば完璧だとは思う

ちなみにタイムラインはtimeline_indexで指定できないの?
自作でタイムライン作っちゃうからあまり既存のタイムラインは使ったことがない
0260名前は開発中のものです。2011/04/30(土) 10:49:28.96ID:NTSCSH68
Show Infomationで全部そのままGML表示してくれりゃいいのに
0261名前は開発中のものです。2011/04/30(土) 14:48:02.10ID:l+G1gOeI
マウスにオブジェクトがついてくるってアクションあります?GMLうたなきゃだめかな?
0262名前は開発中のものです。2011/04/30(土) 15:14:18.12ID:s8CMxVtF
マウスの位置格納してる変数参照して
オブジェクトの位置をそれに合わせればいいんじゃね?
0263名前は開発中のものです。2011/04/30(土) 15:34:49.18ID:0CGYVCn/
普通にMove Towardsのイベントにmouse_xとmouse_y指定すればいいんじゃねえの

コードが書けないなら既存のイベントで何ができるか、どうやったらできるか考えるべき
企画書流し込んでゲームが出来上がるソフトなら誰も苦労しない。
0264名前は開発中のものです。2011/04/30(土) 17:25:31.40ID:CeAb+bJr
>>259
ド素人プログラマってのがバレバレになるけど

timeline_index = (呼び出したいタイムラインのname)

って感じで前にやってみたんだけど呼び出せずに他どうやるかわかんねってなって諦めてた
元々作ってたタイムライン流用したくて、ダメだったら259のように自作タイムライン作るしかないかなとは思ってた

どうせタイムラインもコピペ流用できないしGMLで自作したほうが後々の為ではあるんだろうなあ…
0265名前は開発中のものです。2011/04/30(土) 17:41:07.10ID:s8CMxVtF
普通にtimeline_index = timelineの名前 でいけたと思うが
position,speedの設定し忘れや、timeline_runningがfalseになってて動いてないとかかもな
timeline自体に使ってる名前が重複してるか、有効ではない名前になってたりする可能性も有りか
0266名前は開発中のものです。2011/04/30(土) 18:10:55.44ID:CeAb+bJr
素早いレスありがとうございます。timeline_runningをtureにしたら無事いけました
というか上の変数もヘルプにのってなかった…これヘルプのみ教科書じゃ網羅できないってことか
もうちょい色々使って調べるようにしてみます。本当ありがとう!
0267名前は開発中のものです。2011/04/30(土) 20:06:21.61ID:W0WXxwKu
ついさっきDLしたばかりの無知で悪いんだが、
簡単なモノって大体どれくらいのモノならGMLで作れるの?
ストファやスマブラとかの格ゲーとかでもいける?
0268名前は開発中のものです。2011/04/30(土) 20:21:09.42ID:W0WXxwKu
ごめん↑は「GML無し」での間違い
0269名前は開発中のものです。2011/04/30(土) 20:40:30.34ID:S9YQ/liJ
>>267
いけるいける




簡単なモノって大体どれくらいのモノなら鉛筆で書けるの?
みたいな話だからやり方次第としか言いようがねぇよ

自分でスマブラのようなゲームを作ったことはある
格ゲーは作れるしSTGも作れるしアクションも作れる
だが楽かって話になるとそれは別問題だ
まず聞く前に自分で試してみてどのくらい出来るのかやってみる気概がないと後々切ないよ
0270名前は開発中のものです。2011/04/30(土) 20:47:07.56ID:W0WXxwKu
>>269
ふむ、了解した。
楽じゃないのは承知の上だから大丈夫なんだが、
英語が怖いから5.3インスコしたんだけど
やっぱり7.0や8.0のがいいのかな?
0271名前は開発中のものです。2011/04/30(土) 21:08:45.32ID:S9YQ/liJ
両方インストールして両方試してみれば良いのに


特にこだわりがなければ7や8で構わない
英語ったってそんな難しいものはないし困ったらエキサイト先生で構わない
英語がある程度読めるとYoYoGamesのサンプルやスクリプトを参考に出来て便利
7や8だと透過pngを使えるから,スマブラやストリートファイターのようなエフェクトがリッチなゲームを作るには便利
あと5.3だとVista以降で動かないかもしれない

とりあえずまずは自分で弄って試行錯誤して悩むのをお勧めする
0272名前は開発中のものです。2011/04/30(土) 21:12:22.72ID:W0WXxwKu
>>271
そ れ は 盲 点 だ っ た

アドバイスdクス。
とりあえずブロック崩し作ってくる
0273名前は開発中のものです。2011/04/30(土) 23:30:39.04ID:NTSCSH68
質問先読みでもしようか
全部消えたら
0274名前は開発中のものです。2011/04/30(土) 23:38:57.48ID:9UNUjPoi
んじゃ
バーが壁にめり込んで動かない
0275名前は開発中のものです。2011/05/01(日) 01:20:50.95ID:U7TmMKRc
馬鹿にすんなよwww
0276名前は開発中のものです。2011/05/01(日) 02:15:52.90ID:ib5IPz5T
>274 あるあるw
0277名前は開発中のものです。2011/05/01(日) 02:26:04.46ID:ib5IPz5T
ところで>272はなんでGML以外で作ろうとしてるんだ?
管理しやすいし少しでも楽にするならGMLに慣れちゃったほうがいいと思うよ

あと>273のIDに感動した
0278名前は開発中のものです。2011/05/01(日) 07:37:06.68ID:Q9izUd83
>>272
もちろんエロいブロック崩しなんだろうな?
0279名前は開発中のものです。2011/05/01(日) 10:16:25.94ID:19Yqwfe7
やっぱプログラムってところで壁を感じてるんじゃないかな?
やってることはアクションと変わりないんだけどね
0280名前は開発中のものです。2011/05/01(日) 17:07:17.89ID:24HhuA0O
>>277>>279
そうなのか?
Cやろうとして失敗した奴なんだけどね俺は

>>278
そりゃもちろん!

で、バーが壁にめryは何とか回避したんだが、
崩す前の絵をブロックにする方法が良く分からない。
一個一個別のオブジェクト作らないとダメなの?
0281名前は開発中のものです。2011/05/01(日) 17:18:15.95ID:Q9izUd83
ブロックに使うインスタンスオブジェクトAに
一定区切りでバラバラにした1枚の画像をsubimageに当てはめておいて
インスタンスオブジェクトA生成→生成したインスタンス群のsubimage変更
みたいな感じでいけると思うが
0282名前は開発中のものです。2011/05/01(日) 17:24:20.44ID:24HhuA0O
>>281
アドバイスdクス
早速やってみる
0283名前は開発中のものです。2011/05/01(日) 19:10:07.81ID:24HhuA0O
>>281
元気良く飛び出したのはいいんだが、早速二行目で詰んだ。
「一定区切りでバラバラにする」って分割画像って奴の事?
0284名前は開発中のものです。2011/05/01(日) 19:26:16.23ID:GZUIxE+L
>>283
そうそれ
1枚の画像をそれで分割して、subimageを何枚も作っておく
あとはメインアクションのChange the spriteでブロックごとにsubimageの画像を変更すればいいだけ
0285名前は開発中のものです。2011/05/01(日) 20:28:48.12ID:24HhuA0O
>>284
アドバイスdクス
一応脱衣ブロック崩しにはなったよww
0286名前は開発中のものです。2011/05/01(日) 20:36:04.77ID:v4vaMhb8
ブロックの座標に合わせてdraw_sprite_partしたら分割する手間が省けるかなと思ったり
楽をするための仕組づくりに手間かけるのもプログラミングの醍醐味よ
0287名前は開発中のものです。2011/05/01(日) 20:42:32.65ID:24HhuA0O
>>286
それをExcuteCodeの中にぶち込んでどうにかすれば
あの長ったらしいIfのアイコンを並べなくて済むわけですね、わかります

今度は同じ物をGMLで作ってみるよ
0288名前は開発中のものです。2011/05/01(日) 23:14:11.68ID:U7TmMKRc
頑張れ、風邪ひく前に頼むよ
0289名前は開発中のものです。2011/05/02(月) 00:16:28.55ID:D5lQKg2j
>>288
ゴメン…画像は勝手にパクってる奴だからうpるの無理
パンツ穿いてこい

ヘルプやら>>257やら見てたら何とかGMLで出来たよ。
何とかやれそうだ、おまいらありがとう。

で、日本の非公式だとかwikiは現在では忘れられてる状態?
長らく更新されてないけど
0290名前は開発中のものです。2011/05/02(月) 02:04:01.93ID:UL0eJI8Q
>289
Wikiは更新されてない箇所多いけどある程度役には立つから見て損はないよ
日本非公式はわかりづらいし、イベントのことまで書いてあるからどうだろうなあ
役に立つのはmbtext関連かな。
公式フォーラムを翻訳しながら眺めてるだけでも割と有意義だと思う
0291名前は開発中のものです。2011/05/02(月) 18:11:25.40ID:D5lQKg2j
>>290
そーなのかー
教えてくれてdクス

そろそろレスしすぎかと思うんで
自重して一人で修行の旅に出てくるよ。
わかんないことあったらまた聞くかもしれんが、
よろしくお願いします
0292名前は開発中のものです。2011/05/02(月) 18:12:41.36ID:gIJtv+AV
訊く前にまずバックアップ取ってから試すのを忘れるな
0293名前は開発中のものです。2011/05/02(月) 21:13:01.66ID:ai/+YG7h
初心者ですみません、どうしてもわからなかったので質問させてください。
もしも気に障ったならスルーしてもらって構いません。
現在GML無しで横スクロール型のアクションゲームを作っているのですが、ジャンプした後や、高い所から落下した時に落下モーションを取ろうと思っています。
ジャンプして上昇中に上昇モーションを取ることはできるのですが、落下モーションに移行させるコツがわかりません。
何卒ご指導いただけるとありがたいです。
0294名前は開発中のものです。2011/05/02(月) 21:35:41.85ID:gIJtv+AV
上昇時と落下時のspeedの違いでモーションを変えればいいだけ
負の値ならモーションAに正の値ならモーションBに
0295名前は開発中のものです。2011/05/02(月) 21:47:52.17ID:ai/+YG7h
>>294
なるほど!
わざわざ回答頂き、ありがとうございました。
0296名前は開発中のものです。2011/05/02(月) 23:07:06.15ID:n75L3pQw
マルチプレイの方法について質問です
日本語版ヘルプを読んだのですが

親側
mplay_init_tcpip(mplay_ipaddress())
mplay_session_mode(true)
mplay_session_create(sesname,playnumb,playername)

子側
mplay_session_join(numb,playername)

こんな感じのを適当なオブジェクトにでも入れれば接続出来るのでしょうか?
接続されたとして互いのデータはどのように共有されるのでしょうか?
mplay_data_writeで変数?の共有は出来るのでしょうか、
しかしルーム、オブジェクト、操作、など普通のゲームと同じ様に作っては複数人でのプレイはとても出来るように思えません
非常に単純な通信だけでも作ってみたいのですが、もし良ければご教授願いたいです。よろしくお願いします
0297名前は開発中のものです。2011/05/03(火) 01:36:42.32ID:/zL0KSIx
専門外だが何度も呼び出すようなモノでもないんだろうし、user_definedイベントとかに入れちゃって接続する時とかホストを立てるときに呼び出せば楽そうだね
変数の共有だけど1,000,000の共有領域があるって書いてある。
番号を指定してやれば「親側の指定番号に含まれる内容を共有」することになる、という印象

単純な通信なら、インスタンスAを親側で動かして、子側で同じインスタンスAが動くか試してみるとか
親側のルーム移動で子側も移動されるのかとか、これは通常じゃ多分されないけど。
mplay関数が結構多いから眺めてても楽しいね 今度何か作ってみよう
0298名前は開発中のものです。2011/05/03(火) 08:30:07.55ID:Lm+aiDTQ
共有領域にルーム情報とかがあれば、それを各々の固体のオブジェクトが参照して色々とできるんじゃない?
固体Aが動く→共有領域の情報に差異があれば→共有領域に位置情報格納→描画前に各々の固体で情報更新

マルチプレイなんて触ったこともないし、ヘルプ見て思ったことを書いただけだけど
0299名前は開発中のものです。2011/05/03(火) 11:04:50.01ID:gTNZKyvs
スレがやけに伸びていると思ったら質問ばかりか
と思ったらエロいブロック崩しか


いいぞもっとやれ
0300名前は開発中のものです。2011/05/04(水) 13:42:26.84ID:4/6+Iz6C
マルチプレイでエロいブロック崩しとか胸が熱くなるな・・・
0301名前は開発中のものです。2011/05/05(木) 01:03:13.97ID:MgqdZdKE
負けると1枚着せられるのか
オチオチ抜いてる暇もない

こんな糞下らない発想を素人でも容易くゲーム化出来るのは最高の旨み。マルチプレイは訳分からんけど
こんな感じのツールでコンシューマー用のゲームが作れればゲーム業界は活発になるだろうし斬新な作品も沢山出そうだ
何より素人がコンシューマーゲーム開発出来るなんて夢みたいな話じゃないの
0302名前は開発中のものです。2011/05/05(木) 01:09:17.48ID:JBnJO6ov
まぁあるけどな。ロイヤリティが高かったりと色々問題がある。

日本は特に鎖国文化だから技術共有はしたがらないし、ブランド力を大切にするから自社開発エンジンとか作っちゃう大手が多いよね
結局作ってもハードがポンポン出るからそれにも追いつかないといけないわけだし 問題は多いみたいね

このあたりでもどうぞ
ttp://ja.wikipedia.org/wiki/%E3%82%B2%E3%83%BC%E3%83%A0%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%B3#.E4.B8.BB.E3.81.AA.E3.82.B2.E3.83.BC.E3.83.A0.E3.82.A8.E3.83.B3.E3.82.B8.E3.83.B3
0303名前は開発中のものです。2011/05/05(木) 09:45:30.25ID:1FhwUPBo
負ける・・・?ナニを言っているんだ
協力してブロックを崩すに決まっているだろう

ゲーセンであったような
壁からの自機移動範囲を四角で囲んで
切り取っていくと裏の絵が表示されるタイプのゲームのがマルチにはよさそうだけどな
0304名前は開発中のものです。2011/05/05(木) 11:51:18.22ID:dzP8cXHV
クイックスか
0305名前は開発中のものです。2011/05/05(木) 12:52:19.10ID:2lG465FO
ギャルズパニックじゃねーのか?
0306名前は開発中のものです。2011/05/05(木) 14:00:01.13ID:WPSiIO8D
お前ら詳しいなw
もう作っちゃえよ

マルチプレイ用のDLLならフォーラムで公開されてた気がする
0307名前は開発中のものです。2011/05/07(土) 11:53:33.37ID:icn1PkuP
>>302
MMDとかがそうだけど、ネットでの集団製作文化みたいなのができると今後面白くなると思うだよなー
0308名前は開発中のものです。2011/05/08(日) 02:42:21.59ID:wBtB3c8Q
たしかにGM単体でもいいから大きなコミュニティがほしいとは日々思う
公式フォーラムがまさにそんな雰囲気だけど日本にない・・・共有する感覚が少ないし、著作権の主張が強いからな
0309名前は開発中のものです。2011/05/08(日) 13:29:47.01ID:zV8xakJA
描画した図形を回転させるのはPROじゃないと無理なのでしょうか?
0310名前は開発中のものです。2011/05/08(日) 18:43:24.87ID:CZaxrsDW
>>308
pro版クレカ必須、日本語使いにくいで新規の人が入りづらい
使い慣れた人には折々のアップグレードは話題にするような追加機能がないってことで
結局人もネタもそれほどないんだよ
非公式フォーラムが廃れたのは惜しい反面しょうがないとも思う

>>309
お勧めしないけれど、最新lite 8.1 は回転できる
それ以外は回転画像を用意する必要があり
0311名前は開発中のものです。2011/05/08(日) 18:44:17.76ID:A0zRpvOC
8.1Liteは広告が異常に多いとか聞いて触ってもいないわ
0312名前は開発中のものです。2011/05/09(月) 13:09:59.63ID:cjimXQQf
GMで敷居が高いって事はないと思うけど、まぁ色々あんだろね

>309は描画した「図形」の回転だよね スプライトじゃないんなら出来るんじゃないかな。
まぁ面倒だけど、計算させるとか
0313名前は開発中のものです。2011/05/10(火) 20:34:03.75ID:Xl95nJbq
スプライトのアニメーションが、EditSpriteのSpeedもRoomのSpeedも同じ30なのに、実際にプレイすると本来より早く動くのですが、これはどう修正すればいいですか・・・?
0314名前は開発中のものです。2011/05/10(火) 21:03:12.31ID:T8uqKylv
EditSpriteの方のSpeedはあくまでプレビューだから関係ないと思う。
どっかでimage_speedをいじって1以上とかにしてるオチじゃないの?
image_speed = 1で早いと感じるなら0.2とか0.3とか
0315名前は開発中のものです。2011/05/10(火) 21:27:12.48ID:Xl95nJbq
>>314
回答いただき、ありがとうございます。
EditSpriteとRoomのSpeedが同じでもプレビューの速度が実際に一致するとは限らないのですか。そういうもんなのですね。
左右移動時にアニメーションを左右使い分けているのですが、どうも挙動がおかしいのです。
アニメーションの変更は、別途歩行アニメーションのオブジェクトを用意してChange instanceを利用しています。
通常時は普通に動作してくれるのですが、特定の条件でインスタンスの親を変更させた後(プレイヤーキャラの変身で見た目と挙動を変えるためです。)、
移動アクションのコマンドを通常時とまるまる同じにしたのに、今度はアニメーションの最初の数コマまでしか表示されずにまた一コマから動くという妙な動きしかしないのです。
コマンドが同じなのに異なった挙動を取るので、もうさっぱりです・・・・。
わかりづらい内容でごめんなさい・・・。説明しづらいので、もしも回答しにくかったら、スルーしてください;
0316名前は開発中のものです。2011/05/10(火) 21:43:52.91ID:T8uqKylv
個人的で悪いんだけど、アニメーション如きでインスタンスを消したり生成したりするのはお勧めしない。
アニメーションを切り替えるだけならsprite_indexでスプライトの指定を変えた方が遥かに楽だしバグを回避できる。

アニメーションについてはバグなのか仕様なのかわからないけど、スプライトのサブイメージ数がチェンジする前のインスタンスのものを引き継いでるとかそんな香りがする
よくわからんけど
0317名前は開発中のものです。2011/05/10(火) 21:50:01.83ID:Xl95nJbq
>>316
こんな説明に、丁寧に回答いただき、重ね重ねありがとうございます。
まさしくおっしゃる通り、サブイメージ数を引き継いでました。親の枚数を増やしたら通常通り動きました!
本当に感謝いたします。
実はまだGMを触って2週間程の初心者でして、スレ汚し大変失礼しました。
sprite_indexですか。ちょっとわからないので調べてみます。
0318名前は開発中のものです。2011/05/10(火) 21:50:53.80ID:Mg3KGJhG
subimageの切り替えをimage_speedじゃなくて変数を用いて使えば
A状態だとsubimageの0-6を使用、B状態だと7-12を使用みたいな感じにもできる
まぁ>>316のやり方が楽だと思う
0319名前は開発中のものです。2011/05/10(火) 21:57:47.26ID:T8uqKylv
>318
なるほど 1個のスプライトで全部のアニメーションをカバーするのか
管理がダルいけどありな方法だなぁ

>317
sprite_indexはそのオブジェクトが指定しているスプライトIDだよ
ヘルプ読め ttp://www.geocities.jp/hogehige2005/
0320名前は開発中のものです。2011/05/10(火) 22:47:22.72ID:Xl95nJbq
>>319
なるほど、sprite_indexの意味がちょっとわかりました。
こっちの方が管理が楽そうですね。
ちょっと工事してきます。
回答いただけた方、本当にありがとうございました。
0321名前は開発中のものです。2011/05/10(火) 23:34:40.50ID:PCGaliPA
>>316
instance_changeすると、オブジェクトのプロパティで設定できる項目
(depthとかvisibleとか)は新しいオブジェクトのデフォルト値に置き換わる。
それ以外の変数は、チェンジ前のものがそのまま引き継がれるというルールっぽいです。

というわけで
sprite_index は新しいものに変わるが
image_index, image_speed は今の値をそのまま引き継ぐ。
インスタンスの変更を使うなら、これらの変数は
createイベントあたりで初期化しておくのが無難。
0322名前は開発中のものです。2011/05/15(日) 16:44:15.62ID:N6qdRXUq
アンドゥ機能って無いんですか?
0323名前は開発中のものです。2011/05/16(月) 01:01:44.11ID:vRUdEGoj
>322
アンドゥは個別にあるだろ アイコンまであるのに。
何に対して言ってるのかまったくわからん
0324名前は開発中のものです。2011/05/16(月) 10:11:31.38ID:lDJNj9Lq
アンドゥトロワ
0325名前は開発中のものです。2011/05/16(月) 20:25:59.31ID:ytgKQB8D
プレイヤーを左(もしくは右)の方に置いた状態で横スクロールするために

//プレイヤーが右向きならglobal.muki=1
if(global.muki == 1) x = 120 + obj_player.x;
else x = -100 + obj_player.x;
y = obj_player.y;

というコードをstepで実行するオブジェクトを作って一応うまくいったのですが
なんだかスクロールが微妙になめらかじゃない感じがします
原因わかる方、ご教示してくださると幸いです
気のせいだったらすみません

room設定は
width 960
Height 480
View in room X 0 Y 0 W 480 H 320
Port on screen 同上
Hbor 240 Hsp 9
Vbor 160 Vsp -1
としています
0326名前は開発中のものです。2011/05/16(月) 20:56:02.31ID:CFVi0QEm
どういう状態かよくわからない
プレイヤーオブジェクトの向きによって、見える視界範囲をスクロールする?
それとも強制スクロールでプレイヤーオブジェクトを画面外に出ないようにする?
0327名前は開発中のものです。2011/05/16(月) 21:08:15.11ID:ytgKQB8D
すみません

目指しているのは、マリオのような通常横スクロールで、プレイヤーが画面の真ん中より進行方向逆側をキープしつつの
スクロールです
進行方向(プレイヤーオブジェクトの向いてる方向)の画面を多く見せたいのです
プレイヤーが逆方向を向いたときは、向いたがわの画面を多く見せたいのです


○をプレイヤーとすると、
右向きの時はこんな感じで、プレイヤは画面上はその位置をキープして


  ○
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

左向きの時は、実際の位置は変えずに、こういう感じにするのを目指しています


                         ○
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

う〜む…なんかうまく説明できません
申し訳ない
0328名前は開発中のものです。2011/05/16(月) 21:10:34.71ID:ytgKQB8D
>>326
>>プレイヤーオブジェクトの向きによって、見える視界範囲をスクロールする?
すみません。見逃していました
たぶん仰る通りのことを目指しています
0329名前は開発中のものです。2011/05/16(月) 21:58:08.71ID:CFVi0QEm
たぶん透明のオブジェクトを作って
viewはそれを追従するようにしてるんだと思うけど
それならHspの値を変更すれば追従速度が変わるんじゃないかな
少数点とかの細かい値は指定できなかったと思う
0330名前は開発中のものです。2011/05/16(月) 22:00:28.57ID:sywNYm8h
Step じゃなくて End step に置くっていうのはやってみた?
0331名前は開発中のものです。2011/05/16(月) 22:17:00.33ID:ytgKQB8D
ご教示ありがとうございます
End stepに置いたら上手くいきました!
原因は実行の順番にあったのかな

>>329
ずばりその通りにしています
原因は透明のオブジェクトの方にあるようでした
ありがとうございました〜

>>330
イマイチStep系統の使い勝手を分かっていませんでしたが、ちょっとわかったような気がします
ありがとうございました〜
0332名前は開発中のものです。2011/05/17(火) 07:32:08.70ID:73LY8Wv3
皆は外部ファイル(セーブデータやミッションデータなど)はどうしてる?
自分はミッションクリア式のゲーム(例えばイキキ様のはかいマン)を作っているけれども、外部ファイルをどんな風に扱えば良いのかなと

携帯からすまん
0333名前は開発中のものです。2011/05/17(火) 11:17:17.96ID:VvMqXX45
どうしてるってどういう意味?
セーブデータならexeと同じフォルダに適当なフォルダ作ってその中に入れてるな
暗号化したければお好みで
0334名前は開発中のものです。2011/05/17(火) 13:46:18.19ID:i8OzSkbD
exeのあるフォルダにsaveフォルダ作って暗号化して放り込んでる
03353322011/05/17(火) 16:56:20.38ID:73LY8Wv3
>>333,>>334
ありがとうございます。
暗号化ですか…調べてみます
0336名前は開発中のものです。2011/05/19(木) 03:23:58.02ID:7W9fWkhX
スプライトを読み込むとメモリ上ではbmpになるけど、メモリ上でもpngのまま扱う方法ってないのかな?
連番画像を読み込んだ時のメモリ使用量が辛くなってきた
ちょっとdllの作り方調べるくらいじゃ判断がつかない
0337名前は開発中のものです。2011/05/19(木) 03:24:59.59ID:7W9fWkhX
ごめん、上のはpngを読み込むならpngのまま、gifを読み込むのならgifのままってことね
0338名前は開発中のものです。2011/05/19(木) 03:56:58.93ID:+PTB5Jtq
ファイル形式のままメモリ上で保持するっていうのはない
読み込む画像データを少なくする手段を考えるほうが手っ取り早いはず
シーン毎に必要な画像だけ裏で読み込んでいらん画像は破棄するとか
0339名前は開発中のものです。2011/05/21(土) 00:19:10.49ID:FrjLYHtD
8.1になってから半角カナ使えなくなった?
0340名前は開発中のものです。2011/05/22(日) 02:23:55.82ID:DGEjNdCf
突然すみません、質問させてください。
アニメーションgifの特定のsubimageの時にwaveを鳴らすって処理はできますか?
例えばアニメーションの4番目と8番目が拳を振り下ろすシーンで、その時に打撃音を鳴らすといった事は可能でしょうか?
素人の質問で恐縮です。
もしよろしければ回答頂けるとありがたく思います。
0341名前は開発中のものです。2011/05/22(日) 12:22:40.30ID:Q11em/4c
俺のやり方

効果音が鳴ったかどうかの変数を作っておき、image_indexが3以上になったら変数をtrueにして効果音を鳴らす

if image_index < 3
{
se_flag = 0;
}
else if image_index >= 3 && se_flag == 0
{
sound_play(効果音);
se_flag = 1;
}
0342名前は開発中のものです。2011/05/22(日) 12:25:46.90ID:Q11em/4c
あ、8番目も鳴らすのか、ならこうかな

if image_index < 3
{
se_flag = 0;
}
else if image_index >= 3 && se_flag == 0
{
sound_play(効果音);
se_flag = 1;
}
else if image_index >= 7 && se_flag == 1
{
sound_play(効果音);
se_flag = 2;
}
0343名前は開発中のものです。2011/05/22(日) 13:15:26.08ID:UUQ6TMbs
他にも効果音を鳴らす行動があるなら、配列とかも作ってどこで鳴らすかとかもやるといいかもね

a[0] = 2;//鳴らす箇所の数
a[1] = 3;//鳴らすimage_indexその1
a[2] = 7;//鳴らすimage_indexその2
sound_ids = 効果音1

if(!sound_isplaying(効果音1)){//効果音1が再生中では無いなら
for(i=1;i==a[0];i+=1){
if(image_index==a[i]){//image_indexがa[1~a[0]]の値ならば
sound_play(効果音1);//効果音を鳴らす
}
}
}
0344名前は開発中のものです。2011/05/22(日) 13:17:04.98ID:UUQ6TMbs
ありゃ、修正ミスだ
たぶんこれで大丈夫なはず

a[0] = 2;//鳴らす箇所の数
a[1] = 3;//鳴らすimage_indexその1
a[2] = 7;//鳴らすimage_indexその2
sound_ids = 効果音1

if(!sound_isplaying(sound_ids)){//sound_idsが再生中では無いなら
for(i=1;i==a[0];i+=1){
if(image_index==a[i]){//image_indexがa[1~a[0]]の値ならば
sound_play(sound_ids);//sound_idsを鳴らす
}
}
}
0345名前は開発中のものです。2011/05/22(日) 23:48:09.68ID:DGEjNdCf
>>341-344
回答ありがとうございます!
おかげで出来ました。ありがとうございました!
0346名前は開発中のものです。2011/05/23(月) 15:59:21.06ID:AtLcnK/y
延々と右にスクロールするボスステージを作りたいのですがステージをループさせるのは可能なのでしょうか?
またボスが登場するときなどに画面を揺らす効果を付けたいのですがよくわからないので教えていただけないでしょうか?
なんとなくviewに関係ある関数を使うのだとは思うのですが・・・
0347名前は開発中のものです。2011/05/24(火) 08:00:36.19ID:TE7zmycQ
ループの方法はいくつか思いつくけど全部力技だからもっと賢い人のレスに任せた

画面を揺らすのはviewで合ってるよ
view_*portとview_*viewの区別が最初はつき辛いから注意

簡単に言うなら、view_*viewがビデオカメラのレンズで
view_*portはビデオで撮った内容を映写するためのプロジェクターだと思えばいい

view_enabled = true; //view機能をONにする
view_visible[0] = true; //0番目のviewを使う

//まずはカメラで撮りたい場所を決める
view_xview[0] = 0; //ルーム内の座標x=0と
view_yview[0] = 0; //座標y=0から
view_wview[0] = 640; //幅640pixel
view_hview[0] = 480; //高さ480pixelの範囲をカメラで映す

//撮った内容をスクリーンのどこに映写するか決める
view_xport[0] = 0; //座標x=0と
view_yport[0] = 0; //座標y=0から
view_wport[0] = 320; //幅320pixel
view_hport[0] = 240; //高さ240pixelの範囲に映写する
■ このスレッドは過去ログ倉庫に格納されています