したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

作成に関する質問スレ

1管理人:2011/12/03(土) 12:18:00
作成に関する質問はこちらで

5019名無しさん:2019/02/16(土) 21:43:08 ID:cgFEPnCA
kamilia とか boshyとかにある
画面を揺らすのはどうすればできますか?

5020名無しさん:2019/02/17(日) 02:54:06 ID:w0x7uIRg
viewをガガガって動かす

5021名無しさん:2019/02/17(日) 22:03:39 ID:cgFEPnCA
メドレーアイワナに使うアイワナって許可とったほうがいいですか?

5022名無しさん:2019/02/17(日) 23:47:25 ID:HkYr5o8k
外野から何も言われたくないなら取ったほうがいいし、気にしないってならとらなくていいよ。

5023名無しさん:2019/02/18(月) 00:59:13 ID:w0x7uIRg
BGMやら耐久の曲やら許可取ってない人がほとんどなのに、自分の耐久使われると怒るやつほんま草

5024名無しさん:2019/02/18(月) 02:00:57 ID:VA8z8KBk
勝手に使われて文句言うやつも謎だけど
許可取ったんですか?とか他人が言うのも謎

5025名無しさん:2019/02/19(火) 01:50:16 ID:czr9.C/Y
著作権違反してる作品をパクっても著作権違反になるよ。しかも元のパクッてた部分と、新たにその人のオリジナル部分の二重で。

5026名無しさん:2019/02/19(火) 08:58:44 ID:pwN.Qq66
そりゃそうだろ
今更なんだよ

5027名無しさん:2019/02/19(火) 13:42:01 ID:OoYEHfBM
>>5025
許可取れ厨はすぐにそう言うがちょっと待った

"それでは論破できていない"

著作権侵害してる奴が著作権侵害されたからといって、自分がしてるから、してきた奴を批判したら
自分がしたのを批判することになるから批判をする資格は無い
山へ帰れ

5028名無しさん:2019/02/20(水) 01:08:13 ID:czr9.C/Y
>>5027
別に論破とかしてないけど…
ただ事実を言っただけでそれを見てどうするかは勝手にしたら良いさ

5029名無しさん:2019/02/20(水) 01:22:45 ID:4X5Wao9Q
著作権とか言うからおかしくなる
原作者が怒るかどうかだけの話だろうが

5030名無しさん:2019/02/25(月) 00:13:39 ID:w0x7uIRg
いいぞー争えー

5031名無しさん:2019/02/27(水) 22:36:43 ID:w0x7uIRg
3D耐久とかアイワナ侮辱してるのか?

5032名無しさん:2019/02/27(水) 23:49:26 ID:K0fTZ7oE
>>5031
チュッ!

5033名無しさん:2019/02/28(木) 01:37:09 ID:w0x7uIRg
>>5032
アイヤー!!

5034名無しさん:2019/03/01(金) 21:47:00 ID:Aln3yfBg
sorariku98の作った3D耐久の内容じゃなくて3D耐久っていう試み事態批判してるとこ懐古厨くせえわ

5035名無しさん:2019/03/02(土) 01:20:00 ID:w0x7uIRg
うんこのAA貼ってるやつが何言っとんねんw

5036Mokuteki:2019/03/02(土) 15:02:28 ID:Aln3yfBg
この掲示板IPからID生成してるのか知らんけど、暗号化の文字列が変わらないから私がMokutekiだとすぐ特定可能なのが辛いとこですね・・・

5037名無しさん:2019/03/03(日) 17:06:59 ID:YeEMAAEY
>>5036
特定されて困る事でもあるんですか?悪い事してなければ困る事無いとは思いますが…

5039名無しさん:2019/03/21(木) 19:28:50 ID:/zuJ8fEU
絶対なりすましだろw

5040名無しさん:2019/06/04(火) 21:32:15 ID:hG2q3XgU
プレイ中にBGMがループするときに画面が一瞬カク付くんですけど、これはBGMの容量が大きいってことでしょうか?

5041<削除>:<削除>
<削除>

5042名無しさん:2019/08/10(土) 01:51:46 ID:2BeYEjKI
>>5041
ゆううつエンジンをそのまま移植するのであれば、
①プレイヤーのstepイベントの一番下にある 重力が反転してたらプレイヤー2に変える の機能をいれる
②saveGameのスクリプトのようにプレイヤー2の座標を保存する
③saveGameのスクリプトのように重力の状態を保存する
といったことが必要だと思いますよ

