命令百科

effect · set_entity_rotation

Definition

  • Supported scope:any
  • Supported target:any

Description

sets the rotation of existing entity
set_entity_rotation = {
  id = 123 # id of entity 
  rotation = 0.23 # angle in radians 
}

实战 · 配合 · 坑

实战内容由 AI 生成,并已对照 vanilla 命令词表校验 —— 请当作起点而非权威依据。上方的定义节才是游戏自带文档原文。

实战用法

set_entity_rotation 常用于动态视觉演出场景,例如让地图上的自定义实体(路障、炮台、装饰物等)在特定事件触发后转向特定角度,或模拟炮管旋转、指针偏转等动画效果。配合事件或决议触发,可以在不重新创建实体的情况下改变已有实体的朝向。

# 在某个事件 option 中,将已创建的实体旋转 90 度(约 1.5708 弧度)
effect = {
    set_entity_rotation = {
        id = 42
        rotation = 1.5708
    }
}

配合关系

  • [create_entity](/wiki/effect/create_entity):先用 create_entity 创建实体并记录其 id,之后才能用 set_entity_rotation 通过同一 id 对其进行旋转操作,两者是典型的"创建-变换"搭档。
  • [set_entity_position](/wiki/effect/set_entity_position):在调整实体位置的同时往往也需要调整朝向,两个命令通常在同一执行块中先后出现,共同完成实体的空间变换。
  • [set_entity_animation](/wiki/effect/set_entity_animation):旋转只改变静态角度,若需要在旋转的同时播放动画(如炮塔转动后开火),需要配合此命令触发对应的动画状态。
  • [destroy_entity](/wiki/effect/destroy_entity):演出结束后通常需要清除实体,销毁前可先用 set_entity_rotation 做最终姿态还原,保证下次创建时状态一致。

常见坑

  1. id 必须指向已存在的实体set_entity_rotation 只能操作已通过 create_entity 创建且尚未被 destroy_entity 销毁的实体。若 id 对应的实体不存在,命令会静默失败,不会报错,导致旋转效果毫无反应,调试时容易忽略。
  2. 角度单位是弧度而非角度:新手常误用角度值(如填入 90 表示 90°),但游戏实际需要弧度值(90° 应填约 1.5708)。填错单位会造成实体旋转到完全意料之外的方向。