请告诉我如何使用以下图像中的“出现时执行状态”。
我原本以为当对象出现时,可以执行除初始状态以外的其他状态,但无论选择哪个状态,都会从初始状态开始。
您好,
感谢您的咨询。
此功能用于设置在场景内直接放置对象时执行的状态。
当选择“初始执行状态”时,将执行在.vs中选择的初始执行状态。
(您可以在.vs中右键点击状态来设置初始执行状态)
如果选择其他状态,则将执行所选状态。
通过.vs的执行动作“生成对象”等生成的对象,其生成时的状态将为该动作中所选的状态。
以上是该功能的概要,但我们在创建项目并检查“出现时执行状态”时,发现其按设置正常执行,未能重现您报告的情况。
如果场景内直接放置的对象状态没有变化,请您麻烦分享相关项目文件。
敬请您协助确认,非常感谢。
AGM_member_T 您好,
感谢您的回复。
关于该问题,我在创建共享项目时已经弄清楚了问题的发生方式。
似乎是在场景切换时会出现该现象。
我已附上文件,请您确认。
谢谢!
testproject_20251104.zip (1.1 MB)
(左右移动角色,靠近物体时,画面上会显示消息。)
■ 问题发生模式
游戏场景0 → 过渡 → 游戏场景1(在此处设置出现时的执行状态)
■ 问题未发生模式
游戏场景1(在此处设置出现时的执行状态)
您好,
感谢您分享案例详情和项目信息。
我已确认,
后续还请多多关照。
您好,
我们已确认您分享的项目,在场景切换后“出现时执行状态”未能正常工作。我们怀疑这是一个bug,将向开发团队进行确认。
作为临时解决方案,烦请您考虑以下应对措施:
extends Node2D
func _ready() -> void:
AGMakerManager.game_scene_changed.connect(_on_after_change_scene)
pass
func _on_after_change_scene(current_scene: GameScene):
if current_scene.name == "GameScene":
$"../VariableSettings".set_value("SceneIndex", 1)
pass
非常抱歉给您带来不便,恳请您确认以上内容。
感谢您的报告,后续还请多多关照。
AGM_member_T 您好,
感谢您的确认以及替代方案的建议。目前我们正按照每个必要的执行状态分别创建对象,因此暂时将按此方式进行推进。不过,考虑到未来可能会需要此功能,恳请您予以支持和处理。
此外,除了此次事件外,还有一些场景切换后的行为表现异常,也希望能一并确认一下(目前尚未详细验证具体发生条件,但推测可能还存在其他类似问题):
烦请协助确认,非常感谢!
感谢您的报告。
我们也将继续确认此事。
敬请继续支持。
AGM_member_T 您好,
感谢您的联系。关于上述问题,我发现当存在场景切换和不存在场景切换时,行为有所不同,因此请您确认以下步骤:
另外,我正在尝试通过以下步骤将 ImageGauge 与 HP 数值显示结合使用,但如果有更简单的方法,请告知。
■ 步骤
■ 结果
testproject_20251111.zip (1.1 MB)
让您久等了,我们已在今日发布的1.1.6版本中进行了修复。
Moonling 您好,
感谢您的回复。
我已确认 1.1.6 版本,确认“初始执行状态”可以被更改。
不过,不知是否与上述更改有关,BaseSettings 中的“消失后复活条件:场景切换”似乎未能正常工作,烦请您确认一下。
■ 问题现象:
① 在场景1中放置以下对象
※ 设置 BaseSettings 中的“消失后复活条件:场景切换”
・Enemy1 初始执行状态:action1
・Enemy2 初始执行状态:action2
② 在场景1中使上述对象消失后,切换至场景2
③ 从场景2切换回场景1
④ 场景1中各对象的状态如下:
・Enemy1 AnimationPlayer 的 Reset 被播放(状态未切换至 action1)
・Enemy2 AnimationPlayer 的 Reset 被播放(状态未切换至 action2)
※ 如果 AnimationPlayer 中不存在 Reset,则 Enemy1 和 Enemy2 均会执行 action1。
isa先生:
您好,感谢您的联系。
目前我在手头的项目中无法重现该问题,非常抱歉。为了进一步确认详情,能否请您共享相关的项目?给您添麻烦了,敬请确认,非常感谢!
AGM_member_T 您好,
您好,感谢您的关照。
我已将项目文件附上,请您查收。
testproject_2025-11-17.zip|附件 (1.1 MB)
如果我的设置方法有误,请随时告知。
■ 操作步骤:
■ 结果:
敬请指教,谢谢!
非常抱歉回复晚了。
关于这里的“初始状态”,顾名思义,它指的是“对象出现时设定的状态”。
而“对象复活”则是从“对象消失时的状态”开始恢复的。
本次的情况就是由这个原因导致的。
如果您希望从“初始状态”开始恢复,建议设置一个能返回到初始状态的链接,或者使用“初始化对象”操作。