【2D】ゲーム作成ツールGameMaker part3【マンセー】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/05/11(日) 01:41:47ID:PRhlwPyW●本家(英語)
ttp://www.gamemaker.nl/
●GameMaker Japan - 非公式情報サイト(日本語)
ttp://gamemaker.main.jp/
●初心者向けチュートリアル
ttp://gamemaker.main.jp/modules/articles/index.php?cat_id=1
前スレ: 【2D】ゲーム作成ツールGameMaker【マンセー】
http://pc8.2ch.net/test/read.cgi/gamedev/1087068523/
0281名前は開発中のものです。
2008/09/15(月) 12:50:01ID:jDWWXeXPやっと意味が分かった
見当違いのレスすまんです
GM7になっても直ってないということは日本語環境に特有のバグかもしれないね
>>280
if(y < room_height/2)
{
// ルームの上半分にいる時の処理
}
より厳密に判定したいなら↓このあたりを参考に
sprite_height スプライトの縦幅
room_height ルーム全体の縦幅
view_height ビュー全体の縦幅
0282名前は開発中のものです。
2008/09/15(月) 14:15:05ID:Z9WHzemZフォントの問題は、フォントリンク機能(windows2000以降に搭載?)を使って
欧文のみのフォントに日本語のフォントを含めることによって解決できました。
Windows システム内部のレジストリをいじることになるので、
必ずレジストリのバックアップをとってください。バックアップから自力で元の環境に戻せる力量のある方のみ推奨です。
また、フォントリンク機能についてよく調べてから行ってください。
(自分も調べたてでよく分かっていません、よって、もっとよい方法があるかもしれません)
starcraftフォントを例にとって、やり方を説明します。
(自分の環境はWindowsXP SP2です。 GMは7.0で確認しました)
1. starcraft フォントをインストールする。
2. レジストリエディタ(regedit.exe)を起動して、
[\\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink]
に、複数行文字列値を新規作成し、以下のように入力する。
値の名前:
Starcraft
値のデータ:
Starcraft Normal.ttf,Starcraft normal
MSGOTHIC.TTC,MS UI Gothic
3. Windowsを再起動させる。
すると、GM で font リソースの追加 で Starcraft を選択すると、
プレビューの時点で反映されるのが確認できるかと思います。
テキスト表示させるオブジェクトを配置してゲームを実行させても反映されました。
また、ゲームをexeで吐き出せばフォントリンクさせていない環境でも反映されるので、
exeで配布する分には問題ないと思います。
0283名前は開発中のものです。
2008/09/15(月) 15:26:51ID:tvN7d6yWそれは自分の環境以外でも正常に動作するのでしょうか。
(他人のレジストリを弄らせるわけにはいかない)>>534
0284282
2008/09/15(月) 16:44:01ID:E4MKDW7Wそして、ゲームをソースの状態で配布する場合、
相手側もレジストリを変更しなければ反映されません。
ですが、実行形式で配布する場合は、実行ファイル自体にフォントが埋め込まれるため、
環境を変える必要はありません。
自分の環境で、フォントリンクさせた環境で作った実行ファイルを
フォントリンクを解除した環境で実行しても、フォントが正常表示されたので、
自分の中では、そう結論付けてます。
0285名前は開発中のものです。
2008/09/16(火) 14:10:35ID:JDKv6UBR内容は……
・GM7使用
・出来るアクションは棒人間が左右に移動、Zでジャンプ
・棒人間は停止、移動、ジャンプ上昇、ジャンプ下降のアニメが左右ある
・下に地面がある時に、左右キーを押すと左右歩きアニメ
・下に地面がある時に、左右キーを離すと左右停止アニメ
・vspeed-10(ジャンプの初速)で上昇、vspeed0.5(落下の初速)で下降アニメ
このまま試したら、ジャンプから着地したときに下降アニメのままだったので
地面に触れたら停止アニメに変わるよう設定をしました。
完成した!と思ったら、今度は左右押したまま着地(着地後そのまま横移動)をしたら、
停止アニメのまま移動する問題が発生…
ならば、着地時に左右キーを押しているか押してないかで分岐させればいいのでは?と考え
if an expression keyboard_check(ord'right')is true
↑これを地面との衝突イベントに左右分組んでみたのですが
うまく作動しませんでした…。
何か良い解決策はないでしょうか?
すごく初歩的なことかもしれませんがアドバイスをお願いします。
0286名前は開発中のものです。
2008/09/16(火) 18:38:05ID:2x1IGPqIアクションゲームでは定番の話題だけど方法が色々あるから具体的に答えにくいな
「こうしたら解決」というアドバイスは難しい話題だけど勘で答えてみる
意外と気づきにくいのは衝突イベントの発生タイミング
×ぶつかった瞬間に1回だけ発生する
○触れてる間は常に(毎フレーム)発生する
つまり地面に立ってる時は常に衝突イベントが発生してる
例えば、
衝突イベントに停止アニメを強制するアクションを書いてしまうと
左右への歩行アニメは発生しない
(地面に立ってる=常に衝突イベント発生=常に停止アニメ)
解決策は色々あるけど一例を
地上にいる/空中にいる、などキャラクターの状態を変数で表しておく
1.「空中」から着地したら停止アニメ発動&状態を「地上」にする
2.ジャンプしたら「地上」から「空中」に入れ替える
3.「地上」にいる状態で地面と衝突しても停止アニメは発動しない
何かの参考になれば幸い
0287名前は開発中のものです。
2008/09/16(火) 18:59:33ID:wc/bCpqZ衝突イベント使わずにステップイベント使ったら??
もしy+1に床オブジェクトがあったらvspeedを0にして
もしvspeedが0だったら停止アニメするとか…
0288285
2008/09/16(火) 20:41:11ID:JDKv6UBR>>287様
早速ステップイベントで試してみたところ、ステップごとに常に
足下をチェックするため、地上にいるときは停止アニメのみに
なってしまいました。
>>286様
ステップイベントで足下をチェックして、地面がある時は重力が0になるようにしています。
たぶん、これで衝突イベントの連続発生は回避できていると思います。
地上→垂直ジャンプまたは、ジャンプ後左右キーを離す→着地
この場合は地上で停止アニメになります。
その後左右キーを押せば問題なく移動アニメになります。
地上→ジャンプ→左右キーを押したまま着地して移動
この場合は、着地後に停止アニメのまま左右に移動します。
一度左右キーを離し、再度押すと移動アニメに変化します。
地面衝突よりも左右キーを押した時に移動アニメに変化するのが問題…?
う〜〜ん…変数を使ってもう少し試行錯誤してみます。
0289267
2008/09/17(水) 01:00:40ID:fciLO00k複数あるオブジェクトの中で1つだけを消すことって出来ますか?
option[count] = instance_create(x, y, obj_option);
count += 1;
の逆でcountを1減らして
countが最後のやつを消そうと思ったのですが
他のオブジェクトから他のオブジェクトをCreateできても
廃棄はできないのですか?
ヘルプを見てもそれらしきものは見つかりませんでした。
0290名前は開発中のものです。
2008/09/17(水) 01:28:48ID:+iHp1HAAインスタンスを消すための関数はinstance_destroy()。
ただこいつは「自分自身を消す」関数なので、GMではちょっとトリッキーですが
with文を使って「消したいインスタンスに関数を実行させる」必要があります。
with (option[番号]) { instance_destroy(); }
0291267
2008/09/17(水) 06:27:15ID:fciLO00k早速やってみます。
0292名前は開発中のものです。
2008/09/17(水) 16:50:11ID:3ZsvlK2wこれはどういう意味でしょうか??
0293267
2008/09/17(水) 18:36:14ID:fciLO00k色々と設定を変えながらやってみたのですが
自分ではどうしてもエラーを無くす方法がわかりませんでした
http://www1.axfc.net/uploader/File/so/11187.ttf
現物をupしました。どなたか教えていただけませんか?
0294名前は開発中のものです。
2008/09/17(水) 18:47:37ID:+iHp1HAAそれは != と同じで「等しくない」という演算子。
ちなみにGMのマニュアルに載っているのはC風の文法ですが、
歴史的な経緯からPascalライクの文法も一部受け付けるようになっています。
<> は != のPascal版。似たようなマニュアルに載っていないお仲間には
and(&&), or(||), not(!), then なんてのがあります。
>>293
できればエラーメッセージは正確に書いてほしいな。
「array index out of bounds」(配列のインデックスが範囲外)
ってのがこの場合の問題。
たとえばオプションの数が3つ(count=3)の時、配列の要素は
option[0], option[1], option[2] の3つ。したがって最後のオプションは
option[count] ではなくて option[count - 1] です。
0295267
2008/09/17(水) 20:35:59ID:fciLO00kそしてすいませんorのあとを書き忘れてました。
0296292
2008/09/17(水) 21:25:35ID:3ZsvlK2wありがとうございます
そんな演算子があったなんて驚きです
0297名前は開発中のものです。
2008/09/25(木) 18:58:23ID:ePV3MaT70298名前は開発中のものです。
2008/09/25(木) 19:20:38ID:g090BAj9もっとシンプルなものから……と思ってゼルダ風に挑戦中
何か1つ完成させたいな〜…
0299名前は開発中のものです。
2008/09/25(木) 20:51:49ID:dGYbhKuz下らないアイデアでも作ってみようかって気になれる
FLASHゲーのようなシンプルで即効性があって馬鹿っぽいものが作りやすい(モチベ的な意味で)
今作ってるのはダウンタウン熱血行進曲のパクリ
全24人(CPU操作)を同時に出して殴り合いのカオスを眺めてるだけのゲーム?らしきもの
某FPSのBOT戦を眺めてるときに思いついた
無理矢理どこかのジャンルに分類すればライフゲームの一種になるんだろうか
ゲームの目的と遺伝的アルゴリズム的な何かを加えたら少しはゲームになるかもしれない
しかしゲームにしようと思うと自ずと既存の何かに似てくるから困る
0300名前は開発中のものです。
2008/09/25(木) 23:26:48ID:q3MsUpLj課金版欲しいなぁ
0301名前は開発中のものです。
2008/09/26(金) 03:12:23ID:sE3W1GIEやらなくていいと思うよ
いずれGameMakerを離れて自作するときに面倒になる
0302名前は開発中のものです。
2008/09/28(日) 18:10:00ID:LS/ACw4Rview機能によって表示されている画面の左上の座標を返す関数があったとおもうんだけど
誰か覚えてない?
HPゲージの表示場所に使うんだ
0303名前は開発中のものです。
2008/09/28(日) 20:13:19ID:uhIOXa5a5と6以降で名前が違うから気をつけるんだ
0304名前は開発中のものです。
2008/09/28(日) 21:17:06ID:LS/ACw4Rありがとう。すごく助かった
0305名前は開発中のものです。
2008/09/29(月) 18:56:28ID:UJys+BvP接触中は↑キーでy方向に-32移動出来る様にして、接触中のジャンプも可能にしたいです。
操作キャラのジャンプ条件はy方向1にソリッドオブジェクトがある時ですが、
この条件に当てはめなくてもソリッドオブジェクト上にいる時と同じ様にジャンプ出来れば良いです。
よろしくお願いします。
0306名前は開発中のものです。
2008/09/29(月) 21:40:35ID:TA0YzXK0D&D使ってるなら「If thre is an object」アクション、GMLならplace_meetingでチェックできる。
0307名前は開発中のものです。
2008/09/29(月) 23:26:55ID:UJys+BvPありがとうございます。
こんな便利なアクションがあったのですね。
お陰で触れてる間に↑キーで梯子を上る事も出来ました。
ですが上った後に静止する方法が分かりません。キャラに重力を設定してあるので落ちていってしまいます。
重力を設定したキャラを空中で静止させるにはどうすれば良いのでしょうか?
何度も質問すみません。よろしくお願いします。
0308名前は開発中のものです。
2008/09/30(火) 00:47:31ID:YIigZYPbチュートリアルを参考にして作ってるならおそらく
Stepイベントの中に「足下がfreeでなければ重力を0にする」
という処理があるはずなので、そこにも下に梯子があるという
条件を追加すればいいかな。
0309名前は開発中のものです。
2008/09/30(火) 10:28:05ID:gaxEls3Hありがとうございます。
その通りにやったのですが問題がありまして・・・。
歩いて接触し、↑キーで上れば空中で静止する事が可能になったのですが
ジャンプしながら接触したり、落ちながら接触すると止まりません。
http://www1.axfc.net/uploader/He/so/143051.zip&key=gm6
こんな感じです。何処か間違ってましたでしょうか?
0310名前は開発中のものです。
2008/10/01(水) 21:47:12ID:Fc7yZooq触れたら止まるって仕様だと、接触中でもジャンプできるって仕様と
食い合わせが悪い気がするけどな。
0311名前は開発中のものです。
2008/10/01(水) 23:12:59ID:1MeHwIPfありがとうございます。
見事に梯子っぽくなりました。が、やはりジャンプは出来ないようです。
0312名前は開発中のものです。
2008/10/01(水) 23:35:57ID:dOI1qd/B梯子を昇っているかの処理を初めの方にやって、フラグで処理するようにやりなおしてみたら?
毎step時に梯子に接触してるか?
触れている 梯子フラグA = 1(ON)
→ 触れていない 梯子フラグA = 1(ON)
梯子の所で上キーを押した
→ 梯子フラグB=1(ON)
梯子フラグON時 → 重力・vspeed 0 にし、上下ボタンは上下移動(vspeed 10とか)に設定
0313名前は開発中のものです。
2008/10/01(水) 23:39:24ID:dOI1qd/B毎step時に梯子に接触してるか?
触れている → 梯子フラグA = 1(ON)
触れていない → 梯子フラグA = 0(off)、重力(vspeed=元値)ON
・・・伝わったらいいなこの説明。
0314名前は開発中のものです。
2008/10/02(木) 17:09:40ID:JaYkkaptありがとうございます。
フラグを使って色々やってみたのですがジャンプは出来ても空中で静止出来なかったり
空中で静止出来てもジャンプは出来なかったりとどうも完璧にはなりませんでした。
まだ色々試してみますが、もしよろしければ>>309のサンプルに付け加えて頂ければ幸いです。
0315名前は開発中のものです。
2008/10/03(金) 14:39:18ID:ZrsFoNA50316名前は開発中のものです。
2008/10/03(金) 16:46:41ID:uDeRDVYO0317名前は開発中のものです。
2008/10/05(日) 04:52:05ID:H1cq3pc2BGMをつけるとき、楽曲を自分で用意するとしても、何処からか借りてくるとしても、
そのファイル形式について知りたいのです。midiとかmp3とか。
できれば、そのBGMをどう再生しているのかも知りたいです。
midiなら最初から入ってるsound_playで再生できるけど、oggならbGMスクリプトとか使ったり。
0318名前は開発中のものです。
2008/10/05(日) 13:06:42ID:Fn418VgV0319名前は開発中のものです。
2008/10/05(日) 20:02:29ID:4niTijZC0320名前は開発中のものです。
2008/10/08(水) 15:16:57ID:RDU/YXQBありがとうございました。
参考にさせていただきます。
0321名前は開発中のものです。
2008/10/11(土) 18:30:28ID:J25bobba0322名前は開発中のものです。
2008/10/11(土) 22:42:26ID:VYtC5Q29それは画面を完全黒で塗りつぶすということ?
それとも、半透明の黒(変な表現だな)で暗闇を作りたいってこと?
どっちにしろ、レイヤーを変更して一番前に表示するようにしてみたら?
0323名前は開発中のものです。
2008/10/12(日) 19:20:19ID:0LPSWnKh画面を完全に黒で塗りつぶしたいのです
0324名前は開発中のものです。
2008/10/12(日) 20:59:20ID:WCmVlsh40325名前は開発中のものです。
2008/10/12(日) 23:04:23ID:0LPSWnKhなるほど、ありがとうございます。盲点でした・・・。
0326325
2008/10/12(日) 23:27:26ID:0LPSWnKhdraw_rectangle(x1,y1,x2,y2,false)の座標1(x1,y1)はルームの左上(0?)かと思いますが
座標2(x2,y2)はどう指定すれば良いのか悩んでおります。
(0,0,room_heigh,room_width,false)ではどうも違うようなのです。何が間違っているのでしょうか?
0327名前は開発中のものです。
2008/10/13(月) 01:58:15ID:AHWrAmb7本体のバージョンは?
0328名前は開発中のものです。
2008/10/13(月) 01:59:44ID:KOVLXVwd0329名前は開発中のものです。
2008/10/13(月) 03:38:00ID:RgqatT8r>>328の言うとおり、widthは横、heightは縦。
(ついでにいうとheightのtも抜けてるが)
黒い長方形が一切見られないのなら:
1) drawイベントで実行している?
2) depthを一番小さくしてる?
0330名前は開発中のものです。
2008/10/13(月) 10:30:18ID:v588R7se>>329
ありがとうございます。色々とスペルやら間違っていたようですね。
コリジョンイベントで実行していました。
本当にありがとうございます。
0331名前は開発中のものです。
2008/10/17(金) 21:27:46ID:dQ5aX5kq弾オブジェクトの数の上限を自機と各オプションそれぞれに設けたいと
思っているのですが、どうすればいいのかさっぱり見当がつきません。
どうすれば良いのでしょうか?
0332名前は開発中のものです。
2008/10/17(金) 22:05:41ID:0ROIYotH3発上限ならAが3以下の時だけ発射出来るようにするとか。
0333331
2008/10/18(土) 17:21:01ID:QonRt8Q9instance_number()を使うことしか頭に無かったので助かりました。
ありがとうございます。
0334名前は開発中のものです。
2008/10/23(木) 23:03:49ID:URptRMn40335名前は開発中のものです。
2008/10/25(土) 07:24:32ID:YPdYk3/P以前に誰かが作ったサンプルなどありませんでしょうか?
0336名前は開発中のものです。
2008/10/29(水) 07:41:16ID:B8z2rdZkどうすれば良いのでしょう?
普通に戻ってしまうとroom1の最初の状態に戻ってしまいます。
よろしくお願いします。
0337名前は開発中のものです。
2008/10/29(水) 08:29:55ID:vZOkTfmY0338名前は開発中のものです。
2008/10/29(水) 12:12:52ID:SJ76vo7y原因は不明だけど突然GameMaker製のゲームだけ、やたら重くなるという現象が起きました(バージョンは5.3、6で確認)
他のゲームやアプリケーションは何も問題なかったのですが、GameMaker製のゲームにだけ異常が起こります。
60fpsのゲームが常に40fps以下になったり。
再起動で治りました。
0339名前は開発中のものです。
2008/10/29(水) 21:20:06ID:Jov+JTxtShow the origin and &bounding box in the sprite image
&Run games in secure mode, not executing programs
セキュアモードで実行する, プログラムを実行しない
これらの訳を手伝ってほしい
0340名前は開発中のものです。
2008/10/29(水) 23:19:05ID:CygkE/Te翻訳作業されてる方かな
英語を訳すというより実際にどうなるのかを日本語で説明した方が初心者には有り難いかも
もちろん訳し方の好みがあると思うのであくまで私の意見ということで
スクリプト編集の際、エディタ下部に関数/変数の候補を表示する
スプライト編集の際、スプライトの原点と当たり判定を示す矩形を表示する
0341名前は開発中のものです。
2008/10/29(水) 23:23:51ID:CygkE/TeもしかしたらGMそのものを日本語化するのが目的なのかな
そうだったらこんな冗長な文面は適さないですよね
ということで私のレスは忘れて下さい
0342名前は開発中のものです。
2008/10/29(水) 23:29:37ID:/+O62xmvということで、GMそのものを日本語化しているという前提でやってみましたしだいです。
>>339
Show &help on function and variable names
関数と変数名の候補を表示する
Show the origin and &bounding box in the sprite image
スプライトのプレビューに基点(origin)と境界枠(bounding box)を表示する
&Run games in secure mode, not executing programs
セキュアモードでゲームを実行し、外部プログラムを実行させない
こんな感じだろうか。
origin (スプライトの原点)や bounding box(当たり判定が実行される領域) の訳は
全体的に統一した方がよいと思う。
0343名前は開発中のものです。
2008/10/30(木) 20:15:39ID:I528xhb9>>342
ありがとうございます。
言われている通りGMそのものを日本語化しております。
E-WordChanger を使っており、その辞書ファイルに記述しています。
ツールチップは1つ試してみましたが、1度成功したと思っていても
次に表示すると日本語されていませんね。
中にはソフトを使ってもclipできない文章もありますね。
そちらも翻訳表示できません。
うまく表示できている人は居られるのでしょうか?
0344名前は開発中のものです。
2008/10/31(金) 18:19:41ID:YzRs5LJ8キャラとか画像が移動すると、ぶれるようなかすれるような感じでぼやけてしまいます。
移動させてもちゃんと写るようにするにはどうしたらいいですか?
room speedは30です。
0345名前は開発中のものです。
2008/10/31(金) 18:27:01ID:YzRs5LJ80346名前は開発中のものです。
2008/10/31(金) 19:54:07ID:oCQp1Dl8原因は色々ありうるけど同じく色々と試してみたと思うので意外な罠を一つ
俺がハマったのはモニタのリフレッシュレート
うちの環境だと60hzなら普通に動くけど75hzだと掠れる
恐らく環境依存だしGMとは関係ない部分だから気づきにくい
0348名前は開発中のものです。
2008/10/31(金) 22:53:49ID:YzRs5LJ8モニタのリフレッシュレートとGMの設定とroom speedをそれぞれ60にしてみたけど、やっぱりブレれぅ・・・
液晶だからかな・・・
そしてUse synchronization avoid tearingって意味がわかんない?
エキサイト翻訳したら「同期が引き裂くのを避ける使用」って出る。
tearingを単体で調べても引き裂くとか猛烈とかな意味がでる。
同期するのを避ける?
0349名前は開発中のものです。
2008/10/31(金) 23:26:30ID:mSkOAagkさすがに俺も液晶よ
上で書いたケースとは別件かな
もし他の方がGMで作った実行ファイルでも同様の症状が出るなら相性かもしれない
ドライバ、グラボ、モニタ、DiretXのバージョンなどなど
0350名前は開発中のものです。
2008/11/01(土) 00:14:21ID:cP7CN4r/avoid tearingで「破綻することを回避する」
tear=破ける,裂ける,破綻する
Use synchronization avoid tearingで「破綻を回避するための同期(シンクロ)を使用する(使用せよ)」または「同期を使用して破綻を回避する」
例文:
Synchronization - Avoiding Frame Tears=フレーム落ちを回避するための同期
0351名前は開発中のものです。
2008/11/01(土) 00:21:55ID:cP7CN4r/「コマ落ち(フレーム落ち)」させるか「処理落ち」させるか、
フレームレート,リフレッシュレートの同期処理に悩みますよね
0352名前は開発中のものです。
2008/11/01(土) 01:01:45ID:7HKnkTOGティアリングというのは、画像が横に動いているときに
画面の途中でちぎれたように上下がずれて見える現象。
それを避けるためにモニタの信号と同期をとるというのが設定の意味。
画像がぶれるというのとは関係ないと思う。
仮にビューを使っている場合、やりようによっては
更新タイミングの違いでぶれて見えることがあるけど
そういうことはない?
0353名前は開発中のものです。
2008/11/01(土) 22:42:10ID:spXHa3/Oブレるというかぼやけるというか、ブラーが掛かるというかにじむというか・・・
左が普通で、右が動かしたときに見える感じ
http://rainbow2.sakuratan.com/img/rainbow2nd43406.png
0354名前は開発中のものです。
2008/11/01(土) 23:05:00ID:8D1Uiuplなるほど
スクリーンショットを撮って見ると輪郭パリパリで綺麗なのに
実際に動いてるのを肉眼で見てるとボヤけて見えるってことかな
モニタの応答速度が遅いのが原因、に1票
0355名前は開発中のものです。
2008/11/02(日) 00:23:31ID:UAtrgN40どうなんでしょう
0356名前は開発中のものです。
2008/11/02(日) 00:46:03ID:q7EnVYah応答速度なのかな・・・
どこで調べたらわかるんだろ。
0357名前は開発中のものです。
2008/11/02(日) 01:10:29ID:q7EnVYah0358名前は開発中のものです。
2008/11/02(日) 07:11:53ID:Uttx017t1)新しくテスト用のゲームを作ってみる
問題が起こる最低限の環境のゲームを作ってみる。
もし問題が起こらなければ、元のゲームのどこかに問題がある。
元のゲームを放置して新しく作り直すもよし、元のゲームの問題点を探すのもよし。
もし問題がまだ起こるのなら↓
2)他の環境で調べてみる。
テスト用でもいいから作ったゲームを公開して、同じ現象が起こるかチェックしてもらう。
それでも問題が起こるのなら、アルゴリズムに問題がある可能性大。
もし問題が起こらないのなら、PCの環境のどこかに問題がある。(相性とか?)
0359名前は開発中のものです。
2008/11/03(月) 11:05:08ID:0rtuC+vp画面の左右と上にはみでないようにするにはどうすればいいでしょうか。5.3です
0360名前は開発中のものです。
2008/11/03(月) 19:13:01ID:HnYJ+ws5if (y>room_height) instance_destroy
で出来るはず
0361名前は開発中のものです。
2008/11/03(月) 20:24:19ID:SR5b1R59勉強したいんだけど、リンク切ればかりで出来ない英語の勉強するほうが先になりそうな予感
0362名前は開発中のものです。
2008/11/03(月) 21:53:58ID:HnYJ+ws50363名前は開発中のものです。
2008/11/03(月) 22:24:41ID:uwgdwITo日本語の資料はあまり多くないね
サンプルなら質も量も本家フォーラムが一番
ttp://gmc.yoyogames.com/lofiversion/index.php/
GMLなら↑のScripts[GML]
多少英語が読めてGMLを理解してる人なら宝の山だと思う
英語が読めなくてもGMLの理解があれば漁ってみる価値はある
かなり話題がそれるけどFlex&ActionScriptのサンプルも結構面白い
ECMAScript系の言語仕様、イベントドリブン、OOP(的である)、と共通点が多い
出来上がるのがFlashだからASに乗り換えるわけにはいかないけど御参考までに。
0364名前は開発中のものです。
2008/11/03(月) 23:43:47ID:SR5b1R59検索中スルーしてたかもなんで、後で、探してみます。
>>363
本家フォーラム倦厭してたけど、チラ見しただけでも大量の投稿で、まさに宝の山っぽいです。
自分は英語あまり読めませんが(;´Д`)
Action Scriptのほうはちょっと気になってたんですが、そっちも後で見てみることにします。
御二方情報ありがとうです
0365名前は開発中のものです。
2008/11/05(水) 14:09:40ID:lQ1u3lWL途中でこれらを切り替えるにはどうしたらいいのでしょうか?
0366名前は開発中のものです。
2008/11/05(水) 22:26:45ID:XjRGW3LYヘルプ見たら「background_○○」って関数が大量にあるので色々できると思うよ
単純に2つの背景を排他的に切り替えるだけなら
background_visible[0] = !background_visible[0];
background_visible[1] = !background_visible[1];
// visible when room starts の設定によって開始時に1つだけ表示させとく
// つまり片方にだけチェックをいれる
ほとんど同じ処理を分かりやすく書くと
if( background_visible[0] )
{
background_visible[0] = false;
background_visible[1] = true;
}
else
{
background_visible[0] = true;
background_visible[1] = false;
}
0367名前は開発中のものです。
2008/11/05(水) 22:31:36ID:XjRGW3LY直接backgroundのインデックスを指定すれば良いみたい
if( background_index == 0 )
background_index = 1;
else
background_index = 0;
0368名前は開発中のものです。
2008/11/05(水) 23:58:10ID:lQ1u3lWL0369名前は開発中のものです。
2008/11/06(木) 00:01:14ID:XjRGW3LYただのサンプルだから書く場所にもよるよ
毎フレーム呼び出したらそういう状態になるかも
例えばglobal mouse left pressedあたりに書けば
マウス押すたびに切り替わるはず
0370名前は開発中のものです。
2008/11/06(木) 00:07:30ID:lQ1u3lWL一応初めからマウスがクリックされた時というところでそれをやっているのですが…
0371名前は開発中のものです。
2008/11/06(木) 00:36:35ID:RiMAKIfyGMLではarray[0]とarrayは同じものを指すから、それは単に
background_index[0] に一番最初に作ったbackground(id=0)と
2番目(id=1)を交互に割り当ててるだけ。
>366の方法が正解。
0372名前は開発中のものです。
2008/11/06(木) 01:04:58ID:eaSEHczR「AがBを追い抜いたとき」と「BがAを追い抜いたとき」で別々に音を流したいのですがどうすればいいのでしょう。
上とは同じ内容で違う質問なんですが
試しにA.xがB.xの値の-1になった時〜などという風にIf a variabels has a valueでやってみましたができませんでした。
これではだめなのでしょうか?
0373名前は開発中のものです。
2008/11/06(木) 07:42:34ID:LwQsPuS+単純に
Aのx座標 < Bのx座標の時は音楽Bを流す、
Aのx座標 > Bのx座標の時は音楽Aを流す。
で良いんじゃないかな?
0374名前は開発中のものです。
2008/11/06(木) 09:00:15ID:5MtmmVSK例えば、
Stepに
difference = Aのx座標 - Bのx座標;
を入れて、
Stepの最後の行かEnd Stepに
prev_difference = difference;
を入れる。
そしてStep内で、
prev_differenceとdifferenceをチェックする。
prev_difference(1フレーム前の差)とdifference(今現在の差)を見たとき、
マイナスからプラスになったり、プラスからマイナスになったりしたときが、
どちらかが追い抜いたとき、となる。どっちがどっちかはすぐわかるはず。
ちなみに2つ目の質問に答えると、ゲームに限らず、プログラムはそこに書かれているとおりに動く。
どういうことかというと、A.xがB.x-1になったときに音を再生する、
つまり、それが例え追い抜いたとしても後ろから近づいただけだとしても、座標軸でBがAの左にちょうど1離れたところにいる瞬間に音を鳴らす、という判定がかなりシビアな表現になる。
0375名前は開発中のものです。
2008/11/06(木) 12:01:46ID:5MtmmVSKCreate eventで、prev_difference = 0;とでも書いておけば大丈夫。
これを書いておかないと、Step内でチェックしようとしたときに「prev_differenceって何なんだ?」というエラーを返されるはず。
0376名前は開発中のものです。
2008/11/07(金) 07:12:26ID:pXoTyMbWxpreviousってのはその名の通り、1フレーム前のxの値。
これを使えば>>374で書いたprev_differenceは要らなくなる。
この場合の使用例としては↓
if (A.xprevious - B.xprevious > 0 && A.x - B.x < 0)
{
// 1フレーム前でBが前(左)だったのが、今のフレームでAが前(左)になった、
// つまりAがBを追い抜いた瞬間
}
else if (A.xprevious - B.xprevious < 0 && A.x - B.x > 0)
{
// 1フレーム前でAが前(左)だったのが、今のフレームでBが前(左)になった、
// つまりBがAを追い抜いた瞬間
}
0377名前は開発中のものです。
2008/11/07(金) 07:28:10ID:pXoTyMbWHelpのUsing Game MakerのEventsにも書いてあるけど、
ゲーム内の全てのアクションは↓の順に実行されていく。
・Begin step events
・Alarm events
・Keyboard, Key press, and Key release events
・Mouse events
・Normal step events
・(now all instances are set to their new positions)
・Collision events
・End step events
・Drawing events
ここで言いたいのは、stepイベントの後に全てのインスタンスの移動が行われるってこと。
だから>>376で書いたのは、End stepイベントにでも入れておくといいと思う。
……まぁ1フレームの差だけど。
0378名前は開発中のものです。
2008/11/07(金) 17:17:30ID:q2bnCqzi0379名前は開発中のものです。
2008/11/07(金) 22:09:04ID:dk+hUO84非公式サイトから導入した日本語描画スクリプトですがフェード機能をつけるには
どうしたらいいですか?
drawアクションじゃないからalphaも使えないし……
0380名前は開発中のものです。
2008/11/08(土) 00:32:27ID:ralVUMsSこんなので良ければ参考にして下さい
http://www1.axfc.net/uploader/File/so/13426.zip
■ このスレッドは過去ログ倉庫に格納されています