【2D】ゲーム作成ツールGameMaker part2【マンセー】at GAMEDEV
【2D】ゲーム作成ツールGameMaker part2【マンセー】 - 暇つぶし2ch957:名前は開発中のものです。
08/05/05 06:13:29 KYkFnzVP
>>956
そのサイトも見たんですがsearch関数というのがよく分からないです;
自分で作るものなのでしょうか・・・

958:名前は開発中のものです。
08/05/05 08:26:38 grhJSKQZ
>>953 954

ご指摘ありがとうございます。
丸め誤差・・・次から気をつけます。

あと、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の場合は保存速度に戻す
}


959:名前は開発中のものです。
08/05/05 08:57:11 grhJSKQZ
>>958
image_indexじゃなくてsprites_indexでした。

あと、このコードじゃうまく動作しませんでした。
うーん。難しい・・・。

960:名前は開発中のものです。
08/05/05 10:27:30 j6OioUkw
なんだかやりたいことが混乱してないか?
「困ったときは原点に戻る」
プログラム的なことは置いといて、まず何をしたいのかを考えてみ?

この場合はアニメーションが終わったら止める、だったよね?
Animation End Eventでimage_speedを0にすればアニメーションはとまるんじゃない?
多分これだけだと一枚目に戻って止まるかも知れないから、
止めた後にimage_indexを最後の数字にする。
つまり、
「アニメーションが終わったら、
・まずアニメーションを止めて、
・最後の画像を表示させる」

……>>853が言ってることと全く同じなんだが。
これで出来ないってなると、Step eventで毎回毎回image_speedを設定してるんじゃない?
もしそうだったらいくら止めても止まらないんだけどw

961:名前は開発中のものです。
08/05/05 10:40:47 j6OioUkw
もしimage_speedが一定で、終わったらそれを止めたいってだけなら、
image_speedをCreate Eventで設定した方がいいよ。

962:名前は開発中のものです。
08/05/05 11:31:49 grhJSKQZ
>>960,961
なんていうか、いろいろとすいません。
うーん、そうですねぇ。「やりたいこと」…
「一定条件のみアニメを止める」っていう動作をさせたいんだと思います。

Object内で条件毎にコロコロspritesを入れ替えておりまして
spritesに一定の画像が使われている時に限り、「アニメを一周」させたかった訳です。
(キャラが走行中に立ち止まった時、着地した時だけ服が揺れるアニメ…等)

1、sprites変更後、「アニメ停止変数」生成
2、Animation Endにて「アニメ停止変数が1の時のみ、image_speed=0」

でやりたいことが実現できました。
うーむ。確かに原点に返ってみれば、単純な事だったのですね…。
板汚しすいませんでした orz

963:名前は開発中のものです。
08/05/05 21:40:31 2SyyMfLm
なにげにレス伸びてる・・・そろそろ次スレの季節なのかな?

964:名前は開発中のものです。
08/05/05 22:22:44 eAt6pbsl
>>950です。
また質問に来ました。
HPを準備するまでは出来たのですが、HPの減らし方(ダメージ)がわかりません。。
後、自分的にはゾンビのような敵と戦わせたいので、
近づいたら(正確には近づかれたら)ダメージという形での使用方法も教えてください。
よろしくお願いします。

965:名前は開発中のものです。
08/05/05 22:48:47 J24rBd4c
>>964
サンプルとか、>>1チュートリアルとかサイトに色々書いてるから自分でも調べてから書き込むことをオススメする。

966:名前は開発中のものです。
08/05/05 23:18:51 2SyyMfLm
>>964
>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を減らすから、範囲内に入ればとんでもないスリップダメージになるので
一定周期ごととか、減らす量を思いっきり少量にするとか、そういう工夫は必要かと思う。まぁとりあえず がんばれ~


967:966
08/05/06 00:33:47 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)

968:名前は開発中のものです。
08/05/06 00:40:06 m5xvmqWN
>>965 >>967さん
ご返答ありがとうございます。
なるほど、そういう風な式を立てればいいのですか~
わかりました。ありがとうございました

969:名前は開発中のものです。
08/05/06 03:30:10 HwPOvHtQ
>>968
一応聞いておくけどヘルプファイルもってる?

970:名前は開発中のものです。
08/05/06 11:45:29 m5xvmqWN
>>969だいぶ遅れた返答ですみません。
F1のあれの事ですか?
英語で読めないです。。


971:名前は開発中のものです。
08/05/06 12:57:24 ndOoddgE
gamemakerで作った拡張子exeのゲームをPSPで遊ぶ事は出来ないのでしょうか?

972:名前は開発中のものです。
08/05/06 13:04:37 zKMDMsj4
GameMakerはWindows専用だ。マルチプラットホームなわけねぇだろ。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch