Data/Actors/Site Operation (Explicit Rotation)

## Site Operation (Explicit Rotation)

### Description

SOp used to tilt and turn actors to get them to face the desired direction/orientation

### Hint

* May need a lot of fine tuning to get just right
* Add this after the Site Operation (Attachment) in the **Hosting: Host Site Operations - Operations** field of actors

## Example Usage

### SOp180

SOp used to reverse the direction the actor faces relative to the direction it is currently facing without altering the vertical axis of the model

#### URL

As SOp180 is already in the editor, no URL is needed

### Zerg Building Facing

SOp used to adjust the direction the Spire Build actor faces relative to the global map grid

#### URL

As Zerg Building Facing is already in the editor, no URL is needed

## Fields Description

### Actor - Aliases

* Aliases that refer to the actor in Events or in Hosting as a subject

### Actor - Filter

* Determines what players can see the actor depending on their diplomatic status eg. Nuke Target/Indicator
* Pointless as this actor has no visuals

### Actor - Flags

* **Add To External Finder:** (Unknown)
* **Not Saved:** (Unknown) used by all tempory Model actors
* **Scale To Host:** overides any scaling the actor has and sets it to the host Unit actor
* **Suppress Creation Errors:** (Unknown)

### Actor - Fog Visibility

* Determines how the actor appears under the fog of war
* Not sure how it interacts with the UI - Fog Visibility under the Units data type
* Pointless as this actor has no visuals

### Actor - Forward

* Rotates the actor around the up axis to face a specific direction relative to the host or global map grid
* Negative y is forwards
* Negative x is right
* Negative z is down
* The largest vector number is always scaled to 1 and all smaller vector numbers are scaled down relative to it
* The forward vector is always followed by the actor while the up vector is a best fit around the axis of the forward vector

### Actor - Hold Position

* If enabled the actor with this SOp is locked in the position relative to the global map grid but turns to face the desired direction
* Useful for stationary abilities or structures that have parts which need to face a moving target

### Actor - Hold Rotation

* If enabled the actor with this SOp is locked with it's rotation facing the direction of creation relative to the global map grid

### Actor - Is Local

* When disabled makes the rotation relative to the global map grid
* When enabled makes the rotation relative to the rotation on the host

### Actor - Sharing

* Determines to what degree the same actor is shared by a unit if there are multiple functions refering to it
* **Always:** means the actor is always shared
* **None:** means the actor is never shared
* **Per Effect Tree:** means that effects within an effect tree share the actor but different effect trees can't

### Actor - Up

* Tilts the vertical axis of the model so the top of the model points parallel with the desired direction
* Negative y is forwards
* Negative x is right
* Negative z is down
* The largest vector number is always scaled to 1 and all smaller vector numbers are scaled down relative to it
* The forward vector is always followed by the actor while the up vector is a best fit around the axis of the forward vector

### Event - Events+

* Series of minitriggers that determine the motions and visual effects of the model
* Covered in detail in the Events section of the wiki
* Apparently have no effect on SOps

### Event - Macros

* The Event Macro actors used to supplement the events

### Hosting - Host Supporter - Actor

* **Actor Find:** (Not Sure) means the actor has to be found using the scope
* **Creation:** (Not Sure) is the actor that creates this actor is given priority for hosting if there is a choice of several
* **Implicit:** is the default

### Hosting - Host Supporter - Effect

* The effect whose scope is used in combination with the Hosting - Host Supporter - Scope field to determine valid subjects

### Hosting - Host Supporter - Fail If No Host

* Causes the model to be automatically destroyed if no host

### Hosting - Host Supporter - Scope

* **Implicit:** is the default but gives an error message if using the scope of an effect
* **Scope Caster:** (Unsure) Uses the scope of the caster of the effect to choose the caster unit as the subject
* **Scope Effect:** (Unknown)
* **Scope Missile:** (Unknown)
* **Scope Outer:** (Unknown)
* **Scope Source:** (Unknown) Uses the scope of the source of the effect to choose the source unit as the subject
* **Scope Target:** (Unknown) Uses the scope of the target of the effect to choose the target unit as the subject

### Hosting - Host Supporter - Subject

* Actor, alias or reference refered to by the **::Supporter** system reference for Events

### Properties - Accepted Property Transfers

* When this actor is in the **Hosting: Host - Subject** field of another actor, this field determines what properties are able to be inherited from this actor
* As this actor has no visuals this field is pointless
* **Cast Shadows:** allows the attached actor to cast shadows
* **Cloak Effect:** allows the attached actor to show the cloaking bluish effect
* **Decal:** allows the attached actor to show the host unit decal
* **Local Tint Color:** (Unknown)
* **Model Scale:** makes the actor inherit the scale for the host model
* **Opacity:** spreads the opacity set by the Set Opacity event to attached actors
* **Physics State:** (Unknown)
* **Scale:** transfers the scale of the host actor to the attached actors
* **Team Color:** makes the attached actor show the team colour if it can
* **Time Scale:** means the animations of the attached actor are the same as the host actors timescale
* **Tint Color:** (Unknown)
* **Visibility:** allows the attached actor to share the host actor's Actor - Fog Visibility
* **Warp Group:** (Unknown)

### Properties - Accepted Transfers

* As this actor has no visuals this field is pointless
* **Animation Properties:** (Unknown)
* **Animator:** (Unknown)
* **Fog Of War Color:** (Unknown)
* **Fog Of War Shader:** (Unknown)
* **Model:** (Unknown)
* **Position:** (Unknown)
* **Rotation:** (Unknown)
* **Status:** (Unknown)
* **Textures:** (Unknown)

### Properties - Inherit Type

* As this actor has no visuals this field is pointless
* Determines how often the host properties are inherited
* **Continuous:** means the properties are continuously inherited from the host
* **None:** means properties are not inherited from the host
* **Once:** means properties are only inherited on actor creation

### Properties - Inherited Properties

* This field determines what properties are able to be inherited from the actor in the Hosting - Host - Subject or Hosting - Host For Properties - Subject field
* **Cast Shadows:** allows the attached actor to cast shadows
* **Cloak Effect:** allows the attached actor to show the cloaking bluish effect
* **Decal:** allows the attached actor to show the host unit decal
* **Local Tint Color:** (Unknown)
* **Model Scale:** makes the actor inherit the scale for the host model
* **Opacity:** spreads the opacity set by the Set Opacity event to attached actors
* **Physics State:** (Unknown)
* **Scale:** transfers the scale of the host actor to the attached actors
* **Team Color:** makes the attached actor show the team colour if it can
* **Time Scale:** means the animations of the attached actor are the same as the host actors timescale
* **Tint Color:** (Unknown)
* **Visibility:** allows the attached actor to share the host actor's Actor - Fog Visibility
* **Warp Group:** (Unknown)
* As this actor has no visuals this field is pointless

## Related

* Actors
* Site Operation (Attachment)