5043<削除>:<削除>
<削除>

5044名無しさん:2019/08/10(土) 22:29:53 ID:2BeYEjKI
>>5043
「バグが起こり」とありますが、それが何なのか、どういった現象が起きているのか記載することが解決への第一歩です。
ゲームが起動すらしないのか プレイヤーが勝手に落下してしまうのか エラーメッセージが出て終了してしまうの(そのメッセージにはなんと書いてあるのか)など

グローバル変数の保存についてはアイワナ製作@基本・応用wikiの「データのセーブについて」など、やり方を掲載しているサイトがありますよ。

5045<削除>:<削除>
<削除>

5046名無しさん:2019/08/10(土) 23:32:29 ID:hG2q3XgU
GM8で日本語を描写したかったのでいろいろ調べてたんですけど不可能って認識で大丈夫でしょうか?
ある程度ゲームを作った後なので今更それが可能なバージョンに移植しようと思っても1から作り直しになりますよね?
一応メッセージウィンドウなら日本語も出てくるんでそれでどうにかなる範囲で我慢しようとは思ってますが…
もしできる方法があるなら教えていただきたいです

5047名無しさん:2019/08/11(日) 07:34:57 ID:2BeYEjKI
>>5045
あまり連続で質問されると「マナーが悪い」「少しは自分で考えろ」と言われかねないのでお気を付けください。
…とはいえ今ここを利用している人が少ないので問題ではないでしょうが。

前回お伝えした①のところに、プレイヤー2に変えるときにy座標を-9だかしてると思います。
下げてなお埋まるのであれば埋まらない程度に、かつ浮かない程度に数値を下げてみたらどうでしょうか。

>>5046
 >>2311
 mbtextでTwitter検索してみるとやってる人たち出てきたりします。

5048<削除>:<削除>
<削除>

5049名無しさん:2019/08/11(日) 15:58:19 ID:2BeYEjKI
>>5048
画面上のキャプションで正しく表記されているならきちんと保存されているはずですね。

セーブデータのdrawイベントのコードはどうなっていますか?正しくdeath数、タイムを取得できていますか?

5050<削除>:<削除>
<削除>

5051やっくー:2019/08/12(月) 22:16:45 ID:A1k3LEZA
過去の自分のコメントを消していますが、気にしないでください。

>>5049

var i,j,strTime,t,bosx,bosy;

for(i=1; i<=3; i+=1) {
// Data1とかData2とか
draw_set_font(font40);
draw_text(x + (i-1)*240, y, str[i]);

draw_set_font(font12);

// 死亡回数
draw_text(x + (i-1)*240 + 8, y+50,"Death");
draw_text(x + (i-1)*240 + 120-string_width(string(menuDeath[i])), y+50, string(menuDeath[i]));

// 時間
draw_text(x + (i-1)*240 + 8, y+70,"Time");
t = menuTime[i];
strTime = string(floor(t/3600))+":"; t = t mod 3600;
strTime += string(floor(t/ 600)) ; t = t mod 600;
strTime += string(floor(t/ 60))+":"; t = t mod 60;
strTime += string(floor(t/ 10)) ; t = t mod 10;
strTime += string(floor(t )) ;
draw_text(x + (i-1)*240 + 120-string_width(strTime), y+70, string(strTime));

// 選択表示
if (i == select){
for (j=0; j<4; j+=1) {
draw_sprite(sprSpikeUp, -1, x + (i-1)*240 + j*32, y+310);
}
}

bossIconNumber[0,4] = 1; bossIconSprite[0,4] = sprBossIcon01;
bossIconNumber[1,4] = 2; bossIconSprite[1,4] = sprBossIcon02;
bossIconNumber[2,4] = 3; bossIconSprite[2,4] = sprBossIcon03;
bossIconNumber[3,4] = 4; bossIconSprite[3,4] = sprBossIcon04;

for (bosy=0; bosy<8; bosy+=1) {
for (bosx=0; bosx<4; bosx+=1) {
if (bossIconNumber[bosx,bosy]!=0 && bossIconSprite[bosx,bosy]!=0) {
if (menuBoss[i, bossIconNumber[bosx,bosy]]) {
draw_sprite(bossIconSprite[bosx,bosy], -1, x + (i-1)*240 + bosx*32, y + bosy*32);
}
}
}
}

}

