【2D】ゲーム作成ツールGameMaker part3【マンセー】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/05/11(日) 01:41:47ID:PRhlwPyW●本家(英語)
ttp://www.gamemaker.nl/
●GameMaker Japan - 非公式情報サイト(日本語)
ttp://gamemaker.main.jp/
●初心者向けチュートリアル
ttp://gamemaker.main.jp/modules/articles/index.php?cat_id=1
前スレ: 【2D】ゲーム作成ツールGameMaker【マンセー】
http://pc8.2ch.net/test/read.cgi/gamedev/1087068523/
0230名前は開発中のものです。
2008/08/15(金) 01:40:43ID:YYg607kjパッチ作成、それまで手書きだったからな
まさかdiffで簡単にできるとは
0231名前は開発中のものです。
2008/08/15(金) 14:49:00ID:05Tah5Ziレスどうもです。
今このスレ全部見てきたんですが・・・
最新バージョンって7,0ですよね?
探しても見つからないです・・・
どこにあるのでしょうか?
0232名前は開発中のものです。
2008/08/15(金) 15:15:52ID:oWA1flsm英語でしか表示出来ず、今まで文字毎のスプライトとオブジェクトを作って表示してたのですが
スプライトとオブジェクトの数が凄い事になってしまいました。
0233名前は開発中のものです。
2008/08/15(金) 21:17:31ID:b4foDt54そんな時こそ非公式情報サイトで配布してる日本語描画スクリプトですよ
0234名前は開発中のものです。
2008/08/16(土) 15:12:50ID:phIiQvcL弾を跳ね返す盾をチュ食っているのですが、
あらかじめグローバル変数を決めて、
instance_positionでぶつかってきたオブジェクトの速度を調べ、グローバル変数に代入して
一定以上ならとび道具として速度を反転させる、というつもりで掻いてるのですがうまく言ってるのかどうかもわかりません。
あと大砲とか撃ったときの反動ってどういう現し方がありますかね?
自分はアラームで速度を半分にして反転させて……というのを繰り返してやってるんですが……あんまりスマートじゃないですよね?
0235名前は開発中のものです。
2008/08/16(土) 17:05:03ID:59E6GChr衝突相手はotherで参照できる(ただしCollisionイベント内のアクションでのみ)
反動の件はイマイチやりたいことが理解できん
撃った反動で射撃方向とは逆方向に砲身が吹っ飛んだ後、ゆっくり元の位置に戻るってことかな
読んだ感じだと反動というより振動って感じだろうか
それと余談だけどゲーム設定などを除いてグローバル変数は極力使わない方がGMっぽいかもよ
もともとのオブジェクト指向的な作り方を徹底した方が色々と管理しやすいと思う
具体的には
×神の視点に立って弾が跳ね返るのを見守る→ぶつかったらボールの方向を変えてやる
○弾オブジェクトに「盾に衝突する」とか「跳ね返る」という振る舞いを教えておく→あとはボールに任せる
○盾オブジェクトに「弾が衝突する」とか「跳ね返す」という振る舞いを教えておく→あとは盾にまかせる
3番目のは他オブジェクトのプロパティを弄ることになるから少し気持ち悪いけど1番目のよりは分かりやすい
HSPとかBasicの経験が長い人なら逆に1番目の方が分かりやすいかもしれん
0236名前は開発中のものです。
2008/08/20(水) 18:29:52ID:iPH66y54RPGの水面みたいな。
0237名前は開発中のものです。
2008/08/20(水) 19:25:06ID:Rn6yFU9D(手動で同じ場所にタイル配置するのが大変なら、
ルーム開始時にコードでコピーする手がある)
・タイルが使っているイメージ自体をbackground_assignで入れ替える
(荒技だしパフォーマンス的にもおすすめできない)
・あきらめてスプライト+オブジェクトを(ry
ざっと思いつくのはこんなところかな。
0238名前は開発中のものです。
2008/08/20(水) 19:43:07ID:iPH66y54アニメーションが20枚もあるんで、やはり最後の方法しかないかな……。
ありがとうございました!
色々試してみます
0239名前は開発中のものです。
2008/08/21(木) 12:45:05ID:G8dr1p1s遅くなりましたがありがとうございます。
こんな便利な物があったのですね
0240名前は開発中のものです。
2008/08/22(金) 01:37:31ID:OJ1IYSd5変数の計算用のオブジェクト
{
global.image_num+=1
if global.image_num>20{global.image_num=0}
}
水面のオブジェクト
{
image_index=global.image_num
image_speed = 0
}
こんな感じで出来そうだけどどうだろう
0241名前は開発中のものです。
2008/08/22(金) 04:20:26ID:mbzREpFoオブジェクトで描画する分には問題ないので……
わざわざありがとうございます
0242名前は開発中のものです。
2008/08/22(金) 18:34:03ID:M3lU0P0b保存したexeを展開したりとかできたりする?
0243名前は開発中のものです。
2008/08/23(土) 03:36:04ID:CfFt4xoCそんな事は止めて下さい
0244名前は開発中のものです。
2008/08/23(土) 20:25:33ID:KXs72kwh基本的に、データを抜き出してどうこうっていうのはご法度。
0245名前は開発中のものです。
2008/08/24(日) 17:57:02ID:MJZApYif各キャラにライフを設定して常に各キャラの下にバーを表示して起きたいのです。
0246名前は開発中のものです。
2008/08/24(日) 19:27:30ID:wkT+Zen90247名前は開発中のものです。
2008/08/24(日) 21:17:25ID:T5dkUX6n自分で答えを言ってる!
オブジェクトごとにライフを設定すれば良いだけよ
まずCreateイベントに
MAX_HP = 100
hp=random(MAX_HP)
//普通は体力満タンで生まれるだろうけど
//今回はサンプルということで100以下のランダムな値をいれとく
次にDrawイベントに
draw_sprite(sprite_index, image_index, x, y)
//手動でスプライトを表示する
draw_set_color(c_red)
//描画色を赤に設定
draw_rectangle(x,y-10,x+sprite_width,y,false)
//スプライトの幅と同じ長さの赤い棒を描く
draw_set_color(c_green)
//描画色を緑に設定
draw_rectangle(x,y-10,x+sprite_width*life/MAX_LIFE,y,false)
//緑の棒を描く。棒の長さは、スプライトの幅×現在HP÷最大HP
さらにちょこっと工夫すれば色々な表現ができるよ
棒の長さを一瞬で変えるんじゃなく、アニメーションさせて伸ばしたり縮ませたり、とか
格ゲーみたいに直前に食らったダメージの部分は違う色にする、とか
普段は非表示でHPが増減した時だけ数秒だけ表示する、とか
0248名前は開発中のものです。
2008/08/24(日) 21:47:18ID:MJZApYifありがとうございます。
GM6なのでコードとかは良く分からないのですが・・・頑張ってみます
0249名前は開発中のものです。
2008/08/24(日) 22:35:27ID:T5dkUX6nもちろんGameMakerはマウスでアクションを選ぶだけでもゲームは作れます
(例えば上のレスの内容はVarableアクションやDraw系アクションを使えば同じことができます)
なので無理に使う必要はありませんが簡単かつ便利なので少しずつ覚えていくと後々役に立ちます
GMLは比較的オーソドックスな言語なので将来他のプログラムで製作する時にも理解の助けになると思います
はじめは教材やサンプルが少なくて泣けてくると思うけど頑張れ!
0250248
2008/08/25(月) 06:32:19ID:bHYCWqjAなんとかHPを表示する事が出来ました。本当にありがとうございます。
二度も申し訳ないのですが敵と当たった時に誰のライフがどらくらい減るか、というのはどうすれば良いのでしょうか?
0251名前は開発中のものです。
2008/08/26(火) 19:09:24ID:8PREyaa3セレクトしたキャラクターのオブジェクトを戦闘用の別ルームに出現させるにはどうすれば良いでしょうか?
キャラクターセレクトのルーム内のオブジェクトをキャラデータ以外消去して
セレクトマップにマップを構成するオブジェクトを直接置いて行く・・・という風なのならなんとか出来たのですが
それだと物凄く面倒で新しく追加するのがとても大変です。
0252名前は開発中のものです。
2008/08/26(火) 20:42:28ID:KqN2Dkl3既に解決してましたらスルーしてください
上の方で書いたオブジェクトに防御力と攻撃力を追加し衝突するとダメージを受けるようにしてみます
まずCreateイベントに追加(7とか18って数字は適当に変更してOK)
bougyo=7
kougeki=18
あとはCollisionイベントにHPの増減を記述します
例1.敵と衝突した時に、自分のHPが18減る
hp = hp - 18
例2.敵と衝突した時に、相手の攻撃力の分だけHPが減る
hp = hp - other.kougeki
例3.敵と衝突した時に、相手の攻撃力と自分の防御力の差だけHPが減る
hp = hp - max(0, (self.bougyo - other.kougeki))
例4.敵と衝突した時に、相手のHPが30減る
other.hp = other.hp - 30
1行だけのコードなら、controlタブにあるVariablesアクションを使っても同じことが出来ます
GM付属のサンプル(例えば1945.gm6)でも機能説明ということでcontrolタブのアクションだけで作ってますね
0253名前は開発中のものです。
2008/08/26(火) 21:06:11ID:KqN2Dkl3単純にグローバル変数を経由して別ルームに情報を渡すというのはどうでしょう
例えば
自キャラの識別番号は「global.plyaerID」という変数に格納
敵キャラは「global.enemyID」という変数に格納しときます
もちろんこれらはセレクト用のルームでプレイヤーが自由に変更できるようにしときます
戦闘ルームにはRoomCreatorというオブジェクトだけを配置しておきます
RoomCreatorはルーム開始時など任意のタイミングで上記のグローバル変数を参照してキャラクターを生成します
// playerIDが1ならガイル、7ならダルシムを生成
if(global.playerID==1){instance_create(0,0,obj_GAIRU)}
if(global.playerID==7){instance_create(0,0,obj_DARUSIMU)}
その他にも戦闘ルームの背景画像やBGMのセレクト状況なども渡せるようにすれば変更や管理が楽になるかと思います
これらはRoomのCreationCodeでも可能かもしれません
ただし管理の容易さや再利用性などを考えるとルーム管理オブジェクトを別に作った方が便利そうです
0254名前は開発中のものです。
2008/08/26(火) 22:53:57ID:8PREyaa3ありがとうございます。
つまりキャラアイコンをセレクトした時、変数に任意のキャラ識別番号を入れて
他ルームで識別番号によって呼び出すオブジェクトを変えるという感じでしょうか?
難しいですが大体分かるような気がします。
変数はルームを越えても大丈夫なんですね
0255名前は開発中のものです。
2008/08/26(火) 23:05:57ID:3+A0dz+L0256251
2008/08/27(水) 18:07:00ID:JyCTdSQ7コード「global.plyaerID=1」と入れたのですが
他ルームで「if(global.playerID==1){instance_create(20,10,OB_1)}」のようにしたのですが
ルーム移動した瞬間にエラーが出てしまいます。
また、「global.plyaerID」というのもコードの一種なのでしょうか?
「global.plyaerID2」みたいにしてはいけない物なのですか?
0257251
2008/08/27(水) 18:13:46ID:JyCTdSQ70259名前は開発中のものです。
2008/09/04(木) 22:36:49ID:4hJjzvVJ5のサンプルがうまく動かないんですよね……
記述をみるかぎりポリゴン作るのがめちゃくちゃ楽そうなんですけど。
PCのスペック不足は自覚しているので、もし4より格段に便利ならPC買い換えようと思ってるんですけど……
どうでしょうか?
0260名前は開発中のものです。
2008/09/08(月) 07:25:08ID:VEQWn8iAグローバル変数を使うのは悪いこと!
みたいに教育受けてきた者は
グローバル変数にはアレルギーがあるだろう
0261名前は開発中のものです。
2008/09/11(木) 19:18:27ID:px4WAX7ARPG等のセーブにも耐えられるものなのだろうか……
0262名前は開発中のものです。
2008/09/12(金) 14:57:50ID:WTW/QyVX素材などの作成時間は除いたとして
0263名前は開発中のものです。
2008/09/12(金) 16:36:54ID:Es/bcu2J素材の制作を考慮しないのなら、基礎を組むのにはあまり時間かからないと思う。
でも、攻撃のあたり判定や、敵の吹っ飛び方、攻撃の連携など難しい所もいくつか。
0264名前は開発中のものです。
2008/09/13(土) 21:33:52ID:pOLwDEz8回るところまでは出来たのですが
オプションが2つの時は180度あけて、3つの時は120、4つの時は90度
とゆうように自機の周りのオプションの間隔を均等にするには
どうしたらいいのでしょうか?
0265名前は開発中のものです。
2008/09/13(土) 22:17:09ID:y3l90inF0266名前は開発中のものです。
2008/09/14(日) 00:18:40ID:gN9mQ7cXここからがんばれ
0267名前は開発中のものです。
2008/09/14(日) 11:14:40ID:A6sMZm51オプションを4つ作りたい場合は
4種類のオブジェクトを作る必要があるんですか?
それとも1種類のオブジェクトを4つ作るだけでできますか?
0268名前は開発中のものです。
2008/09/14(日) 12:29:14ID:gN9mQ7cX各オプションに自分が何番目のオプションか教えてやる方法もあるけど、
このケースだと配列使って自機に全部管理させた方が楽。
今どうやっているのかわからんからあくまでも一例だけど
/* Createイベント */
count = 0; // 今あるオプションの数
angle = 0; // 回転の管理用
/* どこかのイベント(オプション1個増やす) */
option[count] = instance_create(x, y, obj_option);
count += 1;
/* Stepイベント(オプション回す) */
angle += 1; // 適当に
for (i = 0; i < count; i += 1) {
option[i].x = x + lengthdir_x(100, angle + i / 360 * count);
option[i].y = y + lengthdir_y(100, angle + i / 360 * count);
}
0269名前は開発中のものです。
2008/09/14(日) 13:21:59ID:y4Lx9aKy1.生成時にinstance_numberで自分が何個目かを記録
2.ついでに現在オプションが何個あるかを把握する
3.上で把握した数を全てのオプションに教えてやる
4.現在のオプション数、自分が何個目か、この2つの情報から位置を修正する
修正のタイミングや必要になる情報は同じだけど
3と4の「全てのオプション」を制御する部分が268氏の方法より面倒
・コード記述欄の右上チェックボックスでObjectを選んで全てのオプションインスタンスに通知する方法
・オプションが増減するタイミングでユーザ定義イベントを発行して全ての(ry
・ヘルプに載ってる方法、つまりinstance_id配列を使って全ての(ry
自機側は全く管理しなくて良い代わりにオプション側が同じかそれ以上に面倒そう
しかもどの方法もオプション自身のアクションとして記述するとややこしくなる
と、色々考えてみたけどやはり268氏のやり方が管理しやすいです
0270267
2008/09/14(日) 16:35:01ID:A6sMZm51オプションの間隔が均等にならずにオプション同士が
くっついてしまいます。均等にするにはどうしたらよいのでしょうか?
http://www1.axfc.net/uploader/File/so/11043.ttf
↑実際のファイルをUPしました。
0271名前は開発中のものです。
2008/09/14(日) 18:31:03ID:gN9mQ7cX0272267
2008/09/14(日) 23:14:48ID:A6sMZm51おかげさまで成功しました。
0273名前は開発中のものです。
2008/09/15(月) 09:18:36ID:+qgjZ47xこれはどういうことでしょうか??
0274名前は開発中のものです。
2008/09/15(月) 10:20:24ID:jDWWXeXPゲームに使われてるフォントのことなら
GM6以降ならレジストしてユーザ製拡張機能を導入しないと日本語表示はできませんぜ
コードエディターに使うフォントということなら
なぜか一部のフォントが使えずにGMデフォルトのArialが選択される
例えばLucidaSansUnicodeは反映されるけど、LucidaConsoleは反映されない
これはレジストしても変わらん
0275273
2008/09/15(月) 10:34:38ID:+qgjZ47xフォントの選択画面でいろいろ試してみてもほとんどの英語フォント
はarialとまったく同じフォントになってしまいます
(wordやexcelではちゃんと使えるフォント)
0276名前は開発中のものです。
2008/09/15(月) 11:41:06ID:jDWWXeXPすまん伝わらなかったかな
レジストするだけじゃ表示できないよ
日本語表示DLLの詳しい導入方法や使い方はwikiを読んでみて
0277名前は開発中のものです。
2008/09/15(月) 12:05:43ID:H1a8iGGWフォントに反映されない(Arialの字体のまま)ってことじゃないの?
上で言ってる「LucidaConsoleは反映されない」というのが
フォントの選択でも起こっていると。
この件で文句言ってる人あまり見ないから、環境によるのかもしれないけど。
たぶんフォント指定する際にCharsetがSHIFTJISあたりになってるから
日本語文字の含まれるフォントしか反映されないと思われる。
GM側の問題だからバグ報告あげて直してもらうか、
自分でスプライト化して表示するしかないんじゃないかな。
上で紹介されてる日本語表示DLLでもできると思うけど。
0278名前は開発中のものです。
2008/09/15(月) 12:10:54ID:+qgjZ47x説明下手でした
自分が描画したいのは日本語ではなく英語です
日本語はすでに非公式サイトからスクリプトを導入しています
例えば自分がDLしたStarcraftフォントをインストールしました。
それはexcelなどではちゃんと使えるのにいざGMで使おうと思うと
Starcraftフォント表示されるのになぜか中身がArialと同じになってしまうのです。
0279名前は開発中のものです。
2008/09/15(月) 12:12:32ID:+qgjZ47xすみません
その通りです
0280名前は開発中のものです。
2008/09/15(月) 12:25:34ID:P1NOywnZオブジェクトが指定した範囲内にあるかどうか判断するにはどうしたらいいですか?
0281名前は開発中のものです。
2008/09/15(月) 12:50:01ID:jDWWXeXPやっと意味が分かった
見当違いのレスすまんです
GM7になっても直ってないということは日本語環境に特有のバグかもしれないね
>>280
if(y < room_height/2)
{
// ルームの上半分にいる時の処理
}
より厳密に判定したいなら↓このあたりを参考に
sprite_height スプライトの縦幅
room_height ルーム全体の縦幅
view_height ビュー全体の縦幅
0282名前は開発中のものです。
2008/09/15(月) 14:15:05ID:Z9WHzemZフォントの問題は、フォントリンク機能(windows2000以降に搭載?)を使って
欧文のみのフォントに日本語のフォントを含めることによって解決できました。
Windows システム内部のレジストリをいじることになるので、
必ずレジストリのバックアップをとってください。バックアップから自力で元の環境に戻せる力量のある方のみ推奨です。
また、フォントリンク機能についてよく調べてから行ってください。
(自分も調べたてでよく分かっていません、よって、もっとよい方法があるかもしれません)
starcraftフォントを例にとって、やり方を説明します。
(自分の環境はWindowsXP SP2です。 GMは7.0で確認しました)
1. starcraft フォントをインストールする。
2. レジストリエディタ(regedit.exe)を起動して、
[\\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink]
に、複数行文字列値を新規作成し、以下のように入力する。
値の名前:
Starcraft
値のデータ:
Starcraft Normal.ttf,Starcraft normal
MSGOTHIC.TTC,MS UI Gothic
3. Windowsを再起動させる。
すると、GM で font リソースの追加 で Starcraft を選択すると、
プレビューの時点で反映されるのが確認できるかと思います。
テキスト表示させるオブジェクトを配置してゲームを実行させても反映されました。
また、ゲームをexeで吐き出せばフォントリンクさせていない環境でも反映されるので、
exeで配布する分には問題ないと思います。
0283名前は開発中のものです。
2008/09/15(月) 15:26:51ID:tvN7d6yWそれは自分の環境以外でも正常に動作するのでしょうか。
(他人のレジストリを弄らせるわけにはいかない)>>534
0284282
2008/09/15(月) 16:44:01ID:E4MKDW7Wそして、ゲームをソースの状態で配布する場合、
相手側もレジストリを変更しなければ反映されません。
ですが、実行形式で配布する場合は、実行ファイル自体にフォントが埋め込まれるため、
環境を変える必要はありません。
自分の環境で、フォントリンクさせた環境で作った実行ファイルを
フォントリンクを解除した環境で実行しても、フォントが正常表示されたので、
自分の中では、そう結論付けてます。
0285名前は開発中のものです。
2008/09/16(火) 14:10:35ID:JDKv6UBR内容は……
・GM7使用
・出来るアクションは棒人間が左右に移動、Zでジャンプ
・棒人間は停止、移動、ジャンプ上昇、ジャンプ下降のアニメが左右ある
・下に地面がある時に、左右キーを押すと左右歩きアニメ
・下に地面がある時に、左右キーを離すと左右停止アニメ
・vspeed-10(ジャンプの初速)で上昇、vspeed0.5(落下の初速)で下降アニメ
このまま試したら、ジャンプから着地したときに下降アニメのままだったので
地面に触れたら停止アニメに変わるよう設定をしました。
完成した!と思ったら、今度は左右押したまま着地(着地後そのまま横移動)をしたら、
停止アニメのまま移動する問題が発生…
ならば、着地時に左右キーを押しているか押してないかで分岐させればいいのでは?と考え
if an expression keyboard_check(ord'right')is true
↑これを地面との衝突イベントに左右分組んでみたのですが
うまく作動しませんでした…。
何か良い解決策はないでしょうか?
すごく初歩的なことかもしれませんがアドバイスをお願いします。
0286名前は開発中のものです。
2008/09/16(火) 18:38:05ID:2x1IGPqIアクションゲームでは定番の話題だけど方法が色々あるから具体的に答えにくいな
「こうしたら解決」というアドバイスは難しい話題だけど勘で答えてみる
意外と気づきにくいのは衝突イベントの発生タイミング
×ぶつかった瞬間に1回だけ発生する
○触れてる間は常に(毎フレーム)発生する
つまり地面に立ってる時は常に衝突イベントが発生してる
例えば、
衝突イベントに停止アニメを強制するアクションを書いてしまうと
左右への歩行アニメは発生しない
(地面に立ってる=常に衝突イベント発生=常に停止アニメ)
解決策は色々あるけど一例を
地上にいる/空中にいる、などキャラクターの状態を変数で表しておく
1.「空中」から着地したら停止アニメ発動&状態を「地上」にする
2.ジャンプしたら「地上」から「空中」に入れ替える
3.「地上」にいる状態で地面と衝突しても停止アニメは発動しない
何かの参考になれば幸い
0287名前は開発中のものです。
2008/09/16(火) 18:59:33ID:wc/bCpqZ衝突イベント使わずにステップイベント使ったら??
もしy+1に床オブジェクトがあったらvspeedを0にして
もしvspeedが0だったら停止アニメするとか…
0288285
2008/09/16(火) 20:41:11ID:JDKv6UBR>>287様
早速ステップイベントで試してみたところ、ステップごとに常に
足下をチェックするため、地上にいるときは停止アニメのみに
なってしまいました。
>>286様
ステップイベントで足下をチェックして、地面がある時は重力が0になるようにしています。
たぶん、これで衝突イベントの連続発生は回避できていると思います。
地上→垂直ジャンプまたは、ジャンプ後左右キーを離す→着地
この場合は地上で停止アニメになります。
その後左右キーを押せば問題なく移動アニメになります。
地上→ジャンプ→左右キーを押したまま着地して移動
この場合は、着地後に停止アニメのまま左右に移動します。
一度左右キーを離し、再度押すと移動アニメに変化します。
地面衝突よりも左右キーを押した時に移動アニメに変化するのが問題…?
う〜〜ん…変数を使ってもう少し試行錯誤してみます。
0289267
2008/09/17(水) 01:00:40ID:fciLO00k複数あるオブジェクトの中で1つだけを消すことって出来ますか?
option[count] = instance_create(x, y, obj_option);
count += 1;
の逆でcountを1減らして
countが最後のやつを消そうと思ったのですが
他のオブジェクトから他のオブジェクトをCreateできても
廃棄はできないのですか?
ヘルプを見てもそれらしきものは見つかりませんでした。
0290名前は開発中のものです。
2008/09/17(水) 01:28:48ID:+iHp1HAAインスタンスを消すための関数はinstance_destroy()。
ただこいつは「自分自身を消す」関数なので、GMではちょっとトリッキーですが
with文を使って「消したいインスタンスに関数を実行させる」必要があります。
with (option[番号]) { instance_destroy(); }
0291267
2008/09/17(水) 06:27:15ID:fciLO00k早速やってみます。
0292名前は開発中のものです。
2008/09/17(水) 16:50:11ID:3ZsvlK2wこれはどういう意味でしょうか??
0293267
2008/09/17(水) 18:36:14ID:fciLO00k色々と設定を変えながらやってみたのですが
自分ではどうしてもエラーを無くす方法がわかりませんでした
http://www1.axfc.net/uploader/File/so/11187.ttf
現物をupしました。どなたか教えていただけませんか?
0294名前は開発中のものです。
2008/09/17(水) 18:47:37ID:+iHp1HAAそれは != と同じで「等しくない」という演算子。
ちなみにGMのマニュアルに載っているのはC風の文法ですが、
歴史的な経緯からPascalライクの文法も一部受け付けるようになっています。
<> は != のPascal版。似たようなマニュアルに載っていないお仲間には
and(&&), or(||), not(!), then なんてのがあります。
>>293
できればエラーメッセージは正確に書いてほしいな。
「array index out of bounds」(配列のインデックスが範囲外)
ってのがこの場合の問題。
たとえばオプションの数が3つ(count=3)の時、配列の要素は
option[0], option[1], option[2] の3つ。したがって最後のオプションは
option[count] ではなくて option[count - 1] です。
0295267
2008/09/17(水) 20:35:59ID:fciLO00kそしてすいませんorのあとを書き忘れてました。
0296292
2008/09/17(水) 21:25:35ID:3ZsvlK2wありがとうございます
そんな演算子があったなんて驚きです
0297名前は開発中のものです。
2008/09/25(木) 18:58:23ID:ePV3MaT70298名前は開発中のものです。
2008/09/25(木) 19:20:38ID:g090BAj9もっとシンプルなものから……と思ってゼルダ風に挑戦中
何か1つ完成させたいな〜…
0299名前は開発中のものです。
2008/09/25(木) 20:51:49ID:dGYbhKuz下らないアイデアでも作ってみようかって気になれる
FLASHゲーのようなシンプルで即効性があって馬鹿っぽいものが作りやすい(モチベ的な意味で)
今作ってるのはダウンタウン熱血行進曲のパクリ
全24人(CPU操作)を同時に出して殴り合いのカオスを眺めてるだけのゲーム?らしきもの
某FPSのBOT戦を眺めてるときに思いついた
無理矢理どこかのジャンルに分類すればライフゲームの一種になるんだろうか
ゲームの目的と遺伝的アルゴリズム的な何かを加えたら少しはゲームになるかもしれない
しかしゲームにしようと思うと自ずと既存の何かに似てくるから困る
0300名前は開発中のものです。
2008/09/25(木) 23:26:48ID:q3MsUpLj課金版欲しいなぁ
0301名前は開発中のものです。
2008/09/26(金) 03:12:23ID:sE3W1GIEやらなくていいと思うよ
いずれGameMakerを離れて自作するときに面倒になる
0302名前は開発中のものです。
2008/09/28(日) 18:10:00ID:LS/ACw4Rview機能によって表示されている画面の左上の座標を返す関数があったとおもうんだけど
誰か覚えてない?
HPゲージの表示場所に使うんだ
0303名前は開発中のものです。
2008/09/28(日) 20:13:19ID:uhIOXa5a5と6以降で名前が違うから気をつけるんだ
0304名前は開発中のものです。
2008/09/28(日) 21:17:06ID:LS/ACw4Rありがとう。すごく助かった
0305名前は開発中のものです。
2008/09/29(月) 18:56:28ID:UJys+BvP接触中は↑キーでy方向に-32移動出来る様にして、接触中のジャンプも可能にしたいです。
操作キャラのジャンプ条件はy方向1にソリッドオブジェクトがある時ですが、
この条件に当てはめなくてもソリッドオブジェクト上にいる時と同じ様にジャンプ出来れば良いです。
よろしくお願いします。
0306名前は開発中のものです。
2008/09/29(月) 21:40:35ID:TA0YzXK0D&D使ってるなら「If thre is an object」アクション、GMLならplace_meetingでチェックできる。
0307名前は開発中のものです。
2008/09/29(月) 23:26:55ID:UJys+BvPありがとうございます。
こんな便利なアクションがあったのですね。
お陰で触れてる間に↑キーで梯子を上る事も出来ました。
ですが上った後に静止する方法が分かりません。キャラに重力を設定してあるので落ちていってしまいます。
重力を設定したキャラを空中で静止させるにはどうすれば良いのでしょうか?
何度も質問すみません。よろしくお願いします。
0308名前は開発中のものです。
2008/09/30(火) 00:47:31ID:YIigZYPbチュートリアルを参考にして作ってるならおそらく
Stepイベントの中に「足下がfreeでなければ重力を0にする」
という処理があるはずなので、そこにも下に梯子があるという
条件を追加すればいいかな。
0309名前は開発中のものです。
2008/09/30(火) 10:28:05ID:gaxEls3Hありがとうございます。
その通りにやったのですが問題がありまして・・・。
歩いて接触し、↑キーで上れば空中で静止する事が可能になったのですが
ジャンプしながら接触したり、落ちながら接触すると止まりません。
http://www1.axfc.net/uploader/He/so/143051.zip&key=gm6
こんな感じです。何処か間違ってましたでしょうか?
0310名前は開発中のものです。
2008/10/01(水) 21:47:12ID:Fc7yZooq触れたら止まるって仕様だと、接触中でもジャンプできるって仕様と
食い合わせが悪い気がするけどな。
0311名前は開発中のものです。
2008/10/01(水) 23:12:59ID:1MeHwIPfありがとうございます。
見事に梯子っぽくなりました。が、やはりジャンプは出来ないようです。
0312名前は開発中のものです。
2008/10/01(水) 23:35:57ID:dOI1qd/B梯子を昇っているかの処理を初めの方にやって、フラグで処理するようにやりなおしてみたら?
毎step時に梯子に接触してるか?
触れている 梯子フラグA = 1(ON)
→ 触れていない 梯子フラグA = 1(ON)
梯子の所で上キーを押した
→ 梯子フラグB=1(ON)
梯子フラグON時 → 重力・vspeed 0 にし、上下ボタンは上下移動(vspeed 10とか)に設定
0313名前は開発中のものです。
2008/10/01(水) 23:39:24ID:dOI1qd/B毎step時に梯子に接触してるか?
触れている → 梯子フラグA = 1(ON)
触れていない → 梯子フラグA = 0(off)、重力(vspeed=元値)ON
・・・伝わったらいいなこの説明。
0314名前は開発中のものです。
2008/10/02(木) 17:09:40ID:JaYkkaptありがとうございます。
フラグを使って色々やってみたのですがジャンプは出来ても空中で静止出来なかったり
空中で静止出来てもジャンプは出来なかったりとどうも完璧にはなりませんでした。
まだ色々試してみますが、もしよろしければ>>309のサンプルに付け加えて頂ければ幸いです。
0315名前は開発中のものです。
2008/10/03(金) 14:39:18ID:ZrsFoNA50316名前は開発中のものです。
2008/10/03(金) 16:46:41ID:uDeRDVYO0317名前は開発中のものです。
2008/10/05(日) 04:52:05ID:H1cq3pc2BGMをつけるとき、楽曲を自分で用意するとしても、何処からか借りてくるとしても、
そのファイル形式について知りたいのです。midiとかmp3とか。
できれば、そのBGMをどう再生しているのかも知りたいです。
midiなら最初から入ってるsound_playで再生できるけど、oggならbGMスクリプトとか使ったり。
0318名前は開発中のものです。
2008/10/05(日) 13:06:42ID:Fn418VgV0319名前は開発中のものです。
2008/10/05(日) 20:02:29ID:4niTijZC0320名前は開発中のものです。
2008/10/08(水) 15:16:57ID:RDU/YXQBありがとうございました。
参考にさせていただきます。
0321名前は開発中のものです。
2008/10/11(土) 18:30:28ID:J25bobba0322名前は開発中のものです。
2008/10/11(土) 22:42:26ID:VYtC5Q29それは画面を完全黒で塗りつぶすということ?
それとも、半透明の黒(変な表現だな)で暗闇を作りたいってこと?
どっちにしろ、レイヤーを変更して一番前に表示するようにしてみたら?
0323名前は開発中のものです。
2008/10/12(日) 19:20:19ID:0LPSWnKh画面を完全に黒で塗りつぶしたいのです
0324名前は開発中のものです。
2008/10/12(日) 20:59:20ID:WCmVlsh40325名前は開発中のものです。
2008/10/12(日) 23:04:23ID:0LPSWnKhなるほど、ありがとうございます。盲点でした・・・。
0326325
2008/10/12(日) 23:27:26ID:0LPSWnKhdraw_rectangle(x1,y1,x2,y2,false)の座標1(x1,y1)はルームの左上(0?)かと思いますが
座標2(x2,y2)はどう指定すれば良いのか悩んでおります。
(0,0,room_heigh,room_width,false)ではどうも違うようなのです。何が間違っているのでしょうか?
0327名前は開発中のものです。
2008/10/13(月) 01:58:15ID:AHWrAmb7本体のバージョンは?
0328名前は開発中のものです。
2008/10/13(月) 01:59:44ID:KOVLXVwd0329名前は開発中のものです。
2008/10/13(月) 03:38:00ID:RgqatT8r>>328の言うとおり、widthは横、heightは縦。
(ついでにいうとheightのtも抜けてるが)
黒い長方形が一切見られないのなら:
1) drawイベントで実行している?
2) depthを一番小さくしてる?
■ このスレッドは過去ログ倉庫に格納されています