API:Sandbox/ModAPI/IMyEntity

From Space Engineers Wiki
Revision as of 07:26, 28 September 2014 by GeneralWrex (talk | contribs) (Examples)
Jump to: navigation, search

Interface

public interface IMyEntity
Member of ModAPI
Raw file API:Sandbox/ModAPI/IMyEntity/raw


Methods
void Close()
bool DoOverlapSphereTest(System.Single, VRageMath.Vector3)
void GetChildren(System.Collections.Generic.List`1[Sandbox.ModAPI.IMyEntity], System.Func`2[Sandbox.ModAPI.IMyEntity,System.Boolean])
Vector3 GetDiffuseColor()
string GetFriendlyName()
Vector3] GetIntersectionWithLineAndBoundingSphere(VRageMath.Line&, System.Single)
bool GetIntersectionWithSphere(VRageMath.BoundingSphere&)
MyObjectBuilder_EntityBase GetObjectBuilder(System.Boolean)
Vector3 GetPosition()
IMyEntity GetTopMostParent(System.Type)
void GetTrianglesIntersectingSphere(VRageMath.BoundingSphere&, System.Nullable`1[VRageMath.Vector3], System.Int32)
Matrix GetViewMatrix()
bool IsSelectable()
bool IsVisible()
void MarkForClose()
void SetLocalMatrix(VRageMath.Matrix, System.Object)
void SetPosition(VRageMath.Vector3)
void SetWorldMatrix(VRageMath.Matrix, System.Object)




Usage

Examples

using Sandbox.Common;
using Sandbox.Common.Components;
using Sandbox.Common.ObjectBuilders;
using System;
using System.Collections.Generic;
using VRageMath;

namespace Sandbox.ModAPI
{
  public interface IMyEntity
  {
    long EntityId { get; set; }

    string Name { get; }

    string DisplayName { get; set; }

    bool MarkedForClose { get; }

    bool Closed { get; }

    MyGameLogicComponent GameLogic { get; set; }

    MyEntityUpdateEnum NeedsUpdate { get; set; }

    IMyEntity Parent { get; }

    bool NearFlag { get; set; }

    bool CastShadows { get; set; }

    bool FastCastShadowResolve { get; set; }

    bool NeedsResolveCastShadow { get; set; }

    float MaxGlassDistSq { get; }

    bool NeedsDraw { get; set; }

    bool NeedsDrawFromParent { get; set; }

    bool Transparent { get; set; }

    bool ShadowBoxLod { get; set; }

    bool SkipIfTooSmall { get; set; }

    float? Scale { get; set; }

    bool Visible { get; set; }

    bool Save { get; set; }

    MyPersistentEntityFlags2 PersistentFlags { get; set; }

    bool InScene { get; }

    bool InvalidateOnMove { get; }

    bool IsCCDForProjectiles { get; }

    bool IsVolumetric { get; }

    BoundingBox LocalAABB { get; set; }

    BoundingBox LocalAABBHr { get; }

    Matrix LocalMatrix { get; set; }

    BoundingSphere LocalVolume { get; set; }

    Vector3 LocalVolumeOffset { get; set; }

    Vector3 LocationForHudMarker { get; }

    BoundingBox WorldAABB { get; }

    BoundingBox WorldAABBHr { get; }

    Matrix WorldMatrix { get; set; }

    Matrix WorldMatrixInvScaled { get; }

    Matrix WorldMatrixNormalizedInv { get; }

    BoundingSphere WorldVolume { get; }

    BoundingSphere WorldVolumeHr { get; }

    event Action<IMyEntity> OnClose;

    event Action<IMyEntity> OnClosing;

    event Action<IMyEntity> OnMarkForClose;

    event Action<IMyEntity> OnPhysicsChanged;

    event Action<IMyEntity> OnPositionChanged;

    string GetFriendlyName();

    void MarkForClose();

    void Close();

    IMyEntity GetTopMostParent(Type type = null);

    Vector3 GetDiffuseColor();

    float GetDistanceBetweenCameraAndBoundingSphere();

    float GetDistanceBetweenCameraAndPosition();

    float GetLargestDistanceBetweenCameraAndBoundingSphere();

    float GetSmallestDistanceBetweenCameraAndBoundingSphere();

    Vector3? GetIntersectionWithLineAndBoundingSphere(ref Line line, float boundingSphereRadiusMultiplier);

    bool GetIntersectionWithSphere(ref BoundingSphere sphere);

    void GetTrianglesIntersectingSphere(ref BoundingSphere sphere, Vector3? referenceNormalVector, float? maxAngle, List<MyTriangle_Vertex_Normals> retTriangles, int maxNeighbourTriangles);

    bool DoOverlapSphereTest(float sphereRadius, Vector3 spherePos);

    MyObjectBuilder_EntityBase GetObjectBuilder(bool copy = false);

    bool IsSelectable();

    bool IsSelectableAsChild();

    bool IsSelectableParentOnly();

    bool IsVisible();

    Matrix GetViewMatrix();

    Matrix GetWorldMatrixForDraw();

    Matrix GetWorldMatrixNormalizedInv();

    void SetLocalMatrix(Matrix localMatrix, object source = null);

    void SetWorldMatrix(Matrix worldMatrix, object source = null);

    Vector3 GetPosition();

    void SetPosition(Vector3 pos);

    void GetChildren(List<IMyEntity> children, Func<IMyEntity, bool> collect = null);
  }
}

Notes