このようになっておりますが、どこが悪いのでしょうか。解説していただいたら嬉しいです。
(バグは1デスするごとにメニュー画面のデス数と時間が+0デス、+4660時間20分16秒されるというバグです。ただし、画面上のデス数と時間は正確です。)

また、>>2791のように反転した状態で死ぬと反転した状態でセーブしていないのに反転します。解説を見ましたが、分からず。。。
誰か解説していただいたら嬉しいです。

5052名無しさん:2019/08/13(火) 03:37:00 ID:2BeYEjKI
>>5051
質問とその回答は後で見た方が同じ疑問にぶつかったときの解決の手助けになります。
あなたも過去の質問と回答を見ていますよね?なので質問を消されると困ります。
自己の利益だけ手に入れて周りへ協力しないというのであれば私も協力したくないので
これ以降は他の方が善意で答えてくださるのをお待ちください。

メニュー表記の件、中身をいじってないのであればmenuDeath[i]とmenuTime[i]の取得する数値が誤っていることになるので、
新たなグローバル変数を保存した際に読み込む位置がずれてしまったのでしょう。
「アイワナ 実績」とでも検索してグローバル変数の保存について学んでください。

>>2791 の件はそのまま流れを追って解決しているようなので、あの流れの通りで大丈夫だと思います。

5053やっくー:2019/08/14(水) 13:59:03 ID:A1k3LEZA
>>5052
すみませんでした。個人情報関係で削除しました。一応、過去のコメントの内容を書かせていただきます。

>>5041
ゆううつから移植してねころんで反転させるにはどうすればいいか。

>>5043
>>5042の③がバグが起こり出来ない。どうすればいいか。

>>5045
成功したが、反転セーブにセーブした後リスタートすると足が埋まる。どうすればいいか。

>>5048
成功したが、メニュー画面のデス数と時間が>>5051のようになった。どうすればいいか。

>>5051
>>5052に同じ。

こんなことしか解決策が思いつかなくてすみません。もっとGameMakerについて学びたいと思います。

5054やっくー:2019/08/14(水) 14:01:37 ID:A1k3LEZA
>>5053
訂正
誤:
>>5051
>>5052に同じ。
正:
>>5050
>>5051に同じ。
すみませんでした。

5055やっくー:2019/08/21(水) 22:18:46 ID:A1k3LEZA
連投すみません。前の件はすみませんでした。

ねころんで反転を保存したいのですが、loadGameの中にsaveExeがあるためにロード時の状態(反転しているかしていないか)で始まってしまいます。
しかし、ゆううつを見るとloadGameの中にsaveExeがあるにもかかわらずセーブ時の状態で始まります。
なぜこうなるのかが本当に分からず困っています。
愚問ですが、ご回答していただいたら嬉しいです。

5056名無しさん:2019/08/25(日) 23:12:38 ID:R6PZefn2
>>5055
saveGameではなくsaveExeですよ?中身をちゃんと見てみましょう。

5057名無しさん:2019/08/28(水) 10:03:34 ID:v/HvJKlU
>>5055
中身見れば分かるけどゆううつエンジンの方のsaveExeの中身はセーブ処理なんて一切してない

5058やっくー:2019/08/30(金) 17:44:23 ID:A1k3LEZA
>>5056>>5057
ありがとうございます。

ご指摘の通り、僕は大きな勘違いをしておりました。
原因はkillPlayerとworldのEventsのpress R-keyにあるsaveGame(true)でした。
これらを消すと反転がきちんと保存されましたが、もちろんこのsaveGame(true)には意味があり、
消してしまうとゲームリスタート時にデス数とタイムが保存されません。
その為、ゆううつのScriptsのsaveDeathTimeを参考に次のように変更しました。

①saveGameとsaveExeとObjectsのmenuSelectのデス数とタイムの保存、読み出しの位置を一番最後に持っていく。
②saveDeathTimeを作り、そこに次のように入力する。
var f,tem,i;
f=file_bin_open("save"+string(global.savenum)+".dat",1);
file_bin_seek(f,8);
tem = global.death;
for (i=4; i>0; i-=1) {
file_bin_write_byte(f, min(tem div power(256, i-1), 255));
tem = tem mod power(256, i-1);
}
tem = global.time;
for (i=4; i>0; i-=1) {
file_bin_write_byte(f, min(tem div power(256, i-1), 255));
tem = tem mod power(256, i-1);
}
file_bin_close(f);
③killPlayerとworldのEventsのpress R-keyのsaveGame(true)をsaveDeathTime(true)に変える。
これでいけると思ったのですが、残念ながらデス数とタイムは保存されませんでした。
どうすればいいでしょうか。質問ばかりすみません。

5059名無しさん:2019/08/30(金) 23:29:04 ID:R6PZefn2
>>5508
それ以前に反転情報を保存したうえで、ロード時に反転情報を読み出せていないのが問題なのではないでしょうか?

5060やっくー:2019/08/31(土) 17:25:34 ID:A1k3LEZA
>>5059
ありがとうございます。

おそらくこれまでも反転状態は読み出せていたのですが、>>5058にあるように、
killPlayerとworldのEventsのPress R-keyにあるsaveGame(true)で死ぬ時とロード時に保存してしまった為に
ロード時の状態で始まってしまったのだと思います。
saveGame(true)を消すときちんとした反転状態でスタートしたので、おそらく反転状態の読み出しには成功していると思います。

引き続き>>5058の回答待っています。頭が悪くてすみません。

5061名無しさん:2019/08/31(土) 19:30:56 ID:R6PZefn2
>>5060
(true)の時とセーブをショットした時の(0)とでは何が違うか理解できていますか?

5062やっくー:2019/09/01(日) 12:21:42 ID:A1k3LEZA
>>5061
ありがとうございます。

そういえば理解していませんでした。真と偽だと思いますが、if文でも無いのに書いているので意味がよく分かりません。
saveGame(0)はsaveGameの情報がもしも偽ならsaveGameを実行するという意味でしょうか?
またsaveGame()と何も書いてないこともありますが、それとは何が違うのでしょうか。
調べてもよく分からないので、教えていただければ嬉しいです。

5063名無しさん:2019/09/01(日) 14:32:13 ID:R6PZefn2
>>5062
全部説明しますね。()の中身は引数です。
例えば instance_create(x,y,object) で「(x,y)の座標にobjectを生成する」となりますよね。
この()の中身を変えることで関数の結果が変わってくるわけですが、saveGame()などのscriptは言わば自作関数のように使えます。

script(argument0,argument1, ... ,argument15) で16個まで任意の引数を格納できます。
もちろん引数を使わずscriptの中身だけ実行することも可能なので中身無しの()があるわけです。

それらの引数はscript内のコードでそれぞれ argument0、argument1 といった変数として使われています。
ねころんエンジンのsaveGameの場合、6行目に dyingSave = argument0 と書いてありますね。
つまりtrueと0はこの dyingSave の中に1を入れるか0を入れるか分けています。

そしてscriptの先をみていくと if(!dyingSave) と括られていると思います。
このエクスクラメーションマークは 偽 を表しますので、日本語にするなら
「もしdyingSaveが偽(0)の場合、以下を実行する」となります。

セーブをショットした場合に実行されるのはsaveGame(0)なので、
このif文が実行されルームや座標の保存がなされます。

一方、Rキーイベント等にあるのはsaveGame(true)なので、
このif文が実行されません。つまりルームや座標を保存せず、
デス数やタイム、ボスやアイテムだけ保存する設定になっています。

ここまで説明したら反転の保存をどう設定するかみえてきますか?

scriptと引数について学びましょう。

5064名無しさん:2019/09/01(日) 14:57:42 ID:3OCyoRgc
やっぱりCの勉強ってプログラミングの基礎なんだなあ

5065やっくー:2019/09/01(日) 16:11:04 ID:A1k3LEZA
>>5063
丁寧なご説明ありがとうございました。
無事デス数もタイムもそして反転状態も保存することができました!
感謝してもしきれないです!ありがとうございました!

5066名無しさん:2019/09/17(火) 18:17:50 ID:sJ4uw8Lc
コードを使って画面全体をモノクロにする事って可能ですか?

5067名無しさん:2019/09/18(水) 09:57:15 ID:bp5PiC0g
>>5066
Gamemaker Studioでは出来ます
レンダーターゲットに対してシェーダーを付ければいいので

8.0/8.1に関してはできなさそうです
検索をかけてもStudio以降のページしか見つからなかったです

無理やりスプライトを変えるしかなさそう



以下grayscale shader

// <vertex>
attribute vec3 in_Position; // (x,y,z)
attribute vec4 in_Colour; // (r,g,b,a)
attribute vec2 in_TextureCoord; // (u,v)

varying vec2 v_vTexcoord;
varying vec4 v_vColour;

void main()
{
vec4 object_space_pos = vec4( in_Position.x, in_Position.y, in_Position.z, 1.0);
gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * object_space_pos;

v_vColour = in_Colour;
v_vTexcoord = in_TextureCoord;
}



// <fragment>
varying vec2 v_vTexcoord;
varying vec4 v_vColour;

void main() {

vec4 tex = texture2D(gm_BaseTexture, v_vTexcoord);
float avg = (tex.r + tex.g + tex.b) / 3.0;

gl_FragColor = v_vColour * vec4(avg, avg, avg, tex.a);



// こっちのほうが良い感じに見えるらしい
// vec4 tex = texture2D(gm_BaseTexture, v_vTexcoord);
// float l = dot(tex.rgb, vec3(0.3, 0.59, 0.11));

// gl_FragColor = v_vColour * vec4(l,l,l,tex.a);
}

5068名無しさん:2019/09/18(水) 13:13:30 ID:sJ4uw8Lc
>>5067
8.0なので出来ないみたいなのですね…地道に頑張っていこうと思います。ありがとうございます!
drawやblend等は情報量が少ないのが痛い…ググったりつべ等で調べてみても全然出てこなかったので質問させていただきました

5069名無しさん:2019/09/25(水) 22:10:22 ID:Pfs5GU/s
>>5066
これを使えば多分いける

Shader Extension 1.4 -
gmc.yoyogames.com/index.php?showtopic=492876

詳しい使い方はデモがあるのでそれを見て参考に
あとはサーフェスで上手く描画すればおk

モノクロ以外にもセピア調にも出来たりするから応用が利く
スプライトもこれを使って描画すればimage_blendからさらに広がる

5070名無しさん:2019/10/30(水) 21:34:10 ID:ejWO7y6k
ゆううつエンジンのtimelimitobjectをルームを跨いで使う方法はありますか?
global変数をつかえば出来るのでしょうか?

5071名無しさん:2019/10/31(木) 22:47:51 ID:UZ/4P.AE
>>5070
オブジェクトを開いてPersistentに✔をいれたらどうでしょうか?

5072名無しさん:2019/11/01(金) 20:05:22 ID:ejWO7y6k
>>5071
ありがとうございます!! 出来ました...が、
オブジェクトのpersistentだけだとフリーズしてしまいました。
global変数を用いることによってしっかりと動かすことが出来ました。

5073名無しさん:2019/11/01(金) 23:26:53 ID:UZ/4P.AE
>>5072
フリーズというのはルーム移動した際にゲームが止まってしまって動作しなくなるということですか?
global変数はどのように用いたのかよかったらお聞かせください。

5074名無しさん:2019/11/02(土) 22:04:14 ID:ejWO7y6k
>>5073
そういうことです。
global変数は、

if(global.timelimit=1){
timelimitobject.persistent = true}
if(global.timelimit=0){
timelimitobject.persistent = false} とし、

timelimitcollisionのcollisionイベントで1。
timelimitstopcollisinで0
適用させたいルームのcreation codeで1
その他のルームは0
といった風にしました

5075名無しさん:2020/01/12(日) 10:33:52 ID:g6M8Pi3o
すご

5076名無しさん:2020/03/10(火) 00:42:44 ID:wtgFHAMU
お久しぶりです

5077名無しさん:2020/03/10(火) 19:10:12 ID:dVuuQZ/A
おーい!誰も見てないの?

5078名無しさん:2020/05/24(日) 23:03:03 ID:B5I9KmJ6
自分と同じオブジェクトが複数ある状態で、自分を除いた自分と同じオブジェクトの距離をdistanceに代入したいのですが、
以下のように書いてしまうとdistance=0になってしまいます。助言いただけないでしょうか。

var near = instance_nearest(x,y,Stage02Object);
distance = point_distance(near.x,near.y,x,y);

5079名無しさん:2020/06/02(火) 12:06:42 ID:yPZq.BL.
instance_nearestでは自分を除外できないため自分との距離0が代入されてしまっています
自分を除いた最も近い同じオブジェクトを探索する機能を自前で作るしかありません


コード

distance = 100000;//最小距離を初期化 有り得ない大きい値を入れておく
near = noone;//一番近いオブジェクト(念のため)

