event_perform_async

此函数用于执行GameMaker中提供的任一异步事件。 提供异步事件常量(如下表所示)和 DS 映射,该映射将在async_load变量中的被调用的异步事件中可用。

异步事件类型常量
常量描述
ev_async_web_image_loadImage Loaded event
ev_async_webHTTP event
ev_async_dialogDialog event
ev_async_web_iapIn-App Purchase event
ev_async_web_cloudCloud event
ev_async_web_networkingNetworking event
ev_async_web_steamSteam event
ev_async_socialSocial event
ev_async_push_notificationPush Notification event
ev_async_save_loadSave/Load Event
ev_async_audio_recordingAudio Recording event
ev_async_audio_playbackAudio Playback event
ev_async_audio_playback_endedAudio Playback Ended event
ev_async_system_eventSystem event

可以使用event_perform()调用异步事件。

请注意,在第二个参数中指定的DS map不必手动销毁,因为它将在执行异步事件后由函数自动销毁。

 

语法:

event_perform_async(type, ds_map);

参数类型描述
type异步事件类型常量要执行的事件类型(请参阅上表)。
ds_mapDS MapDS 映射在被调用事件中使用 asasync_load

 

返回:

N/A

例子:

var _map = ds_map_create();

_map[? "id"] = "custom_async_event";
_map[? "result"] = true;
_map[? "data"] = { a: 13, b: 16 };

event_perform_async(ev_async_social, _map);

上面的代码创建了一个DS map,并用要在异步事件中读取的自定义条目填充它。然后,它执行异步社交事件,并将新创建的映射作为被调用事件的async_load传入。