Пример #1
0
 protected override void Awake()
 {
     base.Awake();
     m_ProcedureManager = GameFrameworkEntry.GetModule <IProcedureManager>();
     if (m_ProcedureManager == null)
     {
         Log.Fatal("[ProcedureComponent.Awake] Procedure manager is invalid.");
         return;
     }
 }
Пример #2
0
        /// <summary>
        /// 游戏框架组件初始化。
        /// </summary>
        protected override void Awake()
        {
            base.Awake();

            m_ProcedureManager = AshEntry.GetModule <IProcedureManager>();
            if (m_ProcedureManager == null)
            {
                Log.Fatal("Procedure manager is invalid.");
                return;
            }
        }
        /// <summary>
        /// 构造函数
        /// </summary>
        public ProcedureComponent()
        {
            m_ProcedureManager = GameFrameworkEntry.GetModule <IProcedureManager>();
            if (m_ProcedureManager == null)
            {
                Log.Fatal("Procedure manager is invalid.");
                return;
            }

            //初始化  所有的流程
            List <ProcedureBase> procedures = new List <ProcedureBase>();

            Type[] types = GameEntry.HotfixTypes;
            foreach (var item in types)
            {
                if (item.IsAbstract)
                {
                    continue;
                }
                object[] objs = item.GetCustomAttributes(typeof(GfProcedureAttribute), false);
                if (objs.Length == 0)
                {
                    continue;
                }
                Debug.Log("创建物体:" + objs[0] + "----" + item.FullName);
                GfProcedureAttribute obj = (GfProcedureAttribute)objs[0];
                if (obj.ProceType == ProcedureType.Ignore)
                {
                    continue;
                }
                ProcedureBase procedure = (ProcedureBase)Activator.CreateInstance(item);
                if (procedure != null)
                {
                    procedures.Add(procedure);
                    if (obj.ProceType == ProcedureType.Start)
                    {
                        m_EntranceProcedure = procedure;
                    }
                }
                else
                {
                    Log.Error("流程没有继承:ProcedureBase----" + item);
                }
            }
            Debug.Log("初始流程Type:" + m_EntranceProcedure.GetType().FullName);
            m_ProcedureManager.Initialize(GameFrameworkEntry.GetModule <IFsmManager>(), procedures.ToArray());
            // 开始流程
            m_ProcedureManager.StartProcedure(m_EntranceProcedure.GetType());

            //   WaitToRunProcedure();
        }
Пример #4
0
        protected override void Awake()
        {
            base.Awake();

            m_IProcedureManager = GameBox.App.Driver.GetModule <IProcedureManager>();
            if (null == m_IProcedureManager)
            {
                throw new GameBoxFrameworkException("IProcedureManager是无效的.");
            }

            for (int i = 0; i < m_AvailableProcedureTypeNames.Length; i++)
            {
                m_IProcedureManager.AddProcedure(Type.GetType(m_AvailableProcedureTypeNames[i]));
            }

            m_IProcedureManager.BootProcedure = m_IProcedureManager.GetProcedure(Type.GetType(m_BootProcedureTypeName));
        }
Пример #5
0
    void Start()
    {
        m_bundleManager = new ResourceBundleManager(isEditor);

        new TextureManager();
        new MaterialManager();
        new PrefabManager();

        var uiRootObj = GameObject.Find("UIRoot");

        DontDestroyOnLoad(uiRootObj);
        m_uiManager = new UIManager();
        m_uiManager.SetUIRootObj(uiRootObj);

        var audioSourceObj = GameObject.Find("SoundSource").GetComponent <AudioSource>();

        m_soundManager = new SoundManager();
        m_soundManager.SetSoundSource(audioSourceObj);

        m_procedureManager = InitialProcedureManager();

        m_bundleManager.LoadResourceBundleConfig(bundleConfigName)
        .Subscribe(_ => { couldUpdate = true; m_procedureManager.Start(); });
    }
Пример #6
0
 public UTaskService(IUnitOfWork uow, IProcedureManager pm)
 {
     Database = uow;
     Pm       = pm;
 }
Пример #7
0
 public TaskService(IUnitOfWork uow, IProcedureManager pm, IMapper tm)
 {
     Database    = uow;
     Pm          = pm;
     TasksMapper = tm;
 }
Пример #8
0
 public SampleService(IUnitOfWork uow, IProcedureManager pm, IMapper mapper)
 {
     Database = uow;
     Pm       = pm;
     _mapper  = mapper;
 }
Пример #9
0
 public EventService(IEventRepository repo, IProcedureManager manager = null)
 {
     Repository = repo;
     Procedures = manager;
 }
Пример #10
0
 public UserService(IUserRepository repo, IProcedureManager manager)
 {
     Repository = repo;
     Procedures = manager;
 }
Пример #11
0
 public SampleService(IUnitOfWork uow, IProcedureManager pm, IMapper m)
 {
     Uow          = uow ?? throw new ArgumentNullException(nameof(uow));
     Pm           = pm ?? throw new ArgumentNullException(nameof(pm));
     SampleMapper = m ?? throw new ArgumentNullException(nameof(m));
 }