//オブジェクト全てを総当たり
with(Stage02Object){
dis = point_distance(other.x,other.y,x,y);//元のオブジェクトとの距離
if(other.distance > dis && id != other.id){//それまでで最も近いかつ元のオブジェクト自身でない場合
other.distance = dis;//最小距離を更新
other.near = id;//一番近いオブジェクトのidに自身を代入
}
}

//distanceに目的の距離の値が代入されている


これで実現できると思います

5080名無しさん:2020/06/07(日) 10:51:57 ID:bp5PiC0g
もっと楽な方法として自身を場外に飛ばしてからinstance_nearestもありかと
var _x; _x = x;
var _y; _y = y;
x += 100000;
y += 100000;

var near = instance_nearest(_x, _y, Stage02Object);
x = _x;
y = _y;

5081名無しさん:2020/06/27(土) 21:52:01 ID:B5I9KmJ6
なるほど!他からの距離を全部確かめて最も短いものですね。
思いつきませんでした。勉強になります。(返信大幅に遅れました。)

5082名無しさん:2020/09/07(月) 22:04:22 ID:fYow.exM
質問です。横に動くリフトを作成しているのですが、乗るとキッド君がリフトに乗り続けられず、おちてしまいます・・・
どうしたらリフトに乗り続けられるでしょうか。

5083名無しさん:2020/09/07(月) 22:30:12 ID:fYow.exM
リフトにのったまま移動ができました。しかし、複雑な動きのルートがまだつくれません。(現状、障害物にあたって切り返すだけの状態)pathを組み込めませんか?

5084名無しさん:2020/09/08(火) 18:35:57 ID:z9xkpscM
プレイヤーが付いて行かないのはhspeed,vspeedが0になっているからです
こちらから合わせてあげればOKです

Spriteを普通のリフトと同じにします
parentをmovingPlatformにします

Createイベント:
path_start(path_name,1,1,false);//例

Stepイベント:
event_inherited();

End stepイベント:
hspeed = x - xprevious;
vspeed_ = y - yprevious;

if (vspeed_ < 0) {
yspeed = vspeed_;
vspeed = 0;
}
else if (vspeed_ > 0) {
vspeed = vspeed_;
yspeed = 0;
}
else{
vspeed = 0;
yspeed = 0;
}

5085名無しさん:2020/09/08(火) 18:44:17 ID:z9xkpscM
hspeed,vspeedが0とは限りませんでした
とにかく実際の移動速度と異なっているためです

