using Decal.Interop.D3DService; namespace Decal.Adapter.Wrappers; public class D3DObj : GenericDisposableWrapper { /// /// Colors /// public int Color { get { return base.Wrapped.color; } set { base.Wrapped.color = value; } } public int Color2 { get { return base.Wrapped.color2; } set { base.Wrapped.color2 = value; } } /// /// Autoscale /// public bool Autoscale { get { return base.Wrapped.autoscale; } set { base.Wrapped.autoscale = value; } } /// /// DrawBackface /// public bool DrawBackface { get { return base.Wrapped.drawBackface; } set { base.Wrapped.drawBackface = value; } } /// /// HBounce /// public float HBounce { get { return base.Wrapped.hBounce; } set { base.Wrapped.hBounce = value; } } /// /// PBounce /// public float PBounce { get { return base.Wrapped.pBounce; } set { base.Wrapped.pBounce = value; } } /// /// PFade /// public float PFade { get { return base.Wrapped.pFade; } set { base.Wrapped.pFade = value; } } /// /// POrbit /// public float POrbit { get { return base.Wrapped.pOrbit; } set { base.Wrapped.pOrbit = value; } } /// /// PSpin /// public float PSpin { get { return base.Wrapped.pSpin; } set { base.Wrapped.pSpin = value; } } /// /// ROrbit /// public float ROrbit { get { return base.Wrapped.rOrbit; } set { base.Wrapped.rOrbit = value; } } /// /// ScaleX /// public float ScaleX { get { return base.Wrapped.scaleX; } set { base.Wrapped.scaleX = value; } } /// /// ScaleY /// public float ScaleY { get { return base.Wrapped.scaleY; } set { base.Wrapped.scaleY = value; } } /// /// ScaleZ /// public float ScaleZ { get { return base.Wrapped.scaleZ; } set { base.Wrapped.scaleZ = value; } } /// /// Visible /// public bool Visible { get { return base.Wrapped.visible; } set { base.Wrapped.visible = value; } } /// /// AnimationPhaseOffset /// public float AnimationPhaseOffset { get { return base.Wrapped.AnimationPhaseOffset; } set { base.Wrapped.AnimationPhaseOffset = value; } } public D3DObj(CD3DObj obj) : base(obj) { } protected override void Dispose(bool userCalled) { base.Dispose(userCalled); } public void Scale(float factor) { base.Wrapped.SetScale(factor); } /// /// Orients to the Camera /// /// Vertical Tilt public void OrientToCamera(bool verticalTilt) { base.Wrapped.OrientToCamera(verticalTilt); } /// /// Orients to the specified Coordinates /// /// Latitude /// Longitude /// Altitude /// Vertical Tilt public void OrientToCoords(float lat, float lng, float alt, bool verticalTilt) { base.Wrapped.OrientToCoords(lat, lng, alt, verticalTilt); } /// /// Orients to the specified Object /// /// Object ID /// Relative Position /// Vertical Tilt public void OrientToObject(int guid, float fractHeight, bool verticalTilt) { base.Wrapped.OrientToObject(guid, fractHeight, verticalTilt); } /// /// Orients to the Current Player /// /// Vertical Tilt public void OrientToPlayer(bool verticalTilt) { base.Wrapped.OrientToPlayer(verticalTilt); } /// /// Anchors to the specified Coordinates /// /// Latitude /// Longitude /// Altitude public void Anchor(float lat, float lng, float alt) { base.Wrapped.AnchorToCoords(lat, lng, alt); } /// /// Anchors to the specified Object /// /// Object ID /// Height /// x offset /// y offset /// z offset public void Anchor(int id, float height, float dx, float dy, float dz) { base.Wrapped.AnchorToObject(id, height, dx, dy, dz); } /// /// Displays 2D text using the Arial font /// /// Text to display public void SetText(string text) { SetText(D3DTextType.Text2D, text, "Arial", 0); } /// /// Displays 2D text using the specified font /// /// Text to display /// Font to use public void SetText(string text, string fontName) { SetText(D3DTextType.Text2D, text, fontName, 0); } /// /// Displays 2D text using the specified font and options /// /// Text to display /// Font to use /// Options public void SetText(string text, string fontName, int options) { SetText(D3DTextType.Text2D, text, fontName, options); } /// /// Displays text /// /// Type of text (2D/3D) /// Text to display /// Font to use /// Options public void SetText(D3DTextType type, string text, string fontName, int options) { switch (type) { case D3DTextType.Text2D: base.Wrapped.Set2DText(text, fontName, options); break; case D3DTextType.Text3D: base.Wrapped.Set3DText(text, fontName, options); break; } } /// /// Sets the icon to the portal file id /// /// portal file id public void SetIcon(int id) { base.Wrapped.SetIcon(id); } /// /// Sets the icon from the specified file /// /// file containing the icon public void SetIcon(string fileName) { base.Wrapped.SetIconFromFile(fileName); } /// /// Sets the icon from a resource dll /// /// module handle of the dll /// resource id public void SetIcon(int module, int res) { base.Wrapped.SetIconFromResource(module, res); } /// /// Sets the shape to that specified /// /// Shape to use public void SetShape(D3DShape shape) { base.Wrapped.SetShape((eShape)shape); } /// /// Sets the shape to that contained in the file /// /// File containing the shape definition public void SetShape(string fileName) { base.Wrapped.SetShapeFromFile(fileName); } /// /// Sets the shape from a resource dll /// /// module handle of the dll /// resource id public void SetShape(int module, int res) { base.Wrapped.SetShapeFromResource(module, res); } }