【2D】ゲーム作成ツールGameMaker part2【マンセー】
レス数が1000を超えています。これ以上書き込みはできません。
0001名前は開発中のものです。
2005/07/12(火) 09:03:47ID:DK0oUKwt●本家(英語)
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/
0002名前は開発中のものです。
2005/07/12(火) 09:04:29ID:DK0oUKwt@ コリジョン(当たり判定)/スプライト/マップ/サウンド再生など、2Dゲーム作成にかかせない機能が充実
@ なにかと便利なイメージエディタを内蔵
@ プログラミングの知識はあってもなくてもよい
@ *.exe(単体実行可能)形式でゲームを出力できる
@ 作ったゲームは自己責任の元で自由に配布できる(作ったゲームを売る場合のライセンス料さえ不要!)
@ キーボード、マウス、ジョイスティックからのキー・ボタン入力をサポート
@ イベントドリブン型なのでスマートにゲームを構築できる
@ 組み込みスクリプト言語"GML"により、さらに細かい処理が可能
@ エンジンはDirect X
※有料登録(15ユーロ)するとゲーム起動時のロゴ表示が消えて3Dやエフェクト機能などが追加されますが、基本的に無料で充分使えます。
《Game Makerの欠点》
@ 英語ソフトなので、英語が読めないととっつきにくい
@ ツクール類とは違い、ゲームの"動き"から設計しなければならない(それがまた長所でもある)
0003名前は開発中のものです。
2005/07/12(火) 09:05:14ID:DK0oUKwtGame Makerの作者であるMark H. Overmars氏はオランダの超名門大学"Utrecht"大学の教授で、主にゲームデザインについて研究されています。
参考: ttp://www.cs.uu.nl/people/markov/
《このスレの掟》
・Game Makerの略称はGMとする
・いきなり、「こんな素材ありませんか?」系の書き込みは避ける → 素材スレに行きましょう
・質問する場合には、「Game Makerのバージョン」「GMLを使えるか否か」をなるべく記す。
(必要に応じて、「ビデオメモリ容量」や「DirectXのバージョン」などを書くとなおよい)
現在主に使われてるGame Makerのバージョンには5.3Aと6.xがありますが、
5.3AはGame Maker 5.x系列の最終安定リリース版で、Game Maker 6.xは今のところ開発段階にあります。
●Game Maker 5.3A ダウンロード先:
ttp://www.gamemaker.nl/old.html
●Game Maker 6 ダウンロード先:
ttp://www.gamemaker.nl/download.html
5.3Aと6.xの詳しい相違点については以下を参照のこと:
ttp://gamemaker.main.jp/modules/smartfaq/faq.php?faqid=1
0004名前は開発中のものです。
2005/07/12(火) 09:06:24ID:DK0oUKwt問題があったら指摘してくれ。
あとテンプレ作ってくれた よこしまなMr.0氏に感謝
0005名前は開発中のものです。
2005/07/12(火) 09:16:07ID:DK0oUKwtそういえばタイトル亜wせdrftgyふじこlp;@:
0006名前は開発中のものです。
2005/07/12(火) 11:06:03ID:ekXXYkeTお疲れ様です。
今、取り掛かっているゲームの作成に疲れたので、
サクっと気分転換に作ったゲームを置いておきます。
http://gamdev.org/up/img/2885.zip
スペースキーを押し続けると上昇し、放すとドンドン落下して行きます。
障害物を避けながら、Pマークのコインを拾ってください。
作成中ゲームの謎キャラも出てきますが、ドンマイ。 orz 消し忘れたョ。
Del pass入れ忘れたから、あぷろだからも消せないし。トホホ。
0007よこしまなMr.0
2005/07/12(火) 16:20:14ID:Kl+vXOk6part2スレを立てようとしたのですが、ホスト制限がかかっていて立てられない状況でした(汗
ありがとうございます
《追記》
●Game Maker 5.3Aのインターフェイス部分を日本語化するパッチ
ttp://gamemaker.main.jp/modules/mydownloads/singlefile.php?cid=2&lid=2
>>6
謎のタコかわいいですね・・・
0008名前は開発中のものです。
2005/07/13(水) 11:51:24ID:e9DNY7TSスレ立て乙です。
>>6
コインの配置が絶妙ですね。タイミングが合って、連続で取れた時が
気持ちいいです。上下動に緩急がついていれば、もっと良くなるかも。
さ、自分も作らなきゃな〜。1週間近く毎日作ってるのに、
未だ形にもなっちゃいねえよorz
0009名前は開発中のものです。
2005/07/17(日) 18:27:30ID:WYmW2moEゲーム性とは関係ないかも知れんが背景のスピードは
スクロールより遅くしたほうが遠近感でるんじゃないかな?
0010名前は開発中のものです。
2005/07/17(日) 21:15:49ID:BDmUkYbk乙ですー。
ーで、早速質問で申し訳ないのですが、
現在シューティングゲームをつくっていて、ポーズボタンを実装しようとしているのですが、
手っ取り早くできる方法はないでしょうか?
0011名前は開発中のものです。
2005/07/18(月) 03:36:05ID:b9BDu6Gaタコのモデルに伝えたところ、とても喜んでおりました。
>>8
緩急ですね、覚えておきます。
>>9
スピード感が欲しかったので、あの様な背景速度設定にしました。
ゲームの文法(?)からは外れてしまいましたが、これはこれで良いかな?と思ったわけでして。
0012名前は開発中のものです。
2005/07/18(月) 13:21:57ID:G3nui4uo手っ取り早く実装するなら、
GMLの
instance_deactivate_all()
instance_activate_all()
を利用する。この場合、停止中にオブジェクトが消えてしまうが…
0013よこしまなMr.0
2005/07/21(木) 03:47:03ID:t1vjLX0d[Display a message]アクションで「paused」と表示してストップさせる...とか楽ですね
00141
2005/07/21(木) 18:18:13ID:Ceg1byjT操作とかはF1で
ttp://gamdev.org/up/img/2927.zip
0015名前は開発中のものです。
2005/07/25(月) 20:17:18ID:TziUlQURビュー機能を使って、画面左四分の三にプレイヤーキャラ追従のマップを、
画面右四分の一に固定のステータス画面を置きたいのですが、マニュアルを読んでも
ビューの使い方がイマイチ分かりません。
使い方をご指南いただければ幸いです。
0016名前は開発中のものです。
2005/08/03(水) 16:52:35ID:Bxb+7O6K0017名前は開発中のものです。
2005/08/03(水) 21:32:56ID:QiSEx2V4使えるけど処理が遅くなるそうです。
BGMはMIDIで、単発音はWAVが基本みたいです。
MP3使ってみたけど、いちおう再生できますね…
0018名前は開発中のものです。
2005/08/04(木) 12:30:05ID:vqto/t8b処理が遅くなるってのはなかなか痛いですな。
MIDIがデフォだとしたらそのMIDIデータはMSGSにあわせて作らなきゃだめってことか・・・
0019名前は開発中のものです。
2005/08/06(土) 14:54:14ID:eQEDJl/e0020名前は開発中のものです。
2005/08/08(月) 13:26:16ID:iWNZ73lzこれって未レジストの状態で普通の半透明処理は出来るらしいですけど、
ゲームのエフェクトに使われてる加算合成みたいなことって出来ますか?
0021名前は開発中のものです。
2005/08/09(火) 02:28:25ID:UetZZvsJもし出来るなら俺も知りたい。誰か補足キボン
0022名前は開発中のものです。
2005/08/09(火) 10:30:28ID:brxyxykt半透明状態のオブジェクトを重ね合わせればいいのでは?
重くなるけど。
0023名前は開発中のものです。
2005/08/09(火) 13:35:50ID:ksdbL9J8とりあえずマニュアルのchapter16を読んでください
ttp://www.gamemaker.nl/doc.html
これの半透明処理はけっこう汚い…
画像にポツポツ穴を開けて無理やり半透明にしてるかんじ。
002420
2005/08/11(木) 17:58:04ID:PezyNx9ZChap16っていうのは「スプライト」の章のスプライトの編集の部分のことでしょうか。
とりあえずここを読んで色々弄くってみます。
0025名前は開発中のものです。
2005/08/11(木) 22:58:07ID:LrwLwF7w普通のいわゆる半透明だけならimage_alphaだけど加算はわからん
加算処理が出来るとエフェクトがグッと綺麗になるんだがね
0026名前は開発中のものです。
2005/08/15(月) 12:05:43ID:VTl9QE6aの
draw_set_blend_mode
の事ではないのかな。
未レジストなので使って確かめることは出来ないが……
>>14
今更だがGJ
ただしネタがわからんとです
0027名前は開発中のものです。
2005/08/15(月) 14:34:32ID:1+hoxYD40028名前は開発中のものです。
2005/08/15(月) 15:57:29ID:9ui2u+H50030名前は開発中のものです。
2005/08/16(火) 18:16:42ID:l6jV0W5tBackground_alpha値をいじることによって実現した。で、友人のPC(CPU1.8GVRAM32MB)で試してみたら重い重い。
半透明処理って想像以上にスペックいるのね。
0031名前は開発中のものです。
2005/08/16(火) 22:38:50ID:wJ1/u05Pまぁ半透明はあまり多用しないほうがいいな
0032名前は開発中のものです。
2005/08/18(木) 10:43:12ID:6Djpppu4うちでも半透明は重い
フェードアウトは仕方なくスプライト画面に並べてディザ処理のアニメーションでやってるけど
やっぱ機能としてフェードアウトはほしいなぁ。
あとワイプ処理、切り替わる際に画面が止まるのに違和感を感じるような
スクリプトを読み込んで、RPGとかADVみたいなメッセージ処理が出来る
簡易言語みたいなのあったらいいよなぁ
と思って、着手してはみたものの
どうもHSPで挫折した俺には無理みたいだ
という愚痴だ
>>27
アクションRPGつくって!
0033名前は開発中のものです。
2005/08/18(木) 14:59:45ID:iWD8VbNB0034名前は開発中のものです。
2005/08/25(木) 12:56:21ID:XSzlPqwQ前レスからみんなのうp参考にやっと道中(後半だけですが)できました
シューティングです^^操作は F1 or readme参照お願いします。
今ボスつくってます^^;
ttp://gamdev.org/up/img/3066.zip
えっとそれから少し質問させてください
戻り復活にしたいんですが
今はルームリスタートでやってるんです
復活ポイントを1つか2つ設けて、やられたら一番近いポイントに戻るってやつでず
多分タイムラインで処理したらいいんだと思うんだけど、どうしたらいいのか・・・^^;
ご教授おねがいします。
0035名前は開発中のものです。
2005/08/25(木) 14:20:31ID:nCvs6x59これはすごい。
敵の量がやりすぎてて、面白い。
カスリもあるんだね。
そして、2度目のホーミングで死ぬ。
全部タイムラインでやっているのだったら、
復活ポイントの通過を記録する変数作って、
敵の出現のタイムライン上で、ポイント通過するごとに1ずつ増やしてって、
で、復活後にその変数を見て、敵の出現のタイムラインの開始時刻を動かせばいいのでは。
すげえわかりづらいごめん
思うんですが、げーむめーかーのタイムラインエディタって使いづらくないすか。
003634
2005/08/26(金) 15:09:47ID:zebT7oMZども ありがとです。
2度目のホーミングというと白の蛾みたいな敵とセットで出てくる所ですよね。
実はひそかに指摘されるのではと思ってた箇所です。はい^^;
この面構成でいいのか迷ってはいるんです。今でもね・・^^;
実際、敵の種類もすくないし面数もない様な状態なので、
まだまだこれからだとは思ってます。
戻り復活の件は質問の仕方が悪かったです。すませんです
タイムラインのステップ数をさして「そこに戻れよ」というのはtimeline_position命令で
できるのはなんとなく分かってたのですが、戻り復活の処理となるとタイムラインを戻しただけ
では既存に生成しているオブジェクトは残ったままになるのではないか?
というとこが引っ掛かってたんですが、それも含め
>敵の出現のタイムラインの開始時刻を動かせばいいのでは
この言葉にぴぴっときたとこがあったのでそれを試してみたいと思います。うまくいったら報告します。
003734
2005/08/26(金) 15:22:06ID:zebT7oMZタイムラインエディタは自分は自機のやられた後処理と敵出現のタイミング指定しか使ってないですが
さほど不自由は感じてないです^;
0038名前は開発中のものです。
2005/08/27(土) 22:19:46ID:gEl8uNx9まあいいか頑張ってね。
タイムラインエディタ、Flashみたいのがほしいなと思った。
0039名前は開発中のものです。
2005/08/29(月) 02:29:48ID:NC/VBiko真円が描けません。どうすればいいでしょうか。
0040名前は開発中のものです。
2005/08/30(火) 03:35:55ID:HsiS3bg+正確な円にこだわるなら、計算して動かすのがいいと思う。
lengthdir使えば楽だよ。
Create Event:
set variable angle to 0 ←適当な変数を作る
Step Event:
set variable angle relative to 5 ←上で作った変数を適当に増やす
move to position (320 + lengthdir_x(100, angle), 240 + lengthdir_y(100, angle))
こんな感じで、パラメータは適当に調整してみて。
0041名前は開発中のものです。
2005/08/30(火) 12:39:14ID:fphpnZMy真円というのがどれだけの正確さかわかりませんが
この程度でよければ以下の座標を参考にしたってください。
(↓はgm6ですが多分5でもいけるかと)
http://gamdev.org/up/img/3101.jpg
この精度でいいなら、メニューアイコンの
「Reverse the path」で進行方向反転
「Rotate the path」で回転させ始点を調整
「Scale the path」で大きさを調整(%で指定。)
などであなたが思っている動きに加工してみてはどうでしょうか?
0042名前は開発中のものです。
2005/08/30(火) 12:40:41ID:fphpnZMy0044よこしまなMr.0
2005/08/30(火) 15:58:04ID:53GKGJ/B以下の内容を[Execute a piece of code]アクションに貼り付けて実行してみてください。
ゲームは一瞬で終わりますが、クリップボードに(右から始まって反時計回りの)円の座標リストがコピーされます。
あとはその座標を参考にして円を描いてください。
// - - - - - - - - ↓設定ここから - - - - - - - -
r = 100; // 円の半径
cx = 200; // 円の中心X座標
cy = 200; // 円の中心Y座標
d = 12; // 円を何分割するか
// - - - - - - - - ↑設定ここまで - - - - - - - -
clipstr = "";
CRLF = chr($0D)+chr($0A);
for (n = 0; n < d; n += 1)
{
px = string(round(cx + r*cos(n*2*pi/d)));
py = string(round(cy - r*sin(n*2*pi/d)));
clipstr += string(n+1)+ ". (" +px+ ", " +py+ ")" +CRLF;
}
clipboard_set_text(clipstr);
game_end();
0045名前は開発中のものです。
2005/08/30(火) 16:02:47ID:TtSfA7xq早速今からやろうと思ったんだけどダウソ出来ナス・・・
鯖落ちてる?(´・ω・`)
0046名前は開発中のものです。
2005/08/31(水) 00:10:55ID:6s30hHA6PCに問題があったんかな・・・兎も角やってきまつ
0047名前は開発中のものです。
2005/09/20(火) 18:31:37ID:GECwW1SJ0048名前は開発中のものです。
2005/09/22(木) 13:52:26ID:b1cWJDZn0049名前は開発中のものです。
2005/09/25(日) 21:28:29ID:9L+AvabS過去ログみれない・・・
0050よこしまなMr.0
2005/09/26(月) 08:45:17ID:P+eUhLCL手元に残っていたログです(1〜979レス目まで)
ttp://gamemaker.main.jp/dlfiles/2chlog_part1.html
色々とヒントが見つかると思います
0051名前は開発中のものです。
2005/09/26(月) 22:07:32ID:A9dp532f0052名前は開発中のものです。
2005/09/29(木) 20:27:06ID:MP62OZuCttp://gamdev.org/up/img/3447.zip
勉強がてら作ったサンプルのシューティングです。2日くらいで。
画像の一部は以前作ったゲームの流用。
ペン3の800でぎり60ってところか。組み方の問題もあるが。
0053名前は開発中のものです。
2005/10/10(月) 13:11:32ID:D2KvdjRf0054名前は開発中のものです。
2005/10/17(月) 13:54:10ID:Bre/aJF5どうだった?
0055名前は開発中のものです。
2005/10/25(火) 21:14:09ID:UQEjYnf/アクションをさせるにはどうすれば良いでしょうか?
0056名前は開発中のものです。
2005/10/25(火) 23:20:29ID:FXQpO44P// 押された時に呼び出すスクリプト
{
var 押されているフラグ;
if(押されているのを関知する関数) 押されているフラグ=1;
if(!押されているフラグ) アクション;
}
0057よこしまなMr.0
2005/10/25(火) 23:23:56ID:PlOfzJwAStepイベント毎にjoystick_check_button関数でボタンの状態を調べておき、
「押されている状態」から「押されていない状態」へと変化したらevent_user関数でイベントを起こすようにします。
例) ジョイスティック1のボタン4押し上げ時に、User0イベントを発生。
Stepイベント → [Execute a piece of code]アクション:
isPressed = joystick_check_button(1, 4);
if (prev_isPressed && !isPressed) event_user(0);
prev_isPressed = isPressed;
Createイベント → [Execute a piece of code]アクション:
prev_isPressed = false;
005855
2005/10/27(木) 17:28:39ID:/cV+iLLBGMLも勉強してみます。
0059名前は開発中のものです。
2005/10/31(月) 13:00:04ID:JEbkMUMC処理速度の点ではツクールXPや2003と比べてどちらが上なのだろう。
自由度の点ではツクールXPに匹敵すると思われるが。
あと、画面の強制スクロールをするアクションや命令は無いのだろうか。
0060よこしまなMr.0
2005/10/31(月) 19:07:44ID:Obg2lX5N> 処理速度の点ではツクールXPや2003と比べてどちらが上なのだろう。
描画速度はGame Makerの方が上でしょう。
> 自由度の点ではツクールXPに匹敵すると思われるが。
GML(Game Maker用スクリプト言語)を使いこなすことができれば、Game Makerの自由度はツクールのそれをはるかに上回ります。
> あと、画面の強制スクロールをするアクションや命令は無いのだろうか。
Game MakerにはView機能というものがあります。
0061名前は開発中のものです。
2005/10/31(月) 20:06:01ID:8i75rI+iフリーウェアでほとんど何とかなる。
ネットライセンスとかヘンナノ無い。
0062名前は開発中のものです。
2005/11/02(水) 04:33:39ID:mwZ1hAeV6はどうなんの?
0063名前は開発中のものです。
2005/11/02(水) 09:23:56ID:M8vrCfR50064よこしまなMr.0
2005/11/02(水) 16:29:53ID:Kfwe6/NK本家のttp://www.gamemaker.nl/facts.htmlより:
> How will it continue? My current main priority is writing a book, together with Jacob Habgood.
> The title is The Game Maker's Apprentice: Game Development for Beginners
> and will be published by APress. It is expected to appear in February or March 2006.
> And of course I am working on version 6.2 of the program.
ということですので作者さんは現在、Game Maker初心者向けの本を書かれているそうです。
もちろんGame Maker 6.2の開発も行われているようです。
>>63
ちょうどGM6で日本語を描画するための記事を書いていたところです。
"GameMaker Japan - ドキュメント - GM6で日本語テキストを描画しよう"
ttp://gamemaker.main.jp/modules/articles/article.php?id=22
0065名前は開発中のものです。
2005/11/02(水) 22:13:13ID:P6bqraTuGJ!!!
b
0066名前は開発中のものです。
2005/11/04(金) 17:37:57ID:alBTuzL0混乱しています。
20ドル位寄付すればキー番号を受け取れる様ですが、自宅のPCがオフ環境
なので、帰宅して受け取ったキー番号を自分のPCにインストール済みの
GMに打ち込んでもレジストする事は可能なのでしょうか。
最寄の銀行から振込みって出来ますかね………?
0067名前は開発中のものです。
2005/11/04(金) 21:26:46ID:RgeAIYqpOnce we receive your payment (which is normally within one or two days, unless you use cash or check payment)
an email will be sent to you with the name and key together with information on how to enter these in the Game Maker program.
ShareItでクレジットカード決済すれば、その時に書いたe-mailアドレスにメールで 名前とkey番号が送信される。
銀行振り込みよりは楽じゃないかな?(ShareItは代金の収受を代行してるだけ)
15ユーロと20ドルどっちでも良いみたい、今なら10ポンドが特かもw
キー番号は番号に意味があるのでオフラインPCでもオッケだな、一人一アカウントなので自分のPCが3台あったら
3台ともに、名前(多分自分の名前w)とキー番号でアンロックされたGameMakerが利用できる。
(友人にキー番号を渡しちゃやだよってFAQにあるので、それは無しね)
0068名前は開発中のものです。
2005/11/04(金) 22:44:37ID:82BYCLEuゲーム開始時にボタンを押すとパドルからボールが
射出されるようにしたいんですけど、
現時点ではレーザーみたく大量に出てきてしまいます。
一個だけポーンと出すにはどうすればよいのでしょうか?
Ver. 5.3A GMLはさっぱりです。
0069NOT 66
2005/11/04(金) 23:06:51ID:UP1blmFBサンクス!俺もやりかたがよくわからんかったから手を出さなかったけど、やってみるよ。
諦めてクレカ使った方が楽で早そうだね。
>>68
ボタンを押したときのイベントに下記のスクリプトでインスタンス作成制御してみては?
{
if(!instance_exists(ボールのインスタンス名)) instance_create(出現位置x,出現位置y,ボールのインスタンス名);
}
0070よこしまなMr.0
2005/11/04(金) 23:09:27ID:oyETZrGaレジスト代は15ユーロが本当の基準です。ドル・ポンド・円など、その他の通貨はレートによって値段が変わります。
0071よこしまなMr.0
2005/11/04(金) 23:19:28ID:oyETZrGaKeyboardイベントの度にボールを生成していませんか?
そのような場合はKey Press(キー押し下げ)イベントでボールを生成するようにすると良いです
007269
2005/11/04(金) 23:43:29ID:UP1blmFB早速やってみた。鍵待ちです。ワクテカ
http://www6.atwiki.jp/tetrius/pages/11.html
0074よこしまなMr.0
2005/11/05(土) 10:16:22ID:9pC0c5XnTETRIUS期待してます!かなり本格的なゲームですね.. 激乙です。
>>73
なんだか不快感を抱かせてしまったようで大変申し訳ないです(_ _
お金に関することなので少し正確に書いた方が良いと思ったもので・・
近頃はGame Maker 6で全角文字を描画できるスクリプトをちまちま書いています。
今のところ、「全角ひらがな・全角カタカナ・改行・描画開始位置の指定・文字間隔ピクセル指定・行間隔ピクセル指定」に対応してます。
文字がずらーっと並んだスプライトをdraw_sprite_partしてるだけですが
あとは全角スペース・全角記号・全角英数字・アルファ値指定を実装して。。。漢字はさすがに無視だろな
半角混じり文はどうするかな。。
0075名前は開発中のものです。
2005/11/05(土) 10:18:38ID:wRXWCw6a回答ありがとうございます。
スクリプトはまだ理解できないのですが、Key Pressの方で出来ました。
今のままではボタンを押す度に生成されてしまうので制限かけたり
しようと思います(おそらくIf the number of instances〜を使うはず)。
しょぼいと思ってたアルカノイドが実は凄く工夫されたゲームだったんだなあ…
0078よこしまなMr.0
2005/11/06(日) 02:35:29ID:LUBGCGiqボールが無いときだけ発射するようにしたいならば...
on Key Press:
[If the number of instances is a value] object: ボール、number: 0、operation: Equal to
[Start of a block]
この間でボールを生成したり、スピードを設定したりする。
[End of a block]
といった感じです。
※[If ....]系のアクションはその条件が合うと、基本的に次のアクション1つを実行します。
複数のアクションを実行したいときには[Start of a block]-[End of a block]で囲むわけです。
>>77
ttp://www.gamemaker.nl/regfaq.html "I send in my registration fee; how fast do I get the key?"
の項にreg keyがどのくらいで届くかが書いてあります
007969
2005/11/06(日) 10:02:16ID:x/RBJv7A俺の入力ミスかJCBから認可されなかったかどちらか。きっと前者だろう。
今度はVISAでTRY。
JCBの時には見受けられない、オーダーメール後の追加メールがすぐ飛んできて、
48時間以内にライセンスキーが送れるかも〜と。
今度こそいけるかな。ワクテカ
>>78
二日は待てということですね。
今回のはどうやらshare-it!(?)とクレカ会社の間での段階でコケたようです。
お騒がせしました。
008066
2005/11/06(日) 18:00:50ID:IxLPpGfhやはり本家の英語の判読に手間取っております。
クレジットカードは所有していませんが、銀行の口座は作ってあります。
この場合、銀行からどこに送金もしくは振り込めば良いのでしょうか。
それと、オンライン登録のLicensed Toの項目の意味が分かりかねます…。
アスタリスクが付いた項目は必須項目なのでしょうか。
色々方法がある様で、現金払いを望む自分としてはどの方法が手っ取り早い
か悩みます。
008169
2005/11/06(日) 18:36:45ID:MkKQkn0FLicensed Toは登録したい「名前」じゃないかな?
(Enter Registration KeyのNameに中る箇所)
俺はそう解釈して、ニックネームを入れた。
ソウジャナカッタラガクブル
0082よこしまなMr.0
2005/11/07(月) 01:10:13ID:cUUtgcJLttp://www.gamemaker.nl/registration.htmlの"Register through Share*It"から飛べるページのことでしょうか
まずページ右上のShow prices in: をJapanese Yenに設定します。
すると値段が「Total: \ 2,225」とか表示されるはずです。これはGame Makerのレジスト代15ユーロを日本円に換算した値段です。
続いてPersonal Informationを入力するわけですが、仰るとおり * は必須項目です。
基本的に全て半角英数字で記入してください。
項目の説明:
License to* :81さんが仰っている通りGameMakerのレジスト名です。フルネームでもニックネームでもかまわないと思います。
First Name* :名前
Last Name* :苗字
Street Address* :たとえばxx町 1丁目5番地3号なら、3-5-1 xx-machiと書く
Additional Address Information :(必要なら) 部屋番号 アパート・マンション名の順で書く
ZIP / Postal Code* :郵便番号
City* :市町村区, 都道府県の順で書く (Shinjuku-ku, Tokyo)
Country* :もちろんJapan
E-mail* :注文情報やレジストキーが送られてくるメールアドレスを書く (間違えないように。)
Retype E-mail* :もう一度メールアドレスを書く
そして次にPayment option(支払い方法)を選びます。
Payment option* :銀行を通じて支払うならBank/Wire Transfer(電信送金)
Billing currency* :もちろんJapanese Yen
※この場合海外の銀行へ送金するわけですから、注文する前に、利用されている銀行窓口で
「海外の銀行へ電信送金することは可能か?」「可能ならば、手数料はどれほどかかるのか?その内訳は?」この2点を必ず確認しておきましょう。
大手の銀行でないと電信送金できない場合があります。
手数料とその内訳は銀行によって様々で一般的に5,000円前後かかります。
注文が終わったらShare*Itから「注文情報を確認しているので数時間〜1日ほどお待ちください」みたいな英語メールが来ると思います。
もし、注文が成功してShare*Itからついに「この銀行に振り込んでください」みたいなメールが来たら、その情報を銀行に見せて「ここに電信送金したいのですがどうすれば?」と聞いてください。それが一番確実だと思います。
(なお、私が実際にこの支払い方法を実践したわけではありません。あくまでも参考までに)
008482
2005/11/07(月) 11:59:27ID:+VvvZcOUhttp://www6.atwiki.jp/abab5656/
対抗して勉強しつつくったぜ、手抜きだが。
008566
2005/11/07(月) 12:51:19ID:BqOngL+hこんなに詳しく説明して頂いて有難う御座います。
ネットで検索してみた所、北洋銀行から海外へ送金出来るそうですので、
送金してみようと思います。
0086よこしまなMr.0
2005/11/10(木) 00:24:55ID:Q4YddK/Uスクリーンショット
ttp://gamemaker.main.jp/modules/news/article.php?storyid=25
0087名前は開発中のものです。
2005/11/10(木) 10:56:50ID:wpMLDaNX0088名前は開発中のものです。
2005/11/11(金) 11:24:18ID:F1klrFMJが出来ないのが痛い……。GM5.3Aで外部DLL使ってスプライトの回転
や色調変更(真っ赤になったり)を可能にする方法というのは無いもの
だろうか……。
GM6は現在のチップセット内臓型のPCだと厳しいか……。
0089よこしまなMr.0
2005/11/11(金) 17:08:24ID:7NugP8mNどもです。
>>88
疑似回転なら
まずスプライトの編集画面で[変換]-[キャンバスのサイズ変更]で最低でもルート2倍ぐらい広くした後に、
[アニメーション]-[回転]を選んでNumber of framesに36ぐらい指定してぐるぐるっと編集しておき、例えば30度傾けるには image_single = (30*image_number/360); といった具合に代入すればいいわけですが、
この方法だと複数フレームを持つスプライトの場合少し面倒ですね。。。
色調変更は、そのオブジェクトの上にimage_alphaが0.5とかの真っ赤な同型スプライトをかぶせれば不可能ではないですね
※ (真っ赤な方のインスタンス).depth = (その被せられる方のインスタンス).depth - 1;
さらにレジスト版ならこの真っ赤なスプライトに sprite_fade(真っ赤なスプライト, make_color_rgb(R,G,B), 255); とかやってやるとどんな色でも対応できそうですね
0090名前は開発中のものです。
2005/11/11(金) 18:33:31ID:F1klrFMJありがとうございます。
image_alphaを0.5とか(半透明)にすると処理が重くなるとか書いてあった
様な……。
回転に関しては、殆ど1枚絵を対象とするので(風車とか)、
上記の方法でいけそうです。
色調変更や回転の問題を克服すれば、GM5.3Aの方が
動作も軽くて使い易そうです。
あと、sprite_rotateとかいうのがありましたが、リソース変更の所に
記載されてあったので、ゲーム中には使わない方が良いのでしょうかね…。
0091よこしまなMr.0
2005/11/11(金) 19:00:52ID:7NugP8mNそうですね・・sprite_rotate()だと回転するたびにどんどん画質が落ちていくでしょうし。。。
Changing Resources系のアクションはGame Makerの編集環境の機能をそのまま関数にしてあるような感じっすね。。。。。。笑
0092よこしまなMr.0
2005/11/15(火) 19:27:26ID:sr3axQEtttp://gamemaker.main.jp/modules/news/article.php?storyid=26
0093名前は開発中のものです。
2005/11/17(木) 18:25:17ID:tniXsRI1おお!gj おつかれさんでし
0094よこしまなMr.0
2005/11/17(木) 19:56:00ID:xODF1NiWどもっす。
詳しく書くの忘れてたんですが、>>92のスクリプトはGame Maker6で
{
mbtext_draw("foo漢字123あいうえおbar", x, y);
}
このようにして全角・半角混じりの日本語テキストを描画できるというものです。
テキスト領域の最大幅も指定できて、この幅を超えると自動で改行されます。
途中で改行したいなら"\n"を入れます。
それと、文字間および行間の間隔も指定できます。
ダウンロードおよび詳細についてはこちら
ttp://gamemaker.main.jp/modules/articles/article.php?id=23
0095名前は開発中のものです。
2005/11/20(日) 03:36:05ID:x4gmC67fここで落としたゼルダのゲームなんだけど
ゲームのサイズ自体は5MBなのに
実行したらメモリ上で80MBになっちまう。
GameMakerで作ったゲームでメモリ食ってしまうのは仕方がないの?
RPGを作りたいんだけどGameMakerじゃあ不向きなんだろうか。
試しにメモリが64MBしかないノートパソコンでゼルダを動かしたら、
メモリにメッセージ音を読み込めなくてエラー落ちしてしまうんだが・・・。
2Dなのに必要スペックが高すぎるがする。
0096名前は開発中のものです。
2005/11/22(火) 10:20:01ID:eOxq0/Liレジストバージョンじゃないとダメというエラーでとまった。
exeファイルつくってもだめだった。
だめじゃんこれ。
0097名前は開発中のものです。
2005/11/22(火) 11:01:15ID:8L6XVzNj0098よこしまなMr.0
2005/11/22(火) 16:43:27ID:UH8ldhAqタイトル ... v5.3A, v6.1
1945 ... 6MB, 16MB
Asteroids ... 9MB, 21MB
hit the ball ... 5MB, 16MB
Pacman ... 8MB, 19MB
Street race ... 6MB, 14MB
このように、6.1ではメモリ使用量が多い傾向にあるようです。
次の6.x系リリースでは32bitPNG形式のグラフィックスまでサポートされるようなので、6.xはまだまだパフォーマンス調整が続きそうです。
規模の大きいゲームを作るなら5.3Aを使ったほうが良いと思います
0099名前は開発中のものです。
2005/11/22(火) 17:12:15ID:8L6XVzNj2Dゲームをプレイされる方はスペックが強くなさそうですし、
5.3Aのが良さそうですね。
とても参考になりました。ありがとうございます。
0100名前は開発中のものです。
2005/11/24(木) 18:18:25ID:CsYr03Zwscreen_gamma(r,g,b)
のrgbを-1〜1まで連続的に変化させることで出来たようです。(ただし排他的グラフィックモードのみ)
というわけで訂正でした。
>>92
お疲れ様です。
これで吉里吉里みたいなシナリオファイルを読むスクリプト組めば、
かなりRPGへの道が開けそう。
0101名前は開発中のものです。
2005/11/25(金) 15:06:49ID:X7+6y7nO0102名前は開発中のものです。
2005/11/25(金) 21:27:44ID:7KvtNZsMそれは5.3aのみの機能ですね。
ver 6 以降でやろうとすると、色限定ですが image_alpha をうまく利用するとできます。
ttp://gamdev.org/up/img/3906.zip
0103名前は開発中のものです。
2005/11/25(金) 22:49:50ID:7KvtNZsMスレ汚しスマソでした
0104よこしまなMr.0
2005/11/26(土) 05:05:25ID:at2Pv5vmどもです。
GM6からは描画エンジンがDirectX8.0のDirect3Dになったので、「ちょっとした3Dゲームが安定して動作する」ぐらいのスペックがないと重くなるということでしょうね
具体的に言えば、VRAMが16MB以上でなおかつ「DirectX8以上に対応したグラフィックアクセラレーション機能」を持ったビデオカードを搭載したPCのことです
>>100
どもです。
RPGといえば、GMJのpollingでもRPGが2位だったりするんですよね(笑
ttp://gamemaker.main.jp/modules/xoopspoll/pollresults.php?poll_id=2
>>102
サンプル乙です!
0105名前は開発中のものです。
2005/11/27(日) 22:07:44ID:EmdQyuG5ARPGなんか向いているのかもしれないですね。
>>102
あれれ、無くなってたんですか。何でだろう。
サンプルありがとうございます。
半透明でも結構いけますね、
前試したときは遅かったんですが……やり方が悪かったのかなあ?
0106名前は開発中のものです。
2005/11/27(日) 23:37:33ID:+Amk6YHF0107名前は開発中のものです。
2005/11/28(月) 12:58:04ID:aaSM7huu↑ここに載ってるGameMaker製のスタンドアロンのゲーム、VRAMが4MBのノートでも動いたけど、
5.3Aで作られているのだろうか。
「HardHat2」や「SonicZone」を見る限りでは、RPGツクール2000や2003よりは
ツールの自由度はかなり高いと思われる。
プログラミング言語が組み込まれている為に、
オリジナルのRPGを作る為に自作メニューや自作戦闘を組む際の手間が
ツクール2000や2003に比べて遥かに少ない。
FF5やFF6クラスのRPGも再現出来るかも知れない。
0108よこしまなMr.0
2005/11/28(月) 22:09:16ID:BOHEPyw1GM6ではexclusive graphics modeが撤廃されたためにscreen_gammaなどは使えなくなったようです
>>107
そこのゲームは結構前から載ってるのでGM5製だと思います
/* ひとりごと */
しばらくGM6.xは開発状況を見守っておくとして、Library Builder(ttp://www.gamemaker.nl/faq.html)で5.3A向けRPG構築用アクションライブラリでも作ろうかと思ったわけですよ
[Learn the sorcery(魔法を習得)]アクションとか [Change the class(職業を変更)]アクションとか [Configure the keyboard(操作ボタンの設定)]アクションとか色々作っておき
kernelオブジェクトに独自イベントの処理(会話窓の表示、マップ間のジャンプ、パーティの強制移動、...)とゲームの進行を任せるといった線でいこうかと思ったのですが、
もはやGame MakerではなくなるしRPGとは何かという疑問にぶち当たるので、タンスの奥深くにしまっておきますね。
上記とは関係ありませんが、タクティクスオウガ外伝のようなターン制戦闘シミュのロジックが書きたくてしょうがないので山で修行してきます。
0109名前は開発中のものです。
2005/12/03(土) 03:50:34ID:aTVA3x5tサンプル使わせて頂きました。
感謝ですー。
おかげさまで明暗を使った面を作れました。
動作も別に重くないようでしたよ。
0110よこしまなMr.0
2005/12/07(水) 01:10:31ID:smGH6xtr近況報告2) GM6.2で追加予定の「新しい画像素材」および「32bit PNG」について ttp://gamemaker.main.jp/modules/news/article.php?storyid=28
近況報告3) jFontMaker新バージョン調整中 ttp://gamemaker.main.jp/modules/news/article.php?storyid=29
0111名前は開発中のものです。
2005/12/07(水) 09:45:48ID:11Jy8G430112名前は開発中のものです。
2005/12/13(火) 19:55:36ID:BihfZgrCよく調べたら、あれで使っている仕組みは GameMaker バージョン 5.3Aで未レジストでも動く。
Gadget 3D っていうみたいだけれど。興味ある人いたら見てみては?
公式っぽいページ(英語)
ttp://www.geocities.com/freegadgets/3d_engine
技術的な話をすると、立体的な壁の描写には draw_sprite_part_ext() をうまく利用している。
5.3Aだとこれを未レジストで利用できたんだが、
6.0以降は未レジストでは利用できなくなってしまった。残念。
0113名前は開発中のものです。
2005/12/14(水) 02:27:26ID:co+V8Lkoこれ使ってウルティマアンダーワールドみたいなのを作ってみたいと思ったけど、
デモとかちょっとプレイした限りではZ軸が無さそうなんだけど、あるのかな?
0114112
2005/12/14(水) 21:10:11ID:o6ZocyIDざっと内部のスクリプトを眺めてみた。3D処理は基本的なことしかわからないのだけれど。
○壁に見られるようなスプライトのテクスチャ貼り付けは、Z軸に平行な平面(壁)及びZ軸に垂直な平面(床や天井)だけ。
○一般的なポリゴン(三角形)は単色だが、任意の3次元平面の描写は可能。
○カメラ方向の自由度がZ軸回り(Z軸に垂直な平面上をぐるぐる回る)のみのため、上を向く、下を向くといったことができない。
○カメラの位置座標は 3次元で与えられているため、Z軸方向の移動は可能。
○コリジョン判定は、ルームに配置されたアイコンによって行われるので、現状2次元的。
理論上不可能ではないけれど、3次元カメラワーク、Z軸を含めたマップのデータ構造やコリジョン判定、
その他必要な処理のための改造は必要かと。結構大掛かりになりそうだが…。
0115名前は開発中のものです。
2005/12/16(金) 21:30:24ID:QUCuWcKOさすがに大掛かりになりそうだな。
3Dコリジョン判定やらZ軸のあるマップとかどうすりゃ良いのかさっぱりだ。
あきらめて2Dのゲーム作るわ、ありがとね。
0116名前は開発中のものです。
2006/01/03(火) 19:45:15ID:1JpdSO+Wサンプル以外見つからない・・・。
0117よこしまなMr.0
2006/01/12(木) 23:44:16ID:qTSXcIn+ttp://gamemaker.main.jp/modules/news/article.php?storyid=30
0118名前は開発中のものです。
2006/01/13(金) 00:18:58ID:rVnKY9Waキタ━━━━━━(゚∀゚)━━━━━━ !! 乙です!
0119名前は開発中のものです。
2006/01/17(火) 00:02:03ID:Qbkzy9yIXPマシンだとやたらに重くて、本来60fpsのところが15前後しか出ない状態です。
動作条件はまず満たしていると思うのですが、GameMakerの場合いったいなにが一番
描画を左右しているのでしょうか?
0120名前は開発中のものです。
2006/01/17(火) 00:10:24ID:cSc+u/I70121よこしまなMr.0
2006/01/17(火) 19:08:14ID:scPMRZggおそらくGame Maker6.1のことだと思いますが・・
個人的見解でのGM6.1の動作環境は、「>>104」に書いています。
ちなみに当方のNotebookでは、ATI RADEON 7000系グラフィックスチップ(DirectX8, 3Dアクセラレーション対応)+VRAM 32MB(メインメモリ共有)で安定して動作しております。
まずは、お使いのビデオカードやサウンドカードのドライバを最新版にアップデートして試してみてください。
ただしGM6.xは"まだまだ"開発中なので、しばらくはGM5.3aを使った方が良いかと。
0122119
2006/01/18(水) 13:55:40ID:2SH+Qcryやはりグラフィック周りが貧弱なせいのようですね。設定しなおしてみます。
また、5.3aのほうも使ってみます。詳しいご返答本当にありがとうございました。
0123名前は開発中のものです。
2006/01/23(月) 15:30:01ID:R+AeK2OQhttp://www.altech-ads.com/index.htm
0124名前は開発中のものです。
2006/01/31(火) 16:25:19ID:gZrsh7Ln透過処理したスプライトのオブジェクトを1画面に一杯配置したら、
ルームエディタが重くなるんだな。
で、ひょっとしたらと思ってバックグラウンドの透過タイルを
一杯配置したら同様に重くなった。
マップ作るときには透過画像が少なめになるように気をつけないとダメそうだなあ。
ゲームが動作中は重くないので、そこまで大問題って訳でもないが。
0125名前は開発中のものです。
2006/02/07(火) 00:36:49ID:3ssvjcXIところで、「ボタンを押した長さで効果をかえる」っていうのはできる?
ぶっちゃけボタンの押し具合でジャンプの高さとかを変えてみたいんだけど
0126名前は開発中のものです。
2006/02/07(火) 00:38:24ID:3ssvjcXI0127名前は開発中のものです。
2006/02/07(火) 01:42:33ID:W4t70fLmGame Maker Japan 非公式サイトでDLできるHAREって
ゲームが参考になるんでないかな。
タメジャンプアクション。
0128名前は開発中のものです。
2006/02/07(火) 11:18:31ID:T3W7pWwz年度末に近くなるほど仕事が激務になり
GMにまで手が回らなくなって放置状態に・・・。
最近前倒しで落ち着いてきたのでGMいじりは再開してる。が、書くことが無いorz
0129Joker
2006/02/08(水) 09:07:08ID:faCpz2xYに始めたばかりでわからないことだらけなんですが、はじめにロックマンの様
な2Dのアクションを作ろうと思っています。そこで少々問題が起こっている
んですが、プレイヤーキャラクターをいろんなアクションに対応させるために
左向きやジャンプ時などのオブジェクトにいろいろわけてあるのですが、
その際にViewを使う時に追うオブジェクトを一つしか設定できないのでスクロール
がうまくいきません。2つ目のviewに左向き等のオブジェクトを対応させてみたところ、
左向きの方しか追わなくなってしまいました。何か解決策などのアドバイス
がもしあったら教えていただけないでしょうか?また、viewで画面をスクロール
させる時に、端に行った場合でなく、キャラを中心にスクロールさせる
ことは可能でしょうか? 長文失礼しました。
0130よこしまなMr.0
2006/02/09(木) 23:41:30ID:Y8A9AByDGMの紹介はされていますが、レジストはできないみたいですね。
でも、「■ご購入について」のページにShareIt!の解説があるのでレジストする際の参考にはなると思います。
>>129
長くなるのでforumの方で返信しときました
ttp://gamemaker.main.jp/modules/newbb/viewtopic.php?topic_id=46&forum=1&post_id=164#forumpost164
0131Joker
2006/02/10(金) 01:47:35ID:teDVSfxUあと、いろいろやってるうちにわからないところが3点ほどでてきたんですが、
質問してもよろしいでしょうか?フォーラムの方に記載しておいたんですが・・。
0132xyz
2006/02/10(金) 10:28:17ID:vmTX8Bzrあれってどうやったら あのような画面が出てくるのですか?もうさっぱりなのでどなたか教えてください。お願いします。
0133名前は開発中のものです。
2006/02/10(金) 22:41:05ID:L/fFtyC9「File」メニューの「Advanced Mode」にチェックを入れてください。
0134名前は開発中のものです。
2006/02/14(火) 00:04:30ID:hVzIrwkp0135xyz
2006/02/14(火) 13:31:01ID:QFe7Akshscriptというのが出てきたのはわかったのですが
GML入門のところにかいてあった
script propertiesや execute a piece of codeなどの画面は
どうしたらでますか。
0136名前は開発中のものです。
2006/02/14(火) 19:00:34ID:OGIWffPiヒミツ
マヌアルに目を通してみようよ
0137名前は開発中のものです。
2006/02/15(水) 20:04:58ID:6LM6alMi0138125
2006/02/16(木) 19:54:41ID:+HYBFe6pダッシュと組み合わせようとするとなおさらさっぱり。
0139名前は開発中のものです。
2006/02/17(金) 04:01:55ID:dYDNpFEDタメジャンプじゃなくて、マリオみたいにジャンプ後に制御したいのかな?
変数を一つ用意して、ジャンプした時に変数を1にする。
一定時間経過するか、ボタンを離したら変数を0に戻す。
で、変数が1の間は重力の効きを弱くする、というのではどうでしょう。
0140名前は開発中のものです。
2006/02/17(金) 21:27:27ID:EyjSGAvOttp://gamdev.org/up/img/4690.zip
こんな感じ?
0141名前は開発中のものです。
2006/02/17(金) 23:48:09ID:7zEm/w8C>>139
その通り、マリオ(もっというとロックマン)みたいなジャンプを再現したかったのです。言葉足りなくてスマソ
とりあえずその方法を試して見ます。
>>140
感じとしてはそんな感じです、わざわざすみません。
0142名前は開発中のものです。
2006/02/19(日) 14:11:12ID:CCeheyjZヘルプ読んでも、わかんねえ…。
0143名前は開発中のものです。
2006/02/19(日) 14:15:33ID:hVYPSpvh現在のゲーム状況をセーブします。
つ「ttp://gamemaker.main.jp/」
0144名前は開発中のものです。
2006/02/20(月) 01:52:21ID:Ngv0PK/OFinishing the Game -> Global game settings -> Various other options
Let <F5> save the game and <F6> load a game
デフォルトでこの機能は有効になっている。
変数などの状態は保存できるので、機能的には通常、これで十分かと思われる。
しかし、どこでもセーブ可能なため、制限したいならこのチェックをはずし、アクション "Save the game" 等を使って自力で組む必要がある。
パーティクルの状態が再現されないなどの点にも注意。
0145名前は開発中のものです。
2006/02/20(月) 12:39:53ID:7gRnoyKeスクリプトがもっと書きやすかったらGameMaker良いんだがなあ・・・。
0146名前は開発中のものです。
2006/02/20(月) 13:49:24ID:QEe7nvmj0147名前は開発中のものです。
2006/02/20(月) 14:55:56ID:4zpNyKhY0148名前は開発中のものです。
2006/02/20(月) 16:13:18ID:ZzYiwD5Z直ぐ飽きられる場合もあると思う。
>>145
こだわりがあっていいじゃん。
0149名前は開発中のものです。
2006/02/21(火) 23:19:35ID:ygP3Me4d( ´∀`)/< 先生! 自己満足ゲーム作ってたら、
_ / / / \ 原因不明のバグにぶち当たりました!
\⊂ノ ̄ ̄ ̄ ̄\ \_______________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0150名前は開発中のものです。
2006/02/22(水) 00:04:54ID:+bb3J/620151名前は開発中のものです。
2006/02/22(水) 02:13:42ID:WD1YjkLm0152名前は開発中のものです。
2006/02/22(水) 10:18:04ID:RmfqUly/とうあえずうp
ttp://gamdev.org/up/img/4743.zip
□ 同士が離れていると、仲間の近くへ移動するようにしたいんだけど動いてくれない。
○のDepthを変えるとちゃんと動くようになるみたいなんだけど、
GameMaker自体のバグか何かなのかな?
だけど変えると今度は○の方がおかしくなるし・・・
0153149=152
2006/02/22(水) 12:17:49ID:RmfqUly/どうも5.3Aのcollision関連の関数で起きる模様。
0154名前は開発中のものです。
2006/02/22(水) 12:38:07ID:RtW+y/jzまちがってたらすません
前レスの717〜740ぐらいに丼氏のボイドトランサーで逆のパターン(近くにいるおなじインスタンスから離れる)
だったかの質問レスがあるのでそれもチェックしてみたら?
>>50に前レスログのURLあるよ
0155名前は開発中のものです。
2006/02/22(水) 13:08:59ID:RtW+y/jzmbtext_draw()の第4引数widthを指定しない時やwidthに満たない幅で描画するときに描画幅を調べる構文を以下の様に書いてます。
今のところ"\\n”や改行などを無視してもいい状況なのでこれで妥協してます。
作者観点から付け加えがありましたらヨロシクです。
----------ここから---------------
var inputtext, code, text_len_cnt, i, textareawidth;
inputtext = "描画させる文字列1234"
textareawidth = 0;
text_len_cnt = string_length(inputtext);
for( i = 1; i <= text_len_cnt; i += 1)
{
code=ord(string_char_at(inputtext, i));
if((code>=32)&&(code<=126)) textareawidth += global.mbchar_size/2;
if((code>=129)&&(code<=152)) textareawidth += global.mbchar_size;
}
0156名前は開発中のものです。
2006/02/22(水) 13:44:20ID:RtW+y/jzこの後に
mbtext_draw(inputtext, room_width/2 - textareawidth/2, 150, 0, 0, 0))
といった感じで続けています。
0157名前は開発中のものです。
2006/02/22(水) 14:14:25ID:CuQeG0lj絵師乙です!
0160名前は開発中のものです。
2006/02/22(水) 18:51:30ID:WbHshgLKそれとも押したら変数で逃がしてうんたらかんたらなどをGMLで記述しないと作れないのでしょうか。
0161よこしまなMr.0
2006/02/22(水) 19:28:30ID:vs/6uiJnttp://gamemaker.main.jp/modules/news/article.php?storyid=31
>>160
以下のスレッドに同様の質問があります。
GMJ Forum -> ジョイスティックのボタン押下時にイベントを発生させたい
ttp://gamemaker.main.jp/modules/newbb/viewtopic.php?viewmode=flat&topic_id=37&forum=1
0162名前は開発中のものです。
2006/02/22(水) 23:01:27ID:kPdMax+/instance_furthestの返り値を表示してみたら-4(noone)になってるね。
しかし、Squareがルーム内に複数いる以上、nooneが返ることはありえないはず。
は、もしかして……!
スプライトとオブジェクトの名前がかぶってますよ。
0163149
2006/02/23(木) 10:06:26ID:tTwTR64C( ´∀`)/< 先生! if (collision_circle(self.x,self.y,70,Spuare,false,true))
_ / / / \ を
\⊂ノ ̄ ̄ ̄ ̄\ | if (distance_to_object(Spuare) < 70)
||\ \\ に代用させた所、問題なく動きました!
||\|| ̄ ̄ ̄ ̄ ̄|| \_______________
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
>>162
違うようにした方がいいんでしたっけ?
0164名前は開発中のものです。
2006/02/23(木) 12:52:18ID:3zWbUjiFスゲー
AIですか
0165名前は開発中のものです。
2006/02/23(木) 14:15:06ID:PAdpKi4bいろいろ調べた結果、GameMaker 5.3A側でcollision系関数の引数 notme の適用方法にバグがありそうですね。
コリジョン対象のオブジェクトを オブジェクト名で限定した場合、特定の状況で notme を true としても有効にならず、
本来なら「偽」と判定される状況でも「真」となってしまう模様。(対象オブジェクトがallとかなら問題なさそう)
6.1では、このバグは解消されているようです。
・・・5.3Aのサポートは終わってるのかなぁ…?
0166よこしまなMr.0
2006/02/23(木) 17:52:05ID:iLVzLMDT違うようにしないとだめなんです。
なぜなら、リソース識別子はダイレクトにGMLの定数としてマッピングされるので、同じ名前空間で識別子の衝突が起こってしまうからです。
これはGMJフォーラムでも何度か話題に上りました。
ttp://gamemaker.main.jp/modules/newbb/viewtopic.php?topic_id=34&forum=6&post_id=136#forumpost136
>>165
ttp://www.gamemaker.nl/bugreport.html には一応「Older version」という選択項目もあるみたいですが、"Make sure you use the latest version of Game Maker. We do not handle bugs in older versions."という記述がこれまた微妙ですね
お知らせ:
現在、GM5/GM6でmp3,oggをBGMとして再生することができる連携プログラムを開発中です。この連携プログラムは、レジスト版の機能に「依存しない」ので、Game MakerのBGM再生機能に不満を抱いている方にとっては便利なものとなる予定です。
(.NETアプリではないので軽いはず。MODにもおそらく対応。MIDI形式は未定)
0167149
2006/02/23(木) 18:55:07ID:tTwTR64C英語ダメ、計算ダメ、絵ダメ、文才ダメだけど、
AIだけには拘りと自信があるのだ。
>>165
ふむふむ・・・検証オツカレです。
>>166
特に問題なかったから今まで普通にシテマシタヨ。
参考になりました。
0168名前は開発中のものです。
2006/02/24(金) 04:19:37ID:/Tk/YbQr155です
前回の書き込みで舌たらずな文章で心証悪くしてたらすみません。
そして素早い対応、すっごく感謝です。ありがとうございました。
今シューティングを作成してて・・スコアとかの表示関連を作りなおしてるんですよ。
それで自機が近づいたら表示を画面外に出すやつをやってて、
先に描画領域が取得したかったんです。
mbtext動作状況はゲーム進行を妨げずうまく動作しています。
0169よこしまなMr.0
2006/02/25(土) 02:33:02ID:mwGxEe4mいえいえ
実際の描画幅を取得できないというのは盲点でした。
おかげさまでmbtextを改良することができたのでこちらこそ感謝です。
お知らせ:
>>166でちらっと触れていたBGM再生用のプログラムおよびスクリプトがほぼ完成しました。
再生に対応しているサウンド形式は「mp3, ogg, mod, it, xm, s3m」です。
同時に再生できるサウンド数は無制限です。
GM5/GM6と共に動作し、レジスト版でも未レジスト版でも動きます。
機能的には、「再生、一時停止、再開、停止、リセット」の操作、および、「音量、再生スピード、パン、ループ」の制御(再生後でもサウンドごとに変更可能)をサポートしています。
GMとは別プロセスでサウンド再生を行いますが、制御元のGMのウィンドウが消失すると自動終了する仕組みになっているので、万が一GMのゲームがフリーズした場合でも「サウンドだけがずっと鳴ったままになる」という事態は起こりません。
また、サウンド再生を行ってもGMのゲームスピードを遅らせることはありません。ループ再生の場合も安定して動作します。
いまいち分かりにくいかも知れませんが、GMのゲームが この「BGM再生用のプログラム」を非同期制御するという仕組みです。
GM側からは、簡単なスクリプトを呼ぶだけで透過的にサウンド再生を行うことができます。
例:my_music.mp3を音量80%で再生する
bGM_play("my_music.mp3", 0.8);
現在、細かい改良と調整を行っています。
0170よこしまなMr.0
2006/02/26(日) 21:15:52ID:2s5I4Elfttp://gamemaker.main.jp/modules/news/article.php?storyid=33
名前が覚えやすい(BGMとカブる)のが最大の特徴です( ワラ
0171名前は開発中のものです。
2006/02/26(日) 23:33:03ID:FvVbCteIIDが妖精サンダー
0172名前は開発中のものです。
2006/02/27(月) 23:56:13ID:cC0bdxOdwithの中ではotherが元々selfだったインスタンスを参照するようになりますが、
では元々otherだったインスタンスはどうやって参照できるのでしょうか?
具体的には、自分と敵弾がぶつかった時に破片を飛び散らせようとしてるのですが……
// self=自分、other=敵弾
var i, ii;
for (i = 0; i < 8; i += 1) {
ii = instance_create(x, y, obj_fragment);
ii.direction = i * 360/8;
ii.speed = 4;
with (ii) {
motion_add(???.direction, ???.speed / 2); // ←ここで敵弾の動きを合成したい
}
}
??? の所に何を入れたらいいかわからなくて困っています。
0173172
2006/02/28(火) 03:02:25ID:emwe4w/Oii.hspeed += other.hspeed / 2;
ii.vspeed += other.vspeed / 2;
で可能でした。
でも後学のため、with内から外側のotherを参照する方法
ご存じの方いたらお願いします。
0174名前は開発中のものです。
2006/02/28(火) 14:52:42ID:vklEnotzスクリプト内部の一時変数に記憶しておくしかないかな。
-----
var other_id;
other_id = other.id;
with ( ) {
// withループ内でも、変数 other_id で 元々の other のインスタンスIDを参照できる。
}
-----
0175よこしまなMr.0
2006/02/28(火) 18:56:54ID:6cM1DN1x174さんが仰っている通りですね。たぶんその方法しかないと思います
bGMのプレビューデモ(*.gmd, *.gm6)を公開しました。
ttp://gamemaker.main.jp/modules/news/article.php?storyid=34
マウスクリックおよび[←][→]キーに合わせてoggストリームの音量・パン・ピッチシフトを変化させるデモです。
0176172
2006/02/28(火) 23:15:51ID:emwe4w/Oども、それでいけました。
with内では何も付けなければvarで宣言した変数を参照できるみたいですね。
ん、でも、同じ名前のインスタンス変数があったらどうなるんでしょう?
実験してみたらこんなん出ました。
var inst1, X;
inst1 = instance_create(0, 0, object1);
X = 'var X';
self.X = 'self.X';
inst1.X = 'inst1.X';
with (inst1) {
show_message(X); // ←これは var X になる
show_message(other.X); // ←これは self.X になる
show_message(self.X); // ←これは inst1.X になる
}
0177名前は開発中のものです。
2006/03/07(火) 20:49:20ID:c3gblkOt0178名前は開発中のものです。
2006/03/08(水) 00:00:41ID:pSfOHtTI0179駄々
2006/03/08(水) 15:02:46ID:U8guAHRA質問なんですがキャラのアニメーションでカーソルキー→を押したら
右に移動しているアニメ
←をおしたら左に移動しているアニメを表示させるにはどうすれば良いのでしょうか
簡潔に言うと
→を押したら ● ⇒ ●
>| /|
みたいな・・・(分かりにくくてすんません)
0180名前は開発中のものです。
2006/03/09(木) 01:46:39ID:fAsQapMu右用オブジェと左用オブジェ作って同一親オブジェクトを登録
右用オブジェと左用オブジェの逆方向のキーボードイベントで逆のオブジェクトへ
インスタンスチェンジする。
共通のイベントは親オブジェクトで作成する
みたいな感じがいいんでないかい?
0181駄々
2006/03/09(木) 01:58:19ID:kV2wX20Fそれでなんとか出来そうです
ありがとうございます!
0182名前は開発中のものです。
2006/03/10(金) 02:52:55ID:/vwSpjSbttp://gamdev.org/up/img/4909.zip
0183名前は開発中のものです。
2006/03/10(金) 18:35:27ID:kxaQ8pGuレーザーの動きが滑らかでいいね!
普通に楽しめますねー。
0184名前は開発中のものです。
2006/03/11(土) 13:07:48ID:B0K6mRFK贅沢いうと、複数ロックオンした時はいっぺんに発射するよりゼロコンマ秒遅れて時間差で
発射するようにしたほうが爽快な気がス
0185名前は開発中のものです。
2006/03/12(日) 16:59:08ID:EbhNu3eRパッド差してると勝手に右下に移動しちゃうんだけど……。
0186名前は開発中のものです。
2006/03/13(月) 03:31:36ID:3bCLLKKk0187名前は開発中のものです。
2006/03/13(月) 03:45:59ID:1xHX09ww時間差実装してみました。ついでにレーザーの表現もちょっと変えてみたです。
>>185
パッドによってはjoystick_xposが厳密に0を返さないことがあるみたいですね。
閾値を設けて判定するように修正しました。
ttp://gamdev.org/up/img/4967.zip
イカミサイルが時々何にも当たってないのに消えちゃう現象が出るけど、
原因がつかめん……
0188名前は開発中のものです。
2006/03/14(火) 19:14:36ID:8RK8eiVf即効で修正しまくるオマエGJ。
0189名前は開発中のものです。
2006/03/17(金) 21:57:55ID:/PdAbkhMこういう入力の仕方を教えて頂けないでしょうか
if there is an object at a position
でオブジェクトAがオブジェクトBの一定範囲内に入った場合、行動を起こすようにしたいのですが
この数値の範囲の入力方法がわからず困っております
マニュアルに書いてあるような初歩的な事かもしれないので大変恐縮ですがお願いします
一応、印刷された旧バージョンのマニュアルを持っているので
読んではみたのですが探し当てる事が出来ませんでした…(´・ω・`)
0190名前は開発中のものです。
2006/03/17(金) 23:48:51ID:UTobLwMnif there is an object at a positionは登録したオブジェクトと指定したオブジェクト同士が
衝突しないと真をかえさないので”一定範囲に入ったとき”とはなんだかニュアンスが違うような気がしますが?
自分のやり方でわるいですが”Execute a piece of code(コードを実行)”でGMLを書いたほうがすっきりすると思います
たとえばオブジェクトAのオブジェクト名を”obj_A”オブジェクトBをobj_B”として一定範囲に入ったときオブジェクトAを
動かしたい場合obj_AオブジェのステップイベントにExecute a piece of codeを登録する。
”一定範囲”が単純に”A,B間の距離”でいいならpoint_distance(x1,y1,x2,y2)関数(2点間の距離を計算する)を
使えばいいと思います。100ピクセル以内に入ったときとしての記述はこの場合・・・
if(point_distance(self.x, self.y, obj_b.x, obj_b.y) <= 100)
{
//ここに動かす為の記述をする
}
というふうにしてみてはどうですか?
0191190
2006/03/17(金) 23:55:05ID:UTobLwMn○ if(point_distance(self.x, self.y, obj_B.x, obj_B.y) <= 100)
細かい訂正及び長文ですいません(´・ω・`)
0192名前は開発中のものです。
2006/03/18(土) 00:27:30ID:WYhXOtxE>if there is an object at a positionは登録したオブジェクトと指定したオブジェクト同士が
>衝突しないと真をかえさないので
済みません、知りませんでした…
プログラムとかできないよって言う友人と作業しているので
GMLは使えないのですが(書くべきことを書いていなくて重ね重ね済みません(´・ω・`))
変数でも同じ事ですので大変参考になりました、有難うございます
0193190
2006/03/18(土) 02:26:21ID:9Lf6fvmN> プログラムとかできないよって言う友人と作業しているので
> GMLは使えないのですが(書くべきことを書いていなくて重ね重ね済みません(´・ω・`))
ああ・・なるほどGMLなしなんですか^^; GMLでもアクションアイコン(っていっていいのかな?^^)
でも自分が思っている動きができればOKかと^^
で・・・実現できそうですか?(いっちょかみしたので少し気がかり^^
0194名前は開発中のものです。
2006/03/18(土) 04:07:36ID:KjV7bw5B0195名前は開発中のものです。
2006/03/18(土) 13:39:39ID:bMeUjPwj0196名前は開発中のものです。
2006/03/18(土) 14:00:07ID:U+h1lbvn本当に有難うございました。
0197よこしまなMr.0
2006/03/18(土) 21:43:30ID:G0hInr+Cttp://gamemaker.main.jp/modules/articles/article.php?id=25
0198駄々
2006/03/23(木) 20:11:36ID:QpjTFGD2また質問なんですが主人公キャラに重力を与えたのですがブロック(地面)の上に乗ると
←方向に移動してしまいます(移動と言うよりも左に引っ張られている感じ)
どなたか解決方法を教えてください
0199駄々
2006/03/23(木) 21:07:49ID:QpjTFGD2自己解決しました
すいませんでした
0200名前は開発中のものです。
2006/03/24(金) 00:10:23ID:1MGw+l1bいいけど、質問する前に、もっと慎重にな。
フォーラムの質問もおまいなら削除依頼なりなんなりしておけよ。
あと、症状だけいわれてわかるエスパーなどいないことも覚えておいてくれ。
0201名前は開発中のものです。
2006/03/24(金) 22:32:50ID:PR6KQDDwぶっちゃけ過疎ってるんだから小さな質問でもいいんじゃない?
>>199
自己解決すんな。回答を待て!w
0202名前は開発中のものです。
2006/03/27(月) 12:11:59ID:Ft51kzDw…頑張ってみた。
はぁ。
0203名前は開発中のものです。
2006/03/27(月) 13:28:28ID:Ft51kzDwhttp://www.uploda.org/uporg347869.zip.html
0204名前は開発中のものです。
2006/03/27(月) 17:34:37ID:w/CqsEE/0205名前は開発中のものです。
2006/03/27(月) 19:38:49ID:Ft51kzDwジョージ…残念ながらそれは無理だ。
別に出来ないことはないが時間が無い。
リソースにメッセージデータが入ってない箇所が多すぎる。
いちいち特定してCRCエラーが起きないようにビクビクしながらやるのは
すごく大変なんだ。
クラック対策用の処理の潰し方が結構適当。
とりあえず致命的エラーは起きないようにしてあるけど、
起動時に必要な処理をどっか潰してる可能性もある…。
まぁ、俺が使っている"かぎりでは"何の問題もない。
ちゃんとファイルのロード、セーブも出来てるし実行ファイルの出力も出来た。
実行ファイルの方には何も手をつけてないから当然か。
0206名前は開発中のものです。
2006/03/29(水) 06:10:57ID:s0l2fzu90207名前は開発中のものです。
2006/03/29(水) 14:06:16ID:BdCnmoxX0208駄々
2006/03/29(水) 22:26:10ID:Mzj60OcAロックマンのようなボスキャラの動きなどはGMLコード(だっけ?)を使わなくては作れないのでしょうか?
質問ばかりですいません(しかも無駄レス・・)
0209名前は開発中のものです。
2006/03/29(水) 22:34:41ID:PV+kH8qvロックマンのようなボスの動きというのがわからないので回答できません。
すみません・・・
0210駄々
2006/03/30(木) 00:08:23ID:98xmE8PI・左右にランダムに動く(又は壁にぶつかったら反対方向に動く)
・2〜3秒に一回攻撃する
・ピンチになると本気モードになる(これは実装するか分からないのですが一応)
以上の動きをさせたいんですが
GMLコードを使わなくてもできますか?
0211名前は開発中のものです。
2006/03/30(木) 13:19:39ID:YmzEqY6O実際試してないができると思う、詳細はマニュアルorヘルプファイル参照願う
>左右にランダムに動く
ステップイベントにWith a change perform next actionをおいてsidesを2で指定し、その下にReverse horizontal directionアクションをおいて反転させる
With a change perform next actionの結果が偽ならReverse horizontal directionは無視され結果1/2の確率で反転される。
>壁にぶつかったら反対方向に動く
ステップイベントにIf there is a collision at a positionを置いてRelativeにチェック、x,yにはボスが1ステップで動く量を代入する(実際に動く前に
どこへ動くかの前判定になる)objectには壁になるオブジェクトを指定してやる(壁オブジェは親オブジェでくくっといてこの親でobjectに代入しておくと後々楽)
後は左右に動くと同じでReverse horizontal directionを登録、縦方向の動きがあるならReverse vertical directionもあわせて登録しておく、
この場合Start of block、End of blockで前述のReverse horizontal direction、Reverse vertical directionアクションをまとめてやる。
この2つは既に動作アクションが前もって実行されていることが前提であるから生成イベントとかで動作アクション等を割り付けておく。
0212211
2006/03/30(木) 13:44:20ID:YmzEqY6O>2〜3秒に一回攻撃する
アラームイベントを使う。
一番シンプルなのが常に指定した単位秒で毎回攻撃するという形で書かせてもらうと
生成イベントでアラームアクションを登録number of stepには現状ルームスピード*秒数の値を、
in alarm noにはどのアラームを使うかを指定する。
指定したアラームのイベントに攻撃する用のアクションを登録していって、最後に生成アクションでつくったアラームアクションをコピぺする
これで指定秒ごとに繰り返すようになる。
>ピンチになると本気モードになる
ピンチというと普通HPがある程度のとこまで減ったとかそんなんだよね?
それ前提で・・・
ステップイベントでHPとなる変数を If a variable has a valueで監視→規定量以下になったらさっきの
「2〜3秒に一回攻撃する」の秒数を減らすとか、移動スピードを多くするとかしてみたらどう?
実装するときはこの秒数なり移動スピードを変数で登録しておくなどの下ごしらえで結構楽に組めたりするよ
0213211
2006/03/30(木) 14:02:04ID:YmzEqY6O>>左右にランダムに動く
>ステップイベントにWith a change perform next actionをおいてsidesを2で指定し、
>その下にReverse horizontal directionアクションをおいて反転させる
>With a change perform next actionの結果が偽ならReverse horizontal directionは無視され結果1/2の確率で反転される。
ステップイベントでやると毎回確率判定が行われるから反転が重なる可能性がおおいので
これもアラームアクションを使って何秒間かに1回判定をかける方がいいですね
0214名前は開発中のものです。
2006/03/30(木) 16:02:04ID:flRGae76とりあえずは上のアラーム使う方法が手っ取り早いと思うけれど、
タイムラインで行動パターンを組んでループさせる方法もあるね。
特に説明はしませんが
ステップ数 行動
0 ランダムで方向決める
100 弾を撃つ
110 ジャンプ
200 弾を撃つ
250 弾を撃つ
400 先頭へ戻る
タイムライン上のスピードの変数もあったりするから、
GMLも知っておくといろいろ応用が利く。
パターン化された動きをするならこっち、
AIっぽく振る舞わせるならタイマーかなあ。
0215名前は開発中のものです。
2006/03/30(木) 16:06:44ID:flRGae76クリック&プレイ使ってた時の癖が
0216駄々
2006/03/30(木) 21:16:29ID:98xmE8PIとりあえず後で試してみます!
自分もクリック&プレイしてたな〜・・・・
0217名前は開発中のものです。
2006/03/31(金) 16:41:53ID:4VV46Pcn0218名前は開発中のものです。
2006/04/03(月) 14:38:26ID:W85JHXvuアレくらいわかりやすいともっと流行るのかなあ……
0219駄々
2006/04/13(木) 12:58:29ID:CCVlXrag・主人公についてくる
・敵が近づいてきたら攻撃しにいく
・敵が近づいてきたら遠ざかる(↑のとは違うキャラです)
上記のようにキャラを動かしたいんですかどうすればいいのでしょうか?
前回のはうまく動きました!(本気モードはまだやってない)
211さんありがとうございました
0220名前は開発中のものです。
2006/04/15(土) 19:49:09ID:fbNvFET3チュートリアルのボールゲームは作れたけど、自力じゃ歩くキャラ作るのもままならないやw
0221名前は開発中のものです。
2006/04/17(月) 01:49:39ID:MWZgJo7r30フレームのroomAにおいて、
オブジェクトBの座標に向かってスピード80で進むオブジェクトAがオブジェクトBと重なった時に次のイベントが発生するように
イベントの発生条件をアクションリストのIFを使って
obj_A=(obj_b.x,obj_b.y)
としたのですが、2〜3回に一回程素通りされてしまいイベントが開始されません。
どうすればいいのでしょうか?
あと、オブジェクトが重なりあった時の前面に出るオブジェクト画像の優先順位は変えられないのでしょうか?
どなたかお願いしますm(__)m
0222よこしまなMr.0
2006/04/17(月) 05:47:17ID:cr8rW51E>オブジェクトAがオブジェクトBと重なった時に次のイベントが発生するように
Case1. 自インスタンスの位置がobj_bの位置と同じかどうか判定する場合:
[If an expression is true]
expression: (x == obj_b.x) && (y == obj_b.y)
Case2. 自インスタンスのspriteがobj_bのspriteと重なっているかどうか判定する場合:
[If an expression is true]
expression: place_meeting(x, y, obj_b)
>オブジェクトが重なりあった時の前面に出るオブジェクト画像の優先順位
各オブジェクトのdepth(深度)を変更します。
0223名前は開発中のものです。
2006/04/17(月) 10:55:50ID:Zn9G8oL+>>222さん
>>221さんは
>スピード80で進むオブジェクトA
及び
> 2〜3回に一回程素通りされてしまいイベントが開始されません。
といってるから多分コリジョンエリアが重なっていない症状が出てるんだと思うんだけど?
だとするとexpressionは線分で判定するcollision_line()がいいんじゃないの
collision_line(xprevious, yprevious, x, y, obj_b, false, true)
みたいな感じで・・・
0224よこしまなMr.0
2006/04/17(月) 20:33:57ID:cr8rW51E補足どうもです。
>>222のCase2は素通りしたら意味が無かったです・・・
collision_line()で試してみたところ、collision_line()は「線分そのものと、静止しているobj_bが重なる場合」なら判定できるようです(つまり、「obj_Aのスプライトの形状」および「obj_bも動いていた場合」は考慮されない)。
一方、obj_A,obj_bそれぞれの動きとスプライトまで考慮し、さらに素通りした場合も考慮にいれてコリジョン判定をするとなると、どうしてもGMLでごちゃごちゃforループするしかないみたいです。
(素通りしないようにすれば、通常のコリジョンイベントで十分なんですけどね・・)
0225221
2006/04/18(火) 20:49:01ID:kvqrJBQi>>223さん>
詳しい説明有難う御座いますm(__)m
obj_bと同種のオブジェクトをポジションランダムに複数配置して、その上をobj_aが高速で移動していく動きを作りたかったんです。
コリジョンだとビリヤードの球のような動きになってしまったのでできれば他の方法が無いかとおもいましたが、
まだ初心者でGMLを複雑に使いこなすのは厳しいので、まずは欲張らずにコリジョンを使おうと思います。
丁寧に有難う御座いました!
0226223
2006/04/19(水) 14:23:47ID:D713torSなるほど、30fpsでspeedが80という高速オブジェってどんなんだろうと
思ってたんだかなんとなく判った。
その要件だとステップごとにdistance_to_object()でターゲットになるobj_bとの距離を
計測してやって80以上の場合にspeedを80とし、未満の場合はdistance_to_object()で
測定した距離の値をそのままspeedに代入してやってはどうだろうか?
減速する形にはなるが減速するのはobj_bと重なる時の1ステップだけで、なおかつ必ず
衝突判定がとれるようになると思う。一回試してみて
0227名前は開発中のものです。
2006/04/24(月) 14:36:25ID:+HnYfiB70228よこしまなMr.0
2006/04/24(月) 21:24:01ID:CcS3zOyAGMの日本語化について、現在までの情報をまとめると以下のようになります。
▲GM5.3Aの場合、ttp://gamemaker.main.jpで配布している「Game Maker 5.3A用 日本語化パッチ」でインターフェイス部分のみ日本語化可能。
ただし、>>202=203=205さんがメインメニューも日本語化可能なパッチを作成された。(このパッチについてはGMのライセンスに触れるかどうか微妙。現在リンク切れ。)
▲GM6の場合、実行ファイル自体が暗号化されているため、仮に技術的に日本語化が可能であったとしても、GMのライセンスに触れるため、パッチを作成することができない。
以前、本家ttp://www.gamemaker.nl/facts.htmlにて、「GMのプログラムが翻訳されやすいように修正を加えるといったことを計画している」との記述があり、作者さんにメールで問い合わせた結果、「いつになるか分からない」との事。
つまり、GM6自体のi18n(インターフェイスや表示メッセージの多言語化)待ちの状態。
(GM初心者で英語も苦手という人は、本家ttp://www.gamemaker.nl/doc.htmlにて配布されているGM6.0のヘルプ日本語訳が非常に役に立つと思います。)
で、i18nがいつになるか全く不明なので、「日本人のためのGMバイブルみたいなものを作れば、多くの人が気軽にGMを使えるのではないか」と思って試しに作ってみたのが次のHTML Helpです。(まだ目次を書いたぐらいですが)
ttp://gamemaker.main.jp/dlfiles/gm_japan.chm
※WinXP SP2の場合、ファイルのプロパティで「ブロックの解除」ボタンを押さないとHTMLが表示されません。
0229名前は開発中のものです。
2006/04/26(水) 09:53:02ID:GhrlEj72乙です。
ヘルプに含まれているGMLの各関数にサンプルコードを付けて欲しいなー。
ここで言うことではないとは思いますがとりあえず要望。
0230229
2006/04/26(水) 10:07:26ID:GhrlEj72>>229で書いた件ですが、ヘルプはGM付属の直翻訳ヘルプの事でして、よこしまなMr.0氏が作成しているHTML Helpではありません。
で、HTML Helpをちょっと見てみました。
関数リファレンスが期待していたような記述になっていてよかったです!
例:項がシンプルで判りやすくGJ!完全版を期待してます。
(たまにGMLの関数で扱いがわからず、数時間も悩むことがあるのでホント期待してます・・・)
0231よこしまなMr.0
2006/04/29(土) 07:39:55ID:QD/JyLTS関数リファレンスについては正確性と分かり易さを両立させようと心がけていた次第です。
>228のHTML HelpはDocBookで生成したものですが、いまいち作業が捗りませんでした。
そこでOpenOffice.org 2で書き直してみると、まともなPDFを素早く生成してくれたので、この形式を採用することにします。
ttp://gamemaker.main.jp/dlfiles/u_gm_rev1.pdf
目標としては、リニアに読んでいけば理解できる構成ですね。
それと、こういった文章があればGame Makerを大学や専門学校の講義で活用したい教員の方にとって便利だろうと思います。C++などの言語解説は抜きにして「純粋にゲーム作成について講義をしたい」とか。
0232名前は開発中のものです。
2006/05/02(火) 00:31:42ID:KgjzlEux0233名前は開発中のものです。
2006/05/02(火) 09:25:24ID:2lQlIqWb作者はそろそろUnicode位対応してくれと思う。
そんな簡単なもんでもねえのかなあ。
催促したら他言語化早まるだろうか。
0234よこしまなMr.0
2006/05/03(水) 17:54:24ID:blvZBroHttp://gamemaker.main.jp/modules/newbb/viewtopic.php?topic_id=58&forum=8
>>233
GNU gettextを使えばインターフェイスのi18nは割と楽に実装できるんですけどねぇ。
とりあえず、6.2が出た後の動向に期待がかかります。
0235名前は開発中のものです。
2006/05/11(木) 07:00:50ID:7O4pl5z4オブジェクト増やしていくとF5のローディング時間だんだん長くなるでしょ
敵キャラクター調整してるとこの時間なんとかならないかなぁとか思うんだけど
みんなどうしてる?
0236よこしまなMr.0
2006/05/11(木) 21:52:28ID:jwuiFM4n>>235
スプライト等の設定画面でLoad only on use(遅延ロード)にチェックを入れておくと、起動時のメモリ確保時間が節約されます。
また、デバッグモードを利用すると、敵キャラの調整が楽になります。
F6でデバッグ起動するとデバッグ窓が左上に出てきて、動作中のゲームを自由に操れます。
ゲームを再スタートしたり一時停止・再開したり、任意のGMLコードを実行したり・・
例えばdebug_enemy_set_speed(7)のように、デバッグ窓から実行するためのScriptを作っておくと楽です。
それと、これは関係ないかもしれませんが、
デフォルトのローディング画面だとロード時間が長く感じられるので、別の画像に変更する方がいいかもしれません。
0237名前は開発中のものです。
2006/05/20(土) 15:11:57ID:xwk6yleSそれともここで公開してもよろしいのでしょうか?
0238名前は開発中のものです。
2006/05/20(土) 15:29:41ID:1YSEs6Gy公開は自分の判断ですればいいと思うけど
0239名前は開発中のものです。
2006/05/20(土) 15:36:46ID:xwk6yleS公開を宣言する場所を探しているんです
(ついでにそこにうp出来ればなお良い)
とりあえずそこそこ人が楽しめるモノが出来るまで
自分のホムペで細々とやっていきます
0240名前は開発中のものです。
2006/05/22(月) 16:43:41ID:Urgniyb9該当スレにリンクを貼ってるよ。
たとえば>>6
0241名前は開発中のものです。
2006/05/25(木) 01:09:42ID:diTB1c6UGMの練習の為にARPGを作ってるけど
ここからどうやって完成にもっていけばいいか
わかりません><
アドバイスしてください
目標はマリオブラザーズ3です!
0242名前は開発中のものです。
2006/05/25(木) 10:49:49ID:diTB1c6U夢中になってしまった
httpのhとったほうがいいのかな
ttp://gamdev.org/up/img/5883.zip
0243名前は開発中のものです。
2006/05/25(木) 13:31:34ID:3ZL7XTw3洋RPGによくあるような、右で移動先指定、左で攻撃。
障害物の向こうに移動先指定したときに、やたらウロウロするね。
いっそ細かい障害物は無しにして、敵との距離だけ気にして動き回りながら、
スキをみて斬りつけるようなゲームでもいいんじゃないかな。
あとは敵との衝突とダメージ判定がつかないと何とも言えないですな。
ゲーム内容によっては、キャラの移動速度を遅くしたほうがいいかも。
0244名前は開発中のものです。
2006/05/25(木) 18:11:42ID:Mwacr01Yダメージ判定つけて、攻撃の種類とか敵の種類増やしたり、トラップつくったり。
ある程度まとまった数が出来たら、
それ使ってステージを作っていくってのはどうかな。
移動時に声出すのがかなりうるさいかと。
あと絵が前向きしかないけど、向きとか付けるのかな?
どの辺がマリオ3なんだろ、と一応つっこんでおく。
0245名前は開発中のものです。
2006/05/26(金) 06:43:29ID:k4FSi0vw洋RPGってディアブロとかかなあ
舞台はダンジョンをやめて大草原にしようかな
障害物のないところを走り回りながらジュンペーが飼ってる
羊をころしまくるハイジが主人公 あのスプライトは
本当はSLGつくるつもりで探したやつなんだあ
向きとか動きのある素材また探さなきゃなぁ(googleイメージで?)
トラップは 羊と思って刺したら実はおじいさんだったという
0246名前は開発中のものです。
2006/05/26(金) 13:59:02ID:kfoxKnSOちょwwwwwグロゲーかよwwwwww
0247名前は開発中のものです。
2006/05/26(金) 14:13:36ID:d77U9LBUそんな面白くなさそうなゲームやりたくねえ
0248名前は開発中のものです。
2006/05/26(金) 19:34:47ID:tJAkI24Dなんとなく物足りない感じがするので
なにかアドバイスあればお願いします
ttp://gamdev.org/up/img/5901.zip
出来ればこっちの方が効率がいい、
コレにはこうすればいいという助言も
お願いしますorz
2,3日だらだら作ってもそれっぽくなるってのは面白いですね
0249名前は開発中のものです。
2006/05/26(金) 20:58:31ID:L3nBDPE8せっかくアドバイスしてくれたのに ゴメンね
おもしろいゲーム考えれるようにがんばります
ありがとう
0250よこしまなMr.0
2006/05/26(金) 22:56:33ID:hl3VOkW0画面の構成的には2Dのゼルダに近い印象を受けました。
移動や攻撃がマウス主体(2.5D, 3DのオンラインRPGによくあるタイプ)なら、そこらへんのロジックをしっかり作り込むとゲームに安定感が出てくると思います。
>>248
乙です。
えーと、オブジェクト名等に日本語は使えませんです…
動く床はGMLをバリバリ使わないとおそらく実装できないので、後回しにしてはどうでしょうか?
ステージごとに30秒程度の制限時間があって時間内にゴールに置いてあるバケツに飛び込まないと主人公が爆発してしまうというゲームとか面白そうですねw
サッカーボールにぶつかると制限時間が減ってしまうとか
0251名前は開発中のものです。
2006/05/28(日) 12:12:52ID:S2pwbiORダークリフレインをDLしてみた
P4-3.2Ghz・520MBのPCでゲーム起動に2分もかかる
ゲームエンジンのせいだろうけど重すぎ
上のゲームは音楽はなかなか良かった
その他のゲーム部分はイマイチつーか発展途上?
しかしRPGツクールを逸脱しない
(RPGツクール作品にない個性が見られない)
のならなぜ自分でシステムから作ろうとするのか
それがロマンなのかな?
0252名前は開発中のものです。
2006/05/28(日) 12:13:29ID:S2pwbiOR貴重な人生の時間の無駄ではないか
ツクール使えばいいのに
他人の趣味だからまあいいんだけど
0253名前は開発中のものです。
2006/05/28(日) 12:24:07ID:Hq4BFscb0254名前は開発中のものです。
2006/05/28(日) 12:46:08ID:IztjGB2KGM使ってまでツクール作品みたいなの作るなよってことじゃないの
0255名前は開発中のものです。
2006/05/28(日) 12:54:19ID:lqqnBJJYが誰もGM使いを止められないのだ
しかしせめてツクール作品とは一線を画した個性を盛り込んで欲しい
そうじゃないならツクール作品をやるよねユーザーは
やってくれるのはせいぜい作者の個人的な知り合いとかそのくらいで
0256名前は開発中のものです。
2006/05/28(日) 18:28:28ID:nbxXMUhOレジスト記念及び某段階的学習用にSTG作ってみた。
うーん、弾幕の制御めんどくさす(´・ω・`)
0257名前は開発中のものです。
2006/05/28(日) 18:47:08ID:jq+wgQgDクリアできんと思ったらボス倒せないのね、把握。
しかしあれだけタイムラインが長くなると混乱して来るね。
0258名前は開発中のものです。
2006/05/28(日) 20:24:37ID:LnCR+cX5スクロール全部をタイムラインで制御するよりは、ビュー使ってスクロール
させた方が良いんじゃないだろうか。座標系がちょっと面倒だけど。
0259名前は開発中のものです。
2006/05/29(月) 19:54:34ID:2XB3jJt1移動する床は難しいんですね(´・ω・`)
今の感じじゃなんとなく微妙な物になってしまいそうなので
ゲームの目的を変えてもっと主人公の特徴を掴んだものにしようと思っています。
歩行者を避けて標的の建物に向かって特攻するとかw
0260名前は開発中のものです。
2006/06/03(土) 15:39:31ID:eO/uDXYO0261名前は開発中のものです。
2006/06/03(土) 21:19:02ID:qiE6o5n7ボス倒せるようにしたEXEファイルもうpして下され(´・ω・`)
0262名前は開発中のものです。
2006/06/06(火) 04:47:17ID:webE4vRF今さらながら落としてみたら面白かった。
下手くそな自分には難しかったけど。
弾早すぎて回避できん。
絵がシンプルなデザインで鼻につかず、
効果音が気持ちいい。
ボスの攻撃パターンとかかっちょいい。
続きがあったらプレイしたいと思える作品だった。
0263名前は開発中のものです。
2006/06/07(水) 21:16:11ID:NTwFPCn2ボス完成してたのに・・・
んで途中までのバックアップファイルがあるので自分が気になってたところの
修正も兼ねてそこから作りなおしていこうと思います。
で、ボス完成した直後に作ったボスonlyの実行ファイルがあったのでみんなテストしてみてくれない?
意見聞いて参考にしたいので・・・
ttp://gamdev.org/up/img/6029.zip
高次面のボスを想定してつくってるので難易度は高めです。
3.9mほどあるので重いですがお願いします。
操作はreadmeを参照願います。
0264名前は開発中のものです。
2006/06/07(水) 21:50:29ID:35Eoy4Tn10回ぐらいプレイしたけどクリアできんかったw
下手くそなので真ん中の機銃から逃げてると、バラマキに当たって死んじまう。
気になったのはバラマキの出る量がかなりランダムっぽいところ。
余裕で回避できて良い線までいけるときと、
密集率が高すぎて何もできずに死ぬときの差が激しい気がした。
あと最初のアイテム出すカプセル?が硬すぎな気がする。
壊してる間に攻撃されてイヤだった。
自機の弾の量が多くて敵の弾が見難いってのもあるかな。
感想をまとめると、普通のシューティングって感じがする。
欠点もそのまま普通のシューティングを受け継いでると思う。
もっとオリジナルな要素が欲しいなあ。
0265名無しさん@お腹いっぱい
2006/06/11(日) 11:54:12ID:xKZPVPlz0266名無しさん@お腹いっぱい
2006/06/11(日) 11:55:08ID:xKZPVPlz0267名前は開発中のものです。
2006/06/11(日) 19:44:44ID:OtKhRJ0Q0268名前は開発中のものです。
2006/06/11(日) 20:08:31ID:5xEu+B7T好きなステージから始められるとか、倒したボスの特殊武器が使えるとか
0269名前は開発中のものです。
2006/06/11(日) 20:26:31ID:AnABClM30270名前は開発中のものです。
2006/06/11(日) 21:25:29ID:89W/xJ3Dパッド差してやってる? >>185と同じ現象かもしれんね。
0271263
2006/06/12(月) 11:52:45ID:bCUsYhdY自分、GameMakerが標準でバックアップしてるの知らなくて同じフォルダーに生成される
同名の.gb1ファイルを.gm6にリネームしたら復旧しました。お騒がせしてすみませんでした。
>>267氏
>>270氏の言っているレス辺りを参考に対策します。報告ありがとうございました。
>>264氏
バラマキと言われている回転砲座についてですが、現状ランダム要素は含めておりません。
弾の密集率も狙ってやっている部分なので・・・攻撃パターンを間引いて量を抑制する事も考えていますが
初めて作ったボスなのでどこまでできるか試してるのもあるので当面は現状のままでいこうかと思っています。
アイテムキャリアーの硬さはこんなもんだと思っています。この面はキャラクターを作成してうまく動いてるかの
確認とパラメーター調整の為に作ってある面(gamemakerでいうroom)で本番面は別にあり、とりあえずパワーアップを
最大にまで持っていく事ができるようわざとキャリアーをたくさんだしてます。自機の弾の量は自分も引っかかっていた部分なので制限かけてみようと思います。
色々意見聞かせてもらって感謝です。>>264氏 とりあえず>>267氏の件が致命的なのでそちらから対処したいと思います。
0272267
2006/06/12(月) 16:14:37ID:SWv1aUtr0273263
2006/06/12(月) 22:07:47ID:bCUsYhdYこれでいけるか確認してください。
ttp://gamdev.org/up/img/6130.zip
実行ファイルじゃなくて.gm6ですが・・・・
例によって操作はreadme参照のこと
ボタンの使い方とか操作性とかが結構気になってます。
連れに言わせるとショットセレクトがわかりにくいんじゃない?って言われたし
コンフィグ作ってパターン選べるようにするとかがいいのかな・・・・
0274名前は開発中のものです。
2006/06/13(火) 23:48:48ID:nj6Xbt0/ビュー使うと仰るとおり座標の管理が面倒なので全部タイムライン制御に
してみた。正直自分でも見難いと思ってる。本末転倒ここに極まれり。
>>261,262
ボスの先まで頑張って見る。
グラはあれだ。絵が書けないからアブストラクト系にしてみたんだ。
微妙にABAの人にも影響受けてる。テトリス成分も含まれてる。
0275名前は開発中のものです。
2006/06/16(金) 18:27:20ID:3Wjv2RFpゲームデザインは悪くない、どころか好印象なんだが、ゲームスピードが
ぶっ飛んでるのは漏れだけかい?
あと敵弾イベントで自機とのコリジョンの所のエフェクトアクションも消さんと
未レジスト版じゃ動かんよ。
0276名前は開発中のものです。
2006/06/16(金) 18:38:19ID:AVnmn6qh実際に配布するときはexe形式なんだから良いんでね?
本人じゃないから知らないけど。
0277名前は開発中のものです。
2006/07/11(火) 00:43:14ID:rLmRm4e20278名前は開発中のものです。
2006/07/14(金) 21:23:06ID:xnbmdkWr0279名前は開発中のものです。
2006/07/14(金) 21:24:02ID:i3ho6+y90280名前は開発中のものです。
2006/07/18(火) 21:18:39ID:3ID5eODs文字サイズが16ではなんともないのに18とか20だと所々文字化けする。
同じ症状の人いる?
0281よこしまなMr.0
2006/07/19(水) 01:21:33ID:MFf1CsCB拙作スクリプトがお役に立っているようで何よりです(_ _)
>>280
それはmbText(ttp://gamemaker.main.jp/modules/articles/article.php?id=23)を使ったときに起こる症状でしょうか?
もしそうであれば、症状を示す短い.gm6ファイルをupして頂ければこちらで調べてみます。
0282280
2006/07/19(水) 21:01:18ID:v4S9wPeCはい。mbTextを使用しての症状です。
とりあえず18pxと20pxのテキストを仕込んだファイルを用意しました。
http://briefcase.yahoo.co.jp/bc/yakihamaguri00/lst?.dir=/%a5%de%a5%a4%a5%c9%a5%ad%a5%e5%a5%e1%a5%f3%a5%c8
やはり所々文字化けしてしまうようです。他のサイズでは問題なかったのですが…
わざわざスミマセン。よろしくお願いします。
0283よこしまなMr.0
2006/07/19(水) 22:18:55ID:MFf1CsCBupありがとうございます!
見た限りではspr_han20がおかしい事だけしか分かりませんでした(他におかしい箇所があれば教えてください…)
「jFont Maker 2.0.0において、アンチエイリアス無効の状態でサイズ20pxの半角文字スプライトを生成すると、文字が1pxほど左にずれてしまう」
という極めて謎なバグを発見しましたので、次のバージョンアップの時に修正しておきます。
jFont Maker1(ttp://gamemaker.main.jp/dlfiles/jfontmaker1.zip)では幸いにもこのバグは発生しないようです。
0284280
2006/07/19(水) 22:42:58ID:v4S9wPeCこちらこそ調べていただいてありがとうございました!
不具合などは18〜20の文字化け以外は特にないと思います。
とても便利なツールとスクリプトなのでこれからもありがたく使っていきたいと思います。
バージョンアップ楽しみにしてます!
0285よこしまなMr.0
2006/07/23(日) 22:32:40ID:HKzhttqpttp://gamemaker.main.jp/modules/news/article.php?storyid=40
全角文字スプライトのサブイメージ4,5(「・」しか無かった部分)を削除したのでメモリ節約が期待されます。
283に書いた謎のバグも修正しておきました。
0286名前は開発中のものです。
2006/07/28(金) 22:37:10ID:kEU2Tspd左右に移動しながら天井や地面に接触すると微妙にずれやがんの。フォーラムで威張ってる奴も大した事ないし。
これがGMの限界?
綺麗に衝突判定できてる人教えてくれよ。
0287よこしまなMr.0
2006/07/29(土) 00:06:47ID:rsZSRXSSGMにおけるCollision Event(HelpのCollision eventsの項に詳細が載っています)はあくまでも「衝突判定の一例」であり、当然ながら全てのアクションゲームに適用できるとは限りません。
この点でCollision Eventには限界があると言えます。
商用ゲームレベルの綺麗な衝突判定を行うには、時として、GMLを用いて"Collision Detectionロジックを自前で実装する"必要が生じてきます。
ここらへんは、スプライトの形状や各インスタンスの動きを綿密に分析してアルゴリズムを練っていくしかないでしょう。
(すなわちGMの限界は「GMLコードの処理速度の限界」と似たようなものです)
0288名前は開発中のものです。
2006/07/29(土) 00:36:56ID:A+n8FAHn0289名前は開発中のものです。
2006/07/29(土) 17:02:01ID:v2ZszvnOでもスタンドアロンじゃん
あれくらいのもののソースを公開しなくてどうすんだ
0290名前は開発中のものです。
2006/07/30(日) 11:19:24ID:I4TMncqW0291名前は開発中のものです。
2006/08/12(土) 02:42:23ID:DEKCS0ZY0292名前は開発中のものです。
2006/08/12(土) 16:23:30ID:ajfN3bzo0293よこしまなMr.0
2006/08/12(土) 23:32:19ID:SdZVSzGdttp://gamemaker.main.jp/modules/news/article.php?storyid=41
0294名前は開発中のものです。
2006/08/27(日) 23:58:55ID:QjVczOj70295名前は開発中のものです。
2006/09/27(水) 14:06:01ID:LH7ViQeL0296名前は開発中のものです。
2006/09/27(水) 20:10:07ID:vehM9Gbl0297名前は開発中のものです。
2006/09/29(金) 23:07:30ID:4sshqHDy拡張パッケージ(今のDLLの仕組みを進化させたものっぽい)が今回の目玉か。
0298名前は開発中のものです。
2006/10/04(水) 19:34:25ID:VR+YDMNkだんだんコツが飲み込めてきた…気がする。
いや、おもしろいなぁこれ。まったくの素人な自分で
この板にきたのも日曜あたりからなんだけど
それなりにゲームっぽく形ができてくると楽しい。
まだまだ基本的なこともわからんけど
非公式サイトやサンプルゲームのイベント内容確認したりして
もうちょっとランクアップしたい。
0299名前は開発中のものです。
2006/10/09(月) 15:46:39ID:hpHxwreDアクションゲーム作ってみたyo
Z,Xで攻撃。カーソルキーで移動とジャンプ
壺を全部集めればステージクリア
0300名前は開発中のものです。
2006/10/10(火) 00:48:45ID:v0lPsc3Uとりあえず単純な動作だけでも出来るように動かしてみようと
試みてみたのですが。
生成で重力を設定して、コリジョンで床のオブジェクトに反射させてると
徐々に反射が大きくなっていって、最終的にすごい勢いでピョンピョン
飛び跳ねてしまう…。
せめて同じ高さでピョンピョンさせられないのでしょうか?
重力のRelativeにチェックいれるとdirectionを270にセットしてあるのに
左後方にすっとんでいくのも謎なのです。
出来れば重力のある中でジャンプして、着地と同時にピタっと止まってほしいのですが。
コリジョンで床のオブジェ接触で速度0になるように設定すると、床を歩く事が出来なくなり・・。
それで跳ねながらでも移動できればいいかと、前述のように床に反射させてみてたのですが。
しばらくほっといたらキャラが天井と床のオブジェをすごい勢いで往復してたんで
なんとかそれを回避したいのです。
なにか手がないかと、いろいろ試してたんですが。どうにもよくわからず・・。
0301名前は開発中のものです。
2006/10/10(火) 23:37:22ID:xA3KYXnh投稿乙。 ほのぼのした雰囲気がイイ!
>>300
レスしようとちまちま文章にしてたんだが、サンプルを5.3Aで作ってうpってみた。
ttp://gamdev.org/up/img/7797.zip
Game Information でそれぞれの疑問に答えてみたつもりなんで、読んでみて。文才無いけど...orz
/*
チラシの裏
内部処理(GameMaker的な癖)について曖昧のままにやっていくと、 >>300 にあるような壁にぶち当たる人は多いと思う。
ヘルプを熟読し、試行錯誤しながら理解していくと、いずれ解決できることなのだが・・・。
プログラム未経験な人でも理解できるようなドキュメントにまとめられたらいいのだけど・・・。
*/
0302名前は開発中のものです。
2006/10/11(水) 13:30:49ID:jFFQ4JQbそういう前向きな姿勢でやってれば良いゲームが作れると思う。
プラットフォームものなら、ひとまず
ttp://www.gamemaker.nl/tutorial.html
Tutorial: Platform Games (zip file, 1.6 MB)
が参考になると思う。
solidオブジェクトについて知っておくといいと思うよ。
0303300
2006/10/12(木) 07:16:45ID:RaSOVi3Qレスありがとうございます。
いえいえわかりやすくて助かりました。
>>302
レスありがとうございます。
英語はしょうしょう苦手なのですが、
なんとか読み込んでみたいと思います。
本当にありがとうございました。
0304名前は開発中のものです。
2006/10/27(金) 12:44:17ID:TdF2ByKO0305名前は開発中のものです。
2006/10/29(日) 16:51:46ID:wmAHTxrU素材を適当に集めて作ってみた。
ttp://gamdev.org/up/img/7967.zip
ひょっとしたら綺麗に衝突判定ができないで悩んでる人の
参考になるかもしれないのでアップ。
0306名前は開発中のものです。
2006/11/01(水) 02:18:47ID:zw8Gds4qたまーに、壁に引っかかったりするのだがどうしてだろう?
スクリプト見てもどこが間違ってるかわからないよ…。
0307305
2006/11/02(木) 19:31:20ID:AFNzuMaj原因は現在調査中……
0308名前は開発中のものです。
2006/11/07(火) 00:37:41ID:B1V1c0H3solid オブジェクトとの衝突イベンでは、衝突判定→ENDステップ との間で speed に値があると移動してしまう性質があるので、うまくいっていない。
>>305 のサンプルで説明。
斜めに並んでいる白いブロックの接続付近に向かって、下から左上にジャンプするとまれに引っかかる。
まず、右上のブロック(ID:100177)にぶつかる。
solid オブジェクトの衝突の性質により、100177との衝突イベントのあとに、3ドット(hspeedの大きさ)だけ左にずれる。
ここで、衝突したポイントが、左の壁 (ID:100176) まで3ドット以内の位置にいると、めり込んでしまう。
これは、左の壁のID番号が100177より若いので、そのステップ中での衝突判定がすでに終わってしまってるため。
(もし左の壁がのID番号が100177より大きいなら、同ステップで衝突判定が発生するので、このタイミングでの「めり込み」は発生しない)
ヘルプを読み返してみたが、これは仕様らしい。
個人的に、衝突直前まで戻すのは良いが、衝突のあとに移動してしまう仕様は余計なお世話感があるなぁ。
>>305のサンプルを修正するには、この仕様を頭に入れてコードを書き直さないといけないかも。
知らない人がいるかもしれないから、solid オブジェクトの衝突イベントについてのまとめを改めて。
【衝突発生】
↓
(衝突したインスタンスは、xprevious yprevious まで戻される)
↓
【衝突イベントで設定した処理】
↓
(hspeed vspeed gravity 等が設定されていたら、移動する)
↓
【End Stepイベントへ】
※()内は自動で処理される。 solid 属性でないもの同士の衝突イベントならば、処理されない。
わかりづらかったらゴメン。
0309305
2006/11/08(水) 23:34:02ID:3AkviUgR0310名前は開発中のものです。
2006/11/11(土) 21:20:49ID:/XxSsTqqttp://forums.gamemaker.nl/index.php?showtopic=254087
>There has been some delay in the beta of 7.0. Please be a bit more patient. It is now planned at the beginning of December.
>
>Mark
0311305
2006/11/12(日) 14:29:04ID:5m8X/aYf他にもいくつかバグを修正して、自機の衝突判定に関してはほぼ完璧になったと思うが、
今度は新しく追加した敵キャラの衝突判定がおかしい。
まだまだ修正中……
0312305
2006/11/19(日) 10:30:59ID:xsNjHa5eめりこんでしまう問題については、以下の方法で解決できる(それと、
305のサンプルではplace_freeを使うべきところでplace_emptyを
使っていたので、これも修正した。)
・Collisionイベントの最後に以下を追加
//この時点でのx座標とy座標を保存しておく
xendofcollision = x;
yendofcollision = y;
//このステップで衝突処理が行われたことをEnd Stepイベントに伝えるため、変数に保存
collisiondetection = 1
・End Stepイベントに以下を追加
/衝突判定後に自機の位置が動いてしまうとめりこみの原因になることがある
//もしめりこんでいた場合はここで位置を修正する
if collisiondetection == 1
{
if !place_free(x,y)
{
if x != xendofcollision {x = xendofcollision}
if y != xendofcollision {y = yendofcollision}
}
collisiondetection = 0
}
0313名前は開発中のものです。
2006/11/19(日) 19:23:31ID:4aSaboiB0314305
2006/11/20(月) 01:07:49ID:Yv733+da305のサンプルではブロックの角にぶつかったときに引っかかることがあるので、
それを回避するためにこんな感じのコードも追加する必要があった。
//上下左右ともにソリッドオブジェクトがない場合
//位置を1ドット下に下げて対処する
if place_free(x-1,y) && place_free(x+1,y) && place_free(x,y-1) && place_free(x,y+1)
{
y = y+1
}
0315名前は開発中のものです。
2006/11/22(水) 23:47:27ID:AqauRrpm0316sage
2006/12/03(日) 16:48:14ID:XbMBK5U7ttp://gamdev.org/up/img/8268.zip
0317名前は開発中のものです。
2006/12/11(月) 00:56:17ID:2YqPVj+Fttp://www.gamemaker.nl/beta.html
0318名前は開発中のものです。
2006/12/11(月) 01:26:44ID:rVHL5eUM0319名前は開発中のものです。
2006/12/14(木) 18:11:41ID:3ze7c5Y/0320名前は開発中のものです。
2006/12/15(金) 00:15:35ID:g70yBL8ehttp://x25.peps.jp/azurenamoon
0321名前は開発中のものです。
2006/12/15(金) 19:54:34ID:srVsEadRその辺仕様変更されてたらいいなあ。
しかしローカライズ対応の話はどうなったのか
0322名前は開発中のものです。
2006/12/24(日) 15:12:53ID:bQ2c8Tdg来年の3月くらいに時間ができたらやってみたいので、それまでこのスレも維持して欲しい
0323名前は開発中のものです。
2006/12/25(月) 04:07:44ID:FxLQNiq4炎の揺らめきに対応して、明暗がゆらぐ
みたいなことってできます?
0324名前は開発中のものです。
2007/01/12(金) 10:20:39ID:cJrH5j+P0325名前は開発中のものです。
2007/01/12(金) 23:25:08ID:vx0dk6p90326名前は開発中のものです。
2007/01/13(土) 23:42:46ID:zhxk+3Mu>>325
スクリプトでできるんですか?
ちょっと調べてみます。
0327名前は開発中のものです。
2007/01/22(月) 18:53:32ID:EB7waUUPちっとしたミスでパソコン壊れてしまい、最近新しいのを購入
んで、またやったんだだけど↓の人が作ったファイルが欲しいんだけど誰かうpしてくれない?
>>203 :名前は開発中のものです。:2006/03/27(月) 13:28:28 ID:Ft51kzDw
メインメニューも日本語化パッチ。
ttp://www.uploda.org/uporg347869.zip.html
ここのサイトにはもう無いんだよね・・・・orz
0328名前は開発中のものです。
2007/02/09(金) 13:15:57ID:xPE4FRpUオブジェクト全てに、碁盤の目状にドットのノイズが入っててまいった。
作成画面ではなんとも無いんだが、なんでだろ。
0329名前は開発中のものです。
2007/02/09(金) 13:16:41ID:xPE4FRpU0330名前は開発中のものです。
2007/03/01(木) 23:52:49ID:iybAqXqe0331名前は開発中のものです。
2007/03/02(金) 00:18:40ID:JQOq8rLFttp://www.yoyogames.com/gamemaker/try のページから落とせる。
落とせるのはLite版で、今までのフリー版と同じような制限があるが、基本的なことはできる。
レジストするとPro版となり、制限がなくなる。
Pro版にするには、yoyogamesにアカウント登録した後にレジストしなければならないかも。(無料 メアド必須)
0332よこしま
2007/03/03(土) 02:47:45ID:iuprHR9Ettp://gamemaker.main.jp/modules/news/article.php?storyid=44
0333名前は開発中のものです。
2007/03/19(月) 17:26:46ID:w6fEQ5hD0334名前は開発中のものです。
2007/03/19(月) 18:36:11ID:E6kumfZNアマゲニュースの記事によると、IEだと落とせないことがあるらしい。
記事に書いてあるように IE以外のブラウザでアクセスするとか、
DLツール(Irvine等)で落としてみるとか。
俺は普通にIEで落とせたが…。
0335名前は開発中のものです。
2007/03/25(日) 04:04:56ID:iOL2FYog探したけど見当たらない。
0336名前は開発中のものです。
2007/03/25(日) 22:44:43ID:77zIjAoTそこのWhat is New読んでみるのはどうかな。
訳してみようと思ったけどけっこう分量あってマンドクセ
0337名前は開発中のものです。
2007/03/26(月) 07:40:10ID:dN/9PbMi公式の方で落とせるのね。ダウンロードできるほうだと思ってた。
読んでみたところ、ルーム関係とスクリプトエディタに改良入ってるっぽいかな?
だいぶ変更箇所が多くて、たしかに訳すの大変だ・・・。
マルチバイト対応は書いてないな。もう英語圏だけで通す気なんだろうか。
GM6でつくりかけのゲームがあるのでインポートして、色々弄ってみるかな。
GMはマルチバイト対応と、エディタが改良されれば、あんまり文句ないんだがなあ。
0338名前は開発中のものです。
2007/03/31(土) 15:42:57ID:XDDgdQbOゲームをexeファイルに変えるとき、アイコンをオプションで変えれるじゃん?
でもアイコンファイルなんてどうやって作ればいいんでしょうか
32×32の16色ってのはわかってるんだけどファイルの保存形式がGIFとかだと選べないし
0339名前は開発中のものです。
2007/03/31(土) 16:15:17ID:XDDgdQbOでも32×32でicoファイルを作っても拒否されてしまいます><
0340名前は開発中のものです。
2007/04/01(日) 04:13:44ID:kj+KzHd4GIFとかPNGで作って拡張子だけ変えただけとかじゃない?
0341339
2007/04/01(日) 10:33:34ID:qXJBkzh+レスありがとうございます!
MSペイントでBMPで作って拡張子変更しただけでした・・・
ビットの深さが24のやつではダメなんでしょうか
ICOの作れるエディタっていうとフリーウェアでいいのないでしょうか
とりあえずググってみます。お騒がせして吸いません
0342339
2007/04/01(日) 10:49:32ID:qXJBkzh+@icon変換っていうフリーウェア使ったらアッサリできました
マジでお騒がせしました。助言ありがとうございます
0343名前は開発中のものです。
2007/04/02(月) 22:37:55ID:dsa0udjW0344名前は開発中のものです。
2007/04/04(水) 01:14:23ID:UsQJSuDVGameMakerには標準でlivesという変数が組み込まれていてゲーム開始時
に初期値投入し、プレーヤーキャラがやられた時に-1する・・・
まぁ普通こうだと思う。
んで表示は表示用オブジェクトを別途作成し、drawイベントに
数字で表示する場合は「Draw the number of lives」アクションを
スプライトで表示する場合は「Draw the lives as image」アクションを登録する。
パラメータx,yはルームの表示座標を。
「Draw the number of lives」の場合はこのアクションより先に
「Set the font」「Set the color」アクションを登録しておいて好みの
フォント、色を指定しておく
(表示座標は「Set the font」のalignパラメーターを考慮して決めてね)
「Draw the lives as image」の場合はそれ用のスプライトを
事前に登録しておいてimage:パラメータで選ぶ。
とほかにもやり方あると思うけど、とりあえずこれでどう?
0345名前は開発中のものです。
2007/04/05(木) 02:32:40ID:dw1Iw1rR助かりました、有難う御座います!
0346名前は開発中のものです。
2007/04/06(金) 02:25:30ID:NKcqTsok敵の上に乗っても大丈夫で、下から触れると倒せる設定にしようと
踏ん張っているのですがなかなか成功しません。
「下から触れると倒せる」までは成功するのですが、
「上に乗っても大丈夫」という設定が出来ません。
上から触れても倒せてしまいます。
どうしたらいいのでしょうか!
0347名前は開発中のものです。
2007/04/07(土) 01:13:30ID:3wiqVeJY上半分のキャラクタと下半分のキャラクタに分解して
二つで一つのキャラクタにすればいいのでは?
0348名前は開発中のものです。
2007/04/08(日) 01:12:39ID:KSHnjb9yその発想はなかった…!!
ありがとうございます、その案の通りにやって、色々工夫したら
なんとかなりましたw
0349名前は開発中のものです。
2007/04/10(火) 04:30:19ID:twXWExLO2キャラ作りChange the instanceで変える方法を取ってみたのですが
Viewが認識してくれません。
(マリオがスーパーマリオになると、マリオの時のViewだけが残って
スーパーマリオのViewは認識されない感じ)
色々なサンプルを見て試行錯誤してるけどどうも上手く行きません。
うーむ、、、
0350名前は開発中のものです。
2007/04/10(火) 10:39:56ID:/nbw5AIiマリオからスーパーマリオにチェンジするときに、
code execute アクションで、次のようなコードを記述してみる。
view_object[0] = スーパーマリオのオブジェクト名もしくはインスタンスID
逆にスーパーマリオからマリオに戻ってしまうときにも、
view_object[0] の値をマリオに戻しておこう。
0351名前は開発中のものです。
2007/04/10(火) 12:26:59ID:rYQU3bdo0352名前は開発中のものです。
2007/04/10(火) 15:07:52ID:twXWExLOおー、できました。有難う御座います。
GMLとか全然わからなくて…
>>351
俺漏れも
0353名前は開発中のものです。
2007/04/11(水) 17:27:54ID:uDjOT380tonyuとどっちが簡単?
0354名前は開発中のものです。
2007/04/11(水) 23:27:11ID:XaHk6A2zみえた
0355名前は開発中のものです。
2007/04/12(木) 00:54:45ID:QrBMbbB1見れるようになってますね。お騒がせしました
>>352
GML最初のうちは短いコードで慣れていくのもいいし
書かなくともヘルプファイル見るだけでも結構動きの
構想とかしやすくなると思うのでヘルプは目を通して
おいたほうがいいよ
Game Maker 言語 (GML)のゲーム動作〜リソースの
項目は読んでおいたほうが得です。ボリュームもそんなに多くないし
0356名前は開発中のものです。
2007/04/12(木) 22:27:46ID:Sbn3uWuO両方触ったことあるけど、
tonyuの方が使いにくかったかな。
変数の設定とかがややこしかった、
あとtonyuはけっこう重いので、凝ったゲーム作り出すとキツイ。
まぁGameMakerも50歩、100歩だけど。
英語で拒否反応でないならGameMaker、
でるならtonyuで良いんじゃないかな。
0357名前は開発中のものです。
2007/04/12(木) 23:18:34ID:mKQY5DpXライフポイントの設定ってどこでやるんだ?
0358名前は開発中のものです。
2007/04/13(金) 03:41:08ID:NNey5tvn>>343がらみ?だとすると
livesは変数だからゲームループ用オブジェの生成イベントなどに
「Set the value of a variable」アクションで代入するか
一番最初のルームの「Creation code」ボタン押して
lives=10;
とか書いてみたら?
0359名前は開発中のものです。
2007/04/14(土) 21:57:31ID:jjaaUazuうーん、前者はうまくいかないし後者は死んだりしても
ライフポイントが10のままになるなぁ。
とりあえず変な方法で自己解決しますた
0360名前は開発中のものです。
2007/04/29(日) 00:32:56ID:HfNWiMIn敵にぶつかったら少しの間無敵ってのをやろうとしてるんだけど、
何故かその状態になったら地面にめりこんでいってしまう・・・
何故なんでしょうか?
0361名前は開発中のものです。
2007/04/29(日) 00:35:42ID:HaLkae7w0362名前は開発中のものです。
2007/04/30(月) 15:28:50ID:A4GmDhZwMaskを別に設定(オブジェクトのダイアログで設定できる)しておけば、
スプライトを透明にしても当たり判定がなくなることはない。
0363名前は開発中のものです。
2007/04/30(月) 17:44:34ID:lkMf0FqM0364名前は開発中のものです。
2007/05/01(火) 01:19:29ID:jv2UXUrh5→6の時と違ってほぼ完全上位互換。6で作ったゲームもそのまんま動く。
その分見た目的には大きな進化はなくて、ダイアログ関係とか印刷とか
地味なところが強化されているってのが今のところの印象だな。
0365名前は開発中のものです。
2007/05/03(木) 04:06:18ID:RLRXPrc7次のステージでマリオ・スーパーマリオどちらかの状態で
始まるようにするにはどうしたらいいでしょうか?
同じステージを2つ作って、(最初の立ち位置が)マリオ用・スーパーマリオ用
に分けるとか考えてみたのですが、その分重くなりそうで…。
0366名前は開発中のものです。
2007/05/03(木) 12:37:46ID:fBZoJtsjこれをすれば、ルーム間でインスタンスが保持されるようになるよ。
そういうオブジェクトを1つ作っておくと、ルーム間での値のやり取りができるから便利。
0367名前は開発中のものです。
2007/05/03(木) 12:49:48ID:fBZoJtsj0368名前は開発中のものです。
2007/05/14(月) 16:47:04ID:wDJv4xoP0369名前は開発中のものです。
2007/05/14(月) 22:52:19ID:6E+INFL20370名前は開発中のものです。
2007/06/13(水) 20:10:00ID:obp421sdとりあえず今からDLだぜ
0371名前は開発中のものです。
2007/07/12(木) 07:50:07ID:qy2/B/jAが、Game Maker Japanの表示が妙に重くて、ページを切り替えるたびにやきもきしてる
現在8時前だけど状態は変わらず・・・うーむ。
0372名前は開発中のものです。
2007/07/13(金) 00:29:18ID:OaGbqBn60373名前は開発中のものです。
2007/07/18(水) 06:22:52ID:UXcd6qfL画面左上に常にライフゲージを表示しようとしてるものの、キャラが
横に移動して画面がスクロールするとゲージが置いてけぼりになってしまう
どうにかうまいこと常に画面左上に表示ってできないかな?
0374名前は開発中のものです。
2007/07/19(木) 01:44:05ID:tSFqaNoK座標をビュー相対で指定してやればいい
x1: view_xview[0] + 10
y1: view_yview[0] + 20
x2: view_xview[0] + 110
y2: view_yview[0] + 30
ってな感じで。
0375名前は開発中のものです。
2007/07/19(木) 09:09:31ID:nvp/X0pz返答有難う!ちゃんとスレ見てくれてる人がいたのがまず嬉しい。
で、教えてもらった方法で記述してテストしてみたら、エラーがでてしまった
翻訳ページで翻訳してみたら、変数を定義していない?みたいな感じだった
おそらくview関連の変数を指定する場合準備が必要なのかもしれない・・・
が俺は変数関連の知識に乏しいので断念した。
他の方法を探してみたら、wikiの作品まとめのページにあった
「ふぁんたじぃさんミニステージ」で俺のやりたかったことをやってくれてたので
拝借して構成を覗いてみた。そうしたらルームのビューを二つ指定するという
至極簡単な方法で解決していたので驚いた。今それを真似て成功したところ。
>>374のアドバイスを参考に出来なかったのは非常に申し訳ないが
今後もしばしば悩みどころが出てくると思うので、自力で解決できなかった時は
またアドバイスをお願いしたい。
ちなみにGMのバージョンは5.3Aでやってる。(これも最初に言わなかったのは申し訳ない)
0376名前は開発中のものです。
2007/07/19(木) 20:07:07ID:xOA1USa+ソース公開したくなければ実効ファイルにしてうp
0377名前は開発中のものです。
2007/07/19(木) 23:32:25ID:tSFqaNoKGM5だったらこうだな。
view_xview → view_left
view_yview → view_top
view_wview → view_width
view_hview → view_height
5と6以降ではけっこう違いがあるので
気をつけた方がいいかもね。
0378名前は開発中のものです。
2007/07/22(日) 10:28:04ID:WAhC1ZLe最低ビデオメモリも32MB必要だし。
軽さを重視するなら5.3Aにするべきかな……。
0379名前は開発中のものです。
2007/08/14(火) 00:03:24ID:9wyA8dRNジョイパッド使用のゲームを作りたいのですが、ジョイスティックで
Key release みたいなイベントの使い方って出来ないのでしょうか。
良かったら教えて下さい。
0380名前は開発中のものです。
2007/08/14(火) 00:26:20ID:12cRFs0g中間地点を通った後以降の死亡判定後は中間地点から
始まるようにするにはどうすれば良いのでしょうか?
分かる方是非教えて下さい。
0382381
2007/08/16(木) 13:47:27ID:lv13P6Ug0383名前は開発中のものです。
2007/08/16(木) 14:43:31ID:lv13P6Ugその場復活じゃなくて、戻り復活ってやつですよね?
作りこみの仕方でやり方変わると思う。例えばシューティングの様な強制スクロールだと時間軸メインで
考えやすいのでタイムラインを使用する選択が思いつくし、
ロッ○マンのような任意スクロールだと時間軸じゃなくてルームの位置で判断させるんだと思うからスプライトを
非表示にしたオブジェクトをルームに配置し、自キャラと衝突判定させるやり方をするとか・・
自キャラのふるまいの仕様とかも関係してる場合もあるし、なんとも言えないんだけど
自分は前者のタイムラインを使った戻り復活やったことあるので一応書いてみます。
参考にならないかもですが・・・
0384名前は開発中のものです。
2007/08/16(木) 15:30:09ID:lv13P6Ug当方gm6.2
1,自キャラオブジェクト(ここではmycharaとしておきます)に復活ポイントを保存する変数(ここでは例としてres_flとしておきます)を登録してやって初期値0を代入する
(roomのCreationCodeに mychara.res_fl=0と入力)
2,死亡判定処理の一番最後に「Restart the current room」アクションを置く
3,敵の出現するパターンを登録したタイムラインに復活ポイントの時間に相当するステップへres_flに1とか2とか任意の値を再代入する。
4,3のタイムラインの一番最初のステップへswitch文を使ってres_flにて分岐判断させ、timeline_positionを使って復活ポイントへ飛ばしてやる。
0385名前は開発中のものです。
2007/08/16(木) 15:47:41ID:lv13P6Ug4000,8000ステップに復活ポイントがある場合以下の様になる
switch(mychara.res_fl)
{
case 0:
break;
case 1:
self.timeline_position = 4000;
break;
case 2:
self.timeline_position = 8000;
break;
}
こんな感じで、初めてこのルームにきたときはres_flは0なのでcase 0:を通りbreakするのでタイムラインは今のステップのまま続行される。
4000ステップを超えた後に死亡判定が立てばカレントルームがリスタートするが4000ステップでres_flに1が代入されているのでcase 1:を通り
4000ステップまで一気にジャンプする8000ステップも同じ・・・と自分の場合こんな風にやってみました。参考になるかな^^?
0386名前は開発中のものです。
2007/08/16(木) 17:02:09ID:lv13P6Ug上の例は自キャラであるmychara死亡判定時、自キャラに対しdestroy the instance(インスタンス破棄)はせず
やられた用のスプライトを差し替えをしてライフを1つ減らしています。ですのでres_flは初期値にリセットされません。
またif文を用いて
ライフの数が0以上なら「Restart the current room」、
0未満になれば「Restart the game」する様、分岐させています。
0387名前は開発中のものです。
2007/08/21(火) 03:17:21ID:Y9/E+LWQ返答ありがとうございました。もちろん読ませて頂いたんですけど
これだと十字キーではできないかんじですよね?スライディングが
したくて…><
0388名前は開発中のものです。
2007/08/22(水) 22:29:28ID:zLT3+18j>>161のGMJリンク先はジョイスティックのボタンだったんだ。すまそ、
>>161のリンク先の書いてる内容が理解できてらっしゃるのなら
ボタンの状態を調べるjoystick_chech_button()関数代わりに
十字キーの状態を調べる関数joystick_xpos()またはjoystick_ypos()を使えばいいかと・・・
スライディングだからjoystick_xpos()だと思う。
この関数、十字キーで右に入力すると”1”を、左に入力すると”-1”を、横方向の入力がない場合は”0”を出力します。
それから>>182>>185>>187の書き込みにあるようにゲームパッドによっては中立位置”0”を厳密に返さないもの(0.0021とかになる)があるという
不具合もわかっているのでround()関数を使ってjoystick_xpos()関数を丸めてから使うといいです。
しかし老婆心ながらリリースするごっとにスライディングするのはどうかと・・・まぁそこらへんは考えてるとはおもうけどね・・・
0389388
2007/08/22(水) 22:42:15ID:zLT3+18j○ joystick_check_button()関数の代わりに
joystick_ypos()は別にいらんかったか・・・
誤字脱字多くてすみません
0390388
2007/08/23(木) 00:12:24ID:bkzzA+nn過去に同じような内容の書き込みがあったなとあまりよく読んでなくて正直すまなかったです。
とりあえず自分が思うところは>>388のとおりです
0391387
2007/08/23(木) 04:22:24ID:KyDjC5ZCありがとうございました。正直こんなに親切に回答していただけるとは思っていなかったので…。
心から感謝します!さぁ、これでがんばるぞ!
0392名前は開発中のものです。
2007/08/23(木) 18:15:25ID:ARupBfNUwikiなどから他の方々の作品を参考にさせていただいているのですが、
皆さん画面サイズ小さめで作られているように見受けられました
自分は現在640x480のサイズでアクションゲームを作成しているのですが、
これだと環境次第で処理が重くなったりするのでしょうか・・・?
0393名前は開発中のものです。
2007/09/08(土) 18:44:33ID:4uM7iYSLなんでジョイパッドにはpress/releaseが用意されてないんだろう・・
GMLで出来るのも知ってるし、やってるけど、
press/releaseイベントを用意しない理由が良くわからない。
0394名前は開発中のものです。
2007/09/08(土) 19:07:46ID:85eGhnYf亀レスだけど現時代のロースペックPCならば
そのサイズでいいんじゃないかな
0395名前は開発中のものです。
2007/09/09(日) 12:49:53ID:UoCGhB6S斜めに動かしたいとき↑→同時押しに設定するのは可能ですか?
0396名前は開発中のものです。
2007/09/09(日) 22:16:05ID:/p7HxcHm「可能ですか?」と聞かれたら答えは「可能です」だけど、
「具体的にどうすればいいの?」ってのならその2行じゃ答えにくいです。
「現状の段階でどのイベントでどのアクションを使って動かしてる」とか
「GMLは使えるよ〜」などの追加情報がほしいところ・・
でなければ作成途中ファイルをゲムデヴにうpするなりしてちょ・・・・
とかいいつつGMLが使えるなら、前スレ>>758に移動距離補正のGMLを
載せたサンプルファイルがあるから参考にしてみればいいと思うよ
(過去ログURLは>>50にあり)
0397名前は開発中のものです。
2007/09/09(日) 22:31:05ID:hOxeF4wt「↑入力で上に移動」「→入力で右に移動」と設定すれば
同時に入力すると斜めに動くと思う
0398396
2007/09/09(日) 23:25:01ID:/p7HxcHm自分も最初そういうふうに思ったんだけど
>>↑や→でその方向にキャラクターを動かせる
とあったのでPressイベントで書いてないのかも・・とか思ったんだ。
長ったらしかったかな?
0399名前は開発中のものです。
2007/09/11(火) 19:05:04ID:Gh8tZ+fJどれだけ違うのこれ、初心者は5?
英語読めれば初めてでもそれ以降で可?
0400名前は開発中のものです。
2007/09/11(火) 22:21:20ID:jdaCXeMV5を使うメリットとしては
・動作条件がゆるい→多くの人に遊んでもらえる(可能性がある)
・日本語化できる
・日本語をそのまま描画できる
一方、6以降だと最大の魅力はスプライトの回転ができること。
他にも半透明機能がふんだんに使える、組み込みのエフェクトなど
グラフィック面が大幅に強化されている。
ただし追加機能のほとんどはレジストが必要。
ちなみに6と7は、普通にゲーム作る分にはほとんど差はないかな
このへん天秤にかけて選ぶといいと思うのだが
5って今レジストできたっけ?
0401名前は開発中のものです。
2007/09/12(水) 00:29:19ID:fg25ornc0402399
2007/09/12(水) 01:51:07ID:r4gQgCh/情報ありがとう。
それなら「とりあえず」将来性?もありそうな7を使うことにします。
ぐるぐる回るのは絶対使う気がしますしね。
>>401
よっぽど6の動作に自信がなかったんでしょうか。
初めてですが適当に作ってみました。
適当って言うか、投げやりです。ニコ動に上げてみた。
ttp://www.nicovideo.jp/watch/sm1041515
遊べるレベルでは、無い。
0403名前は開発中のものです。
2007/09/12(水) 02:27:03ID:wCm8h5Qq是非とも本家を超える難易度で完成させてくれ。
0404名前は開発中のものです。
2007/09/12(水) 10:07:21ID:qUDFwcmG日本語描画なんて絶対に必要だろうし、VRAMが32MBともなると、
動かないPCがかなり出てくるんじゃないかと。
0405名前は開発中のものです。
2007/09/13(木) 07:32:54ID:QTqHCpBmキャラが画面からはみ出ないように
0406名前は開発中のものです。
2007/09/14(金) 23:09:41ID:yqNW6zY+オブジェクトにビューを追従させるかわりに自分で動かす。
たとえばキャラクタのStepイベントにこんな風に書いておく。
view_xview[0] += 2;
キャラクタがはみ出さないようにするのはこんな感じで。
(スプライトのサイズとか計算に入れて調整した方が
いいかもしれないけど)
x = min(max(x, view_xview[0]), view_xview[0] + view_wview[0]);
y = min(max(y, view_yview[0]), view_yview[0] + view_hview[0]);
GM5の場合は変数名が違うので、>377を参考に書き換えてくれ。
0407名前は開発中のものです。
2007/09/16(日) 02:26:50ID:Jr4lZJq+それとマップの最後のほうでボス等が現れたとき
画面のスクロールを止めたいのですがそれはどうすればいいのでしょうか。
0408名前は開発中のものです。
2007/09/16(日) 22:57:11ID:KiAjhsb3それが画面内に入ったらビューのスクロールを止めるようにすればよいかと。
0409名前は開発中のものです。
2007/09/17(月) 02:33:49ID:w06cRgAN>>402氏の様な録画はどういった方法がお勧めですか?
できれば音付きで
0410名前は開発中のものです。
2007/09/17(月) 08:21:42ID:lhifefbO無料のソフトもあるけど、それだとコマ落ちしてしまう。
0411名前は開発中のものです。
2007/09/17(月) 09:15:55ID:xMFEKfRa0412名前は開発中のものです。
2007/09/17(月) 09:20:05ID:fcLNcExh0413名前は開発中のものです。
2007/09/17(月) 10:23:54ID:JW6xQlOz0414名前は開発中のものです。
2007/09/18(火) 19:52:17ID:3LUcBFILこれの部屋を広げて、ボールを敷き詰めてみたけど処理落ちしなかった。
でも、人によって環境違うから、自分で試してみた方がいいよ。
0415名前は開発中のものです。
2007/09/18(火) 22:44:37ID:cbpWAXQe普段はキーを押したときjump to given positionでその方向に5程度動かしているのですが
特定のキーを押したら速度が1.5倍になって、もう一度押したら初期状態の2倍になって…という感じで
0416名前は開発中のものです。
2007/09/18(火) 23:33:40ID:N5uJH6ZIjump to given position のところを 速度を表す変数 "spd" (名前は適当でよい) とかにして、
Key Press イベントで Set the value of a variable アクション( 四角でVARと書いてあるアイコン)を加えて、
variable のところに spd 、 value のところに spd+5 とかすると、押されるたびに速度が +5 されていくようになる
0417名前は開発中のものです。
2007/09/19(水) 00:24:58ID:K3MABk9U@まず変数
・現状のスピードを覚えとく変数(説明のため仮にNow_speedとする)
・今が何段階なのかを覚えとく変数(仮にspeed_selectとする)
を用意する。これはCreateイベントにて[Set the value of variable]で初期値を代入すればおk
A[jump to given position]のx:y:の"5"といれているとこを"Now_speed"に書き換える
BkeyPressイベントで[If a variable has a value]でspeed_selectの値をチェックし[Set the value of variable]で
Now_speedの値をその時の段階数speed_selectに応じたスピード値に書き換えてやるとともにspeed_selectも
[Set the value of variable]で次の段階数へ更新してやる。
(2つの[Set the value of variable]は[Start of a block]と[End of a block]ではさむ事をお忘れなく)
これでキーを押すごとにスピードが変化する
段数を多くすると必然的にBの[If a variable has a value]と[If a variable has a value]の数が多くなっていくから
GML使えるならswitch文を使う方がスマート
0418417
2007/09/19(水) 00:30:17ID:K3MABk9U0419名前は開発中のものです。
2007/09/19(水) 07:42:02ID:PrEtAf1pありがとうございます
変数は一応使っていたのですが速度を変数にするのは気づきませんでした
0420名前は開発中のものです。
2007/09/20(木) 21:56:13ID:4DzNB1VDジャンプしたら着地したときに少し滑るって動きをさせてるんだが普通の横移動で突っかかったようになる
バージョンは7GMLなんて聞いたことない過去ログは読んでない
アドバイスくれ
0421名前は開発中のものです。
2007/09/20(木) 22:31:17ID:5F1p/CW6強制スクロールにすると画面下のアイコンや上に表示したスコアがついてこず画面外に取り残されてしまいます
現在のビューにアイコンやスコア等を固定するにはどうしたらよいのでしょうか
0422名前は開発中のものです。
2007/09/21(金) 00:11:25ID:FZFc4C4q引っかかる現象は落下処理に問題がある場合が多い気がする。
コリジョン(めり込み)状態だと横に移動するときに引っかかるよ。いったん床にコリジョンしたら、
『めり込してないが、接している状態にする』処理と、
『床に接している状態では落下しない』処理を
きちんと為されているか、見直してみて。
条件やタイミングによっては抜けてしまっているとか、結構アリガチ(俺だけかなorz)
>>421
スコアの表示位置をビューの相対座標にしてみて。横スクならviewのx座標、縦スクならviewのy座標斜めならどちらとも)
0424名前は開発中のものです。
2007/09/21(金) 07:17:49ID:Md866hct配布しても、大丈夫なんでしたっけ?
0425名前は開発中のものです。
2007/09/21(金) 07:51:14ID:7psMFQgCビューの相対位置にするにはどこを設定すればいいのでしょうか。
それと画面下に能力アイコンを表示しておきたいのですがそちらも流れる画面に固定するのは可能でしょうか
0426422
2007/09/21(金) 11:07:48ID:Zb+pDnU8無料配布、販売もOKだよ。
でも販売はもちろん無料配布にせよ、画像とか音の素材は自力で用意するか、素材の作者が使用許可しているものでないと駄目っす。
>>425
直接相対にさせる設定は無いよ。大げさに言えば、そういうロジックを自力で組むということ。
アイコン表示もアイコン表示も同じやり方で対処可能だよ。
カンタンなのは、ステップごとに強制スクロールさせている移動量を x座標、 y座標 に加えていくようにする方法かもね。
でも、加えていくやり方がイマイチ面倒なら、
(理由のひとつに、中ボスとかで途中で強制スクロールを停止させる場合、その都度加えるのを止めなければならない。個人的に面倒。)
x = 画面に表示したい座標 + view_xview[0]
y = 画面に表示したい座標 + view_yview[0]
とかステップイベントで書いておくと、常にview画面に対してフィットする。
基本的にGameMakerは ルームの座標で処理しているので、
[ルーム座標系による座標] = [画面の左上を0,0としたときの座標]+(横ならview_xview[0] 縦ならview_yview[0])
という式が成立するはず。よくわからんかったら、色々やってみて理解を深めてください。
長い説明ですまんです。
0427名前は開発中のものです。
2007/09/22(土) 00:59:29ID:GELRMyyp思い込んでいました。
0428名前は開発中のものです。
2007/09/22(土) 10:45:04ID:PfhgUac30429名前は開発中のものです。
2007/09/22(土) 12:48:31ID:597IuagT分身となるオブジェクトのSTEPイベントにJump to position アクションで以下のように設定してみては。
(自キャラのオブジェクト名をmyshipとします)
・x に myship.x とする。(myship と x とのあいだにピリオド( . ) を忘れずに!)
・y に myship.y - [自キャラオブジェクトの高さ幅]
xの値や、yのマイナス幅とかだけど、これはキャラの原点(origin)や画像のサイズに依存するんで
自分なりにアレンジして設定してみて。
0430名前は開発中のものです。
2007/09/23(日) 14:06:15ID:DKctpgDfこれはどうすればいいのでしょう。
0431名前は開発中のものです。
2007/09/23(日) 16:53:43ID:x9nNhXjf作りたいのですが、やり方がわかりません
どうすればいいのでしょう、ちなみにGMLはわかりません
0432名前は開発中のものです。
2007/09/23(日) 17:07:20ID:aQRdOqe9キャラ画像のはみ出方に注意しないといけないよ。スプライトのOriginによってはみ出方が違うけれど。
Originは初期設定だと、スプライトの左上角の位置で座標管理されているから、
強制スクロールで右や下にはみ出ることになるよ。
たとえば、スプライトのOrigin(原点)が左上角で、縦幅48 横幅32 の場合、
>>406の式を以下のように変えればいけると思う。
x = min(max(x, view_xview[0]), view_xview[0] + view_wview[0] - 32);
y = min(max(y, view_yview[0]), view_yview[0] + view_hview[0] - 48);
>>431
Move towards point アクション(矢印と点があるアイコン)をステップイベントに追加して、
(自機オブジェクト名をmyshipとした例。>>429同様 myship と x との間にピリオドを忘れずに)
x = myship.x
y = myship.y
speed 適当な数値
としてみては。動きに不満があるかもしれないけどね・・・。
0433名前は開発中のものです。
2007/09/23(日) 18:06:04ID:x9nNhXjf成功しました、ご指導ありがとうございました
0434名前は開発中のものです。
2007/09/24(月) 14:43:07ID:rIfQxbjSスコアを表示させない方法はありますか?
0435名前は開発中のものです。
2007/09/24(月) 19:00:34ID:wo/XJGT8で、show score の部分を don't show に変更しよう。
同様のことをコード(GML)で記述するならば、
score_caption = false;
でOK。
いづれも、最初のイベントのほうでやれば良いと思うよ。
0436435
2007/09/24(月) 22:06:25ID:Avl9+feiGMLでの記述が間違っています。正しくは
show_score = false;
でした。また、score_caption という変数名は無く正しくは caption_score です。
caption_score は、キャプション部分で点数の直前に表示する文字列(デフォルトで Score:) を設定する変数のようです。
混乱させてごめんなさい。
0437名前は開発中のものです。
2007/09/25(火) 14:18:30ID:juBklLfhパスの使い方はいまひとつわかりません。
0438名前は開発中のものです。
2007/09/25(火) 23:10:07ID:wgthl9NZアラームイベント+アラームアクションを使ってみましょう。
-----
手順1
ボスオブジェクトのクリエイトイベントに、VARアクションを追加、
valiable に updown という文字列(変数名)を、value に 1 を設定する。
手順2
さらに、Set Alarm アクションを追加。number of steps に 1、Alarm no に Alarm0 を選択しておく。
手順3
ボスオブジェクトに イベント Alarm0 を追加する。
手順4
ボスのAlarm0 イベントで、Move fixed アクション(赤く八方に矢印が出てるアイコン)を追加。
下を選択、speedには [適当な数値]*updown と設定する。
手順5
続けて、VARアクションで variable に updown、value に -updown と設定する。
手順6
さらに続けて、Set Alarm アクションを追加。number of steps に 60ぐらいを設定。
Alarm no に Alarm0 を選択しておく。
-----
以上で、一定間隔で定速で上下運動するようになると思います。間隔を調節したければ、手順6 で設定した数値をいじってみてください。
単純な動きならこのようにアラームでも対処できますが、複雑な動きにしたければタイムラインやパスを扱う必要があるかと思います。
0439名前は開発中のものです。
2007/09/28(金) 22:00:48ID:+Qz3cTwT遅くなってスマンがサクンス
Precise collision checkingってとこのチェックを外したら解決した
根本的解決にはなってないかもしれんが何とかなったww
もひとつ聞きたいんだが、gamemakerを使う上であればいいスキルってなにがある?
0440名前は開発中のものです。
2007/09/29(土) 01:28:10ID:OUsPaiyVもしかしたら、キャラアニメのフレーム間で地面と接する位置が一致してなかったのかもね。
Precise collision checking がオンだと、キャラのドット絵自体が当たり判定になるから…。
チェックを外すと ドット絵に依らず Bounding Box が当たり判定となります。
GameMakerを使う上でのスキル、とは漠然とした質問(汗
まぁドット絵と音楽がある程度自作できると、楽しいかもね。(俺は満足に出来ん…orz)
GameMakerで色々したければ、GMLはやったほうが良いよ。ソースの見通しもよくなるし。
一番良い練習は、自分で作ってみたゲームのアクションをなるべくGMLで置き換えてみる作業かな。
また、Wikiにあがってるもの以外にも海外のサンプルとか漁って、
ソースを読むことが出来ればなおよいかと。(若干の英語力が必要)
0441名前は開発中のものです。
2007/09/29(土) 14:45:12ID:4bes+mi5GameMakerってそういうの簡単に出来る?
これって基本はタイルベースでのマップ管理だよね?線分のリストとか逆に面倒そうだし
しょぼいサンプルじゃなくて、滑らかに坂を登ってそのまま平地を進む
みたいなの作れるレベルの人はいますか??
0442名前は開発中のものです。
2007/09/29(土) 19:23:42ID:9lJHmvQDドット絵とか音楽か・・・ちょっと本屋でいろいろ探してみますね
GMLも頑張ってみるw
英語力は辞書で補うwwwwwww
0443名前は開発中のものです。
2007/09/29(土) 20:01:59ID:F32aXzae0444名前は開発中のものです。
2007/09/30(日) 01:17:15ID:OYPKWvprこんな感じでいいかい?かなり粗い作りだけど。(バージョン 7.0)
ttp://gamdev.org/up/img/10211.zip
スペースキーでボールが動くよ。
Precise collision checking に頼ったやり方だけどね。GMならではのやり方ともいえるんじゃないかなぁ。
ただ、Precise ... なコリジョンだと、実質タイルベースから開放される反面、融通の利かない場面もでてくるし、処理も重くなると予想されるね。
参考になれば。
>>443
背景画像は基本的にアニメーション出来ないよ。動かしたい部分にオブジェクトを配置するのが簡単な解決方法です。
スプライトによるアニメがどうしてもいやなら、動かしたい部分をタイルチップであらわして、
タイル管理オブジェクトを用意するなりして、そこから命令を出してタイルチップを定期的に変更して、アニメーションを表現する方法もあるにはあるけど、
結構手間がかかりそうな割りに、前者の方法に比べてメリットがあまり見出せません…。
0445444
2007/09/30(日) 08:23:59ID:J186ada5ttp://gamdev.org/up/img/10213.zip
0446名前は開発中のものです。
2007/10/01(月) 02:57:41ID:uYTipwhKおおー ありがとうございます
早速参考にさせてもらいます
これって本家や日本フォーラムでも話題にならないんですかね?
みんな矩形のカクカクしたマップで妥協してるのかな
0447名前は開発中のものです。
2007/10/01(月) 10:39:32ID:/4FfCvcD0448名前は開発中のものです。
2007/10/01(月) 13:21:12ID:m2qQgTFJ僕は数学が苦手で2次方程式がようやく解けるくらいです。
0449名前は開発中のものです。
2007/10/01(月) 15:33:00ID:aKVg/NXF出来なければ無理、というほどではないと思うけどある程度
数学の基礎知識はあったほうが有利だと思う。コマンドの幅が広がるはず。
あとはこのスレでよく言われてるGML、興味があれば勉強してみるといいかも。
勿論単純な作りのミニゲームとかをつくるならそういったことは気にせずに
直感的に組んでいっていいとおもうよ。それがGameMakerの長所でもあるしね。
0450名前は開発中のものです。
2007/10/01(月) 21:53:37ID:CZos6bFb0451名前は開発中のものです。
2007/10/03(水) 00:54:58ID:EFi7sI/b0452名前は開発中のものです。
2007/10/05(金) 01:56:10ID:4xeppq1Qできると思われ。公式のチュートリアルに、チャットとPongゲームのサンプルがあります。
ソースのみなので、実行するには GameMaker 7.0 Pro が必要になるけど…。
ダウンロード先 :
ttp://www.yoyogames.com/downloads/tutorials/multiplayer.zip
>>451
背景画像は、background_index[0..7] という変数で設定されています。
ちなみに、0..7 は 0〜7 までのいずれかの数値がはいる、ということ。(配列)
また、背景は 0〜7番の8段階のレイヤで管理されているんで、最大8枚の背景を重ね合わせることができます。
たとえば、background1 という背景画像がリソースに登録されているとして、
背景レイヤ0番の画像をこれに変更したいときは、適当なイベント中に VARアクションを追加し、
variable に background_index[0]
value に background1
とすれば変更が可能です。
0453名前は開発中のものです。
2007/10/05(金) 03:26:55ID:wSCRnqHhメニューやらを日本語訳したテキストを製作者に渡せばいいんじゃねーの?
0454名前は開発中のものです。
2007/10/05(金) 17:34:54ID:g6B1FYU5ありがとな
0455名前は開発中のものです。
2007/10/05(金) 21:13:00ID:hQr7IoXo0456名前は開発中のものです。
2007/10/05(金) 23:14:26ID:2NkJ/cbTエラーの情報を詳しく書いてほしいです…。
どんなタイミングでどんなエラーがでたのか書かないと、何もわからんです。
あなたのPCでエラーが起きた現場を見た人はネット上にはいない。
少なくとも私の環境では GM7 Lite でも表示できましたが…。
0457名前は開発中のものです。
2007/10/05(金) 23:26:39ID:2NkJ/cbTmbtext_setfont() を呼んでないのではないでしょうか。
文字表示をする前に mbtext_setfont() 関数を呼んで、設定しないといけないです。
(リソースにスプライト用意しただけでは、実行時にどのスプライトがフォントとして使用するのか、また、どんなサイズなのかわからないから)
どっかのオブジェクトのクリエイトイベントかなんかで、Execute Code アクションを加えて、
mbtext_setfont( [全角のスプライト名] , [半角のスプライト名] , 「フォントメーカーで設定したサイズ(数値)」) ;
の1行を、加えてみてください。
これが違うなら、わからんです。。。
0458名前は開発中のものです。
2007/10/05(金) 23:28:05ID:PKPevRDs>>1のサイトをざっと見てみたんですが、
キー情報の取得に関する関数がない気がするんですが。
0459名前は開発中のものです。
2007/10/05(金) 23:29:16ID:qYq6QO0A実行してロードが完了すると
Unexpected error occured when running the game.
とでてきて、あとは
Access violation at addres..........
などというエラーがたくさんでてきて終了します
オブジェクトのコードはこんなんです
{
mbtext_setfont(spr_zen, spr_han, 20);
mbtext_draw("描画するテキスト", 0, 0);
}
なにがだめでしょうか?
0460名前は開発中のものです。
2007/10/05(金) 23:48:54ID:2NkJ/cbTヘルプの GML>>User Interfection >> the Keyboard 辺りを読んでみましょう。
変数 keyboard_lastkey で最後に押されたキーのキーコードがわかります。(そのとき押されてなくても)
一方、
変数 keyboard_key で、今現在押されているキーのキーコードが得られます。
キーコードは数値でなくても、Aキーなら VK_A とかで定義されてます。特殊なキーはヘルプに出てます。
また、特定のキーが押されているかどうか調べる関数も用意されてます。
keyboard_check(key) : key が押されていたら true を返します。
類似関数に keyboard_check_pressed(key) や keyboard_check_released(key) があります。
>>459
うーん、そのエラーは結構深刻そうです。PCの環境あたりから疑わないといけないかもしれません。
ほかのサンプルゲームが普通に動くのなら、VRAMやPCメモリの容量が足りない可能性もありますね。
ためしに、全角スプライトのところを preload texture のチェックをはずしたり、
それでもだめなら、記号とひらがなだけ残して消して、ひらがなだけ表示させてみて、実験してみてください。
それで動けば、メモリ関係が原因かと思われます。
0461名前は開発中のものです。
2007/10/05(金) 23:52:58ID:2NkJ/cbT誤字が多くてすまんです
0462名前は開発中のものです。
2007/10/06(土) 00:01:45ID:mQ8ag/BB最初から読み直してやってみたらできました
すいませんでした
0463名前は開発中のものです。
2007/10/06(土) 00:19:17ID:YdfEd/7rヘルプまでは読んでいませんでした。
あるんですね。どうもありがとうございました。
0464名前は開発中のものです。
2007/10/08(月) 16:04:54ID:4SbO/Zc7当たり判定も一緒に拡大する方法はありますか・・?
当たり判定用の矩形オブジェクトを用意して、
オブジェクトを生成するときに大きさを引数で指定できるようにしたのですが、
肝心の当たり判定の大きさが拡大する前と変わらないままなのです。
128x64の判定を作りたいのに、32x32の判定しか作ることができない、といった状況です。
当たり判定の左上・右下座標を変数などで指定することはできるのでしょうか。
0465名前は開発中のものです。
2007/10/08(月) 16:48:44ID:4SbO/Zc7もっと悩んでから書き込むべきだった…(´A`;)
if( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) > 0 ){
sound_play(snd_Hit);
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).HP -= Damage;
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).alarm[0] = Time;
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).speed = movePower;
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).direction = moveDirection;
draw_hitStar(x + (sprite_width/2),y+ (sprite_height/2),30);
if(kind == 0){
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).image_index = 2;
}else if(kind == 1){
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).image_index = 3;
}else if(kind == 2){
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).image_index = 4;
}else if(kind == 3){
( collision_rectangle(x,y,x+wide,y+height,charatest,false,true) ).image_index = 5;
}
instance_destroy()
}
0466名前は開発中のものです。
2007/10/08(月) 17:34:48ID:qKmaq3uh解決したからよいかもしれないけど、考えてみたんで一応参考程度にしてみて。結構荒業?かもしれないけど。
縦横 1px のスプライトを用意(透過は無し)して、当たり判定用のオブジェクトを用意する。マスクで指定したほうがよいと思う。
んで、instance_create などで実行した後、縦横幅を与え、スプライトを拡大してしまおう。
例:
<パンチしたときなど>
atari_id = instance_create(xx-横幅/2,yy-縦幅/2,当たり判定用のオブジェクト)
atari_id.image_xscale = 横幅
atari_id.image_yscale = 縦幅
こうすると、(xx,yy)座標を中心に任意の縦幅、横幅のあたり判定用オブジェクトが出現するようになる。
サンプルできた。(7.0)
ttp://gamdev.org/up/img/10275.zip
F1 キーで簡単な説明でます。
0467名前は開発中のものです。
2007/10/08(月) 18:13:57ID:4SbO/Zc7解決するまではその方法を試してたんですが、
当たり判定が広がらず困ってました。
6.1だったからかな・・・?それともこっちの勘違い?
なんにせよ、ありがとうございました。
0468名前は開発中のものです。
2007/10/08(月) 18:30:38ID:qKmaq3uh> Solved a bug in collision checking with scaled instances.
> 訳 : 拡大縮小されたインスタンスのコリジョン判定にあったバグを解決した
6.1以前だと、拡大されないみたいだね。こちらも 6.1 5.3A にて、動作しないことを確認しました。すみませぬ。。。
0469名前は開発中のものです。
2007/10/08(月) 18:56:22ID:NYq6HAI6というかバグだったのか・・・。
0470名前は開発中のものです。
2007/10/08(月) 21:13:04ID:xMzu6E+i幅×image_xscale になるべきところが (幅-1)×image_xscale
になるバグがある。元のスプライトが大きければ目立たないが、
小さいスプライトだと顕著に。特に元が1ピクセルだと……
0471名前は開発中のものです。
2007/10/10(水) 07:59:27ID:xHCyvWv90472名前は開発中のものです。
2007/10/10(水) 08:05:16ID:uuly2Ro8画面のフェードアウト機能がないみたいな話があったはず
詳しくはこのスレのログを見ていって欲しいけど、代用としては
ディザ処理で透明から徐々に黒くなっていくアニメーションスプライトをつくって
それを表示、全体黒くなったところで画面切り替えってのがある
0473名前は開発中のものです。
2007/10/10(水) 18:44:46ID:clWDHbW4gamemakerは、コートを固定しているカメラで見るように表示できるんでしょうか?
コートが常に四角く見えるんじゃなく、端っこのほうを見るときは台形のように見えるってことです
分かりにくくてすいません
0474473
2007/10/10(水) 20:49:07ID:clWDHbW4自己解決です、ありがとうございました
0475名前は開発中のものです。
2007/10/10(水) 21:23:33ID:4H4UcSWiバージョンによるけど、GM7だと最初からRoom transitionに
フェードアウト・フェードインというのが用意されているよ。
GM6だと黒い四角を画面全体に半透明で描画するやり方がある。
まとめWiki↓にあるMs.PADDLERあたりを参考に。
ttp://gamdev.org/w/?GameMaker
GM5、あるいは未レジストなら>472かな。
>>473
レジストすれば3D機能も使えるんだけど、まあ3D向きでないのは確かだw
0476名前は開発中のものです。
2007/10/11(木) 00:10:35ID:bfULkcnK実際に使ってる人から見て似てると思いますか?
0477名前は開発中のものです。
2007/10/11(木) 02:26:20ID:MiBouJ8+ただ、オブジェクトに任意の関数を持たせて
[object].[関数名](引数...)
というようなことはできない。(そもそもそういう文法がない)
※ ユーザーイベントとか駆使すれば似たようなことは出来なくはないと思うが、煩雑だし機能的にも制限が厳しい。
なもんで、完全なオブジェクト指向っぽい設計は難しいと思われ。
誤解を恐れずに言うと、個人的にGMLは、
構造体無し、変数のポインタや参照受け渡しの出来ないC言語っていう印象。
ただ、文字列操作はCよりかはマシかな。
0478名前は開発中のものです。
2007/10/11(木) 07:28:19ID:lfKlsL3a0479名前は開発中のものです。
2007/10/11(木) 23:29:34ID:j9EjwRAbスプライトとかオブジェクトとかは一応ちゃんと残るよ。
ただ、一部のアクションは「古いアクション」とか
「不明なアクション」てやつに置き換えられてしまって
中身が見えなくなる。7で編集を続けるつもりなら、
元のgmdをとっておいて見比べながら直さないと辛いかも。
いずれにせよ、5から6で色々削られたり変更になったり
してるから、それなりに書き直さないと動かないと思う。
0480名前は開発中のものです。
2007/10/16(火) 08:31:52ID:KDtruK3Z0481名前は開発中のものです。
2007/10/17(水) 13:07:25ID:NOHDADh4など範囲を指定してそこにキャラクターが来た時行動を起こさせることはできますか?
0482名前は開発中のものです。
2007/10/18(木) 11:13:19ID:zjjlkNBlどちらもボスキャラとプレーヤーキャラのインスタンス原点比較で出来る
「ボスの目の前一直線に主人公がきた時」は「ボスの横座標(x座標)と主人公の横座標が一緒となった時」(横画面を想定して)なんだけど
実際キャラを動かすとx座標がぴったり合うことはすごく稀なので幅をもって比較してやるのが普通。
ということでオブジェクト名をボスキャラ:obj_bosプレーヤーキャラ:obj_pcとし、判定をobj_bos側で処理するとして判定幅を変数でobj_bosに持たせてやる(例ではbias)
以下GMLで書くと(アクションでやる場合はIf a variable has a valueアクションを組み合わせて出来ます)ステップイベントに
if(obj_bos.x + bais <= obj_pc.x && obj_bos.x - bais >= obj_pc.x)
//ボス原点+バイアス値よりプレーヤーキャラ原点が小でボス原点−バイアス値よりプレーヤーキャラ原点が大の時
{
//ここに攻撃処理を記述
}
と書いてやればいい。
「主人公がボスの上(ry」は同じ要領でプレーヤーキャラがボス上の矩形領域にいるかどうかを、x座標y座標を各々比較してやればいいと思います。
0483482
2007/10/18(木) 11:16:42ID:zjjlkNBl0484482
2007/10/18(木) 11:43:05ID:zjjlkNBl× if(obj_bos.x + bais <= obj_pc.x && obj_bos.x - bais >= obj_pc.x)
○ if(obj_bos.x + bais >= obj_pc.x && obj_bos.x - bais <= obj_pc.x)
自分こういうのおおいな・・・・ごめんなさい
0485482
2007/10/18(木) 12:01:37ID:zjjlkNBl横の場合はx座標ではなくy座標でした・・・・・
本当にごめんなさい
0486名前は開発中のものです。
2007/10/18(木) 15:58:06ID:2p+G78pK半透明で当たり判定のないオブジェクトを作ってそれにチェンジするといろいろ変数を追加しないといけないので面倒なのdすが・・・
0487名前は開発中のものです。
2007/10/18(木) 18:41:17ID:HP36It3Q自キャラに無敵フラグを追加、で解決するような...。駄目な理由があるのかな。
自分だったら、当たったときにフラグチェックして無敵だったらコリジョン処理しない(即座に抜ける)ようにし、
タイマー使って一定時間後に無敵フラグ消失、というような感じにする。
0488名前は開発中のものです。
2007/10/18(木) 20:07:50ID:8B1FDJnbシューティングならそれでいいかもしれない
横視点アクションとかで地面とかが関わるならもう少し工夫しないとだけかも
このスレのログを辿ると似たよう話に当たるかもしれない
0489名前は開発中のものです。
2007/10/18(木) 20:40:28ID:vfcbVUIf0490名前は開発中のものです。
2007/10/18(木) 21:42:24ID:6eGl9S9Q0491名前は開発中のものです。
2007/10/19(金) 07:37:01ID:MUFGtR6o0492名前は開発中のものです。
2007/10/19(金) 18:06:04ID:Vl0npn9t曲Aが流れているときにちょっとした短い曲Bを流したいのですが
「曲A一時停止>曲B再生>曲B終了>曲Aを一時停止の時点から再開」という風にするにはどうしたらいいのでしょう
0493名前は開発中のものです。
2007/10/19(金) 22:59:25ID:6RGcBw98これを消すのはliteでもできる?
0494名前は開発中のものです。
2007/10/20(土) 00:33:48ID:hAmk06Ct一時停止は、関数 bGM_pause(sound_id) でできる。sound_idに曲AのIDを指定しよう。
その後、bGM_play(曲Bのファイルネーム, [設定]) を呼び出し、曲Bを再生する。
曲Bの終了検知は、今のところ無理っぽい。曲Bが終わる時間を見計らって、一定時間後に曲Aに復帰させるしかないかな。
なお曲Aに演奏を復帰させるときも、 曲AのIDを引数にして関数 bGM_pause()を呼び出す。
関数リファレンス
ttp://gamemaker.main.jp/static/bGMref/
>>493
無理です。
0495名前は開発中のものです。
2007/10/21(日) 00:27:43ID:1O8dqLnR0496名前は開発中のものです。
2007/10/23(火) 20:19:08ID:1Dn54OyY7は日本語化できますか?
0497名前は開発中のものです。
2007/10/23(火) 20:39:07ID:1Dn54OyY日本語のヘルプはどこでダウンロードできますか。
>228さんのchmでは、書かれていない部分があります。
それを補うにはどうすればいいですか。
0498名前は開発中のものです。
2007/10/24(水) 18:24:35ID:CNVx+st/0499名前は開発中のものです。
2007/10/24(水) 21:53:11ID:WgthXhdICの簡易版みたいな感じですね。
0500名前は開発中のものです。
2007/10/24(水) 23:12:03ID:3bv97O32日本語の資料があれば人気出ると思う。
0501名前は開発中のものです。
2007/10/24(水) 23:16:00ID:IY/D3NkkGM7です。
0502名前は開発中のものです。
2007/10/25(木) 00:18:31ID:vNqY00upbGM.exe を使用して音楽をならそうとしてるのですが
デモの通りに設定しているはずなのに変なのです。
どんちゃどんちゃ というのが二重再生みたいに
ドドンチャチャドドンチャチャ とせわしなく再生されます。
しかも終了した後に、ノイズがいつまでも残ってる状態です。
(プロセルには何も残っていません)
何が悪いのでしょうか。
0503名前は開発中のものです。
2007/10/25(木) 00:56:28ID:vNqY00up一度すべてのオブジェクトをクリアして再設置した所、無事期待通りの反応を返してくれました。
・・・何故治ったのか原因が掴めないので不安ですが、また似た状況なった場合、
動作報告させて戴きます。
0504名前は開発中のものです。
2007/10/25(木) 05:08:36ID:AiXecA9Kもう少し頑張ってみるか
0505名前は開発中のものです。
2007/10/25(木) 10:12:51ID:/6XVTfMT日本語化できない部分もあるし……。
0506名前は開発中のものです。
2007/10/25(木) 12:51:49ID:kOwmLgcJ0507505
2007/10/25(木) 13:46:16ID:gKkUjDf5イベント追加するときのイベントの種類とか、アクションを追加するときの OK や Cancel の文字とか。
GameMaker側でフォントの設定もできないようだった。スクリプトのコードや、GameInformation の部分では変更可能だったけど。
……もしかして、俺のやり方が違っていたのだろうか。
0508名前は開発中のものです。
2007/10/25(木) 13:59:20ID:gKkUjDf5Cancel → キャンセル はE-WordChanger2000側でデフォルトで変換しているようで、何も設定していなくても変換され、文字化けしてしまう。
デフォルト変換をやめるよう設定できるのかな。途中まで作ってたんだけど、そのやり方がわからんからやめてしまったんだ。
なおGameMakerはデフォルトのフォントは MS Sans Serif(海外ソフトではお馴染み) が使われているようだ。
0509名前は開発中のものです。
2007/10/25(木) 21:45:38ID:vNqY00up簡単に決済する方法はありますか。
0510名前は開発中のものです。
2007/10/25(木) 23:06:27ID:oTzrknN0まず、yoyoサイトのアカウントを取得します。※メールアドレスが必要。無料のものでかまいません。
ログインしたら、ttp://www.yoyogames.com/gamemaker/buy/にアクセス。
クレジットカードかPayPalで決済するとすぐにレジストできます。
ですが、PayPalでもクレジットカードが必要になりそうですよね…
それ以外の方法となると、上記のページ下にあるように、helpdeskに問い合わせをしなければならないようです。
0511名前は開発中のものです。
2007/10/26(金) 19:58:39ID:owvMBGHB丁寧にありがとうございます。
やっぱりクレジットカードが必要になるのですね・・・
フリー版でやれるところまで頑張ってみます。
0512名前は開発中のものです。
2007/10/27(土) 04:42:33ID:bo72z7qTx0〜ならできるのですが><
0513名前は開発中のものです。
2007/10/27(土) 05:51:00ID:b7zQv7OSハシゴ(3x16ドット)あるのですが、キャラとぶつかって「ハシゴ」に乗ってしまいます。
キャラがハシゴと接触したときにボタンを押すと掴む、何もしなければ素通りさせるという処理をしたいのです。
何か良い方法はないでしょうか。
0514名前は開発中のものです。
2007/10/27(土) 06:52:36ID:UL5QEHWV0515名前は開発中のものです。
2007/10/27(土) 14:25:15ID:47eNMq37使ったことないがx0〜320を出してそれに160足せばいいんじゃね?
0516名前は開発中のものです。
2007/10/27(土) 14:38:37ID:szgPSdg7通常のChange the instanceアクションで、Apllies toを使って
変更したいオブジェクトを指定すれば良いのはわかるのですが、
同じ事をGMLでやろうとしても、インスタンスを変更する命令が
instance_change(obj,perf)とposition_change(x,y,obj,perf)しか見当たらないのです。
オブジェクト名を指定してそのインスタンスを変更するというGML命令は無いのでしょうか…?
0517名前は開発中のものです。
2007/10/27(土) 15:43:28ID:JBeAIlonつwith文
with (obj) {
// このブロックではobjのインスタンスすべてに適用される
// with文を呼び出している元々のオブジェクトに対しては other を使用する。
// x = 0; // これはobjのインスタンス全てのx座標が0となる。
// other.x = 0; // これはwith文を実行しているインスタンスのx座標が0となる。
//
// 特定のオブジェクトのインスタンス全てではなく、一つのインスタンスに適用したいなら、
// with文の指定でオブジェクト名ではなくインスタンスIDを使用すること。
// Tips : with文は、繰り返し処理である。対象となるインスタンスIDの若い順に実行されているようである。
}
0518名前は開発中のものです。
2007/10/27(土) 18:29:37ID:mK85JoeLようやくwithが理解できました。
言われてみれば簡単でしたね。
ありがとうございました。
0519名前は開発中のものです。
2007/10/27(土) 19:06:11ID:MYcBDy56上に乗れるが横からは通れないようなものを作りたいのですが何を設定すればいいんでしょう
0520名前は開発中のものです。
2007/10/28(日) 01:05:44ID:4H1O2wN3つ VISAデビット
0521名前は開発中のものです。
2007/10/28(日) 02:22:00ID:eDM7pNazそれだと上からも横からも通らないオブジェクトだから普通のオブジェクトじゃない?
0522名前は開発中のものです。
2007/10/28(日) 10:38:07ID:cbYdgwGn0523名前は開発中のものです。
2007/10/28(日) 11:40:24ID:leAMyaxzマリオやロックマンのような2Dアクションは意外に敷居が高いです。GameMakerなら、ソリッドオブジェクトとか、それに関するアクションの理解がいろいろ必要です。
公式のチュートリアルのソースを良く見てみましょう。
ttp://www.yoyogames.com/downloads/tutorials/platform.zip
この中の platform_1.gmk が基本的な部分になると思います。
>>522
100より増やしたくないなら、100超えたときに100にしてしまえばよい、というようにします。
ヘルス増した後に次のコードを追加。
if (health>100) health = 100;
Actionなら
if health is larger than 100
set the health to 100
のようなかんじで。
0524名前は開発中のものです。
2007/10/28(日) 21:14:01ID:cbYdgwGnもうひとつ聞きたいのですがルームで設定したview1やview2を切り替えるにはどうしたらいいのでしょうか。
0525名前は開発中のものです。
2007/10/29(月) 05:01:09ID:zuWao6Bl0526名前は開発中のものです。
2007/10/30(火) 11:56:12ID:G3KKfzgr0527名前は開発中のものです。
2007/10/31(水) 17:07:35ID:kICjS8bbウインドウサイズについて困っています。
Settingでwidth:640 height:480にしています。
ゲーム起動してそのままのサイズで始めたいのですが、モニター画面めいっぱいに広がって起動してしまいます。
どこを設定すればよいのでしょうか。
View in room
0528名前は開発中のものです。
2007/10/31(水) 17:11:22ID:kICjS8bbView in room は、見せる範囲ですよね。そこは w:640 h:480 にしています。
port on screen でも同じく w:640 h:480 にしています。
ですがport on screen のサイズを変えると、ウインドウサイズは小さくなるのですが、絵が潰れてしまいます。
どこを設定すれば、元の絵のまま w:640 h:480 で綺麗に表示できるのでしょうか。
0529名前は開発中のものです。
2007/10/31(水) 17:28:18ID:kICjS8bbgrobal game settings の graphics > scaling のfixed scale が 200% になってました。
お騒がせしました。
0530名前は開発中のものです。
2007/11/01(木) 22:33:50ID:4l261QOy変数として扱うには、どうすればいいですか?
ver7 未レジスト
0531名前は開発中のものです。
2007/11/02(金) 04:01:27ID:qbEUBjbm亀レスですみません。例えばview[0]を無効にしてview[1]を有効にしたければ、以下のようなコードを書きます。
view_visible[0] = false;
view_visible[1] = true;
view_xport[1] = 0; /* ウィンドウ内に表示する左上位置のx座標 */
view_yport[1] = 0; /* ウィンドウ内に表示する左上位置のy座標 */
view_wport[1] = 640; /* ウィンドウ内に表示する横幅 */
view_hport[1] = 480; /* ウィンドウ内に表示する縦幅 */
view1からview0にもどしたければ、配列番号の1と0を入れ替えればよいです。
>>530
ファイルの読み書きをするには、ファイルを扱う最低限の知識が必要になります。(オープン>読み書き>クローズ)
それを踏まえて簡単な方法として、iniファイルを利用する方法があります。iniファイルの構文などは、ネットでお調べください。
・ini_open(filename) ファイルネームを指定してiniファイルを開きます。
・ini_read_real(section,key,default) [section]内にある文字列key に設定されている数値を読み込み、数値を返します。
・ini_close() 開いているiniファイルを閉じます。
この関数を、あらかじめルームに配置されているオブジェクトのクリエイトイベントやルームスタートイベント等で実行させましょう。
例:
ini_open("setting.ini");
global.difficulty = ini_read_real("main","difficulty",0); /* iniファイルからmainセクションのキーdifficultyの数値を読み込む */
ini_close();
独自形式なら、テキストファイルを読み書きする関数等を使いましょう。
・file_text_open_read(fname) テキストファイルを開きます。成功するとファイルIDを返します。
・file_text_read_string(fileid) ファイルIDのファイルから文字列として一行読み込みます。
・file_text_read_real(fileid) ファイルIDのファイルから数値を読み込みます。
・file_text_close(fileid) ファイルIDのファイルを閉じます。
0532名前は開発中のものです。
2007/11/03(土) 19:29:28ID:zfNPIsFowikiはgamdevにもあるけど、あそこは紹介程度にして詳しい情報はほかのところでまとめたほうが良い気がしますし。
内容がGMJapanと被ってしまうのも気になります……。
ページ
ttp://www.wikihouse.com/GameMaker/index.php?FrontPage
まだGMLの変数一覧とか、関数一覧(数学関数以外ほとんど白紙)ぐらいしかないです……。
もし需要があるなら、補完してくれるとありがたいです。(GML関数の解説でも一人じゃつらい…orz)
あと、ほかにどんな情報がほしいのかとかもわからんです。公式チュートリアルの解説とかあるといいのかな?
0533名前は開発中のものです。
2007/11/03(土) 19:59:03ID:Z5CTQc/aどこかに一行入力?があると嬉しいです。
>>531
ありがとうございます。
狙っている動作は、各キャラクターのパラメーターをプレイ時に読み込む事です。
(移動力・攻撃力の差異等)
GML、iniのの項目では全体の設定として使用するような事がかかれてあったので
最後のテキストファイルを読み書きする方法でいきたいと思っています。
指定行の読み込みはできるのでしょうか。
0534532
2007/11/03(土) 21:43:07ID:zfNPIsFoTopページにコメントを設置しました。
あとご質問ですけど、キャラごととなると iniファイルは不適切ですね。
テキストファイルの扱いですが、基本的に先頭から読み込みます。(読み込んだあとは、戻れない)
>>531(=>>532だったり) では書かれていませんが、file_text_readln(fileid) を実行するとこで、次の行に移動します。
したがって任意の行を読み込むには、ファイルを開いたあと指定行までスキップしてfile_text_read_string() するということをしなければなりません。
例えば3行目を読み込みたかったら、次のようにします。(※インデントは全角スペースです)
fileId = file_text_open_read("filename.txt");
for (i=0; i<2; i+=1) {
file_text_readln(fileId); /* forループにより、file_text_readln() が2回実行される */
}
text = file_text_read_string(fileId); /* 変数textに3行目の文字列が入る */
file_text_close(fileId);
もしくは、一つのデータが1バイトで収まるのであればバイナリファイルを扱ってもよさげですね。以下、必要そうな関数を列挙しておきます。
file_bin_open(fname,mod) ファイルを開きます
fname : ファイルネーム
mod : 開くファイルのモード 0:読み込み 1:書き込み 2:読み込み/書き込み ※書き込むと既存ファイルを上書きしてしまうので注意
file_bin_read_byte(fileid) 現在位置から1バイト読み込み、1バイト移動します
file_bin_write_byte(fileid) 現在位置から1バイト書き込み、1バイト移動します
file_bin_seek(fileid,pos) ファイルの先頭からposバイトの位置まで移動します(先頭は0)
file_bin_size(fileid) ファイルのサイズを取得します
file_bin_close(fileid) ファイルを閉じます
0535名前は開発中のものです。
2007/11/04(日) 03:55:29ID:7Uhxdtas0536名前は開発中のものです。
2007/11/06(火) 01:19:01ID:IQqW+3zu0537名前は開発中のものです。
2007/11/07(水) 00:08:08ID:mZ/mosz10538名前は開発中のものです。
2007/11/07(水) 00:10:02ID:mZ/mosz1質問です。
ヘルスメーターをキャラクターの頭の上に表示したいんですが、
Drawイベントにセットしたら、キャラクターのスプライトが
消えてしまうのです。
キャラクターを含め、深度?の設定は何も弄っていません。
どうしたらいいのでしょうか。
0539名前は開発中のものです。
2007/11/07(水) 01:24:51ID:k+N2ubakdrawイベントになにかアクションを置いてしまうと、設定されてるスプライトも描かなくなってしまうんだよね。
この仕様はおそらく、スコアやライフを自前で描くオブジェクトを用意したいときに、
エディタ中でルームに配置するときの識別アイコンとしてスプライトを使用することを視野に入れていると思う。
んなもんで、スプライトを表示したければ自前でやらなければなりませぬ。
drawイベントの一番上にでもオブジェクトに設定しているスプライトを描くよう、描画アクションを追加してください。
0540名前は開発中のものです。
2007/11/07(水) 10:27:56ID:lUo/Ckqnstepイベントとset varを使うような気がするのですが…
0541名前は開発中のものです。
2007/11/07(水) 22:06:45ID:mZ/mosz1ありがとうございます。
スプライトを表示することができるようになったのですが、
イベント左キーでキャラクターを左向き、
イベント右キーで右向きに向くようアクションを設置していたのですが、
ずっと、drawアクションで設置したアクションのスプライトが
表示されつづけて変化しません。
自分は根本的に何か勘違いしているのでしょうか。
0542名前は開発中のものです。
2007/11/07(水) 22:09:58ID:HXVYqugh角度を求めるアクションがないし、自前でやろうとしても三角関数の知識がない無理だし、以下の手順で。
手順1.
Scriptリソース(advanced mode じゃないと見えないから注意)にgetDegree という名前でスクリプトを追加する。
そして以下の2行をコピペ。
// argument0 のインスタンスから見た argument1 のインスタンスの存在する角度を計算する
return radtodeg(arctan2(-(argument1.y-argument0.y),(argument1.x-argument0.x)));
手順2.
砲台のオブジェクトのステップイベントで、自キャラ(ここではobj_myshipというオブジェクト名)までの方向を示す
変数(ここではdirとする)にVarアクションで次のように設定する。
variable: dir
value: getDegree(id, obj_myship)
以上で-180°〜180°(0°で画面右方向)の数値が得られるので、それをどうにか処理してください。
0543名前は開発中のものです。
2007/11/07(水) 22:20:34ID:HXVYqugh表示を変えたいなら、draw spriteなアクションだと無理。コードで書くしかないかも。
以下に例を示すので適当に読み替えて試してみて下さい。
例:
表示するスプライト番号を記憶する変数drawSpr(名前は何でもよい)を以下のように使用する。
[createイベント]
Varアクションを追加して
variable : drawSpr
value : デフォルトのスプライト
[右入力イベント]
Varアクションを追加して
variable : drawSpr
value : 右向きのスプライト
[左入力イベント]
Varアクションを追加して
variable : drawSpr
value : 左向きのスプライト
[drawイベント]
codeアクションを追加して
draw_sprite(x,y,-1,drawSpr); //アニメーションするなら3つめの変数は左のように-1を指定する。0以上を指定すると固定される。
0544名前は開発中のものです。
2007/11/07(水) 22:21:53ID:HXVYqugh0545名前は開発中のものです。
2007/11/07(水) 22:27:00ID:HXVYqugh>>543の例だと表示はいいかもしれないが、当たり判定とかまずいな。
変数名はdrawSpr ではなく、 sprite_index としてください。
0546名前は開発中のものです。
2007/11/07(水) 22:45:10ID:mZ/mosz1!!!
うごきました。 狙った通りの動きをしてくれました。
ありがとうございます。 コードってすごいですね。
splite_index で動作しました。
0547名前は開発中のものです。
2007/11/08(木) 00:01:11ID:d2+xWEQmつpoint_direction
0549名前は開発中のものです。
2007/11/08(木) 00:28:00ID:/npJWupm弾があたったらHPを減らすようにしたいのですがどうしたらいいのですか?
0550名前は開発中のものです。
2007/11/08(木) 09:51:24ID:/npJWupmヘルスメーターを複数設置することってできますか?
0551名前は開発中のものです。
2007/11/08(木) 12:51:44ID:n3szi+FFまずは聞く前に>>1の情報サイトを見ることから始めないか?
0552名前は開発中のものです。
2007/11/08(木) 18:55:03ID:lBo37aADコードをうつ内蔵のエディターで、「Ok,Save Changes」のボタンのショートカットキーか
他のエディターを使用する等はないでしょうか。
0553名前は開発中のものです。
2007/11/08(木) 20:46:09ID:nEyNxx0n外部のテキストエディタを指定することは可能です。
FileメニューからPreferance を開くと、Script&code とあるので、
その一番下のところに外部エディタを指定するところがあります。
0554名前は開発中のものです。
2007/11/08(木) 20:57:31ID:lBo37aADありがとうございます。できました。
しかし、外部エディタを使うとgamemaker自体が閉じるんですね。
外部エディタを終了すると、gamemakerが戻ってきますが。
0555名前は開発中のものです。
2007/11/09(金) 01:24:06ID:jfoeydIJそれらを変数として扱うやりかたがまだわかりません。
kitai001.txt
attack=50
move=5
pow=3
という内容で機体データを読み込んだ時に
変数として扱いたいんです。
どうすればいいのでしょうか。
0556名前は開発中のものです。
2007/11/09(金) 02:01:52ID:6eGYZdLF一番簡単なのは、execute_file(fname)、もしくはexecute_string(string)かなぁ。
指定するテキストファイルや文字列がGMLの文法にのっとってることが前提だけど。
例に出ている
attack=50
move=5
pow=3
とかなら全然OK。変数を代入したいオブジェクトでexecute_file(fname)を使うと一気に代入されるはず。
キャラ毎にファイルを作っておいて、キャラ毎に実行してみるようにしてみては?
ついでに言うと、execute系の関数は実行時にコード変換されるから、処理が重い(と予想される)。
今回のような初期化処理に利用するぐらいにしたほうが良い。
もちろん、文字列を扱う関数を駆使してもできるけど、かなり面倒かな…。
0557名前は開発中のものです。
2007/11/09(金) 02:14:59ID:UPA3QoAL調べてもわからないので教えてくれるとありがたいです。
0558名前は開発中のものです。
2007/11/09(金) 18:08:17ID:jfoeydIJありがとうございます。
やってみましたがエラーが出てできません。
fileId = file_text_open_read("chara/pc1/kitai001.txt");
execute_file(fileId);
file_text_close(fileId);
コードはこのようでいいのでしょうか?
gamemaker7を使用しています。
英語のヘルプには、execute_file(fname,arg0,arg1,...) と書いてましてarg0...というくだりが理解できません。
0559名前は開発中のものです。
2007/11/09(金) 18:09:43ID:jfoeydIJ0560名前は開発中のものです。
2007/11/09(金) 18:55:21ID:nbXU63ap>>558で挙げているコードは、次の1行が正しい。
execute_file("chara\pc1\kitai001.txt");
arg0 以降の引数の意味は、読み込むテキストファイル内で、GMLにおける引数をあらわすargument変数に代入される。
この仕様により、execute_file()は関数を呼び出すときと同じような感覚になる。
例えば、code アクションで
execute_file("hoge.txt", 100, "argtest", direction);
というコードを実行するとして、
---hoge.txtの内容---
// argument0 には 100、 argument1 には "argtest"、 argument2 には、呼び出し時におけるdirectionの値が代入されている。
var i;
for (i=0;i<argument0;i+=1) {
// ここは100回繰り返される。
}
strTest = argument1; // strTest には 文字列"argtest"が代入される
myDirection = argument2; // myDirectionには、呼び出し時のローカル変数 direction が代入される
---hoge.txtの内容終わり---
というようなことができる。
0561名前は開発中のものです。
2007/11/09(金) 19:07:33ID:jfoeydIJありがとうございます。
file_text_open_readで呼び出したIDじゃないと受け付けないと思いこんでました。
無事、読み込みました。
・・・そのコードの実行時に、ファイル内部へarg001...を全部もっていき、
そのファイル内コードで実行、結果内容がそのまま実行?されるわけですね。
7から書かれてるということは6までは出来なかった事なのですね。
それとは別の事なのですが、やっていて不思議に思ったのですが、
1つのイベント内で記述した変数は、他のイベント内で使用できないのですね。
オブジェクト内すべてで(varやglobalを使わない)変数を使えると思ってました。
0562名前は開発中のものです。
2007/11/09(金) 22:30:00ID:jfoeydIJ今、ちょっと試しにexe化したんですが、上記の外部ファイルを読み込む方法だと
exe化したあとでもその外部ファイルが必要なのだとエラーが出てしまいました。
全てを内包してexe化する方法はないのでしょうか。
0563名前は開発中のものです。
2007/11/10(土) 23:10:13ID:Rkru7jD1サクサクっと指示されままボタンおしてると、本体起動してないのに勝手にレジスト状態になってました。ビックリ。
0564名前は開発中のものです。
2007/11/11(日) 00:53:12ID:dEP/qcYk0565名前は開発中のものです。
2007/11/11(日) 00:58:48ID:PY4Qhhzp初起動でレジスト状態でした、ということです。
0566名前は開発中のものです。
2007/11/11(日) 07:17:37ID:Ai+8m8uK「Confirmation - Purchase of Game Maker」というメールが届いたのですが、
ここからどうしたらレジストできるかわかりません。
どうしたら良いのでしょうか。
0567名前は開発中のものです。
2007/11/11(日) 12:00:56ID:oO8sNPsbメールにアクチベーションコードが記されていましたか?
されていれば、それを入力することでLite版からPro版にアップグレードできます。
yoyogamesからLite版のgamemakerをダウンロードしてきてインストールし、実行すると
Upgrade to the Pro Edition という画面が出てきます。
[Enter Activation Code]とありますので、そこをクリックします。
(出てきた画面が英語なら、下のほうにlanguageとありますので、日本語に変えることができます)
[新しいライセンスをアクチベーション]の項にいき、必要な情報を入力すると完了です。
0568566
2007/11/11(日) 16:52:35ID:Ai+8m8uKコードらしきものは
「Purchase Reference」というものしか記載されていませんでした。
試しにこれを入力しても、はじかれてしまいます。
このメールとは別に、暫く待てば
アクチベーションコードが記載されたメールが来るのでしょうか?
0569名前は開発中のものです。
2007/11/11(日) 17:34:56ID:oO8sNPsb私のときは、
Thank you for upgrading your copy of gamemaker to version 7. Your new activation code can be found below.
YOY-UPG-XXXXXXXXXXXXXXXX
To use this activation code download and install the Lite edition of Game Maker version 7.0
(if you have not done so already). Run the program.
In the form that pops up select the button "Enter Activation Code".
In the form that appears enter the code and provide your name and further information.
The program will then be upgraded to the Pro edition.
ote that you must be connected to the internet when upgrading the program.
というメールが来て、アクチしたら画面が変わって
Activation Successful
Thank you for activating this title.
License Holder YOY
Purchase Ref 1-UPG-XXXXXXXXXXXXXXXX
という画面が出てきました。XXXXXXXXXXXXXXXXは同じ文字列 でした。
その後OSを再インストールした際再アクチしたことがあるのですが、ReActivationで上記のライセンスで入力したらアクチ成功しました。
Licence HolderはみんなYOYのようです。
あと、これは記憶が曖昧なのですが、Purchase Refのはじめの1-は入力せずにUPG以下から入力したとき成功した気がします。
0570名前は開発中のものです。
2007/11/11(日) 18:04:58ID:oO8sNPsbデフォルトでRe-Install Existing Lisence(既存のライセンスを再インストール)となってて、再アクチの入力画面ですので注意してください。
新しいライセンスは、上のActivate New Licence(新しいライセンスをアクチベーション)を選択した後入力してください。
0571566
2007/11/11(日) 22:17:10ID:Ai+8m8uKDear ******
Please save this email and print a copy for safe-keeping as confirmation that you have purchased Game Maker for $ 20.00
License holder: (自分のメールアドレス)
Purchase Reference: 1-**************(UGPという表記は無し、14数桁の数字・アルファベット)
というメールでした。
英語がわからないなりに、検索して色々調べてみたところ、
GM7を購入すると「1-UPG-16ケタの英数字」が書いてあるメールが来るので、
1をYOYに変えて入力する、との記事があったのですが、
自分のところに来たメールには1-と14ケタの英数字しか書いてありませんでした。
「YOY-UGP-14桁の英数字」で入力しても、はじかれてしまいます。
どなたかわかる方はおられませんでしょうか…。
0572名前は開発中のものです。
2007/11/12(月) 00:47:58ID:SMPr5R3+ある人が一週間ライセンスが届かない、とsoftwrap(ライセンスを管理しているところ)に問い合わせたところ以下のメールが返信された、という例がありました。
URL:http://gmc.yoyogames.com/index.php?showtopic=280090&st=100about:blank
>To re-activate your software, kindly open it once you have installed it and follow the steps below:
>
>- You will need to be connected to the Internet
>- Access the software
>- Select "Re-installation of License" or "Activate License" from the screen that appears
>- Enter your License Holder Name and Purchase Reference Number in the fields provided (if necessary click the tick box which says "Re-install Existing License")
>- The software will automatically reinstall and be activated
>
>You will be pleased to know that we have included your license holder details to proceed with the re-installation. Please copy and paste the details below:
>
>License Holder Name: INSERT (EMAIL ADDRESS) HERE
>Purchase Reference: INSERT (#-##############) HERE
>
>Should you require further assistance, feel free to contact Softwrap Support desk at support@softwrap.com
>
内容を見る限り、Re-install Existing Licence からやるようですね。もしまだ試してないのであれば、試してみてください。
0573名前は開発中のものです。
2007/11/12(月) 01:38:54ID:X/VZL/ZVアクションゲームでキャラがダメージを受けたとき一定時間無敵時間を作りたいのですがどのようにすればいいでしょう。
0574566
2007/11/12(月) 02:57:08ID:XPKJHwMRわざわざ調べていた様で、ありがとうございました!
その方法で出来ました!
ずっとわからずに困っていたので助かりました。
0575名前は開発中のものです。
2007/11/12(月) 09:20:30ID:zbFXrWjk空気は読まなくてもいいが、過去ログは読めよ。
このスレのログだけでもヒントは書いてあるぞ。
0576名前は開発中のものです。
2007/11/13(火) 14:48:20ID:F+NwYmav開いたら何も無いんだけど、見えてないの俺だけ?
0577名前は開発中のものです。
2007/11/15(木) 22:49:15ID:Q3sXVJ6Zまぁええではないかええではないか
0578名前は開発中のものです。
2007/11/16(金) 17:54:48ID:UQAwVTd5床と天井のオブジェトを分けたくないのですが。。。
0579名前は開発中のものです。
2007/11/16(金) 19:35:38ID:i1di2c5Tその時々でゲーム画面に映している範囲の座標を取得する方法はないでしょうか?
操作キャラで座標を取得する場合、roomの端と中央付近では分岐して処理を作るのは手間と余計な負荷がかかるので・・・・・
0580名前は開発中のものです。
2007/11/16(金) 20:21:56ID:g6M8XTDNわけなくても出来ます。>>523ででてるplatform(platform_1.gmk)のソースを見て、仕組みをよく理解してみては。
>>579
取得したい情報は、組み込み済みのグローバル変数に定義されていたりします。
>>532のページに、組み込み済みの変数一覧があるから参考にしてみてください。
ビューの位置や幅はグローバル変数で定義されてて、
ver6以降だと、view_xvyew[0..7]、view_yview[0..7]、view_wview[0..7]、view_hview[0..7]で、
ver5.3Aだとview_left[0..7]、view_top[0..7]、view_width[0..7]、view_height[0..7] です。
URL:
ttp://www.wikihouse.com/GameMaker/index.php?%A5%B0%A5%ED%A1%BC%A5%D0%A5%EB%CA%D1%BF%F4%B0%EC%CD%F7
0581541
2007/11/17(土) 01:58:15ID:6kTW/Ms/http://gamdev.org/up/img/10541.zip
ver7 で作成中なのですが、コマの向きと動きについて。
欲を出して動く駒で表現しようとしたら、行き詰まりました。
移動している間は移動モーション(walk_right etc...)を表示し、
動きを止めると立ち(stund)モーションにしたいのですがうまくいきません。
どうしたらいいのでしょうか。
0582名前は開発中のものです。
2007/11/17(土) 09:28:38ID:lq795UNbkey pressイベントとkey releaseイベントのタイミングで、スプライトを入れ替える。
key press <left>
change sprite [left]
key release <left>
change sprite [stand]
key press <right>
change sprite [right]
key release <right>
change sprite [stand]
ちなみに chnage spriteアクションは、各項で次のローカル変数を代入しているだけ。
sprite : 変数sprite_indexに代入
subimage : 変数 image_index に代入。 表示するサブイメージ番号(アニメーションのコマ)。0で最初。
speed : 変数 image_speed に代入。 1ステップで何コマ進むかをあらわすアニメスピード。0.5だと2ステップで1コマ変化する。
0583名前は開発中のものです。
2007/11/17(土) 22:59:12ID:ZhTdG7VCほかののコードも知りたいのですが
一覧表みたいなのがあれば教えてくださるとうれしいです
0584名前は開発中のものです。
2007/11/18(日) 03:52:47ID:dZTdlxUnつttp://www.blackratstudios.com/games/dnd_to_gml/dnd_to_gml.html
0585名前は開発中のものです。
2007/11/18(日) 07:17:44ID:8No17c3/ウェイト以外で時間を止めるにはどのようにすればいいでしょう。
0586名前は開発中のものです。
2007/11/18(日) 09:45:04ID:0g2iccNJそういう仕組みを作るんだよ。コマンド一つじゃあできない。
0587名前は開発中のものです。
2007/11/19(月) 18:24:01ID:Sx6ObIFS0588名前は開発中のものです。
2007/11/19(月) 22:25:53ID:6rLgo3d8if(obj.vspeed >= 0 && (obj.yprevious + obj.sprite_height - 1) > yprevious && place_meeting(x, y-1, obj))
たぶんこれでいけると思います
gml初心者なのでできなかったらごめんなさい
それはそうと俺も質問させてください
/modules/newbb/viewtopic.php?viewmode=flat&topic_id=48&forum=6
を参考に縦に移動する床はできたのですが
横移動する床ができません
自分なりにypreviousをxpreviousに変えたりしたのですが無理でした
教えてくださるとうれしいです
0590名前は開発中のものです。
2007/11/20(火) 04:30:47ID:wcKOJeK1ボタンを押して剣を振るようにしたいのですが、
押している間、ずっとマシンガンのように連発してしまいます。
ロックマンX等に出てくるゼロのように単発で出したり
コンボをつなげられるようにしたいです。
GMLは勉強中で、まだあまりわかりませんが、どうしたら良いのでしょうか。
0591名前は開発中のものです。
2007/11/20(火) 15:12:19ID:2h9OV+2NkeyboardじゃなくkeyPressでやるといいと思うよ!よ!
フォーラムにのってると思うんだけどな・・
0592名前は開発中のものです。
2007/11/21(水) 05:25:51ID:aCno3jIs俺なにつくってんだろ\(^o^)/
これ知ってる人いないよな。。?
0593名前は開発中のものです。
2007/11/21(水) 14:46:30ID:GJ98eRgx一部読みにくい部分もあるかと思いますが、参考にしてください。
質問する方は、質問する前に既出のものがないか調べてみてくださいね。
ttp://www.wikihouse.com/GameMaker/index.php?2ch%A5%B9%A5%EC%A4%DE%A4%C8%A4%E1
0594名前は開発中のものです。
2007/11/21(水) 21:15:55ID:o5zLLD5X・GM7でmbText 1.4.0とjFont Maker 2.2.0を使って日本語表示しようとするとエラーでる
という問題に関して自分の環境でもでました。
WinXP PRO sp2
VRAM32mb
MEM1G
GM7
スプライトサイズを削っていく方法でどのサイズでロードできるか試してみました。
結果、w:320 h:2054 サイズでRunできました。
漢字の京供あたりまで表示できているようですが、
描画するテキスト → 〜∵・・’々” と表示されました。
0595名前は開発中のものです。
2007/11/21(水) 23:05:33ID:o5zLLD5X落下する時の表示ができません。
移動する前の地点と移動した後の地点の変数を取得する方法はありますか?
それよりスマートな方法はありますか?
0596名前は開発中のものです。
2007/11/21(水) 23:16:25ID:kronrROz乙です。
俺は初代スレを見る事ができないので、
そこでなされたQ&Aが見られる事は有難いことです。
>>595
移動する直前にいた位置を示すxprevious,yprevious、
移動した後の位置(現在の位置)を示すx,yという変数が
デフォルトで存在するので、それらを活用するといい。
0597名前は開発中のものです。
2007/11/22(木) 00:12:30ID:g8wLykso横移動する床のうえに乗ったら、一緒に動かしたいってことかな。
自キャラの直下にあるインスタンスを調べて、動く足場だったら一緒に移動させるってことをさせればいいんだけど…
自キャラのステップイベントでこんな感じにしてみては?
必要に応じて、適宜変えてください。
[codeここから]
/* serch_x, serch_y : 調べたい足元の座標 */
/* 実際は自分の都合に合わせて数値を変えること */
serch_x = x;
serch_y = y+16;
ground_id = instance_position(serch_x,serch_y,[横移動する床のオブジェクト名]);
/* ground_id には、足元のインスタンスIDが入る */
if (ground_id <> noone) {
x += ground_id.hspeed; /* もし床が速度で管理されているなら、自キャラに床の水平速度を足し込む事で、一緒に移動しているようになる */
}
[codeここまで]
上記の例だと、 (serch_x,serch_y) 一点だけでしか判定しないから、精度は悪いかもね。
線とか矩形領域で判定したければ、collision_line() とか collision_rectangle() あたりを使用してください。
0598名前は開発中のものです。
2007/11/22(木) 00:35:47ID:UQGy8J0/説明書plz!
0599名前は開発中のものです。
2007/11/22(木) 00:48:22ID:xbPHpoIOありがとうございます。
0600名前は開発中のものです。
2007/11/22(木) 01:25:56ID:Z2DrGOi5おおでけた\(^o^)/
ありがとうございます
>>598
移動キーで移動
スペースで発射
選択画面ではクリックで武器選んで
ス
見たいなところ押すと始まる
なんてつまらないゲーム\(^o^)/
0601名前は開発中のものです。
2007/11/22(木) 16:23:18ID:xbPHpoIOAutoHotkey というソフトで解決できた。
http://lukewarm.s101.xrea.com/index.html
以下のコードを打ち込むとOK
;######### ココカラ #########
#IfWinActive Execute Code
F5::
CoordMode, Mouse, Screen
MouseGetPos,x,y
CoordMode, Mouse, Relative
MouseClick, left, 20, 45
CoordMode, Mouse, Screen
MouseMove, x, y
;######### ココマデ #########
F5キーでOKボタンをクリックする仕様です
0602名前は開発中のものです。
2007/11/24(土) 10:47:25ID:yxZvhkIv6をDLしようとしたら公式に前のバージョン落ちてない\(^o^)/
0603名前は開発中のものです。
2007/11/24(土) 11:08:07ID:Ni6Xllr/旧公式から前のバージョンを落とせるよ。
ttp://www.gamemaker.nl/old.html
下のほうに旧バージョンの一覧がある。
でも正直、6.xはお勧めしない…。整数でも24bit、およそ1678万弱までしか扱えないのはちょっと。
5.3Aと7.0ではこの問題がおきていない。
0604名前は開発中のものです。
2007/11/24(土) 17:08:16ID:4xZfNBY3それと、EmEditorの構文ファイルを作ってみたけど需要ある?
0605名前は開発中のものです。
2007/11/25(日) 01:48:28ID:Eof1yOl+1ドットの小妖精を作って、image_xscaleで引き延ばしたオブジェクトを不可視指定。
Drawイベントで同じ大きさのdraw_rectangleを作って表示しています。
もっとシンプルにできますか?
width = 10; height = 10; // 当たり判定の大きさ
atariid = instance_create(x+10,y,obj_atarihantei);
atariid.image_xscale = width;
atariid.image_yscale = height;
if (mode_visible) {
//スプライト指定にすることで可視化
atariid.sprite_index = spr_attack;
}
Draw Event:
draw_rectangle(x,y,x+width,y+height,true) ;
0606名前は開発中のものです。
2007/11/25(日) 02:06:45ID:vBlAV7Zzif (mode_visible) {
//スプライト指定にすることで可視化
atariid.sprite_index = spr_attack;
atariid.visible = true;
}
0607名前は開発中のものです。
2007/11/25(日) 03:24:21ID:Eof1yOl+それですと、元スプライトが――小妖精から直すの忘れてました――
1ドット絵ですので、□でなくて■で表示されてしまうんです。
元スプライトを□で書いてみたんですが、オブジェクト拡大時
やたらと輪郭のボケた表示になってしまいました。
はっきりとした線(□)で表示したいのです。
0608名前は開発中のものです。
2007/11/25(日) 10:01:18ID:r1aVIhHY0609名前は開発中のものです。
2007/11/25(日) 11:28:56ID:qQuswX/z俺は昨日遊んでショックを受けたよ…。
gamemakerってもっさりしたゲームしか作れないものだと思ってたから。
0610名前は開発中のものです。
2007/11/25(日) 11:47:25ID:vBlAV7Zz枠で表示したかったら、obj_atarihantei の Drawイベントで draw_rectangle() を使って表示するのが一番スマートかな。
塗りつぶされて見えないのが嫌だったんなら、半透明にする手もあるけど。
ローカル変数 image_alpha を0.5ぐらいに設定すれば、半透明になる。
0611名前は開発中のものです。
2007/11/25(日) 22:25:10ID:nQKNJKcwGM5.3Aで7.75Mの容量くらい作ったけど起動のローディングが15秒くらいになった
やっぱマシンがへこいとローディング長くなるんでしょうか?
ルームは幅1000高さ700でスプライトは高さ300幅400とか多く、113個くらい作った
まだ音入れてないのに動作確認だけで日が暮れる状態です・・・
ビデオメモリの使用をやめて遅延ロードとか考えた方がいいんで・・・しょうか・・・
0612名前は開発中のものです。
2007/11/27(火) 17:29:34ID:Kfsg319Y0613名前は開発中のものです。
2007/11/27(火) 22:05:08ID:o7JCBwEcとりあえず遅延を適当に入れて調整してみる
0614名前は開発中のものです。
2007/11/27(火) 22:37:33ID:03pWBi0Hゲームの途中でロードする背景とかスプライトとかを中心にね。
最初から使う奴は入れて
0615名前は開発中のものです。
2007/11/28(水) 02:34:13ID:IKhE5IEHあれはスプライトのアニメーションでうまく見せてるんだろうね。
ドット絵を描けない俺としては尊敬するほどに羨ましい。
あれくらいの領域のゲームを作りたいと思って始めたんだがなかなか・・・
0616名前は開発中のものです。
2007/11/28(水) 23:22:11ID:UcC33M+rver7のグローバルセッティングの翻訳で困ってまして
Let <Esc> en&d the game
&Treat the close button as <Esc> key
ここの翻訳がわかりません。
一行目は、ESC で終了でいいのでしょうが2行目が・・・
どうか教えてください。
0617名前は開発中のものです。
2007/11/29(木) 00:46:50ID:OT5fuA8bヘルプを見ると、
When checked the close button of the window will generate an escape key event. When not checked the close button events are called instead.
→意訳:チェックが入っていると、閉じるボタンで<ESC>キーイベントを発生させます。 チェックをはずすと、代わりに Close Button イベントを発生させます。
とあるから、
『閉じるボタンで <ESC>キーイベントを発生させる』
でいいんじゃないかな。
で、翻訳とは違うんだけど、このClose Button イベントは、Win32API?の WM_CLOSE とは違うことに注意。
不用意に Treat the close button as <ESC> key のチェックをはずすと、×ボタンで終了しなくなる。(Alt-F4も効かないっぽい)
ゲーム内で Close Button イベントを拾って、End the game アクションを定義しておけばいいんだけど・・・。
ESCキーで終了させずに×ボタンで終了させたい場合は、次のようにするべし。(7.0 only)
・Global Settings の、[Let <Esc> end the game] のチェックをはずし、[Treat the close button as <Esc> key] のチェックもはずす。
・ゲーム中ずっと存在するオブジェクトとかで、Close Button イベントを定義し、そこで End the Game アクションを起こす。
0618名前は開発中のものです。
2007/11/29(木) 01:07:06ID:2O8VJSxXおぉ、ありがとうございます。
E-WordChanger2000で変換がきかないところが多々ありますね。
0619名前は開発中のものです。
2007/11/30(金) 16:26:11ID:JpK40a/w当分時間作れなくなりました。
翻訳引き継いでくれる方希望。
http://gamdev.org/up/img/10638.zip
0620名前は開発中のものです。
2007/11/30(金) 16:27:29ID:JpK40a/w0621名前は開発中のものです。
2007/12/01(土) 00:20:12ID:do+f7uIl全然翻訳できてねーじゃねーかwwww
俺も今同じく翻訳中だけど、あれなんだよな、有料版の部分の翻訳が出来ないorz
それと、ボタンが文字化ける
冒頭のアクティベート部分も化ける
文字化けさえ克服できれば後一歩なんだが
0622名前は開発中のものです。
2007/12/01(土) 01:05:45ID:NJujLxPi未レジストって事?
俺レジストしてるよ。
物ちょうだい。
0623名前は開発中のものです。
2007/12/01(土) 02:19:17ID:do+f7uIlすぐさま、他人の手柄を丸々よこせと言ってみたりする
0624名前は開発中のものです。
2007/12/01(土) 02:38:10ID:NJujLxPi0625名前は開発中のものです。
2007/12/01(土) 02:47:00ID:2L8kwVBd共有してくれる意志があるならしてもらえると助かるな。
0626名前は開発中のものです。
2007/12/01(土) 03:02:43ID:2L8kwVBdすまない、今のは忘れてくれ。
0627名前は開発中のものです。
2007/12/01(土) 03:09:01ID:NJujLxPi0628名前は開発中のものです。
2007/12/01(土) 03:15:52ID:NJujLxPiうpる気ないなら初めから書くなバーカ!!!!
どーせろくなもん作ってないんだろwwwww
0629名前は開発中のものです。
2007/12/01(土) 03:18:38ID:NJujLxPi何が自由意志だ! 格好良いとおもってんのかよ(プ
早くクソして寝ろwwwwwwwwwww
0630名前は開発中のものです。
2007/12/01(土) 03:44:02ID:do+f7uIlつーか、>>625になら渡してもいいけど
でも本当は完成してからうpしたいな
0631名前は開発中のものです。
2007/12/01(土) 03:44:02ID:NJujLxPi間違えられたのが悔しかったんだ
抜いたら落ち着いた
0632名前は開発中のものです。
2007/12/01(土) 03:44:37ID:do+f7uIl0633名前は開発中のものです。
2007/12/01(土) 03:45:45ID:NJujLxPiく、悔しくないからな
0634名前は開発中のものです。
2007/12/01(土) 03:47:07ID:p7Hahl+U前はツクールスレだったな。
0635名前は開発中のものです。
2007/12/02(日) 03:21:15ID:RfbAwBK6ボタン押下時に instance_createで作成したオブジェクトをキャラクターに追従させるにはどうしたらいいのでしょうか?
my_copy_id = instance_create(x-20, y-20, obj_my_copy);
でやっているのですが、その場所で留まっています。
0636名前は開発中のものです。
2007/12/02(日) 03:26:46ID:RfbAwBK6その作成したオブジェクトは、シューティングのオプションでしてキャラの周り(1つめは上、2つ目は下)という風に出現場所を変えたいのです。
0637名前は開発中のものです。
2007/12/02(日) 03:42:50ID:4Kr9+zdRobj_my_copy が追従したいオブジェクト(obj_mychara とする) のインスタンスがルーム内に一つしかないなら、
obj_my_copy の step イベントで Var アクション を追加し、
variable : x
value : obj_mychara.x
もう一つ、
variable : y
value : obj_mychara.y-20
上記はキャラの上に配置されるようになる例。数値適当にかえてくれ。
0638名前は開発中のものです。
2007/12/02(日) 04:42:57ID:4Kr9+zdRオプションは複数置きたいけど、すべて同じオブジェクトにしたいってこと?そういう場合は、インスタンスによって配置を変えないとね。
上記の obj_my_copy の step イベントで追加した Var アクションのところを、
variable : x
value : obj_mychara.x+optx
variable : y
value : obj_mychara.y+opty
とかに変えて、ボタン押下時に instance_create()したときに、
my_copy_id = instance_create(x, y, obj_my_copy);
my_copy_id.optx = 20;
my_copy_id.opty = 0;
とかすると、右側に出る、とかできる。if文で適当に条件分岐させて、optx と opty の値を決めればいい。
0639名前は開発中のものです。
2007/12/02(日) 05:25:36ID:4Kr9+zdR>>552 の要望にこたえられそうなAutoHotKey のショートカットマクロが出来た。
Execute Code ウィンドウでも、 Script Properties ウィンドウでも、即確定して閉じる。
http://gamdev.org/up/img/10645.zip
デフォルトでは Ctrl+W でウィンドウを閉じるようになってます。。
ファイル内の ^w:: を適当に変えることでキーカスタマイズ出来ます。
autohotkey.ini に追加するなりして利用してください。
・・・もう5時半かorz おやすみなさい
0640名前は開発中のものです。
2007/12/02(日) 05:59:41ID:RfbAwBK6その記述でうまく予定通りの動作にすることができました。
ありがとうございました。
遅くまでお疲れ様でした。
お休みなさい。
0641名前は開発中のものです。
2007/12/04(火) 16:21:12ID:lZt/Vorpif文でattack+=1によるatack何回目かで表示かえてるけど
モーションの途中で次のモーションに変わるんだよね。(当然だけど
1回目のモーション中に押した判定があった時に、
2回目のモーションに移行したい。
ヒント教えてください
0642名前は開発中のものです。
2007/12/04(火) 18:30:38ID:QsBWBjou「ヘルスが1以上減ったとき」というのはどう設定すればいいのでしょうか
0643名前は開発中のものです。
2007/12/04(火) 21:57:57ID:lZt/Vorp俺も初心者だけど浮かんだので書いてみる。
・ステップ開始イベントで、現在のヘルスを変数(たとえば、henka_health)に格納
・ステップ終了イベントで、現在のヘルスとhenka_healthを比較
1以上変化があれば、無敵時間突入
という風にやるとかどう?
0644名前は開発中のものです。
2007/12/04(火) 22:08:42ID:lZt/Vorpアニメーションが終わった時のイベントが End of animation というのは解ってるんだけど、
アニメーション中にatack(があったかの)変数を使って、
もしあれば次のモーションに移る。
って感じの「モーション中に何かあったか」を調べるGMLって何かある?
0645名前は開発中のものです。
2007/12/04(火) 22:31:07ID:OLWlECNFプレイヤーのヘルスを減らすスクリプトっていうのを作っておいて、
ダメージを与える時には必ずそのスクリプトを呼ぶようにする。
で、何か処理を追加したい時にはそのスクリプトに追加する。
ってやり方もあるよ。
>>644
アニメーション開始時に適当な変数を0に設定して
何かアクションがあったら変数を1に変える
アニメーション終了イベントで変数が1かどうかチェック
でどうかな。
0646名前は開発中のものです。
2007/12/04(火) 22:41:58ID:lZt/Vorp連続攻撃にしたいんだ。それだと1・・・ ん?
1回目に atack=1 二回目に atack=2 ...
として、終了イベントで ってあれー?
うん、ありがと、何か閃きそうだ。頑張ってみる。
0647名前は開発中のものです。
2007/12/04(火) 22:43:28ID:NwDfsPPB>>644
キープレスイベントかなんかで、イベントを拾えばいいんでないの?
>>641
zキーで攻撃するとして、
key press <z>
...
switch (attack) {
case 0: // 1発目
// ここにモーションを発動させる何かを書く。
attack += 1
break;
case 1: // 2発目
// ここにモーションを発動させる何かを書く。
attack += 1;
break;
// ...
}
...
モーションは、タイムラインで設定すればいいとおも。
もしくは、ステップイベントでモーションを設定してる自作スクリプトを呼び出す、のもアリかなぁ
例えば引数を、attackとモーションが始まってから経過したステップ数にして、
attackでモーションの種類を場合わけをして、
経過ステップ数でそれに応じた移動をさせたり、アニメーションさせたり、キー入力の可否を設定したり、等々...
ま、それだとタイムラインとあまり変わらんのだが。
0648名前は開発中のものです。
2007/12/04(火) 23:05:42ID:lZt/Vorpthx
caseもやってみたけど、イメージ通りとはいかなかった。
(俺のやりかたが悪いのか
イメージとしては、モーションが終わらないと次のモーションが始まらないって事なんだけど、
どうしても、モーション途中でボタン押すと、モーション途中で放棄して新しいモーションが
始まるんだ。
0649名前は開発中のものです。
2007/12/04(火) 23:10:18ID:lZt/Vorpタイムライン?とかアラームで判断させたほうが良い?(これもイマイチうまくいってない
これができるとダッシュ判定とかできそうなんだよな。 うーん。
0650名前は開発中のものです。
2007/12/04(火) 23:16:11ID:NwDfsPPBあ、動作キャンセルじゃないのか。上の例は、動作キャンセルっす・・・。
となると、俺だったらモーション中は攻撃キーの入力を無視するような仕組みを作るなぁ。
キー入力可否を表す変数(ableAttack)を一つ用意して、
if (ableAttack) {
switch (attack) {
// ここは>>647と同じ感じで...
}
}
こんなかんじで。モーションが終わったら、連続攻撃入力受け待ち期間になって、
次の攻撃キーの入力があったら、連続攻撃発動(attack が +1されてく)。
この期間はアラームで管理するといいかもね。
で、連続攻撃受け待ち期間も終了したら attack を 0 にもどす。
そんなイメージが沸いた。
0651名前は開発中のものです。
2007/12/04(火) 23:33:22ID:lZt/Vorpthx
うーん、それだと小パンチ連続みたいな感じができないんだよね。
何カウントか待たないといけなくならない? というか成った。
モーション中にもっかい押されると連続攻撃発生みたいにしたい。
少し落ち着いてくる。
0652名前は開発中のものです。
2007/12/05(水) 02:09:27ID:DyBIMWNQ「↓・斜め→・右+A」のようなコマンドです。
0653名前は開発中のものです。
2007/12/06(木) 00:37:05ID:ipO1poTD0654名前は開発中のものです。
2007/12/06(木) 22:57:30ID:g7KZCqa1最近gamemakerにはまりだした、新人です。
2D横スクロールゲームを作ろうと思って>>305さんのサンプルを参考にさせてもらい、
ちょくちょく進めてるんですが、途中で詰まってしまって、原因を探ろうにも
全くわかりません。どなたかご教授お願いします。
ttp://tonosiki.mbnsk.net/uploader/src/up6820.rar
←→キー;左右移動
Zキー;ジャンプ
Xキー;パンチ
エラー:
パンチを数回使うと、keyXで変数panchが見つからないとエラー表示される
また、移動しながらパンチをしてもkeyleftまたはkeyrightで変数panchが見つからないと
表示される。
途中、命令をコメント文で囲っていますが、気にしないでください。
0655名前は開発中のものです。
2007/12/06(木) 23:41:29ID:x5GKX6Jsスプライトが1から表示されない時があるのですが解消方法はありますか?
0656名前は開発中のものです。
2007/12/07(金) 00:45:55ID:4eA37li8paypalで1000円までなら支払ってもイイ
0657名前は開発中のものです。
2007/12/07(金) 00:58:23ID:+n/vdyUz見たところ、unkown variable というエラーがでるような記述ではないと思います。
そこで、unknown variable gamemaker bug というキーワードでググったところ、
海外のフォーラムに、ごく稀にそのようなことが起こる、との書き込みがありました。
ttp://gmc.yoyogames.com/lofiversion/index.php/t300055.html
下から2番目に Alert Games という人が答えています。
どうやら、プロジェクトをセーブする際にバグがあるのかもしれない、といっていました。
その人はバックアップファイルで元に戻すことを勧めていますが、
私のほうで obj_main オブジェクトを丸ごと duplicate して(右クリックでできます) 再度ためしたところ、unknown variable のエラー表示はなくなりました。
こんなことが起こるんですねぇ・・・。
0658名前は開発中のものです。
2007/12/07(金) 02:06:08ID:4eA37li8キャラをスト3の豪鬼の必殺技みたいに、横にすべりながら攻撃する時に、思い通りに動かない。
Xポジションを変えると瞬間移動みたいになったり、
move_towards_point使うと、ずっと移動しつづけたり・・・
3キャラ分横に移動させて止めるって方法教えてください
0659名前は開発中のものです。
2007/12/07(金) 02:26:02ID:+n/vdyUz前提となる部分が何もないと回答が無数にあるため、答えようがないというのが正直なところでして。
前提となる部分を回答する人が想像して答えようとしても、えらい長くなるから面倒だしスルーってなりやすいですし。
(というか、1から作るやり方をいうようなもんですし)
こうやってるんだけどうまくいかない等、詳しい情報がないと手助けしてくれる人の可能性が低くなりやすいですよ。どうしようもないのが本音です。
0660名前は開発中のものです。
2007/12/07(金) 02:40:14ID:4eA37li8ええっと、前提となる部分・・・
2D格闘ゲームを作ってまして、立ち状態から
ボタンc(必殺技ボタン)を押したら、パワー消費して(これはOK)
立ち絵から、sprite(spr_special_wazaA ; サブイメージ数20)
に変化させて、キャラを右方向ゆるやかに移動させたいんですが、
if keyboard_check_pressed(ord('C')) {
sprite_index = spr_special_wazaA ;
image_index = 0 ;
image_speed = 1 ;
x += 10 ; //←ここで移動を書こうとしている
}
こうすると、右に10ほど瞬間移動したみたいにコマ飛びして表示されます。
for でやってみても一緒でしたし、move_towards_pointすると地面となる
オブジェクトと接触してる間はちょっしか移動しないし、ジャンプとかすると
そのまま画面の端まで移動しちゃうんですよね。
ゆっくり移動して目的の場所でピタっと止める方法はありますか?
0661654
2007/12/07(金) 07:17:58ID:MOpCkhcYわざわざ、調べていただいて、さらに海外フォーラムまで言っていただいて
ありがとうございます。
エラー表示が消えました。ありがとうございましたm(_ _)m
0662名前は開発中のものです。
2007/12/07(金) 22:00:35ID:3R22D1pU1stepごとに少しずつ移動させたければ、ステップごとに細かく移動させないといかんのよ。
何ステップでどれくらい移動するかあらかじめ決めて、
移動するステップ数(変数名 move_cnt)と1stepで移動する移動量(変数名 dx)を計算しておく。
で、ステップイベントで、
if (move_cnt>0) {
x += dx; //x 方向にdxだけ移動する
move_cnt -= 1; // 移動カウントを一つ減らす
}
こんな感じにすると少しずつ移動する。面倒だけど、仕方ない。
横移動制御には hspeed を利用する方法もあるけどね。
技発動したときに、move_cnt と dx (とスプライト(sprite_index)とアニメーションスピード(image_speed))を決めてあげればいいんじゃないかなぁ。
なお、for文は1step内で繰り返し終了まで処理することになるので、上のような意味にはならない。
技発動中に操作させたくなければ、キー入力を拾う部分でそういうフラグも設けること。
0663名前は開発中のものです。
2007/12/08(土) 02:21:58ID:HAW715W6ものすごく死角から攻撃されたような衝撃です。
明日試して見ます。
そして新たに質問なんですけど、draw_sprite_stretchedでスプライトを下記の方法で表示すると一瞬で消えてしまうんですが、何が問題なのでしょう?
//X(攻撃)ボタン
if keyboard_check_pressed(ord('X')) {
attack = 1; ren += 1 ;
if ren == 1 {
if !muki_chk{ sprite_index = x1_r; }else{ sprite_index = x1_l; }
image_index = 0 ; image_speed = 1 ;
draw_sprite_stretched(spr_attack,0,x+10,y-20,50,20);
}else if ren == 2 {
if !muki_chk{ sprite_index = x2_r; }else{ sprite_index = x2_l; }
image_index = 0 ; image_speed = 1 ;
draw_sprite_stretched(spr_attack,0,x+10,y-20,30,40);
}
}
0664名前は開発中のものです。
2007/12/08(土) 07:47:24ID:qBb/GgCEdraw系の関数はdrawイベント中にしか効果がないよ。
画面に描画する機能なんだけど、drawイベントに入った最初に背景色や背景画像で全体を描画してしまうので、描いても消されてしまう。
スプライトを拡大表示させたければ、image_xscale image_yscale という変数で指定できる。
どうしても、キャラスプライトとは他に描画したいものがあるなら draw イベントで描画関数で描こう。
ただし、draw イベントに処理を施すと、自身のキャラ(sprite_index のスプライト)が自動で描画されなくなるので、忘れずに描画させよう。
0665名前は開発中のものです。
2007/12/08(土) 18:34:14ID:HAW715W6ありがとうございます。
あ、すいません、これはdrawイベントに書いてます。
なのに一瞬で消えてしまうからナンダロウなーと。
深度を指定して試してみるっす。
0666名前は開発中のものです。
2007/12/08(土) 20:46:46ID:Cn07bZV4if keyboard_check_pressed(ord('X')) {
}
の内側にあるから、キーを押した瞬間しか
描画されないんじゃないかな
0667名前は開発中のものです。
2007/12/08(土) 21:00:01ID:HAW715W6が、今の問題とは関係ないけどobject_set_depth(ind,depth)って、どこで宣言してもいいのかな?
(最後の方にでてくるオブジェクトで、最初のほうにでてくるオブジェクトの深度変えるとか)
心配だから、ルームに必ずおくオブジェクトに設定してるけど。
>>666
なるほど!
では、タイマーイベントで試してみます。
0668名前は開発中のものです。
2007/12/08(土) 21:06:20ID:HAW715W6表示時間のばすか、消えないままにする方法ってないですか。
0669名前は開発中のものです。
2007/12/08(土) 21:38:56ID:Cn07bZV40670名前は開発中のものです。
2007/12/08(土) 21:47:16ID:HAW715W6って、そのための変数だ!
if文の中で数字を変数に入れて下のほうで宣言すればいいんだ。
やってみます。
0671名前は開発中のものです。
2007/12/08(土) 22:00:33ID:HAW715W6画面外に表示しておいて、攻撃時(x-key press)時だけ
目的の場所に移動させるという方法にしてみる。
他に良い手がありましたら教えてください。
0672名前は開発中のものです。
2007/12/10(月) 15:28:56ID:ey1ac3Xs何を表示したいのかいまいちイメージできないけど・・・・・別に1つのオブジェクトで処理してしまおうとしなくてもいいんでないかい?
表示用のオブジェクトを作成しておいて、アラームイベント2つ作成し1つ目にDestroy the instanceアクション(インスタンス破棄)を登録
2つ目に1つ目のアラームを起動させる記述をする。生成イベントでアラームイベントの待機時間用変数を宣言しておく
if keyboard_check_pressed(ord('X'))のブロック内のどこかでこの表示用オブジェクトを生成してやるとともにさっきのアラームイベントのタイマーセットを書き込んでやれば
このタイマーセットの間だけ表示されると思う。以下こんな感じのGML書いたらっていう案(表示オブジェ:obj_Disp 待機時間用変数:IntervalSet アラームイベントを1と2で設定したとする)
if keyboard_check_pressed(ord('X')){
//攻撃とか動作とかをずらずら記述してあるかと・・・
//-----------------
//ここより表示用オブジェ生成
var DispObjID;
DispObjID = instance_create(self.x, self.y, obj_Disp);//例として自分の原点に表示用オブジェのインスタンスを生成
DispObjID.IntervalSet = room_speed * 3;//例として3秒間表示
}
0673672
2007/12/10(月) 15:45:44ID:ey1ac3Xs○obj_Dispの生成イベント
var IntervalSet; //待機時間用変数の宣言
alarm[2] = 1; //破棄用アラームイベントを1ステップ後起動させるアラーム2を起動
○obj_Dispのアラーム2イベント
alarm[1] = IntervalSet;//破棄用アラームイベント起動
○obj_Dispのアラーム1イベント
>>672の記述どおりDestroy the instanceアクションをセットし、自分自身(obj_Disp)を破棄する
後はobj_Dispの描画イベントにあなたが思ってる表示をさせる記述をもりもり書き込もう
実際試してないけど>>672は似たような事してるので多分大丈夫だとおもうよ?
0674672
2007/12/10(月) 16:18:53ID:ey1ac3Xs0675名前は開発中のものです。
2007/12/10(月) 21:07:39ID:hgs58Ul1どんぴしゃで目的の動作にできた!! マジありがとー!!
格闘ゲー+α(ファイナルファイトみたいな)の作成中、
どうしても汎用的な当たり判定枠を作りたくてやってたんだけど
すぐに消えるわ表示されないわで困ってた。
必殺技で自分の分身をつくってソイツに殴らせるのをやりたかった。
(コイツにのみ当たり判定有り)
で、ぶわーっと前にまっすぐ飛ばしたりもしたかった。
一応アラームも使ってデストロイ指定してたんだけど、
連続攻撃すると分身が画面に残ったりしてた。
(animation end でデストロイ指定+表示から秒単位でデストロイ)
言われた方法でやったら、連続攻撃してもキレイに消えてくれて
なんかもう、やっとムチ振りアクションに取りかかれるッス。ありがとー!
0676名前は開発中のものです。
2007/12/10(月) 21:08:47ID:hgs58Ul10677名前は開発中のものです。
2007/12/11(火) 00:16:53ID:QXoJ6Zcoif relative position (4,0) is collision free for Only solid objects
move relative to position (4,0)
else
if relative position (4,-8) is collision free for Only solid objects
move relative to position (4,-8)
move in direction 270 at most 8 till a contact with solid objects
と、ある場合GMLで記述するにはどうすれば良いのでしょうか。教えてください。
0678名前は開発中のものです。
2007/12/11(火) 11:20:53ID:LOC5oPUmたぶん、こう。
if (place_free(x+4, y)) {
x += 4;
} else if (place_free(x+4, y-8)) {
x += 4;
y += -8; // y -= 8; でもいい
move_contact_solid(270, 8);
}
0679672
2007/12/11(火) 18:12:40ID:1veI1+hNぉ!できましたか。成功してよかったです。
ところで>>667のobject_set_depth(ind,depth)ですが、その使い方だとNGかと思われます。
平たくいえばオブジェクト=設計図、インスタンス=オブジェクトのコピーであり、F5,F6でデバックした時や実行ファイルで実際に表示されているものはインスタンスです。
object_set_なんちゃら()の関数はオブジェクトリソースを直接変更しにいく関数なので、ヘルプの冒頭に説明されているとおり、すでにオブジェクトのインスタンスが
生成されている場合インスタンスにオブジェクトのプロパティが格納されていて予期せぬ効果を引き起こす可能性があります。
深度を変えたい場合はインスタンスidを直接さして個々に変更するのが常套手段かと思います。>>672のobj_dispを使って説明すると
var DispObjID;//インスタンスidを保存する変数
DispObjID = instance_create(self.x, self.y, obj_Disp);//インスタンス生成instance_create()は返り値にインスタンスidを出力する
DispObjID.depth += 2;//例として設定されている深度より2奥に設定変更
こういった感じでしょうか。ヘルプによく書かれている引数のindはよく読まないと、インスタンスなのか、オブジェクトなのか、スプライトなのか混同してしまうことが
あるのでそこらへんを意識してないと「インスタンスが表示されない」+構文も間違えてないので「エラー表示がない」とかいうことになります。
自分も実際しょっちゅうやらかしてます・・・orz
0680名前は開発中のものです。
2007/12/11(火) 18:31:50ID:QXoJ6Zcoありがとうございます。
このようなアクションをGMLに対応する一覧みたいなものは無いのでしょうか。
0681名前は開発中のものです。
2007/12/12(水) 19:32:20ID:I7CK0gCA>584にV6用のがリンクしてあるけど
他のバージョンのが欲しかったら本家フォーラムから
ttp://gmc.yoyogames.com/index.php?showtopic=334704
0682名前は開発中のものです。
2007/12/12(水) 19:50:15ID:Bw7drWJWありがとうございます。
v7はあるようですが、v6はないようですね。
0683名前は開発中のものです。
2007/12/12(水) 19:51:08ID:Bw7drWJW数字のないほうがv6でした。
0684名前は開発中のものです。
2007/12/13(木) 19:56:55ID:mOWLOq6Sチェンジの時たまに1から順にスプライトが再生されません。
何が原因でしょうか。
0685名前は開発中のものです。
2007/12/13(木) 21:33:32ID:9VWX8wY5change sprite アクションなら、subimage ていう箇所があるからそこで設定する。
GMLなら
sprite_index = 変更したいスプライト名;
image_index = 0;
てな感じで。
0686名前は開発中のものです。
2007/12/13(木) 22:50:14ID:mOWLOq6S0687名前は開発中のものです。
2007/12/15(土) 12:14:12ID:CVKb7N910688名前は開発中のものです。
2007/12/16(日) 13:32:59ID:MjHgc/J/というような技を作りたいのですがどのように設定すればいいのでしょうか?
0689名前は開発中のものです。
2007/12/16(日) 21:34:56ID:khbOK2Jzテンプレのリンクからヘルプを拾ってきて with の項目を参照すると目的の動作ができると思う。
0690名前は開発中のものです。
2007/12/17(月) 00:13:47ID:SSdNo8vAできるようにしたいのですがif a position is collision freeを使ってもうまくいきません
どう設定したらいいでしょう
0691名前は開発中のものです。
2007/12/17(月) 00:34:29ID:d4jiuAy+relativeにチェック入ってる?
if a position is collision free (x:-400 relative:check)
Jump to a given position (x:-400 relative:check)
0692名前は開発中のものです。
2007/12/17(月) 00:58:48ID:1bZl34aqGM7でアクションゲームを作っているのですが、
攻撃に設定したキーを一回押すと、離しても延々と攻撃が出続けてしまいます。
GMのフォーラムやここの質問で key_pressedイベントを使うと良いと書いてあったのですが
それを使っても攻撃が止まず上手くいきません。
単発で出したいのですがどうしたらいいのでしょうか。
どなたか解る方がいらっしゃいましたらご教授下さい。
文章だけではわかりにくいかもしれないのでソースをあげておきます。
http://www.uploadjar.com/818021
0693名前は開発中のものです。
2007/12/17(月) 01:11:36ID:d4jiuAy+・その状態だと、Left(Right)を押したら rol に変数が入る。
・zを押したら、向きがLeftの場合、攻撃スプライト(左)を表示する。
で終わってる状態です。
Key Release <Left> に Set variable rol to 0
Key Release <Right> に Set variable rol to 0
をそれぞれ追加してください。
0694名前は開発中のものです。
2007/12/17(月) 01:14:21ID:d4jiuAy+違いました。
忘れてください
0695名前は開発中のものです。
2007/12/17(月) 01:46:13ID:d4jiuAy+・・・恥ずかしい間違いしたので問題の箇所の例として加修正してます。
http://www.uploadjar.com/158405
0696名前は開発中のものです。
2007/12/17(月) 04:52:03ID:1bZl34aqとても早いレス、ありがとうございます!
自在に攻撃が出来るようになり、左右移動まで作って頂いてとても嬉しいです。
本当にありがとうございました!
0697名前は開発中のものです。
2007/12/18(火) 14:25:36ID:KuzWpsao上からは着地可能、
かつ着地後下キーを押すと下へすり抜けられるブロックを、
Solidを外さず、かつブロック側の処理で実現したいのですが、
どうすれば良いでしょうか?
Solidを外すと、その他の判定処理で不具合が生じるので、
なるべくSolidのままで作りたいのです。
また、同時に4人のキャラクターを操作するため、
下キーを押している間と上昇中は非Solidにするという方法は使えません。
0698名前は開発中のものです。
2007/12/18(火) 16:44:34ID:N2pESpOeGM6でマリオの様なアクションゲームを作っており、乗ると落下するブロックを作ってみました。
が、普通のブロックから落下するブロックに空中移動無しで触れても落下せず、ブロックの上でジャンプしなくては落下しないのです。
原因もあまり解らずどうすれば良いのか解りません。ご教授お願いします。
0699名前は開発中のものです。
2007/12/18(火) 19:47:28ID:u37r1wue歩いて落ちる床の上に来た場合は接触状態になっているんだが、これはコリジョンとは違うんだ。
だから、コリジョンイベントとは別に、プレイヤーと落ちる床との接触状態を調べて、条件を満たしたら床を落とす、様なことをしなきゃならん。
で、調べる方法だけど、アクションアイコンだとこれは無理。だと思う。
プレイヤのステップイベントに execute code を追加して、以下のように記述。
※空白は全角なので、コピペするなら半角に直すこと。
var id_floor; /*id_floor を、execute code 内だけ有効な変数とする */
id_floor = instance_place(x,y+1, object228);
/* instance_place()でプレイヤの直下に、object228 (落ちる床)が存在するかどうかしらべている */
/* もしプレイヤの下にobject228が存在したら、 id_floor にそのインスタンスID が代入される。 そうでなければ、 noone という値が入る */
if (id_floor != noone) {
if (id_floor.isDrop == false) { /* このif文を付けないと、接触中常にalam[0]が10になってしまうので、必ずこの条件を入れること。 */
id_floor.alarm[0] = 10; /* floor_id に対して、10ステップ後にアラーム0(落ちる動作)が発動するようにする */
id_floor.isDrop = true;
}
}
変数isDropで落ちるフラグを判定している。
これがないと、alarm[0]が接触中は常に10になってしまうんで、乗っている間落ちないことになってしまう。
変数isDropを使うことになったんで、初期化が必要。落ちる床の create イベントにvarアクションを追加、variable: isDrop、value: falseとする。
さらに、落ちる床のobj_redとのコリジョンイベント中に、varアクションを追加し、variable: isDrop、 value: true とする。
あと、コリジョンイベント中にある set vert.speed アクションは削除、でいいとおもう。
0700名前は開発中のものです。
2007/12/18(火) 21:18:56ID:u37r1wue考えてみたんだが、結構無茶な要求・・・。
なぜなら、solidの仕様は、コリジョンイベントの前後で、2つのインスタンス間で絶対に「めり込み状態」を認めないような仕様になっているから。
solid なインスタンスとのコリジョンイベントは、以下のような流れになる。()内は solid の時だけ処理される。
[コリジョンイベント]
↓
(お互いのインスタンスが直前ステップの位置に戻される)
↓
[コリジョンイベントのアクション]
↓
(speed,gravity等でインスタンスの位置を調整後、お互いがコリジョンを起こしていたら、やはり直前ステップの位置に戻される)
↓
[end step イベント]
なもんで、その床とキャラとのコリジョンイベントでアクションを起こさないほうがよい。
てことになると、solidの意義が薄れることになるが・・・。
どうしてもコリジョンイベントも定義したいなら、コリジョンイベント中で xprevious yprevious を自前で変更してしまうか、
end step で通過可能にする処理を書くとかするしかない。いずれも、かなり面倒になりそう・・・。
それよりも、着地の処理をコリジョンイベントに頼らない方法で着地させ、
その床との接触中に下を押すと gravity を発生させ、
通過中はgravityを0にしないような処理を
キャラ側のステップイベントとかで記述するようにするようにしてみてはどうかな・・・?わかりにくかったらごめん。
0701名前は開発中のものです。
2007/12/18(火) 22:58:45ID:RkfysYSUすり抜け床には使えないな。
0702697
2007/12/19(水) 00:13:09ID:SlaPK2idなんとか工夫してみようと思います。
0703名前は開発中のものです。
2007/12/19(水) 16:31:31ID:8LUQdUPxサンプルデキタ。 solid だとやはり面倒だったんで、solid じゃないやつだけど、参考になれば。
ttp://www.uploadjar.com/133957
0704697
2007/12/19(水) 18:35:50ID:SlaPK2idうーむ。やはりキャラ側で処理した方が良いのか・・・。
頑張ってみます。
0705名前は開発中のものです。
2007/12/19(水) 21:55:33ID:+fFhIeoEキャラ側で指定する時に都合が悪くなければ、
壁用判定オブジェクトを作り、
全キャラにそれを親指定するというのはどうだろう?
0706名前は開発中のものです。
2007/12/20(木) 04:58:53ID:Tb+MgVarありがとうございます。
アクションアイコンのみでしか作った事無かったので難しいですね・・・。
頑張ってみようと思います。
0707名前は開発中のものです。
2007/12/23(日) 00:32:42ID:U9AhK/mz0708名前は開発中のものです。
2007/12/23(日) 00:42:15ID:QJlA1OEF0709名前は開発中のものです。
2007/12/23(日) 05:15:16ID:ZiPFLJZ/つ「global」
0710名前は開発中のものです。
2007/12/23(日) 12:40:14ID:U9AhK/mz0711名前は開発中のものです。
2007/12/27(木) 15:49:32ID:8DGio7LY1フレーム目から正確に表示されず困っているのですが仕様ですか?
主人公が待機状態で攻撃キーを押すと「10フレーム目に攻撃判定を発生させる」主人公オブジェクト@に変化して
アニメーション終了時に元の主人公待機状態に戻るように設定したのですが@が5フレームあたりから始まって攻撃が異常に早く発生してすぐアニメーションが終わってしまったり
11フレームで攻撃判定がなくなってからアニメーションが開始されたりして毎回正確なフレームからスタートされません。
0712名前は開発中のものです。
2007/12/27(木) 18:16:42ID:1ajxqRXW待機状態というのは、何もボタンを押していない状態でしょうか。
その前に何か条件が発生しているのでしょうか。
そしてバージョンは何を使っているのでしょうか。
そしてヘルプは読んでいるのでしょうか。
>>1のリンク先は見ていますか。
容易に仕様と言わないでください。
0713名前は開発中のものです。
2007/12/27(木) 18:22:56ID:1ajxqRXWsprite_index = spr_A
image_index = 0
image_speed = 10
2番目の image_index を変化させてください。
これは subimage の始まりを変えます。
最後の image_speed を変化させてください。
これはスピードが変わります。
再度伝えます。
リンク先のヘルプや exsample を参考してください。
0714名前は開発中のものです。
2007/12/27(木) 18:28:43ID:1ajxqRXWstep の実行順番を再認識してください。
step には順番があります。
それは Begin Step から始まり、最後は Drawing です。
また、イベントの Animation End Event をうまく活用してください。
よりよい Game Maker Life を。
0715HAL
2007/12/28(金) 14:58:17ID:iAadBrLOあとオブジェクトを使ってHPを減らすようにするにはどうしたらいいんですか
0716名前は開発中のものです。
2007/12/29(土) 00:25:14ID:yxji7H+p0717名前は開発中のものです。
2007/12/29(土) 11:53:52ID:YtFwzcBI0718名前は開発中のものです。
2007/12/29(土) 11:54:46ID:YtFwzcBI変を数ってなんだ…orz
0719名前は開発中のものです。
2007/12/29(土) 17:02:58ID:4nUjeBtr変数で二つ目のヘルスを作っても描写で画面に表示する方法がわかりません
バージョンは5.3です
0720名前は開発中のものです。
2007/12/30(日) 03:17:36ID:NSmEj/DShttp://www.uploadjar.com/134394
ZでPLAYER1(赤)弾発射
XでPLAYER2(青)弾発射
0721名前は開発中のものです。
2007/12/30(日) 11:55:41ID:Zqqq8hXpありがとうございます
0722ぺしゃみゅんち
2007/12/31(月) 22:39:11ID:G7IwY3y8私ロックマンエグゼのようなゲームを作ってみたのですが
変な異常を起こします
原因が一人ではわからないので皆さんに見ていただきたいのですが
これがそのファイルですhttp://www.uploadjar.com/766112
バージョンは5.Aです
詳しいことはファイル内の問題点のテキストに書いてあります
よろしくお願いします。
0723名前は開発中のものです。
2008/01/01(火) 04:09:53ID:HO6m3WgJ意味が わからない
あとエンターでプレイヤー表示だけどpressにするのをお勧めするよ一瞬押しただけでも2、3召還されるわけで
0724名前は開発中のものです。
2008/01/01(火) 13:01:48ID:5Zz7hnr70725名前は開発中のものです。
2008/01/01(火) 15:05:07ID:krtrP6kC変と異常ってのは違う意味を指すからおかしくないんじゃね?
0726名前は開発中のものです。
2008/01/01(火) 18:25:13ID:HO6m3WgJ異常な上に変なんじゃね
0727名前は開発中のものです。
2008/01/01(火) 20:03:22ID:krtrP6kC724に言えよ
0728ぺしゃみゅんち
2008/01/01(火) 21:13:12ID:41An0v9b>>723さん 修正しましたがパソコンの調子が悪く
アップロードに時間がかかるのでほかの修正箇所が
出てきたところでアップロードさせなおしていただきます
異常とは本来右左でキャラクターを選択するのですが
怪鳥から左を押すと獅子になるはずが怪鳥のままになっているのです
また次が獅子になるはずのところでは怪鳥に飛んでしまうのです
どうしてこんなことがおきてしまうのでしょうか?
去年の9月から考えています
しかし分かりません
助けてください
0729名前は開発中のものです。
2008/01/02(水) 03:01:30ID:0XzNgAng所々に音を鳴らす命令を入れて実験してみたところ、どうやら
オブジェクトEvsEのpress<left>を実行した後、すぐさまWvsEのpress<left>も実行しちゃってるみたい。
SvsEやNvsEのpress<right>での実行も同様。
原因は多分、1フレーム間でのインスタンス同士の実行順にあると思う。
これはもうおそらく仕様なので、次のような工夫が必要になってくる。
press<left>イベントを実行してオブジェクトを変化させたら、
変化後のオブジェクトのpress<left>イベントを、次のフレームに移りかわるまでの間は実行させないようにする。
……というわけで、フラグ変数をうまく使ってみると良いと思う。
0730ぺしゃみゅんち
2008/01/02(水) 13:25:34ID:19fPmr/N変数などは分からないので
押し上げイベントに変更してみました
そのほかいろいろ改良しましたらもう一度アップロードします
0731名前は開発中のものです。
2008/01/04(金) 02:27:54ID:KY38Rubyあと描画イベントの使い途がいまさら解った
嘘みたいだろう?俺、いままで文字とかいちいちスプライト作って表示してたんだぜ?
0732名前は開発中のものです。
2008/01/04(金) 17:38:30ID:JG5m5wPm0733名前は開発中のものです。
2008/01/04(金) 23:16:21ID:cqFFi5wRGM自体は動くみたいだけど…
0734名前は開発中のものです。
2008/01/05(土) 02:05:40ID:NZZVqR2v実行形式はまだ試してないけど
0735名前は開発中のものです。
2008/01/06(日) 18:55:38ID:OjABw8Q7「スコア:○○」のように前に出すのではなく「○○点」のように表記したいのですが可能ですか?
0736名前は開発中のものです。
2008/01/06(日) 20:34:01ID:nLpXdUSy'' + string(スコア) + '点'
でできた
0737名前は開発中のものです。
2008/01/06(日) 21:29:22ID:OjABw8Q70738名前は開発中のものです。
2008/01/08(火) 12:36:23ID:G/0Io5dz0739名前は開発中のものです。
2008/01/08(火) 20:46:53ID:HXQlUjj30740名前は開発中のものです。
2008/01/09(水) 10:04:09ID:jHNZrdiZ0741ぺしゃみゅんち
2008/01/15(火) 21:32:09ID:hN1kqTH6しかし変数などが分からないのですが
誰か5.aで開ける>>729さんのいっていたようなフラグ変数
をつかったサンプルもしくは私のアップしたものに手を加えたものを
アップしてくれるとうれしいです。
ここで説明していただいてもかまいませんが
サンプルなどをアップしてくれたほうがうれしいです。
よろしくお願いします
0742名前は開発中のものです。
2008/01/15(火) 23:50:06ID:DrVh3adF簡単なやり方としては
・今キーイベントに置いている内容をアラーム0イベントに移動
(「イベントの変更」を使うと楽)
・かわりにキーイベントに「Set an alarm0」を置いて値を1にする
これでインスタンスの変化が1ステップおいて起こるようになる
0743名前は開発中のものです。
2008/01/18(金) 02:01:25ID:CrDQFjAi直角や180度いっきに回転してしまうんですが
クルーってかんじに遠回りして追尾させたいんですが
どうすればできますでしょうか
0744名前は開発中のものです。
2008/01/19(土) 00:58:07ID:dhI4eC+v0745名前は開発中のものです。
2008/01/19(土) 02:10:04ID:pvbjWxudあるとすれば
・6以降の新しい機能が使えない
・レジスト機能使う時に、登録しにいかなくちゃダメ
ってくらいだな。
0746名前は開発中のものです。
2008/01/19(土) 06:44:46ID:lpPp39mj日本語化辞書
途中だけど、続き誰か頼む
使い方教えてとかいう、ググれない厨は落とさないように
0747名前は開発中のものです。
2008/01/19(土) 15:34:14ID:Rw9P3/DK0748名前は開発中のものです。
2008/01/22(火) 21:09:08ID:45T81GjC今どうやってるん?
0749名前は開発中のものです。
2008/01/22(火) 21:17:39ID:ocbbdzjm本家では新しいの出るんかな
0750名前は開発中のものです。
2008/01/22(火) 21:22:18ID:NoSS/6O8いきずまってます\(^o^)/
動いてる方向を取って1/3ステップ進ませて今進んでる方向がうんたらかんたら
0751名前は開発中のものです。
2008/01/23(水) 02:48:32ID:Q1tjyTbCものすごくGJ
0752名前は開発中のものです。
2008/01/23(水) 04:18:28ID:b5xhxs/kすまんが現状どうやってるのかよくわからん
角度を常に変数でもたせておくなりして三角関数使わないと難しいんじゃないだろうか
俺ならミサイルの単位時間に動かせる角度と距離固定して目標追わせるかな。
0753名前は開発中のものです。
2008/01/24(木) 03:09:34ID:n00gmxlnまた製作の壁にぶつかってしまい困っています。
GM7でアクションゲームをつくっています。
現在、ロックマンのように、自キャラが移動をしながら攻撃ができるようになっています。
これを魔界村のように、移動中に攻撃ボタンを押したら、立ち止まって攻撃するようにしたいのですが、どうすれば良いでしょうか?
ソースをあげておきますので、
どなたか解る方がいらっしゃいましたらご教授下さい。
ttp://www11.axfc.net/uploader/20/so/He_66684.zip.html
Keyword(DLパス)は0011です。
0754748
2008/01/24(木) 12:00:40ID:gZRHXEEh自分>>34なんだけどうpしてるやつの最初の方にホーミングミサイル撃つ敵
つくってあるんだけどこんな感じの作りたいの?
0755名前は開発中のものです。
2008/01/24(木) 12:22:14ID:gZRHXEEhobj_usagiオブジェのキーボードイベント<left><right>のアクション全体をcan_attack変数が1の時だけ実行するように
If a variable has a valueを置いてみたらいいんじゃない?
0756753
2008/01/27(日) 02:40:32ID:v3yvH1+7すばやい回答ありがとうございます。
無事自キャラが止まって攻撃が出来るようになりました!
半月間も悩んでたので本当に助かりました。
ありがとうございました。
0757729
2008/01/27(日) 04:15:44ID:PCXtfTLDあ……なるほど。
pressKeyで即オブジェ変更するんじゃなくてAlarmイベントで実行させれば
複雑にフラグ変数を使わずに済みますね。勉強になります。
0758名前は開発中のものです。
2008/01/29(火) 11:37:55ID:n2eeRZD+オブジェクトのソースを出力ってできますか?
オブジェクトがたくさんあると手作業ではちょっと厳しい...
0759名前は開発中のものです。
2008/01/29(火) 21:35:15ID:fH/FU5dj名前からは想像がつかないが、全オブジェクトの情報を
一気に出力してくれるというすぐれモノだ。
オブジェクトたくさん作りすぎてるとエラーで死ぬけどな!
0760名前は開発中のものです。
2008/01/29(火) 23:51:12ID:n2eeRZD+止まった\(^0^)/
450個もオブジェクトがありゃそりゃ固まるか。
0761名前は開発中のものです。
2008/01/31(木) 18:22:51ID:fnpWL05fばーか
0762名前は開発中のものです。
2008/01/31(木) 22:04:15ID:TXruG4et( ^ω^)…
0763名前は開発中のものです。
2008/02/01(金) 00:34:05ID:a4c4UVam>761
ばーか
762 名前は開発中のものです。 [sage] 2008/01/31(木) 22:04:15 ID:TXruG4et - NEW! -
>>762
( ^ω^)…
0764名前は開発中のものです。
2008/02/08(金) 17:38:06ID:zFVnBZNtまた聞くのはちょっと気が引けるんですが、
Solidのチェックを外さずに下からすり抜けられる床ってのは
やっぱり無理なんでしょうか。
諸事情で「キャラがブロックより上にいる時だけSolidにする」という方法が使えません。
0765名前は開発中のものです。
2008/02/08(金) 18:50:11ID:2GE6uT/lsolid Whether the instance is solid. This can be changed during the game.
(solid インスタンスがsolidかどうか。ゲーム中に変更可能)
solidかどうかの判定は変更できるようなので、キャラのy値を取得して、
「キャラのy値がブロックのy値よりも低いとき、solidをfalseにする」
「else {solidをtrueにする}」
って組んだらどうかな?
0766名前は開発中のものです。
2008/02/08(金) 19:08:26ID:zFVnBZNt前提として4キャラ同時に操作するということを書いてませんでした、すいません。
1キャラ操作のアクションゲームならそうするんですが、
多キャラを操作するときなどに、他のキャラがブロックの上にいるときとかに
Solidを解除すると乗っているキャラが落ちてしまうので悩んでいます。
0767名前は開発中のものです。
2008/02/08(金) 19:10:03ID:mtgOpTzWifを何個か重ねたらだめなのか?キャラごとに
0768名前は開発中のものです。
2008/02/08(金) 19:29:09ID:zFVnBZNt4Pが床(足場)にしたからすり抜けようとしたときにぶつからない?
1Pが上にいるからSolidはONになってるはずだし
0769名前は開発中のものです。
2008/02/08(金) 20:41:16ID:2GE6uT/lSolid同士の衝突は貫通しない以上、1つでもSolidがあったら下のやつは上にあがれなくなると思うぞ。そのためのSolidなんだし。
オブジェクト別にアクションを変えたいのなら、Solidは解除しておいて、状況に応じて通行可/不可が切り替わるように考える必要があると思う。
〜チラシの裏〜
発想を逆転してみた。
ブロックはSolidで固定。キャラのSolid判定を変えてみるという考え。
キャラがブロックの上にいるときはSolid、下ならNon-Solid。
これなら下から上ならすり抜け、上から下なら止まるというのを実現できるのじゃないかと。
……でもこれをやると、ブロックは縦方向に見て1つまでしか置けない。
ついでに多分、キャラも床もSolidにして床の上を自由に歩けるようにしてあるんだと思うから、
これをやると床をすり抜けどこまでも落ちていく。
うん。駄目だ。
〜チラシの裏〜
0770名前は開発中のものです。
2008/02/08(金) 20:48:06ID:zFVnBZNt自己解決した・・!
結局「キャラがブロックより上にいる時だけSolidにする」という方法が使えるということに気がついたというオチ・・。
Solidに設定しててもCollisionイベント設定しなかったら素通りするから、
4人いたらそれぞれのプレイヤー用の床を作って4つ重ねればいいのか。。
2ヶ月くらい悩んだけどなんか思いついてみれば簡単だった・・・。
ttp://www.uploda.org/uporg1239813.gm6.html
考えて頂いてありがとうございました。
0771名前は開発中のものです。
2008/02/08(金) 20:51:40ID:2GE6uT/l0772名前は開発中のものです。
2008/02/10(日) 01:31:29ID:JMvutfpq違っても製作頑張れ。完成するといいな。
0773名前は開発中のものです。
2008/02/12(火) 00:35:49ID:iUX9zyeTこのレスはアクションの人だったんだな(´・ω・`)
0774名前は開発中のものです。
2008/02/12(火) 22:51:39ID:iUX9zyeT0775名前は開発中のものです。
2008/02/12(火) 22:58:47ID:54CFVRXr残念だがそれは仕様上ムリだと思ふ
0776名前は開発中のものです。
2008/02/12(火) 23:04:06ID:iUX9zyeTありがとうだぜ
ちょっとhttp://gamemaker.main.jp/modules/smartfaq/faq.php?faqid=33を応用してくるぜ
0777名前は開発中のものです。
2008/02/14(木) 22:58:45ID:3EjNgEsT一つのルームに4種類部屋作って>>776の方法で分割表示すれば良いんじゃね?
0778名前は開発中のものです。
2008/02/14(木) 23:29:42ID:bjVjEw1+ヴァージョンが5だったことを忘れてたんだぜww
0779名前は開発中のものです。
2008/02/15(金) 03:04:43ID:5T9VWkupロード時間が半端なく長くなった上にメモリ浪費が激しすぎる・・。
時間とメモリを節約する方法ってないですかね・・・
0780名前は開発中のものです。
2008/02/15(金) 03:21:07ID:BAZ3rUXcもしそうなら、room内で使う分だけ読み込むようにしてみるとか。。。
たしか、使用していない画像や音声のリソースをメモリから消去するような関数が用意されていたと思うんで、
roomを変更する時などに、必要がなくなったリソースをメモリから削除するようにしてみるとか。。。
0781名前は開発中のものです。
2008/02/15(金) 13:06:06ID:5T9VWkupしかしロード時間が死ねる・・。sprite_replaceを使う以上仕方ないのかなぁ。
ゲーム内に組み込もうにもキャラ数が40人くらいいるから、
exeにまとめると実行ファイルサイズとスプライト数がすごいことになる。
0782名前は開発中のものです。
2008/02/15(金) 16:41:13ID:sRLBKt+9読み込むものを減らしたらどうでしょか
2つか3つ本体作って
全部読み込みバージョン
ちょっと読み込みバージョン
最小限バージョン
とか(´・ω・`)
0783名前は開発中のものです。
2008/02/15(金) 17:20:59ID:hkVzw0EY・起動が早いかわりに、リソースの読み込みでやや時間をとる。
・修正、アップデートが軽量化できる。(新しい実行ファイルと追加データを上書き)
逆に全部をexeにまとめると、
・起動が遅いがその後のロードは不要(または軽減?)。
・中に詰め込んだデータに容易にアクセスできない(ユーザーからのリソースの書き換え防止)
・しかし、アップデートは差分の書き換えではなく「新しいバージョンを丸ごと入手」
……といった解釈で合っていますか?
間違っていたり、もっと詳しい説明があったら是非お願いします。
(もしこうだったら、修正/拡張パッチとかが作れるように、外部からの取り込みの方がいいのかなぁ)
0784名前は開発中のものです。
2008/02/15(金) 21:54:23ID:6M2Mj1CCそいつベッドの下にビンに入った液体チョコレートと筆を置いてて
これなんだ?って聞いたら
「これで彼といっしょにお互いの体に塗ってなめっこするの♪」
って言われた。
0785名前は開発中のものです。
2008/02/17(日) 04:31:08ID:/MDHcIsH顔や手がブロックに引っかかって落ちなかったり、
端っこの壁に行くとめり込んででられなくなったりします・・・
コリジョンの判定をどうすればいいのでしょうか
http://gamdev.org/up/img/11074.zip
0786名前は開発中のものです。
2008/02/17(日) 06:06:40ID:7sK4ZglNマスクを使えばおk
http://www6.atpages.jp/kakenn/src/up0002.zip
0787名前は開発中のものです。
2008/02/17(日) 11:03:46ID:wXzkSK3WGML上において、score(GM側にデフォルトで設けられているスコア変数)に
値を代入させる方法がわからず、困っています。
ヘルプは一通り読んだつもりで、私は次のような記述を行いましたが…
score =(適当な値);
global.score =(適当な値);
エラーになってしまいます。
GMLを使ってscore変数の値を変えるにはどのようにすれば良いのでしょうか?
0788787
2008/02/17(日) 11:10:44ID:wXzkSK3Wバージョンは6.1です。
0789名前は開発中のものです。
2008/02/17(日) 12:32:39ID:yekEWnFqやったことないが
グローバルいらないんじゃね?
0790787
2008/02/17(日) 14:13:20ID:wXzkSK3W試しに今、新規作成でscore+=1と記述してみたところ、これは難なく動作しました。
ということは、このエラーの原因は別の箇所にあると考えられそうですので
一旦ソースを見直してこようと思います。
……何処がダメなのか想像がつかないけど……
0791名前は開発中のものです。
2008/02/17(日) 15:28:06ID:yekEWnFqscore=?;
両方試してみた?
後スペルチェックとか
0792名前は開発中のものです。
2008/02/17(日) 15:48:55ID:F5p9Y4ne"score" をすでに変数名以外に使っちゃっているとき。
変数名が青じゃなくて紫になってたらそれだ。
オブジェクトとかスプライトに "score" って付けてない?
0793787
2008/02/17(日) 19:47:57ID:wXzkSK3W確かに紫になっていました。でも"score"なんて名前を付けた覚えはない……
と思ってたらありましたよ、"score"という名のルームが!
気をつけて名前を付けてきたはずだから、こんな間違いはしていないと思い込んでいました…
>>791
そのようなスペースの有無によって引き起こされるバグは
ほとんどないと思っていますが、どうなんでしょう?
お二人方、どうもありがとうございました。
0794名前は開発中のものです。
2008/02/17(日) 21:31:14ID:H3L0qkMhありがとうございます
そして重ねて質問なんですが、
マスクの使い方も教えてもらえないでしょうか?
0795名前は開発中のものです。
2008/02/18(月) 06:03:43ID:P6ufyrMdマスク=当たり判定かな、違ってたらすまん
でも俺説明下手だから
http://gamemaker.main.jp/modules/newbb/viewtopic.php?topic_id=367
を参考にするといいんだぜ!
0796779
2008/02/18(月) 14:05:15ID:wD+9YlvRスプライトのロードよりも、
キャラ変数の用意に膨大な時間がかかっていることが判明。
execute_fileで大きなファイルをロードすると時間かかるんですね・・
0797名前は開発中のものです。
2008/02/18(月) 16:30:52ID:IGcs7e6Pゲーム実行時に GMLコードの書かれた文字列(またはテキストファイル等)を実行するのはかなり時間コストがかかるよ。
単純に考えても、gmソースにあらかじめ組み込んでおくのに比べて、
exe側がコードを解析して、(GM流の)バイトコードに変換する処理が増えるんだし。。。
変数の代入程度なら、自前でデータファイルを作って処理をしたほうが良いだろうね。
バイナリ形式のほうがよいかもしれない。
0798名前は開発中のものです。
2008/02/18(月) 21:26:12ID:ZmedX/dg解決できました!
ありがとうございます!
0799名前は開発中のものです。
2008/02/18(月) 22:39:56ID:tcJyICZc変数を使いまくるとロード長くなる?
どのくらい変数使ってるの?
0800779
2008/02/19(火) 22:43:31ID:x/RhMfeZexecute_fileでやってるから変数が多くなるとテキストも長くなって
時間がかかってしまうわけで。ゲーム内部に入れてしまえば0.1秒もかからないし、
配布時には内部に入れてしまおうかなぁと思ってる。
今数えたら5000個くらいだった。それ×4。
なんかこの設計自体に問題がある気がしてならない。
0801名前は開発中のものです。
2008/02/21(木) 10:47:14ID:QLrlpKARsprite_create_from_screenとsprite_assignで
ゆがませる空間のスプライトを作成し、
sprite_set_alpha_from_spriteをかまして
そのスプライトを用いたオブジェクトを拡大/縮小しながら表示させ、
オブジェクト消失時にsprite_deleteってやってるんですが、
この処理するたびに物理メモリが一定量ずつ減っていってしまいます。
sprite_deleteしてるからメモリは開放されるはずなのに…
何故でしょうか。
0802名前は開発中のものです。
2008/02/21(木) 12:22:17ID:TNE50/I9書かれていることだけをこちらでver 6.1にて実験してみたけど、
処理するごとにメモリ消費されてしまう現象は確認できなかった....
ちなみに、こんなソースです。レジストバージョンしか動きません。F1キーで略説でます。
ttp://gamdev.org/up/img/11107.zip
sprite_create_from_screen() で作成したスプライトも全て sprite_delete() されてるか再度確認されてみては。
0803801
2008/02/21(木) 13:03:03ID:QLrlpKAR帰宅してから試してみることにします。
0804801
2008/02/21(木) 18:05:02ID:hrX+JUXR只今帰宅し、サンプル確認してみました。
おおおおーーーメモリが減らない!!
背景からスプライトを置き換える際にsprite_delete(ind);を
入れてなかった点と、preloadがtrueになっていた点あたりが
問題…だったのかもしれないです。
さっそく作ってるゲームに入れてみて更に確認してみます!
有難うございました!!
0805802
2008/02/22(金) 00:23:23ID:9TIiCCE7おそらく原因は、sprite_delete() を入れていなかった、もしくはタイミングが悪かった点でしょうね。
問題が解決できそうで何よりです。開発がんばってください。
0806名前は開発中のものです。
2008/02/22(金) 00:58:19ID:GgtMRHOI0807名前は開発中のものです。
2008/02/22(金) 22:28:56ID:EnGdlCfoだね
もうあれでほとんど安定してるし
得にバグとか更新とかもないし
更新されるのは8が出てからかもね
8が出るのも相当後だと思うけど
ところでGameMakerって外部ファイルtxtとかって読み込めたっけ
0808名前は開発中のものです。
2008/02/22(金) 23:22:21ID:GgtMRHOI今出先だからわかんないけど、上の方で外部ファイルから変数を読み込んでって話題があったときにためしたら出来た記憶がある。
0809名前は開発中のものです。
2008/02/23(土) 21:16:37ID:3ZZOv+FT誰か詳しく説明してください。お願いします。
0810名前は開発中のものです。
2008/02/24(日) 00:38:27ID:410jBEd1使い方と言っても、xとyにスコア表示したい座標入れるだけなんだけど…
とりあえず(0, 0)のままでも画面左上に何かしら出るでしょ。
アクションをDrawイベントに置くこと、Visibleにチェック付けておくこと、
オブジェクトをルームの中に置いとくこと、以上3点忘れずに。
0811809
2008/02/24(日) 10:24:15ID:+SnWXLhWVisibleにチェックをつけるという意味がよくわからなかったが、
ちゃんと動きました。ありがとうございます。
0812名前は開発中のものです。
2008/02/24(日) 11:48:45ID:2Py4k7Q8Name: [ ]
Sprite
[ ]
[ New ] [ Edit ]
□Visible □Solid
Depth: [ ]
(以下略)
↑のVisibleのチェックボックスのこと。
デフォでチェックが入ってるから問題無かったんだろうけど。
これにチェックが入ってなかったら、例え何をしても何も表示されない。
動いたらしいしもういいんだろうけど、一応念の為。
うっかりしてると>>810が言った3つを忘れてしまいがち。
見直してて原因を見つけたとき「そりゃ表示されるわけねーわなw」となる。
0813名前は開発中のものです。
2008/02/25(月) 16:38:49ID:N0LtIPkdoutside view が働いていない気がする
0814名前は開発中のものです。
2008/02/25(月) 17:48:56ID:NE2+oADSバグだろうねぇ。公式のコミュニティにも話題が出てたよ。
ttp://gmc.yoyogames.com/index.php?showtopic=316899
現状だと、outside view イベントのかわりに boundary view イベントを使って、
そこで以下のコードを書くと、期待通りに動くようだ。
/* view 0 に対して、処理する場合 */
if (x-sprite_xoffset+sprite_width < view_xview[0]
|| x-sprite_xoffset >= view_xview[0]+view_wview[0]
|| y-sprite_yoffset+sprite_height < view_yview[0]
|| y-sprite_yoffset >= view_yview[0]+view_hview[0]) { // スプライトが完全に view から外に出たかどうかを判定している
// ここにコードを書く
}
コードが書けないなら、 if の()内の式全てを
Test Expression (?の描いてある八角形のアイコン) の expression に貼り付ければOK。
ステップイベント内で同様にやっても多分OKだが、
毎ステップ判定処理をしてしまうんで、処理コスト的に不利だろう。
0815名前は開発中のものです。
2008/02/27(水) 15:04:31ID:imokwZIUhttp://d.hatena.ne.jp/tsukkun/20061211/p3
鼻二つに眼が三つの子牛. 頭一つに身体二つの子豚. 単眼の子豚. もはや原形を
とどめない子豚. 4本足のヒヨコ・・・ (ここではヒトの奇形は詳しく紹介しませんが、
中国語「畸形」(簡体字・繁体字ともに)でインターネット検索をしたら・・・)
奇形や病死した牛や豚も加工されてしまえば見分けが付きません。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1414601269
中国、奇形児発生の原因とみられる重金属汚染
http://iwasero.blog66.fc2.com/blog-entry-240.html
・毒性の強い添加物や防腐剤を使用するケースが多い
・重さをごまかすのに牛や豚に水を注入したり、大量の食塩を食べさせる
【海外】中国:環境汚染
http://blog.livedoor.jp/gochagocha/archives/cat_50235110.html
腐った上海の海、必見グーグルアース
http://temple.iza.ne.jp/blog/entry/170885
地球上いたるところに湖がありますが、中国の湖ばかりが蛍光色に
光り輝いています。異常です。
中国の蛍光色7色に輝く河川
http://hinden.at.webry.info/200712/article_4.html
病気になったら抗生物質に汚染された魚を食べて治すという。すごい「薬膳」ですね。
0816名前は開発中のものです。
2008/02/28(木) 18:44:34ID:o8q2cNq40817名前は開発中のものです。
2008/02/29(金) 02:55:26ID:x+l1o480逆に、作りたいものを作るためにはどんなことを覚えなきゃいけないか、って感じで入ると滅入ると思う。
チュートリアルの通りに作って、わからなくなったらExampleを見て、どうやってるのかを参考にしたり。
GMLを使わなくても、シンプルなゲームなら十分作れるから、GMLに触れるのはある程度慣れてからで十分。
最初のうちは、「何が起きたらどれをどうする」といったことを決めていく、と考えるといいかもね。
右を押したら右に行く、弾が自機に当たったら爆発する、とか。
「チュートリアルなんて面倒」とか思わずに。無駄にはならないよ。
0818名前は開発中のものです。
2008/03/07(金) 01:56:07ID:/zU2Jm/Lどこに書いてあるかわかんないんだけど
0819名前は開発中のものです。
2008/03/07(金) 02:03:53ID:li5Lf13v0820名前は開発中のものです。
2008/03/07(金) 02:58:15ID:r5pkyD7y0821名前は開発中のものです。
2008/03/07(金) 21:49:20ID:/zU2Jm/Lサンクス
0822名前は開発中のものです。
2008/03/10(月) 16:38:14ID:qJ6+/ltXセブンイレブン
0823名前は開発中のものです。
2008/03/11(火) 20:45:46ID:EJkJUT5lGM7だとやり方が変わってるのでしょうか?
もしそうなら誰か設定の仕方を教えてくれませんか?
0824名前は開発中のものです。
2008/03/11(火) 21:53:46ID:c68BSDCdParentとかBounding Boxが見つからないって話だったら
まず File >Advanced Mode にチェックつける
0825名前は開発中のものです。
2008/03/11(火) 22:02:17ID:EJkJUT5ld
advanced modeにチェックを入れたら見れるようになりました
ありがとうございました
0826名前は開発中のものです。
2008/03/16(日) 11:21:30ID:7GR4thT4存在するIDを指定しているのに、時々そんな変数しらねぇよといわれてしまいます。
おそらく、instance_changeの時に何か起こっているのだと思うのですが・・
立ち状態のインスタンスのIDを保存して、攻撃やダメージの際に、
instance_changeを利用しています。
立ちインスタンス←ここのIDを保存している
└攻撃1インスタンス
└攻撃2インスタンス
└ダメージインスタンス
if(adjust){
if(player == 1 && global.cpu_1){
x = (global.com1).x + (global.com1).hspeed + posx;
y = (global.com1).y + (global.com1).vspeed + posy;
}else if(player == 2 && global.cpu_2){
x = (global.com2).x + (global.com2).hspeed + posx;
y = (global.com2).y + (global.com2).vspeed + posy;
}else if(player == 3 && global.cpu_3){
x = (global.com3).x + (global.com3).hspeed + posx;
y = (global.com3).y + (global.com3).vspeed + posy;
}else if(player == 4 && global.cpu_4){
x = (global.com4).x + (global.com4).hspeed + posx;
y = (global.com4).y + (global.com4).vspeed + posy;
}
}
0827名前は開発中のものです。
2008/03/16(日) 13:35:59ID:V0YG+k5o「存在するけど存在しない」みたいな不安定な状態になるらしくて
「instance.variable」みたいにドット使って変数を参照するとエラーになる。
やっかいなのは、インスタンス自身は存在するので
instance_existsとかでチェックできないこと。
対策としては、with使ってその中で変数使えばエラーは出ない。
with (global.com1) {
other.x = x + hspeed + other.posx;
other.y = y + vspeed + other.posy;
}
みたいな感じで(withの中ではotherが元のselfになるのに注意)
インスタンスの変更は変数の継承がらみでもややこしい問題があるので、
できるだけ使わずにすませた方がいいよ。
この場合、オブジェクト一つだけでよくない? 当たり判定はmaskで変えられるよ。
0828名前は開発中のものです。
2008/03/17(月) 10:22:50ID:RBuRFwrNなるほど・・わかりやすい説明ありがとうございます。
ダメージモーションの種類が4、攻撃の種類が40、その他死亡モーションや、
予備動作などがあって、一つのオブジェクトで作ると、
俺の頭がこんがらがってしまったので分けましたが、
実際のところは分けないほうが最終的にわかりやすいんだろうなぁ・・。
やっぱり自分の力量に応じて仕様というか、
ある程度妥協した方が結果的にいい場合もあるんでしょうね。
0829名前は開発中のものです。
2008/03/17(月) 13:07:23ID:0WhHqNl0全てのスプライトを1つにまとめて、subimageの値を決めることでも解決する。(image_indexの範囲指定)
スプライト以外だとしても、そのインスタンスの状態(ダメージ、攻撃中、移動中等)で場合分けをするといいだろうね。(step内でswitchを使って場合分け)
インスタンスを変えるということは、今あるインスタンスを削除して、新しくインスタンスを作るということ。
敵を攻撃したり、ダメージを受けたりする度に自分が生まれ変わるってのも変な話だよね?
インスタンスを変えていると、システム的なエラーだけじゃなく「エラーメッセージは出ないけど、自分の意図した通りにならない」というエラーも起こりやすい。
だから、場合分けをインスタンスの変更でするんじゃなくて、オブジェクトの中で場合分けをするように作っていく方がいいよ。
0830名前は開発中のものです。
2008/03/17(月) 20:51:48ID:zfMhFuyL0831名前は開発中のものです。
2008/03/17(月) 21:11:55ID:9xiWBLkG画面上に別のメニュー画面などを表示させたいのですがどうすればいいでしょうか。
0832名前は開発中のものです。
2008/03/17(月) 22:38:19ID:lI4Ks6j6お手軽なのはshow_menu。当然メニューとしてはしょぼいけど。
キー操作だけでよければ、keyboard_waitでループ回しつつ
キー処理をしてメニューをがしがし描き変えるという方法がある。
サンプルで付いてくるasteroidsが参考になるかな。
ただ、このやり方はメニューの構成が複雑になると厳しい。
一般的なのはポーズする時にグローバル変数を設定しておいて、
他のオブジェクトはその変数が立っている間動きを止めるというもの。
ただ、止めないといけないものは意外とたくさんあるので(gravityだとか
alarmだとかアニメーションだとか)、ゲームが複雑になるにつれて
ちゃんとメンテするのが難しくなってくる。正直労力に見合わない。
本格的にやるなら、background_create_from_screenで
今の画面を背景画像に設定してから
instance_deactivate_allでインスタンスを全部非アクティブにしてしまう。
それからメニュー用のオブジェクトを配置する。
これならマウス使ったりメニューオブジェクトを動かしたりするのも自由だし、
メニュー抜ける時の後始末さえしっかりやれば一番実装しやすいと思う。
0833名前は開発中のものです。
2008/03/23(日) 14:48:57ID:CEb9FX4l(Start/Option/Endの3項目があるとして)
1) あらかじめ3つの項目を横一列に並べた画像「title.gif」を作っておく。
ゲーム実行時にtitle.gifから、3つのサブイメージを持ったスプライト「sprite_title」を作る。
3つのオブジェクト「obj_start」「obj_option」「obj_end」のスプライトを全て「sprite_title」に設定する。
image_singleを、obj_startは0、obj_optionは1、obj_endは2に設定する。
(つまり、3つのサブイメージを持った1つのスプライトを使い、表示させるものを変える)
2) あらかじめ3つの画像「start.gif」「option.gif」「end.gif」を作っておく。
ゲーム実行時にそれぞれの画像をロードして、「sprite_start」「sprite_option」「sprite_end」の3つのスプライトを作る。
オブジェクト「obj_start」に「sprite_start」を割り当てる。他二つも同様。
(このとき、1つのオブジェクトに対してサブイメージは1つだけ)
1と2でメモリ浪費等で違いはありますか?
できれば1の方法を使いたいのですが、そうするとそれぞれのオブジェクトが、
表示されないサブイメージを2つずつ持っていることになり、これは無駄になるのかなと。
ならないのであれば、不要になったときに消すスプライトが一つで済むのですが。
詳しい方、教えてください。
0834名前は開発中のものです。
2008/03/23(日) 21:06:26ID:vPqoB7Ecメモリ上にスプライトを複製するようなことをしない、と思う。。。
1の方法でいいんではないかな。
0835名前は開発中のものです。
2008/03/23(日) 21:32:39ID:PWwLtvC1スプライト1つ分のメモリしか使わない。ローカル変数でそれぞれのオブジェクトが
個別にsprite_addするなら、当然スプライト3つ分のメモリを使う。
なので(1)と後者の方法の組み合わせだとメモリを無駄に使うことになる。
他の組み合わせだと使用量は同じかな。
でも、メモリの節約だけが目的なら、単にスプライトのプリロードをオフにする
(GM5の場合は遅延ロードをオンにする)で十分だと思う。
これだと必要な時に自動的にロードして、ルームの終了時に自動的に解放もしてくれるよ。
0836名前は開発中のものです。
2008/03/24(月) 02:31:39ID:jcEogdo3有難うございました。1の方法でロードすることにします。
0837名前は開発中のものです。
2008/03/24(月) 17:37:42ID:M/9alYxD横一列に並べているのに着地位置が縦1マス分ほどあいまいになってしまいます。
bounding boxも隙間なく設定しているんですがなぜでしょうか?
0838名前は開発中のものです。
2008/03/24(月) 17:55:40ID:jv5GLLmZ0839名前は開発中のものです。
2008/03/24(月) 23:02:33ID:GFQTJ2FQ>>746
0840名前は開発中のものです。
2008/03/25(火) 01:38:15ID:/7w1wYJ6地面にぴったり着地しなくて、宙に浮いた状態になるってこと?
Collisionイベントに「move to contact」のアクションは入れてる?
0841名前は開発中のものです。
2008/03/25(火) 02:43:56ID:7R5Ni7yo>>840の解説。
衝突が起きたとき、相手がSolidだと自分は衝突前の位置に戻される。
例えば床との距離が5あって、自キャラが3の速度で落下していたとき、
次のステップで床との距離が2になって、さらに次のステップでは床にめり込む。
このめり込んだ瞬間に、床にSolid判定がついていたのなら、
衝突が起きる一つ前のステップ、つまり床との距離が2の時の位置に一旦戻される。
たまに浮いてしまうのはこのため。
Collisionイベントに「move to contact」のアクションを入れてやることで、
「(めり込んだ後、一旦1ステップ前の位置に戻してから)床に接する位置に移動させる」
という過程で、床にぴったり着地させることができる。
0842名前は開発中のものです。
2008/03/25(火) 04:38:59ID:6z3i9o/60843名前は開発中のものです。
2008/03/26(水) 21:43:48ID:paW4cEkfスマブラのAボタンのコンボみたいなものを作りたいと思っています。
どうすればできるでしょうか。GMLじゃないとできないとかなんでしょうか。
もしGMLじゃなくてもできるのであればご教授お願いします。
下手糞な文章ですいません。
0844名前は開発中のものです。
2008/03/26(水) 21:45:56ID:paW4cEkf0845名前は開発中のものです。
2008/03/26(水) 21:46:16ID:paW4cEkf0846名前は開発中のものです。
2008/03/26(水) 22:08:47ID:tIIk7RtUもっと具体的に
0847名前は開発中のものです。
2008/03/26(水) 22:17:44ID:paW4cEkf2個目の攻撃モーションがつづけて出るみたいのにしたいんです。
パンチ→パンチ→キックみたいな。
0848名前は開発中のものです。
2008/03/27(木) 02:00:03ID:CI1Rl28Iアクションあまり詳しくないからこれでいいかわかんないけど
アラームイベント2個組み合わせてコンボ入力受付期間を作ってみたらどう?
まずオブジェクトにコンボアクション発動許可用変数を用意し”0”を初期値に。
攻撃ボタン押したら1回目の攻撃を行わすとともに1つ目のアラームを起動させる。
1つ目のアラームがタイムアップしアラーム内アクションにコンボアクション発動許可用変数を”1”にして2個目のアラームを起動させる。
2個目のアラームがタイムアップしたらコンボアクション発動許可用変数を”0”に戻す。
攻撃ボタンはコンボアクション発動許可用変数が”0”の時と”1”の時で攻撃が変わるようにIf a variable has a valueで分岐させる。
とかそんな感じだと思うけど・・・まずはアニメーションスプライト用意して通常攻撃モーションとコンボモーションを作成してみては?
そこらへんはもうできてるかもしんないけど・・・
0849名前は開発中のものです。
2008/03/27(木) 08:42:25ID:bXR6vAZfまたわからないことがあったら聞きに着ます。
0850名前は開発中のものです。
2008/03/27(木) 09:37:30ID:bXR6vAZfの部分でアラームイベント内にどんなアクションを入れたらいいんでしょうか。
ご教授お願いします。
0851名前は開発中のものです。
2008/03/27(木) 13:17:57ID:bXR6vAZf0852名前は開発中のものです。
2008/03/27(木) 20:38:31ID:bXR6vAZf0853名前は開発中のものです。
2008/03/27(木) 22:07:49ID:fgaEWE81アニメーションエンドイベントで
image_index を最後の番号(絵が18枚ならindexは0〜17なので、17にする)にして、
image_speed を 0 にする、とか。
0854名前は開発中のものです。
2008/03/28(金) 11:24:35ID:MJYJEqflどうすればいいのでしょうか?
0855名前は開発中のものです。
2008/03/28(金) 11:33:42ID:uVxOA1kY背景画像の表示位置は、background_x[0..9] と background_y[0..9] の変数で管理されてるんで、
0番目の背景を0番目のview左上角位置に調整したければ、
ステップイベントで以下のコードを記述すればよい。と思う。
background_x[0] = view_xview[0]
background_y[0] = view_yview[0]
背景画像がタイル化指定していたら、無効かもしれない。
0856名前は開発中のものです。
2008/03/30(日) 18:19:37ID:NXbnTPzdあったら教えてくださると嬉しいです。
0857名前は開発中のものです。
2008/03/30(日) 18:20:34ID:NXbnTPzd×方法が
○方法って
0858名前は開発中のものです。
2008/03/30(日) 18:40:24ID:y58KxNzedepthが小さいほど手前、大きいほど奥に表示される。
例えば-10、0、10の3つがあったら-10が一番手前に表示される。
手前に表示したければ、その特定のインスタンスのdepthを他より小さくすればいい。
デフォでdepthは0になってるから、特に何もしてない限りdepthを-1にすれば済むはず。
0859名前は開発中のものです。
2008/03/30(日) 20:25:27ID:NXbnTPzdありがとうございます。
解決しました
0860名前は開発中のものです。
2008/03/31(月) 00:26:35ID:3gZNdKrLありがとうございます。コードを組み込んだらちゃんと着いてきました。
でも何故かとまるときや着地するときに背景がズレるのです。
解決方法があれば教えていただけるとうれしいです。
http://gamdev.org/up/img/11264.zip
0861名前は開発中のものです。
2008/03/31(月) 01:54:01ID:VGQZQIFz落として見たわけじゃないけど、viewの座標は
「End stepイベントの後」かつ「Drawイベントの前」に更新されるので
StepイベントやEnd stepイベントで他の座標をviewに合わせても
描画の時点でずれてしまうという問題がある。たぶんそれじゃないかな。
一般的な解決法は「Drawイベントでviewに合わせて描画する」なんだけど、
背景の描画はDrawイベントより前に実行されるのでこのケースでは厳しい。
この場合、ルームの背景自体はなし<no background>にして、
かわりにうんとdepthの大きいオブジェクトを一つ用意し、
そいつに背景を描画させるのがいいと思う。
Drawイベントの中で
draw_background(background0, view_xview[0], view_yview[0]);
みたいな感じで。
0862名前は開発中のものです。
2008/03/31(月) 06:36:23ID:/Z2PGPfr敵の様々な攻撃を「敵の攻撃」と、一つにまとめられないでしょうか。
「このオブジェクトに衝突したらダメージ、このオブジェクトにも衝突したらダメージ」と
オブジェクトの数だけ記述しているような状態を何とかしたいのですが。
0863名前は開発中のものです。
2008/03/31(月) 13:44:36ID:3gZNdKrL解決しました。
ありがとうございます。
0864名前は開発中のものです。
2008/03/31(月) 22:40:41ID:VGQZQIFzそのためのparent
適当なオブジェクトを一つ作ってobj_damage_parentとでも名付ける
ダメージ元のオブジェクト全部でそいつをparentに指定する
(Advanced modeをオンにしないとparentの設定は出てこないので注意)
後はobj_damage_parentとの衝突イベントだけ作ればOK
0865名前は開発中のものです。
2008/03/31(月) 23:28:59ID:/Z2PGPfrありがとうございます
0866名前は開発中のものです。
2008/04/01(火) 15:45:29ID:jcfVMQvT>>860のファイルちらっと見たけど1つだけ
オブジェクトとかスプライトとかサウンドのリソース名が同じものがいくつかあるけど
別の名前にしておいた方がいいよ
0867名前は開発中のものです。
2008/04/01(火) 16:06:42ID:jcfVMQvTメニューの「Scripts」→「Check Resource Names」で
チェックしてみ
<No name conflicts were found>と出るようになったらok
0868名前は開発中のものです。
2008/04/03(木) 12:01:14ID:LCg7Ks7Zどこら辺が間違っているのでしょうか?
Sprite: <no sprite>
Solid: false
Visible: true
Depth: 0
Persistent: false
Parent: <no parent>
Mask: <same as sprite>
Step Event:
set the health to 50
draw the health bar with size (mouse_x,mouse_y,mouse_x+200,mouse_y+30) with back color white and bar color blue
0869名前は開発中のものです。
2008/04/03(木) 12:13:58ID:RldfVeQ40870名前は開発中のものです。
2008/04/03(木) 12:26:59ID:LCg7Ks7Z0871名前は開発中のものです。
2008/04/03(木) 15:31:34ID:hpoNHotE0872名前は開発中のものです。
2008/04/03(木) 17:47:55ID:x/yJQOmcdraw Livesアクションは横方向でしかならべられないのね。GMLでかいたらこんな感じかな?
drawイベントに「Execute a piece of code」で
for(i = 0; i < lives; i +=1)
{
draw_sprite(ライフ表示用スプライト名,-1,先頭のスプライトイメージのX座標,
先頭のスプライトイメージのY座標+sprite_get_height(ライフ表示用スプライト名) *i);
}
0873名前は開発中のものです。
2008/04/03(木) 17:55:35ID:x/yJQOmc0874名前は開発中のものです。
2008/04/04(金) 05:13:29ID:xKOenXkz0875名前は開発中のものです。
2008/04/04(金) 05:21:13ID:xKOenXkz0876名前は開発中のものです。
2008/04/04(金) 05:32:53ID:ozKEK2lV0877872
2008/04/04(金) 06:59:11ID:GCwfYrIO仕様というかそういうんじゃなくて
draw_sprite()は描画イベントでスプライトを表示させる命令
sprite_get_height()は指定したスプライトの高さを調べる命令
そんでdraw_sprite()命令をfor文を使って単にライフの数だけ繰り返してる
for()の中で”i”は初期値が”0”で1回処理されるごとに1づつ増えていくからsprite_get_height()*iとすることで
スプライトの高さだけずれて描画されていってる
>>876氏のいう様に”sprite_get_height(ライフ表示用スプライト名) *i”の前の符号を-にしたら下から上になる
0878名前は開発中のものです。
2008/04/04(金) 08:31:17ID:xKOenXkzちょっと考えればわかることだね、お恥ずかしい。
勉強になります、ありがとう
0879名前は開発中のものです。
2008/04/04(金) 11:47:17ID:UN21xGR5そのオブジェクトより上だったならそのオブジェクトの画像を後ろ向き、下なら前向き、左なら左向き、右なら右向き・・・ってな感じで変える方法は無いでしょうか?
右斜め下とか8方に作りたいのです。
それとクリックした位置にオブジェクトを移動させる(一瞬でじゃなくそこまでの道程を通って)のはどうすれば良いのでしょうか?
初歩的な質問ですみませんがよろしくお願いします。
0880名前は開発中のものです。
2008/04/04(金) 23:37:08ID:atXFd6s20881名前は開発中のものです。
2008/04/04(金) 23:44:49ID:atXFd6s2http://www.uploda.org/uporg1350943.gmk.html
pass:GM
0882名前は開発中のものです。
2008/04/05(土) 01:54:06ID:28WyvbPPすみませんがGM6なので開くことができません・・・。
それともGM6で開く方法もあるのでしょうか?
0883名前は開発中のものです。
2008/04/05(土) 04:41:45ID:/7lMTMqTStep Event:
set variable image_angle to direction
Object2(追尾させたいスプライト)
Step Event:
if left mouse button is pressed
for all honoo: perform a step towards position (mouse_x,mouse_y) with speed 10 stop at solid only
GM6だと開けないのか〜
0884名前は開発中のものです。
2008/04/05(土) 04:46:32ID:mh+kpRIe中身見る用にGM7も入れてる
0885名前は開発中のものです。
2008/04/05(土) 05:54:37ID:/7lMTMqT上から7行目のhonooってのはObject2のことです。
0886名前は開発中のものです。
2008/04/05(土) 08:08:06ID:Q8dvYXzo外部データからキャラクターの追加とか
結構システム設計まわりをがんばってるみたいだが。
0887名前は開発中のものです。
2008/04/05(土) 13:27:36ID:/7lMTMqTキャラを後から追加できるなんて良心的だよね。
俺ならキャラデータを丸ごとexeにブチ込んでアップデートのたびに
大容量のデータをいちいちダウンロードさせてる所だよ。
開発が長引いたのはうp主が忙しかったからかな?
0888名前は開発中のものです。
2008/04/05(土) 14:18:21ID:28WyvbPP0889名前は開発中のものです。
2008/04/05(土) 14:52:56ID:/7lMTMqT0890名前は開発中のものです。
2008/04/05(土) 21:57:34ID:/7lMTMqT0891名前は開発中のものです。
2008/04/06(日) 00:30:38ID:jpfm9sAGないので自分で誰が作ったか覚えておかないといけない。
・instance_createは生成したインスタンスのIDを返す
・自分自身のインスタンスIDはidでとれる
ので
aaa = instance_create(x, y, object0);
aaa.createor = id;
としてやると、object0の中からはcreatorで自分を作ったインスタンスを参照できる。
0892名前は開発中のものです。
2008/04/06(日) 14:46:53ID:+Z1B7XWCありがとうございます
0893名前は開発中のものです。
2008/04/06(日) 15:05:43ID:EU0AU+S40894名前は開発中のものです。
2008/04/06(日) 17:03:33ID:+Z1B7XWCstep towardsのx座標に「ObjectB.x」y座標にも同じく「ObjectB.y」って入れれば
ObjectBが目標の座標になるよ。
0895名前は開発中のものです。
2008/04/06(日) 17:45:37ID:EU0AU+S4おお・・・こんな簡単に・・・ありがとうございます><
0896名前は開発中のものです。
2008/04/06(日) 18:30:55ID:EU0AU+S4現在このようなゲームを作っているのですが↓
http://gamdev.org/up/img/11284.zip
クリックした時、オブジェクト0が進行方向(オブジェクト1のある方向)と
同じ向きの矢印スプライトに変化する様にするにはどうすれば良いのでしょうか?
解り難い説明ですみませんが、ご存知の方よろしくお願いします。
0897名前は開発中のものです。
2008/04/07(月) 00:07:19ID:ip9v6GLBhttp://jbbs.livedoor.jp/bbs/read.cgi/sports/26525/1204784207/
0898名前は開発中のものです。
2008/04/07(月) 05:30:29ID:wG6ko/jvzip落せなかった;;
image_angleの値をdirectionにすれば楽にできるけどレジストバージョンしか出来ないかもしれないから、
レジストじゃなかったらdirectionの角度ある程度の範囲になったらになったらChange the spriteを使う方法があるよ
大雑把な説明だけどzipがどんなのか確認できたらもっとわかりやすく書くかも。
0899名前は開発中のものです。
2008/04/07(月) 09:53:52ID:PrCqy7fg私のPCではちゃんと落とせるのですが・・・
再うpしてみましたのでこちらはどうでしょうか?
ttp://gamdev.org/up/img/11292.zip
0900名前は開発中のものです。
2008/04/07(月) 13:17:17ID:wG6ko/jvInformation about object: object0
Sprite: sprite2
Step Event:
perform a step towards position (object1.x,object1.y) with speed 5 stop at solid only
set variable image_angle to direction
Information about object: object1
Sprite: <no sprite>
Mouse Event for Glob Left Button:
move to position (mouse_x,mouse_y)
なお、これはレジスト用です、レジストでない場合はimage angleが使えないので
Ifステートメントとchange spriteを組み合わせるしかないでしょう。
私はまだ日が浅く、その場合の方法は考え付かなかったので非公式サイトあたりで聞いてみてください。
0901名前は開発中のものです。
2008/04/07(月) 23:37:03ID:5Vpyn9U6どうすれば極力ゲームが軽く仕上がるでしょうか?
0902名前は開発中のものです。
2008/04/08(火) 00:43:47ID:1aWF0Oeiただimage_xscale,image_xscaleでスプライトを拡大すると処理負荷がかかるっていうのはあるのかな?
以下gamemaker helpの「ゲームの仕上げ」→「ゲームの速度について」より引用
>ほとんどのグラフィックカードは、効果的に画像を拡大することが出来ますが、その処理のために重くなります。
だそうです
自分は400×480のルームに画面半分近いぐらいのボスを作ってみたけど
PVマシンでもルームスピードが落ちることはそうなかったですよ?
んで純粋にレーザーの作り方はというと
普通に弾撃たす処理と対して変わらないかと思います。
要はレーザー発射源オブジェクトのインスタンスよりレーザー用のインスタンスを切れ目なく生成して
その時一緒にdirection,speedの数値をレーザー用のインスタンスに与えてあげたらいい。
切れ目なく生成するというのはアラームイベントを使えばよくて、この時「number of steps」の数値が大きすぎると
レーザー1コマ1コマの間が長くなるから隙間が生じる。
答えになってるかどうか心配ですが。一応ここまででレス切っておきます。
0903名前は開発中のものです。
2008/04/08(火) 11:32:50ID:PGw82Ekzやってる人はけっこうサクっと順応できたのかな。
0904名前は開発中のものです。
2008/04/08(火) 21:09:24ID:lWzhg9Riここ数レスのはアイコンの内容を言葉で説明したものであって、
実際にああいうコードを打つわけじゃないですよ。
Game Makerではオブジェクトの動作を定義するのに
「アクション」というアイコンをポチポチ並べていく方法と、
「GML」という言語で直接コードを書く方法があって
習熟度に応じててきとーに混ぜて使えます。
GMLの文法はCとほぼ同じ(一部Pascal要素あり)なので、
ある程度プログラミングの経験があればすんなり覚えられるはず。
たとえば>>900は2箇所のイベントにアクションを3つ置いた様子を
表しているけれど、同じ内容をGMLで書くとこうなります。
// object0のStepイベント
mp_linear_step(object1.x, object1.y, 5, false);
image_angle = direction;
// object1のマウスボタンイベント
x = mouse_x; y = mouse_y;
0905名前は開発中のものです。
2008/04/08(火) 23:29:01ID:C/r/gPzk後者で試してみようと思います
ありがとうございました!
0906900
2008/04/09(水) 03:31:08ID:R1oJ6a1Aああ、そうなのかー…なるほどなあ…
わざわざ丁寧にありがとうございます。
以前豆乳システムとかもいぢってたんで、
C言語に似てるなら結構早めに覚えられそうですね。
0907名前は開発中のものです。
2008/04/09(水) 06:41:45ID:n+SEEGKiそれに比べてGMなら2週間くらいで大体使えるようになった。
0908名前は開発中のものです。
2008/04/11(金) 18:09:33ID:AT/nfPM9遅くなりましたがありがとうございます。
レジスト、というのがどのような物なのか解りませんが・・・。
それとスレ違いかも知れませんが非公式のフォーラムに書き込むことが出来ないのですが私だけでしょうか?
0909名前は開発中のものです。
2008/04/11(金) 20:34:53ID:LqedxyKDあとレジストは料金を支払って制限解除したバージョンのこと。
良く分からない単語使ってゴメンネ
0910名前は開発中のものです。
2008/04/11(金) 20:37:53ID:EEx5djbhレジストとは、お金を払ってプロダクトキーを貰い、使用制限を解除することです。
0911名前は開発中のものです。
2008/04/11(金) 20:38:20ID:EEx5djbh0912名前は開発中のものです。
2008/04/12(土) 11:01:55ID:eNZFgCaHありがとうございます。
なるほど、有料登録ですね
0913名前は開発中のものです。
2008/04/18(金) 10:19:47ID:3dx+PVyf有名所で、GM作品を公開してる人っているかい?
0914名前は開発中のものです。
2008/04/18(金) 20:35:49ID:xHO8JEqhニコニコでgamemakerを検索するとちょっぴり出てくる。
0915名前は開発中のものです。
2008/04/27(日) 05:53:10ID:2l2AKY8C0916名前は開発中のものです。
2008/04/27(日) 11:06:31ID:CLNLyEnS俺もダウンロードするのに一日かかった
0917名前は開発中のものです。
2008/04/29(火) 09:44:12ID:2d8FpwgV0918名前は開発中のものです。
2008/04/29(火) 11:59:36ID:YwZZ6j+fけど、
ttp://www.yoyogames.com/gamemaker/try_download
からDL出来ると思う。
0919名前は開発中のものです。
2008/04/30(水) 21:35:13ID:wqvUGn48どうコードを組めばうまく表示されるか誰かアドバイスくれませんか?
0920名前は開発中のものです。
2008/05/01(木) 00:53:19ID:TumL990Eまあ、仮にテクスチャはちゃんと取れているものとして。
描画するのにcolorが付かない方のd3d_vertex_textureを使ってるとすると
その場合テクスチャは現在設定している色でブレンドされる。
draw_set_colorしてないと初期値は黒だから、結果も真っ黒になるよ。
もしそうだとしたら、先頭でdraw_set_color(c_white)してみて。
0921名前は開発中のものです。
2008/05/01(木) 05:57:14ID:boSZuiu9ありがとうございます!
まさしくそれでした(^^;
こんな簡単なミスだったとは……
0922名前は開発中のものです。
2008/05/01(木) 22:44:02ID:QlMWKAXW画像を1、2、3って表示させるときに
1の画像が前面、3の画像が背景側に表示させる方法ってあります?
GML非公式サイトでdraw関連のコードがあまり説明されてなかったので。。。
0923名前は開発中のものです。
2008/05/01(木) 23:27:03ID:lT+h3RUSdepth の数値が大きくなると上に重なる。はず。
draw イベントで処理したいなら、基本的に画面上に上書きされるので、下になるほうを先に描画すればいい。
0924名前は開発中のものです。
2008/05/02(金) 02:15:50ID:IG1MecUh、すり抜けてみたんですが、solidにチェックがついてない
のに、接触した状態で立ち止まると、壁にはまったときと
同じ動作になってしまいました・・・
座標チェック時に、対象インスタンスIDがSolid属性の場合のみ
壁判定という動作にしてみようかと、以下のようにやってみんですが
うまく動かないようです・・・
nulld = !place_empty(x-1,y)
if nulld.solid == 0
{
壁回避コード
}
うーん。。。コリジョン難しい
0925名前は開発中のものです。
2008/05/02(金) 02:35:04ID:20oP59U2相手のIDが欲しければinstance_place使う。
solidの判定も逆のような気がするけど、それ以前にそもそも
place_free使えばsolidのオブジェクトだけチェックしてくれるよ。
0926名前は開発中のものです。
2008/05/02(金) 07:25:07ID:IG1MecUhなるほど。。。そうだったのか。
ありがとうございます。
うー、日本語マニュアルがほしぃ。。。
0927名前は開発中のものです。
2008/05/03(土) 12:42:03ID:CaNFTODTところで、これで某有名同人弾幕シューティングの二次創作tkっているが
弾幕ww、弾幕が再現できねぇwwww
0928名前は開発中のものです。
2008/05/03(土) 14:24:24ID:9QsVrF2b0929名前は開発中のものです。
2008/05/03(土) 15:59:55ID:3a9tSZMK俺は某同人弾幕STG風オリジナルSTG(つまりパクり)作ってるが、まずはn-way弾を発射するスクリプトを書くんだ!
0930名前は開発中のものです。
2008/05/03(土) 17:55:29ID:TpBQZjg2そういったデータの有無を内部で確認させる方法はありますか?
0931名前は開発中のものです。
2008/05/03(土) 18:07:56ID:9QsVrF2bマニュアルで検索かけてみ。
0932名前は開発中のものです。
2008/05/03(土) 21:32:29ID:O2xyPtemこんなに俺がいたとは
今ではn-wayを手動でやってたときが懐かしいです
0933名前は開発中のものです。
2008/05/03(土) 21:53:01ID:XU6M82BJシューティングとかで弾を撃つアクションはどれになりますか?
誰か教えてくださいな〜
0934名前は開発中のものです。
2008/05/04(日) 06:21:13ID:2fBGUOBZそういった類のアクションはなく、自分なりにデザインして、自分で一から作るのがGM。
簡単に言えば、弾を撃つってことは、弾というオブジェクトを作り、それをある速度で飛ばせばいい。
0935名前は開発中のものです。
2008/05/04(日) 06:27:00ID:2fBGUOBZ0936名前は開発中のものです。
2008/05/04(日) 08:24:53ID:lNeW/IjQなるほど。。オブジェクトを作って飛ばす訳ですか。
大体解りました〜ありです。
0937名前は開発中のものです。
2008/05/04(日) 20:03:25ID:lNeW/IjQ何点か分からない点や仕方のわからない点が出てきました。。
もし良かったら教えてください。
・弾の発射に間隔を付ける方法
・一部状況下(俺の言いたいのはジャンプ中)での発砲不可
・一定の数の弾を発射後何秒間か使用不可(要するにリロード)
・↑の間モーションが入るようにする方法
教えてください〜
0938名前は開発中のものです。
2008/05/04(日) 20:26:08ID:LG4ZPs/B上三つは、変数が必要になる。
・弾の発射に間隔を付ける方法 → 発射可能を表す変数
・一部状況下(俺の言いたいのはジャンプ中)での発砲不可 → ジャンプ中かどうかを表す変数
・一定の数の弾を発射後何秒間か使用不可(要するにリロード) → 残弾数を表す変数
そして条件分岐だ。上から順に、
・弾を撃つ際に、発射可能変数を条件分岐に使い、可能の値だったら(例えば1)弾を撃てるようにする。そうでなければ何もしない。
で、弾を撃ったら 変数を不可能を表す値(例えば0)にして、タイマーイベントを発動。(アクションのタイマーを利用する)
タイマーイベント中で変数を可能状態(1)にする。
・着地状態からジャンプに移行したときに、ジャンプ中を表す変数の値をジャンプ中の値(例えば1)にする。
ジャンプの状態から着地状態になったときに、変数の値を着地状態(例えば0)にする。この変数を使った条件分岐を、撃つ時の条件に加えよう。
・弾を撃つごとに残弾数を減らす。弾を撃つときに条件分岐を付け加え、残弾数が0ならリロードモーション(自作するべし)を起こすようにする。
リロードのモーションは、モーション専用のオブジェクトを作って、オブジェクト変更アクションを利用するのがいいかもしれない。
そのときは、モーション専用オブジェクトで、モーションが終わったら元のオブジェクトに戻すことを忘れずに。
アニメーションエンドイベントをうまく利用すると楽かもしれない。用語とかでわからないことは、>>1の非公式サイトで調べてみ。
長文・乱文失礼。
0939名前は開発中のものです。
2008/05/04(日) 20:34:11ID:lNeW/IjQなるほど
それを行っている事を変数で表して、可能不可能をその変数の状態で判断させるわけですか
変数はあまり得意ではありませんが、色々やってみます。
ありがとうございました。
あ、後ここでこうやって質問して良い物なんですか?
板違いじゃないかとずっと気がかりでして。。
0940名前は開発中のものです。
2008/05/04(日) 20:52:37ID:LG4ZPs/Bまあ、過疎ってるし個人的にはいいんじゃないのかなとは思うけど。
質問以外の話題がほとんど無いし。。
教えてクレクレ君だらけになったらなったで、つらいんだけどねw
0941名前は開発中のものです。
2008/05/04(日) 20:57:40ID:lNeW/IjQ発射可能を表す変数 これはなんと表すことになるんですか?
例として教えてください
0942名前は開発中のものです。
2008/05/04(日) 21:16:10ID:smFSYJ2Dこれを発射回数として
一回打つたびに-1してやって
0の時には打てなくすればいいのかな・・・
俺も初心者だから参考にならないかも;
0943名前は開発中のものです。
2008/05/04(日) 21:21:43ID:lNeW/IjQ返答ありがとうございます。
そういうのの総合的な並べ方がわからないんですね〜>>941の文が分かりづらくてすみません。。
0944名前は開発中のものです。
2008/05/04(日) 21:29:00ID:smFSYJ2Dn = (n-1)
if n > 0
{
instance_create(x,y,bullet)
}
}
こんな感じでしょうか・・・
もっといい方法があると思いますが自分にはわかりません;
0945名前は開発中のものです。
2008/05/04(日) 21:30:58ID:lNeW/IjQありがとうございました。
早速いじってきます〜
0946名前は開発中のものです。
2008/05/04(日) 22:02:44ID:LG4ZPs/Bisshootable = 1; //弾が撃てるか
isjump = 0 ; // ジャンプしてるかどうか
bulletNum = 3; //残弾数
[弾を撃つイベント]
{
if (isshootable==1 && isJump == 0) {
if (bulletNum > 0) {
instance_create(x,y,bullet);
bulletNum -= 1;
} else {
}
}
0947名前は開発中のものです。
2008/05/04(日) 22:05:20ID:LG4ZPs/Bクリエイトイベントで
isshootable = 1; //弾が撃てるか
isjump = 0 ; // ジャンプしてるかどうか
bulletNum = 3; //残弾数
[弾を撃つイベント]
{
if (isshootable==1 && isJump == 0) {
if (bulletNum > 0) {
instance_create(x,y,bullet);
bulletNum -= 1;
} else {
// リロード 弾を撃つボタンでリロードする場合にはここに記述
// 他のタイミングでリロードしたいなら、この部分は要らない。
{リロードするアクション}
bulletNum = 3;
}
}
こんな感じで。
0948名前は開発中のものです。
2008/05/04(日) 22:16:01ID:lNeW/IjQなるほど
そういう並べるのですか
また困ったらよろしくお願いします。
ありがとうございました〜
0949名前は開発中のものです。
2008/05/04(日) 22:21:00ID:LG4ZPs/BbulletNum -= 1;
の下に、
alarm[0] = 30; // 30ステップ後にアラーム0イベントが発生。
としてくらさい。
インデントはかきこ時の見た目重視で全角スペース使ってるので、コピペだと動かないので注意。
0950名前は開発中のものです。
2008/05/04(日) 22:33:54ID:lNeW/IjQ了解です〜
ありがとうございます。
0951名前は開発中のものです。
2008/05/04(日) 23:18:28ID:KZv3H4cz教えてほしいのですが、>>853がうまくいきません。
image_speed = 0にしてGifのアニメを一周で止める動作をさせたいと考えています。
Stepイベントにて以下のコードを動かしてみたところ、アニメがループしてしまいました。
//5枚目でストップ。
if image_index == 4 {image_speed = 0}
ご教授いただきたくお願いします。
0952名前は開発中のものです。
2008/05/04(日) 23:28:07ID:KZv3H4cz書き込みをした直後、試行錯誤を続けたところ
原因が分かりました。
gifをゆっくり動かしたかったことから、以下のコードを入れていました。
image_speed = 0.2
これを以下の値に直したところ、「5枚目でストップ」が動作することを確認しました。
image_speed = 0.25
うーん、ただここでひとつ疑問が・・・
なんで「0.2」では動作しなかったのか・・・うーん
板汚し、すいませんでした orz
0953名前は開発中のものです。
2008/05/05(月) 00:40:19ID:XEs+C953小数を扱う場合、パソコン内では10進数ではなく2進数なので、
10進数ではキリのよい数値のように思えても、
2進数では無限循環小数(割り切れない割り算で、小数点以下を延々繰り返してしまう数)になってしまう数値がある。
もちろんパソコン内のメモリは無限ではないので、ある桁以下は省かれてしまう。
これを丸め誤差という。
以下のコードを実行してみるとわかるが、
i = 0.2;
for (k=0;k<20;k+=1) {
show_message(string_format(i,20,18));
i += 0.2;
}
i が 4 となるべきところで、GameMakerでは微妙に4より大きい数値になることがわかる。
(※常に大きい数値となるわけではなく、本来の数値より少なくなることもある)
これは、丸め誤差が積み重なってできた誤差になってて、真に4となるわけではない。
なもんで、 if文の image_index == 4 の条件は満たさない、と考えられる。
このような理由で、プログラムの世界では浮動小数な変数をそのまま条件文でイコールを使うのはご法度。と言われてる。
誤差を意識したコーディングを心がける必要がある。
GameMakerの数値は全て浮動小数扱い。だが、整数のまま扱ってる分には問題ない、はず。
(私はプロじゃないんで…かじった知識程度で申し訳ない、間違ってたら指摘ヨロ)
0954名前は開発中のものです。
2008/05/05(月) 01:59:41ID:T1qF9S2GOther > Animation End イベント使えば
image_index判定する必要ないんだけども。
ちなみにあくまでStepイベントで判定するなら
if (image_index + image_speed >= image_number)
で Animation End イベントと等価になる。
0955名前は開発中のものです。
2008/05/05(月) 05:06:15ID:KYkFnzVP移動範囲の求め方がわかりません;
1マスごとに-1するということだと思うんですが
具体的に書けなくて・・・
教えていただけたら嬉しいです
0956名前は開発中のものです。
2008/05/05(月) 05:40:23ID:Bq2Q3q9uttp://www5f.biglobe.ne.jp/~kenmo/program/SLG/move/move.html
再帰ループとか理解している必要があるけど。
0957名前は開発中のものです。
2008/05/05(月) 06:13:29ID:KYkFnzVPそのサイトも見たんですがsearch関数というのがよく分からないです;
自分で作るものなのでしょうか・・・
0958名前は開発中のものです。
2008/05/05(月) 08:26:38ID:grhJSKQZご指摘ありがとうございます。
丸め誤差・・・次から気をつけます。
あと、Animation Endイベントって存在したんですねぇ。
「Other>Animation End」…存在すら知りませんでした…。
となると以下みたいな使い方になるんでしょうか?(再質問みたいですいません)
▼Animation End Event
//image_indexがsprites「spr_hoge777」の場合、speedを0に変更
if (image_index == spr_hoge777)
{
img_spd_save = image_speed //停止前の速度を保存
image_speed = 0
}
else
{
image_speed = img_spd_save //他のspritesの場合は保存速度に戻す
}
0959名前は開発中のものです。
2008/05/05(月) 08:57:11ID:grhJSKQZimage_indexじゃなくてsprites_indexでした。
あと、このコードじゃうまく動作しませんでした。
うーん。難しい・・・。
0960名前は開発中のものです。
2008/05/05(月) 10:27:30ID:j6OioUkw「困ったときは原点に戻る」
プログラム的なことは置いといて、まず何をしたいのかを考えてみ?
この場合はアニメーションが終わったら止める、だったよね?
Animation End Eventでimage_speedを0にすればアニメーションはとまるんじゃない?
多分これだけだと一枚目に戻って止まるかも知れないから、
止めた後にimage_indexを最後の数字にする。
つまり、
「アニメーションが終わったら、
・まずアニメーションを止めて、
・最後の画像を表示させる」
……>>853が言ってることと全く同じなんだが。
これで出来ないってなると、Step eventで毎回毎回image_speedを設定してるんじゃない?
もしそうだったらいくら止めても止まらないんだけどw
0961名前は開発中のものです。
2008/05/05(月) 10:40:47ID:j6OioUkwimage_speedをCreate Eventで設定した方がいいよ。
0962名前は開発中のものです。
2008/05/05(月) 11:31:49ID:grhJSKQZなんていうか、いろいろとすいません。
うーん、そうですねぇ。「やりたいこと」…
「一定条件のみアニメを止める」っていう動作をさせたいんだと思います。
Object内で条件毎にコロコロspritesを入れ替えておりまして
spritesに一定の画像が使われている時に限り、「アニメを一周」させたかった訳です。
(キャラが走行中に立ち止まった時、着地した時だけ服が揺れるアニメ…等)
1、sprites変更後、「アニメ停止変数」生成
2、Animation Endにて「アニメ停止変数が1の時のみ、image_speed=0」
でやりたいことが実現できました。
うーむ。確かに原点に返ってみれば、単純な事だったのですね…。
板汚しすいませんでした orz
0963名前は開発中のものです。
2008/05/05(月) 21:40:31ID:2SyyMfLm0964名前は開発中のものです。
2008/05/05(月) 22:22:44ID:eAt6pbslまた質問に来ました。
HPを準備するまでは出来たのですが、HPの減らし方(ダメージ)がわかりません。。
後、自分的にはゾンビのような敵と戦わせたいので、
近づいたら(正確には近づかれたら)ダメージという形での使用方法も教えてください。
よろしくお願いします。
0965名前は開発中のものです。
2008/05/05(月) 22:48:47ID:J24rBd4cサンプルとか、>>1チュートリアルとかサイトに色々書いてるから自分でも調べてから書き込むことをオススメする。
0966名前は開発中のものです。
2008/05/05(月) 23:18:51ID:2SyyMfLm>HPを準備するまでは出来たのですが、HPの減らし方(ダメージ)がわかりません
HPの値を保存しておく変数があるならダメージをもらうタイミング(ダメージをもらう処理をするイベント)で引き算してやればよい
ダメージをもらうタイミングが「敵が近づいたら」ということなら敵のステップイベントでpoint_distance()関数を使えばいい。例えば
obj_mychara:自分が操作するキャラのオブジェクト名 VarMyhp:自キャラのHPを覚えとく変数
obj_emychara:敵キャラのオブジェクト名と命名してあるとして、
obj_emycharaのステップイベントに「Execute a piece of code」で
if(point_direction(self.x, self.y, obj_mychara.x, obj_mychara.y)<=50)//敵キャラと自キャラとの距離が50ピクセル以下ならば
{
obj_mychara.VarMyhp -= 3//自キャラのHPを3減らす
}
とか書いてやる。但しコレだと毎ステップごとにHPを減らすから、範囲内に入ればとんでもないスリップダメージになるので
一定周期ごととか、減らす量を思いっきり少量にするとか、そういう工夫は必要かと思う。まぁとりあえず がんばれ〜
0967966
2008/05/06(火) 00:33:47ID:HwPOvHtQ× if(point_direction(self.x, self.y, obj_mychara.x, obj_mychara.y)<=50)
○ if(point_distance(self.x, self.y, obj_mychara.x, obj_mychara.y)<=50)
0968名前は開発中のものです。
2008/05/06(火) 00:40:06ID:m5xvmqWNご返答ありがとうございます。
なるほど、そういう風な式を立てればいいのですか〜
わかりました。ありがとうございました
0969名前は開発中のものです。
2008/05/06(火) 03:30:10ID:HwPOvHtQ一応聞いておくけどヘルプファイルもってる?
0970名前は開発中のものです。
2008/05/06(火) 11:45:29ID:m5xvmqWNF1のあれの事ですか?
英語で読めないです。。
0971名前は開発中のものです。
2008/05/06(火) 12:57:24ID:ndOoddgE0972名前は開発中のものです。
2008/05/06(火) 13:04:37ID:zKMDMsj40973名前は開発中のものです。
2008/05/06(火) 18:12:50ID:iaQXyyj0ルームに存在するオブジェクトをそのままにしてルームを移動した時って
移動前のオブジェクトはルームに取り残されるんでしょうか?
残ってしまうと、メモリとか変数管理によく無さそうな印象がありまして;
また、もし破棄されないで残ってしまう可能性があるならば、っとルームに存在する
全てのインスタンスを破棄する時のコマンドを探しているのですが
いまいち分からない状態です。
instance_destroy()
↑
all.xxxxとか?…。
ご教授お願いいたします。
0974名前は開発中のものです。
2008/05/06(火) 19:38:24ID:T+DSiDkgルーム関連(ルームの移動の際)
First, in the current room (if any) all instances get a room-end event.
Next the non-persistent instances are removed (no destroy event is generated!).
訳:
まず、現在のルームの全てのインスタンスに対してroom-end eventが発生。
次に、non-persistentのインスタンスが削除される。(このとき、destroy eventは発生しない)
面倒だから他は省くけど、要はルーム移動の際に移動前のインスタンスは消されるってこと。
persistentじゃなければ、ね。
ちなみに全てのインスタンスを削除するには、with文を使ったらいいんじゃないかな。
0975名前は開発中のものです。
2008/05/06(火) 23:57:36ID:iaQXyyj0なるほど!
ありがとうございます!
0976名前は開発中のものです。
2008/05/07(水) 14:23:39ID:/9oyodViわざわざ一から天候を作るか、あるいはエフェクターに頼るか悩んでるんだ。
というか、普通背景の天候ってどう表現している?
0977名前は開発中のものです。
2008/05/07(水) 15:49:13ID:zHOqCZVz> >>969だいぶ遅れた返答ですみません。
> F1のあれの事ですか?
> 英語で読めないです。。
遅れて返答ごめんねぇ
えっと、ヘルプファイルの日本語訳版があるのよ。yoyoにかわって7になってから
公式ではどこにあるかわかんなくなっちゃったけどhogehigeさんとこにもあるねぇ
6バージョンだけど十分使える
GMJ非公式情報サイトのリンク集↓
ttp://gamemaker.main.jp/modules/mylinks/
このページの下から4つ目がhogehigeさんとこにリンクしてる。
内容は1,2日程度で読めると思うからざっくり読んでみ?
役に立つと思うよ〜
0978名前は開発中のものです。
2008/05/07(水) 19:18:50ID:gt5YtGeK組み込みのエフェクトはオマケ程度に思っといた方がいいかな。
あまり融通きかないし(大きさ3段階と色くらいしか変更できない)、
縦に長ーいルームだと下の方まで届かないみたいな不具合もあるし。
もちろん、自分でパーティクルを組めばけっこうなことができる。
でも、画面中火花で埋めつくすような派手なことしなければ
通常のスプライトとオブジェクトでも十分用は足りる。
一応レジストしといた方が、加算合成とか使える分だけ表現力も上がるけどね。
0979名前は開発中のものです。
2008/05/08(木) 00:05:49ID:XOSjyJNWここまで事細かに書いてあるのですか
教えていただき、ありがとうございます〜
0980名前は開発中のものです。
2008/05/08(木) 00:29:14ID:SznEXsr7連続した"鎖"オブジェクトを配置したいと考えているのですが
なかなかうまい方法が思いつきません。
物体Aと物体Bの間を鎖オブジェクトが結んでいるような配置にするとして
物体間の距離が短い時は、鎖をたるませて
距離が長くなると、鎖が引き伸ばされるような演出ってできますでしょうか?
お願いしますorz
0981名前は開発中のものです。
2008/05/08(木) 02:15:05ID:MDYPiLo1大中小で色だけ、しかも切れるのか…レスサンクス。ちょっと残念だな。
独自に用意したスプライトを天候に適合できるってのなら、まだ良い演出つくれたかも。
それはそうとシェアじゃないと加算合成はできなかったのか、
そりゃ困るな…、シェア版買ってみるかな…
0982名前は開発中のものです。
2008/05/08(木) 10:07:59ID:Gds/1KolそれはGMというより、数学の知識の方が必要だね。
「カテナリー曲線」で調べてみ?
0983名前は開発中のものです。
2008/05/08(木) 23:59:36ID:SznEXsr7うぅ、調べてみましたが、難しいんですねぇ。。。
紐の長さ、X軸間の距離からY軸の高さ(たるみ具合)を算出したかったけど
私の頭ではどうも・・・
ありがとうございましたm(__)mペコ
0984名前は開発中のものです。
2008/05/09(金) 04:40:36ID:kRE/rDCD衝突判定用コードを作るのはいいんですが
オブジェクト(敵キャラ)の種類が増えた影響で
オブジェクト毎に個別のコードを作らなくてはならないので
管理が難しくなってしまっています。
条件分岐で「何かのオブジェクトから衝突された」が「真」の場合
衝突してきたオブジェクトのインスタンスIDを抜き出して「真」の動作を
行わせたいのですが、何かよい方法はないでしょうか?
0985名前は開発中のものです。
2008/05/09(金) 05:46:09ID:Q2m0sNzP例えば敵キャラが複数あるなら、次のように改造してみては。
敵キャラオブジェクト(obj_teki)というのを一つ作る。
しかし、obj_tekiには何も実装しないで、実際の敵キャラは別オブジェクトで作る(これは作ってあるものでOK)。
そして、その敵キャラオブジェクトの親オブジェクト(parent)に、obj_tekiを選ぶんだ。
こうした後、自キャラで obj_teki との衝突判定を設けることで、
obj_teki を親オブジェクトに設定した全ての敵キャラとの衝突処理が行えるようになる。
オブジェクトのタイプで条件分岐したければ、other.object_index の値をみればよい。
※ 継承はアドバンスドモードじゃないと使えない
とはいうものの、個人的には、
継承を利用した処理では共通のものだけに留めておいて、
敵キャラに応じた特別な処理がある場合のみ、
敵キャラのほうで処理させるほうがいいような気もする。
0986名前は開発中のものです。
2008/05/09(金) 13:44:19ID:kRE/rDCDそんな方法が…、ありがとうございます。
なるほど、やっぱりレジスト必要なんですねぇ。
レジストで使いたい機能が増えてきたんで
さっき、決済してきました。
うーん、プロダクトキー発行って結構時間かかるものなんですかねぇ?
クレジット決済なら即発行ってイメージを勝手に持ってたので
未だに届かなくて不安ですねぇ
0987名前は開発中のものです。
2008/05/09(金) 13:46:25ID:gDIxCEqd0988名前は開発中のものです。
2008/05/09(金) 14:11:31ID:kRE/rDCDobject_set_parent(id,obj_mob) で
「This function is only available in the registerd version.」を
吐かれているんですが、これってレジスト限定では?と思ったのですが
いずれにしても、「image_angle」とか使いたかったんで
早とちり決済ではないんですが
むしろ、さっきやった決済画面で入力ミスってないかどうかが心配…
プロダクトキーまだかな。。。
0989名前は開発中のものです。
2008/05/09(金) 19:42:41ID:LcL1siXeゲーム実行時にリソースを変更する機能は、確かにレジスト限定ですね。
parent設定は、オブジェクトの編集画面の左側でできますよ。
レジスト関連については、>>566-572 >>574 が参考になるかと…。
0990名前は開発中のものです。
2008/05/09(金) 21:10:43ID:Fb9VS2l9まあ探せば色々ジャンル別に製作ツールあるんだが
0991名前は開発中のものです。
2008/05/10(土) 21:04:53ID:lJro9tCkコマンドには「if」と「else」がありますが
「elseif」ってコマンドは存在しないでしょうか?
ヘルプにも無さそうだったので…
いつも以下のような書き方をしていまして、見た目がよろしくない状態です。
if
{
---A---
}
else
{
if
{
---B---
}
else
{
---C---
}
}
何か他にうまい方法は無いでしょうか?
0992名前は開発中のものです。
2008/05/10(土) 21:25:52ID:fsMtXR8Qあと、場合によってはswitch文の方がいいときもある。念の為。
0993名前は開発中のものです。
2008/05/10(土) 21:43:17ID:lJro9tCk( ゚Д゚)Σ
そうすれば{}でわざわざククル必要も無くなるっと…
そんなに簡単な事だったのですか… orz (イママデノクロウハ…)
ありがとうございます!助かります!
0994名前は開発中のものです。
2008/05/10(土) 22:16:44ID:ZTqrrluphttp://www.arcadetown.com/deadfrontiernighttwo/gameonline.asp
新しく上のアドレスのゲームみたいな物を作りたいと思うのですが、
以下の事がわかりません。。GMLはあまりわからないので、
なるべくイベントとアクションで教えていただけるとありがたいです。
わからない事
・マウスポインタの画像変更
・マウスの方向によって画像を変更する
・マウスの方向に弾を撃つ(オブジェクトを作成し、移動させる)
教えてください。
0995名前は開発中のものです。
2008/05/11(日) 01:42:28ID:PRhlwPyW【2D】ゲーム作成ツールGameMaker part3【マンセー】
http://pc11.2ch.net/test/read.cgi/gamedev/1210437707/
0996名前は開発中のものです。
2008/05/11(日) 02:11:17ID:AX4c16UA>>994
1番目はextraタブにあるマウスカーソル型のアイコン
3番目はmoveタブにある「Move in the direction of a point」
(矢印が青丸を指しているやつ)で移動先に mouse_x, mouse_y を指定。
あるいは「Create an instance with a motion」(豆電球+矢印)を使って
directionの所に point_direction(x, y, mouse_x, mouse_y) と入れてもいい。
で、2番目はGM6以上使ってるなら image_angle = direction で終わり。
GM5以前、あるいは向きによって複数のイメージを使い分ける必要があるなら
directionの値によってイメージを選ぶようなコードを書かなくちゃいけない。
0997名前は開発中のものです。
2008/05/11(日) 13:02:06ID:cmOvm32X>>996
なるほど。ご返答ありがとうございます。
早速いじってきます〜ありでした〜
0998名前は開発中のものです。
2008/05/11(日) 14:02:50ID:cmOvm32Xもう1000近いので、いざという場合は次スレに返答をよろしくお願いします。
>>996さんの文の
1番目のアイコンは使うにはレジストが必要という解釈でいいですよね?
レジスト。。してみようと思います。
そして、
>で、2番目はGM6以上使ってるなら image_angle = direction で終わり。
>GM5以前、あるいは向きによって複数のイメージを使い分ける必要があるなら
>directionの値によってイメージを選ぶようなコードを書かなくちゃいけない。
との文章がありますが、そのimage_angle = direction はどこに書き込めばいいのでしょうか
返答をお願いします。
0999名前は開発中のものです。
2008/05/11(日) 15:22:09ID:AX4c16UAかわりにゲームオプションでカーソルを表示しないように設定して
カーソルと同じ位置(mouse_x, mouse_y)に自作のオブジェクトを
表示する方法でもいける。
image_angle = directionってのは変数を設定する時の書式ね。
Set the value of a variable(VARと書かれた四角)を置いて
variableの欄にimage_angle、valueの欄にdirectionと入れる。
ってimage_angleもレジストしてないと使えないか。
レジストしてない場合、コードを書く必要があるけど
向きごとに別々にスプライトがあるのかそれともフレームが分かれてるのか、
全部で何方向あるのかとかで対応が違う。
まあ、何方向でも構わないからなるべくスムーズにしたいというのなら
1. スプライトエディタで Animation > Rotation Sequenceの機能を使って
360°分回転させたイメージを作る(36フレームくらいがおすすめ)
2. StepイベントでVARアクションを使って次の変数を設定
image_single = direction / 360 * image_number
あと、画像を変更したいオブジェクトが弾じゃない(動いてない)場合は
「direction」の部分を「point_direction(x, y, mouse_x, mouse_y)」に変えてみて。
1000名前は開発中のものです。
2008/05/11(日) 15:35:02ID:cmOvm32X大体すべきことはわかりました。
ゲームオプションでマウスを消す方法って物がわからないので、
それを次スレで聞かせていただきます。
なお、このレスが1000であればGame Makerでゲームを作っている人は技術が向上します。
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。