5086名無しさん:2020/09/10(木) 22:41:38 ID:fYow.exM
pathを組み込んだ状態でリフトを動かしてもキッド君がおちなくなりました!ご回答ありがとうございました(*´ω`*)

5087名無しさん:2020/09/11(金) 22:07:41 ID:fYow.exM
テストプレイをしようとして難易度を選択するwarpに入ろうとすると、
___________________________________________
FATAL ERROR in
action number 1
of Collision Event with object player
for object roomChanger:

Unexisting room number: 745

といったエラーがでて動きません・・・


また、起動時に画面が真っ暗で、キッド君が画面の左上で動けない状態になったりもします・・・

原因がわかる方、教えてください(*- -)(*_ _)ペコリ

5088名無しさん:2020/09/12(土) 15:14:21 ID:z9xkpscM
前者は存在しないルームを移動先に指定しているということです
yuutu editionなら難易度選択のワープの先、つまりゲーム開始地点のルームはScriptsのSetGlobalOptionの中身 global.Game_Start_Room = ○○で指定されています

後者は詳しい原因は分かりませんが、真っ暗ということは最初に読み込まれるrInitの画面から抜け出せていない可能性はないでしょうか
左上ということは座標が(0,0)になっています。未定義の変数を指定するとエンジンの設定で0と扱われるのでその場合が非常に多いです

5089名無しさん:2020/09/13(日) 22:10:33 ID:fYow.exM
最初に入るマップ名を変えて例のスクリプトに入れたらなぜか両方直りました。ご回答ありがとうございました。

5090名無し:2020/09/16(水) 23:31:55 ID:R3ML97O.
耐久ボスを作っているのですが
16方向に均等にリンゴを飛ばす方法が分かりません。
どのようにしたらいいでしょうか?
因みにタイムラインなしで作成しています。

5091名無しさん:2020/09/17(木) 08:45:33 ID:hEKvfvHk
for文かrepeat文で角度をたしつつ16回まわしましょう

5092名無し:2020/09/17(木) 21:58:22 ID:R3ML97O.
返信ありがとうございます。
repeat文での角度調整の方法が分かりません。
repeat文のページの応用wikiで見てみたのですが、特に記載がないので詳しいことを教えては頂けないでしょうか。

5093名無しさん:2020/09/18(金) 08:34:03 ID:/hzgCb32
>>5092
それでしたら、
repeat(16){
a=instance_create(x,y,obj)
a.direction=i*(360/16)
a.speed=5
i+=1
}

で、いかがでしょうか
ループ回すごとに角度の値を変えています

5094名無しさん:2020/09/18(金) 22:58:57 ID:fYow.exM
本家アイワナ、I WANNA BE THE GUYにおいて、
最初のマップから1つ下のマップに進んだところにある仕掛け、ブロックが次々と瞬間移動を繰り返していくもので、
それ自体は作れたのですが、
実際にやってみるルートと見ていたルートが途中から異なっていて、
初見では落っこちてしまいそうになるワナの作り方が思いつかないので、
教えていただけると助かります。


(ちなみにタイムラインを使用してブロックをうごかしています。)

5095名無し:2020/09/19(土) 00:25:01 ID:R3ML97O.
ありがとうございます!
見ていて気になったことがあったので質問させていただきます。
a.direction=i*(360/16)
a.speed=5
のところなのですが。
a.direction=i*(360/16);
a.speed=5;
のように『;』はつけなくてよいのでしょうか。
変な質問だったらすみません、、、

5096名無しさん:2020/09/23(水) 22:39:29 ID:fYow.exM
>5094について、自己解決できました。

>5095番さんの質問についてですが、自分もアイワナを作っていて、「;」をつけなくても問題なく動いてるので
大丈夫だと思います。

5097名無し:2020/09/24(木) 22:25:03 ID:R3ML97O.
>5096番さんありがとうございます!!

5098名無しさん:2020/10/28(水) 20:41:19 ID:UUXFINC.
5090番の質問と似ていますが8方向に均等にリンゴを飛ばす方法が分からないです

repeat(16){a=instance_create(x,y,obj)a.direction=i*(360/16)a.speed=5i+=1}
これを使うと何故かバグりました
使用しているエンジンはゆううつエンジンです

5099名無しさん:2020/11/02(月) 20:35:29 ID:bp5PiC0g
>>5098
・どのようなバグが発生したのかを書いてください

レスから推測される事

1. そのコードは1行で書かれたものでしょうか?
もしその場合はa.speed=5i+=1のせいでおかしくなっている場合があります。
a.speed=5;i+=1としてみてください


2. objやiが正しく定義されていますか?
タイプミスなのでobjやiが0になっていないでしょうか
確認してみてください

コードが複雑になっていて分からない場合は
以下のコードを確認したい部分の前に書いてみてください。
if(!variable_local_exists("obj")) { show_message("local variable[obj] is not defined.") }
メッセージが出現したらobjが定義されていません。


3. objがオブジェクト名などになっていませんか?
なっている場合は変更してください。
意図しないオブジェクトが生成されたり、エラー文が出現します。

5100名無しさん:2020/11/03(火) 15:17:38 ID:UUXFINC.
>>5099 a.speed=5i+=1の所をa.speed=5;i+=1に変えてオブジェクト名を変えたら出来ました! ありがとうございます!

5101名無しさん:2020/11/25(水) 11:05:29 ID:lh/CIE2.


5102名無しさん:2020/12/08(火) 09:47:29 ID:JJjJww8w
みんな、耐久作ってるかい?

5103名無しさん:2020/12/10(木) 22:27:53 ID:JQ1Np3Po
データを選ぶときにボスを倒した後に出るアイテムのアイコンがなぜかプレイヤーのアイコンになるのですがどうすれば良いでしょうか

5104名無しさん:2020/12/11(金) 15:03:48 ID:a68mr7Bg
>>5103
存在しないオブジェクトの場合、デフォルトでキッドくんになる
今一度オブジェクト名の確認を

5105名無しさん:2020/12/11(金) 17:01:17 ID:JQ1Np3Po
>>5104アイテムのオブジェクト名をbossiconにしたらちゃんと表示されました ありがとうございます!

5106名無しさん:2020/12/26(土) 08:58:17 ID:FIh5NQIE
「gms2」で他ルームにあるインスタンスの情報を取得できる方法を探しています
gms2のバージョン: 2.3.1.542(IDE)

layer_set_target_room(room2)
var e = layer_get_all_elements("Instances")

for(var i = 0; i < array_length(e); i++)
{
if(layer_get_element_type(e[i]) == layerelementtype_instance)
{
var a = layer_instance_get_instance(e[i])
show_message("(" + string(a.x) + ", " + string(a.y) + ")")
}
}
layer_reset_target_room()

room1からroom2に配置されているインスタンスを取得して座標を表示させようとしていますが
a.xの部分でエラーが起きてしまいます

どうやら現在のルームがroom1なので、参照しようとすると
room1には変数aのインスタンスが無いからエラーがでてしまうようです

一応似たような手順でスプライトの場合であれば座標を持ってこれますが
対象のオブジェクトには少しばかりコードが書かれている為、できるのであればインスタンスのまま座標を持っていきたいです

どのようにすれば他ルームにあるインスタンスの座標の情報を持ってこれるでしょうか?
誰か情報をお持ちでしたらお願いします

5107名無しさん:2021/01/06(水) 02:33:05 ID:j8eoQjpc
規制かけすぎなんだよ

5108名無しさん:2021/01/06(水) 08:13:33 ID:j8eoQjpc
>>5106
global変数じゃダメ?

5109名無しさん:2021/01/07(木) 12:20:36 ID:FIh5NQIE
>>5108
出来なくはないです
ただ、もう少し状況を詳しく書くと検索対象のインスタンスは様々なルームに配置されています
そして1つのルームに複数個設置してある可能性もあります

そのような状況なので1つずつ座標を指定すると間違いなく入力ミス等が発生する為
このような事をしています

5110名無しさん:2021/01/07(木) 14:14:27 ID:rudh8ZSg
>>5109
それはglobal変数に座標保持しようとしてますか?
もしそれならインスタンスを保持ではやりづらい?
インスタンスの事いってるなら申し訳ない

5111名無しさん:2021/01/07(木) 21:11:49 ID:FIh5NQIE
>>5110
そもそもの話、インスタンスから座標を取得しようとするとエラーが起きるのでどうするかって話ですね
インスタンス自体は別のルームにあって現在のルームにないので、保持したところで結果は同じになるだろうという事です

(もう一度書くと、別のルームにあるインスタンスの座標を使って、現在いるルームであれこれするのが目的)

5112名無しさん:2021/01/08(金) 14:34:51 ID:kGXXKlOs
>>5111
別のルームにあるってことはcreate自体はされてるんですよね?
例えば、
global.obj=instance_create(略)
を予めした場合、他のルームであってもglobal.objから座標取得できますが認識間違ってます?

5113名無しさん:2021/01/09(土) 10:47:29 ID:FIh5NQIE
>>5112
どうやらこちらの勘違いのようです
申し訳ないです

自分が取得したい情報はインスタンスの座標ではなく、
特定のルームで特定のインスタンスが配置される座標だったようです
(layer_instance_get_instanceで対象のインスタンスのIDが取得できるので、それで勘違いをしてしまったようです)

もう少し書きますとルームエディターでオブジェクトを配置すると思いますが
その配置した座標のデータを取得しようとしています

それがスプライトの場合であれば(gms2ではスプライトをそのままルームに配置することができる)
layer_sprite_get_xによってその座標のデータを取得することができますが
インスタンスの場合ではlayer_sprite_get_xに相当する関数が見つからなく
他に代替できるような方法がないのか?といった感じです

ルームによっては全く遷移していない可能性があるため
対象のインスタンスが1度も生成されていない場合もあります

5114名無しさん:2021/03/23(火) 09:59:57 ID:nZpU4Om6
質問どうぞ

5115名無しさん:2021/04/20(火) 13:07:10 ID:rvV.vJJg
質問どうぞ

5116名無しさん:2021/05/08(土) 10:34:11 ID:3kB8ES5k
Game Overになった時はBGMがそのまま流れるけどリスタートしたらBGMが最初から流れるのですがどうすればいいでしょうか
ゆううつエンジンです

5117名無しさん:2021/05/10(月) 10:46:09 ID:S45qufug
>>5116
このスレで「BGM」で検索してみるといいよ

5118名無しさん:2021/05/10(月) 17:07:02 ID:3kB8ES5k
>>5117検索したら見つかりました ありがとうございます!


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板