皆さんありがとうございます。
> そのままで動いた 空のプロジェクトで試したら実行できました! > objectBでwith無しでabc();で動く これもできました! with(objectA)要らないんですね! あと変数abcに入れた関数はscript_execute(abc)じゃなくて直接abc();で動くんですね! では、なぜ自分のプロジェクトでは動かないのか。 objectBを作る部分を関数にしているとエラーになることが分かりました。 質問を簡潔にしようと思って、関数内に書いている事実を省略していました。 実際は下記のようにして、player操作でhoge()を実行する形にしていました。 objectAのCreateイベント
function hello() { show_message("hello"); } function hoge() { var _o = instance_create_depth(0, 0, 0, objectB); _o.abc= hello; }
こうするとhoge()を実行するとエラーになります。 エラー:script_execute argument 1 unable to convert to integer, result is nan
インスタンス関数のスコープについてちゃんと理解できてないのかもしれません。 試しに、こうやってみました。 objectAのCreateイベント
function hello() { show_message("hello"); } scr1 = hello; // ここで変数に入れる function hoge() { var _o = instance_create_depth(0, 0, 0, objectB); _o.abc= scr1; }
こうしたら動きました。 まだ勉強が必要なようです。
不適切なコンテンツとして通報するには以下の「送信」ボタンを押して下さい。 管理チームへ匿名通報が送信されます。あなたが誰であるかを管理チームに特定されることはありません。
どのように不適切か説明したい場合、メッセージをご記入下さい。空白のままでも通報は送信されます。
通報履歴 で、あなたの通報と対応時のメッセージを確認できます。
マニュアル(ver2~2.2.x) マニュアル(ver2.3~) YoYoGames YoYoGames 公式コミュニティ GM関連のYoutubeチャンネル集 解説・資料サイト集(日本語) 解説・資料サイト集(英語)
皆さんありがとうございます。
> そのままで動いた
空のプロジェクトで試したら実行できました!
> objectBでwith無しでabc();で動く
これもできました! with(objectA)要らないんですね!
あと変数abcに入れた関数はscript_execute(abc)じゃなくて直接abc();で動くんですね!
では、なぜ自分のプロジェクトでは動かないのか。
objectBを作る部分を関数にしているとエラーになることが分かりました。
質問を簡潔にしようと思って、関数内に書いている事実を省略していました。
実際は下記のようにして、player操作でhoge()を実行する形にしていました。
objectAのCreateイベント
こうするとhoge()を実行するとエラーになります。
エラー:script_execute argument 1 unable to convert to integer, result is nan
インスタンス関数のスコープについてちゃんと理解できてないのかもしれません。
試しに、こうやってみました。
objectAのCreateイベント
こうしたら動きました。
まだ勉強が必要なようです。