/** * @file Script.h * @brief 脚本组件创建、销毁与更新接口。 */ #pragma once #include "ComponentsCommon.h" namespace XEngine::script { /** * @brief 脚本组件初始化信息。 */ struct init_info { detail::script_creator script_creator; }; /** * @brief 为实体创建脚本组件。 * @param info 脚本初始化信息。 * @param entity 目标实体。 * @return 创建后的脚本组件句柄。 */ component create(init_info info, game_entity::entity entity); /** * @brief 移除脚本组件。 * @param c 脚本组件句柄。 */ void remove(component c); /** * @brief 更新所有脚本组件。 * @param dt 帧时间间隔(秒)。 */ void update(float dt); }