Base MBEmitterType's GUI handler class
Exemplo n.º 1
0
    public void Initialize()
    {
        mObjects.Clear();
        mEmitters.Clear();
        mIndent.Clear();
        ClearHandlers();
        mSectionToggleState.Clear();
        mEmitterTypeHandler = null;

        if (SelectedParticleSystem) {
            SelectedParticleSystem.mbDrawGizmos = mGizmos;
            SelectedParticleSystem.mbDrawGizmosSelected = mGizmosSelected;

            InitializeHandlerMap();

            InitializeTree();
            InitializeEmitter();
        }

        RepaintEditor(true);
    }
Exemplo n.º 2
0
    void InstantiateEMTypeHandler()
    {
        MBEmitter em = (SelectedObject as MBEmitter);
        if (em) {
            MBEmitterType emtype = em.EmitterType;
            if (mHandlerMap.ContainsKey(emtype.GetType())) {
                System.Type T = mHandlerMap[emtype.GetType()];
                mEmitterTypeHandler = System.Activator.CreateInstance(T) as MBEditorEmitterTypeHandler;
                mEmitterTypeHandler.Target = emtype;
                mEmitterTypeHandler.EmitterTypeInfo = emtype.EmitterTypeInfo;
            }
            else if (!EditorApplication.isPlaying)
                Debug.LogError("Missing Handler for EmitterType '" + em.EmitterType.GetType().Name + "'!");

        }
    }