示例#1
0
 private static extern Actor ICall_Component_GetOwner(Component self);
示例#2
0
 private static extern void ICall_Component_Release(Component self);
示例#3
0
 private static extern bool ICall_Component_Active(Component self);
示例#4
0
 private static extern Component ICall_Actor_RemoveComponent(Actor self, Component comp);
示例#5
0
        /// <summary>
        /// 通过组件的字符串名称来获取当前Actor的组件实例
        /// </summary>
        /// <param name="sName">组件的字符串名称</param>
        /// <returns>返回组件的实例,如果组件不存在返回NULL</returns>
        public Component GetComponent(String sName)
        {
            Component com = ICall_Actor_GetComponentByName(this, sName);

            return(com);
        }
示例#6
0
        // - private function
        private void DeAssignComponent(Component component)
        {
            System.Type comType = component.GetType();
            if (AnimationComponent.thisType == comType)
            {
                m_animationComponent = null;
            }
            else if (MeshRenderComponent.thisType == comType)
            {
                m_meshRenderComponent = null;
            }
            else if (SkinnedMeshRenderComponent.thisType == comType)
            {
                m_skinnedMeshRenderComponent = null;
            }
            else if (ProjectorRenderComponent.thisType == comType)
            {
                m_projectorRenderComponent = null;
            }
            else if (SkeletonComponent.thisType == comType)
            {
                m_skeletonComponent = null;
            }
            else if (ParticleRenderComponent.thisType == comType)
            {
                m_particleRenderComponent = null;
            }
            else if (ScriptComponent.thisType == comType)
            {
                m_scriptComponent = null;
            }
            else if (CameraComponent.thisType == comType)
            {
                m_cameraComponent = null;
            }
            else if (SoundSource.thisType == comType)
            {
                m_SoundSource = null;
            }
            else if (SpriteRenderComponent.thisType == comType)
            {
                m_spriteRenderComponent = null;
            }
#if FMOD_IMPLEMENT
            else if (SoundReverbZone.thisType == comType)
            {
                m_SoundReverb = null;
            }
            else if (SoundHighPassFilterComponent.thisType == comType)
            {
                m_HighPassFilter = null;
            }
            else if (SoundLowPassFilterComponent.thisType == comType)
            {
                m_LowPassFilter = null;
            }
            else if (SoundChorusFilterComponent.thisType == comType)
            {
                m_ChorusFilter = null;
            }
            else if (SoundDistortionFilterComponent.thisType == comType)
            {
                m_DistortionFilter = null;
            }
            else if (SoundEchoFilterComponent.thisType == comType)
            {
                m_EchoFilter = null;
            }
            else if (SoundReverbFilterComponent.thisType == comType)
            {
                m_ReverbFilter = null;
            }
#endif
        }
示例#7
0
        // - private function
        private void AssignComponent(Component component)
        {
            System.Type comType = component.GetType();
            if (AnimationComponent.thisType == comType)
            {
                m_animationComponent = component as AnimationComponent;
            }
            else if (MeshRenderComponent.thisType == comType)
            {
                m_meshRenderComponent = component as MeshRenderComponent;
            }
            else if (SkinnedMeshRenderComponent.thisType == comType)
            {
                m_skinnedMeshRenderComponent = component as SkinnedMeshRenderComponent;
            }
            else if (ProjectorRenderComponent.thisType == comType)
            {
                m_projectorRenderComponent = component as ProjectorRenderComponent;
                m_projectorRenderComponent.EnableProjector = true;
                m_projectorRenderComponent.SetMaterialID(0, "sys:projector.material", false);
            }
            else if (SkeletonComponent.thisType == comType)
            {
                m_skeletonComponent = component as SkeletonComponent;
            }
            else if (ParticleRenderComponent.thisType == comType)
            {
                m_particleRenderComponent = component as ParticleRenderComponent;
            }
            else if (SpriteRenderComponent.thisType == comType)
            {
                m_spriteRenderComponent = component as SpriteRenderComponent;
            }
            else if (ScriptComponent.thisType == comType)
            {
                m_scriptComponent = component as ScriptComponent;
            }
            else if (CameraComponent.thisType == comType)
            {
                m_cameraComponent = component as CameraComponent;
            }
            else if (SoundSource.thisType == comType)
            {
                m_SoundSource = component as SoundSource;
            }
#if FMOD_IMPLEMENT
            else if (SoundReverbZone.thisType == comType)
            {
                m_SoundReverb = component as SoundReverbZone;
            }
            else if (SoundHighPassFilterComponent.thisType == comType)
            {
                m_HighPassFilter = component as SoundHighPassFilterComponent;
            }
            else if (SoundLowPassFilterComponent.thisType == comType)
            {
                m_LowPassFilter = component as SoundLowPassFilterComponent;
            }
            else if (SoundChorusFilterComponent.thisType == comType)
            {
                m_ChorusFilter = component as SoundChorusFilterComponent;
            }
            else if (SoundDistortionFilterComponent.thisType == comType)
            {
                m_DistortionFilter = component as SoundDistortionFilterComponent;
            }
            else if (SoundEchoFilterComponent.thisType == comType)
            {
                m_EchoFilter = component as SoundEchoFilterComponent;
            }
            else if (SoundReverbFilterComponent.thisType == comType)
            {
                m_ReverbFilter = component as SoundReverbFilterComponent;
            }
#endif
        }