Ejemplo n.º 1
0
    /// <summary>
    /// 打开面板
    /// </summary>
    public void OpenPanel <T>(UILayer layer, object[] param = null) where T : UIBase
    {
        var panelName = typeof(T).Name;
        var uiMgr     = ManagementCenter.GetManager <UIManager>();
        var parent    = uiMgr.GetLayer(layer).transform;

        if (parent.Find(panelName) != null)
        {
            return;
        }

        var resMgr = ManagementCenter.GetManager <ResourceManager>();
        //resMgr.LoadResAsset(panelName, AssetsType.UI, delegate(UnityEngine.Object prefab)
        //{
        //    if (prefab != null)
        //    {
        //        GameObject panelObj = CreatePanelInternal<T>(panelName, prefab as GameObject, parent, param);
        //        panelObj.GetComponent<Canvas>().sortingOrder = (int)layer + parent.childCount;
        //    }
        //});
        var resPath = "Prefabs/UI/" + panelName;

        resMgr.LoadAssetAsync <GameObject>(resPath, new string[] { panelName }, delegate(UnityEngine.Object[] prefabs)
        {
            if (prefabs != null && prefabs[0] != null)
            {
                GameObject panelObj = CreatePanelInternal <T>(panelName, prefabs[0] as GameObject, parent, param);
                panelObj.GetComponent <Canvas>().sortingOrder = (int)layer + parent.childCount;
            }
        });
    }
Ejemplo n.º 2
0
        public NetworkClNode ConfigureNode()
        {
            List <NodeInput>     ports          = new List <NodeInput>();
            string               nodeName       = null;
            ManagementClientPort managementPort = null;
            NetworkNodeSender    sender         = null;

            while (configReader.Read())
            {
                if (configReader.IsStartElement())
                {
                    if (configReader.NodeType == XmlNodeType.Element)
                    {
                        if (configReader.Name == "port")
                        {
                            int    portNumber = int.Parse(configReader.GetAttribute("local"));
                            int    tcp        = int.Parse(configReader.GetAttribute("tcp"));
                            string stm        = configReader.GetAttribute("stm");

                            ports.Add(new NodeInput(tcp, portNumber, StmLevelExt.GetContainer(stm)));
                        }
                        else if (configReader.Name == "cloud-server")
                        {
                            int tcp = int.Parse(configReader.GetAttribute("tcp"));
                            sender = new NetworkNodeSender(tcp);
                        }
                        else if (configReader.Name == "managment-port")
                        {
                            int portNumber = int.Parse(configReader.GetAttribute("number"));
                            managementPort = new ManagementClientPort(portNumber);
                        }
                        else if (configReader.Name == "node" && configReader.IsStartElement())
                        {
                            nodeName = configReader.GetAttribute("name");
                        }
                    }
                }
            }

            SynchronousPhysicalInterface spi  = new SynchronousPhysicalInterface(ports, sender, nodeName);
            TransportTerminalFunction    ttf  = new TransportTerminalFunction(spi, NodeMode.CLIENT);
            AdaptationFunction           adpt = new AdaptationFunction(ttf);
            NetworkClNode node = new NetworkClNode(adpt, nodeName);

            //TODO
            List <StreamData> records = new List <StreamData>();

            records.Add(new StreamData(1, StmLevel.STM1, VirtualContainerLevel.VC32, 0, 0));
            //node.AddStreamData(records);
            ManagementCenter managementCenter = new ManagementCenter(managementPort, node);

            managementPort.SetManagementCenter(managementCenter);
            managementPort.StartListening();
            foreach (NodeInput input in ports)
            {
                input.SetUpServer(10000, 10);
                input.StartListening();
            }
            return(node);
        }
Ejemplo n.º 3
0
        public NetworkNode configureNode()
        {
            List <NodeInput>  ports          = new List <NodeInput>();
            string            nodeName       = null;
            string            nodeType       = null;
            ManagementPort    managementPort = null;
            NetworkNodeSender sender         = null;

            while (configReader.Read())
            {
                if (configReader.IsStartElement())
                {
                    if (configReader.NodeType == XmlNodeType.Element)
                    {
                        if (configReader.Name == "port")
                        {
                            int    portNumber = int.Parse(configReader.GetAttribute("local"));
                            int    tcp        = int.Parse(configReader.GetAttribute("tcp"));
                            string stm        = configReader.GetAttribute("stm");

                            ports.Add(new NodeInput(tcp, portNumber, StmLevelExt.GetContainer(stm)));
                        }
                        else if (configReader.Name == "cloud-server")
                        {
                            int tcp = int.Parse(configReader.GetAttribute("tcp"));
                            sender = new NetworkNodeSender(tcp);
                        }
                        else if (configReader.Name == "managment-port")
                        {
                            int portNumber = int.Parse(configReader.GetAttribute("number"));
                            managementPort = new ManagementPort(portNumber);
                        }
                        else if (configReader.Name == "node" && configReader.IsStartElement())
                        {
                            nodeName = configReader.GetAttribute("name");
                            nodeType = configReader.GetAttribute("type");
                        }
                    }
                }
            }

            SynchronousPhysicalInterface spi = new SynchronousPhysicalInterface(ports, sender, nodeName);
            TransportTerminalFunction    ttf = new TransportTerminalFunction(spi, getMode(nodeType));
            HigherOrderPathConnection    hpc = new HigherOrderPathConnection(ttf);
            NetworkNode node = new NetworkNode(hpc, ttf, nodeName);

            ManagementCenter managementCenter = new ManagementCenter(managementPort, node);

            managementPort.SetManagementCenter(managementCenter);
            managementPort.StartListening();
            foreach (NodeInput input in ports)
            {
                input.SetUpServer(10000, 10);
                input.StartListening();
            }

            return(node);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 执行Lua方法
        /// </summary>
        public static object[] CallMethod(string module, string func, params object[] args)
        {
            var luaMgr = ManagementCenter.GetManager <LuaManager>();

            if (luaMgr == null)
            {
                return(null);
            }
            return(luaMgr.CallFunction(module + "." + func, args));
        }
Ejemplo n.º 5
0
 /// <summary>
 ///
 /// 寻找路径
 /// </summary>
 public void FindPath(int npcId, Vector3 position)
 {
     if (Time.unscaledTime > lastRepath + repathRate && seeker.IsDone())
     {
         lastRepath = Time.unscaledTime;
         var     npcMgr  = ManagementCenter.GetManager <NpcManager>();
         NpcView npcView = npcMgr.GetNpc(npcId) as NpcView;
         seeker.StartPath(npcView.gameObject.transform.position, position, OnPathComplete);
     }
 }
Ejemplo n.º 6
0
        private void OnClick()
        {
            switch (btnSoundType)
            {
            case SoundType.Button: break;
            }
            var soundMgr = ManagementCenter.GetManager <SoundManager>();

            soundMgr.Play("Audios/20001");
        }
Ejemplo n.º 7
0
    /// <summary>
    /// 进入主场景
    /// </summary>
    protected override void Enter()
    {
        base.Enter();

        var panelMgr = ManagementCenter.GetManager <PanelManager>();

        panelMgr.OpenPanel <UI_MainGame>(UILayer.Common);

        logicMgr = new LogicManager();
        logicMgr.Initialize();
    }
Ejemplo n.º 8
0
    /// <summary>
    /// 进入状态
    /// </summary>
    public override void Enter()
    {
        base.Enter();

        myNpcId = npcFsm.GetVar <int>("myNpcId");

        var     npcMgr = ManagementCenter.GetManager <NpcManager>();
        NpcView npc    = npcMgr.GetNpc(myNpcId.value) as NpcView;

        npc.FindPath(myNpcId.value, GetEndPoint());
    }
Ejemplo n.º 9
0
    /// <summary>
    /// 初始化
    /// </summary>
    void Initialize()
    {
        BaseBeheviour.Initialize();
        DontDestroyOnLoad(gameObject);

        var gameMgr = ManagementCenter.GetManager <GameManager>();

        if (gameMgr != null)
        {
            gameMgr.Initialize();
        }
    }
Ejemplo n.º 10
0
    /// <summary>
    /// 初始化
    /// </summary>
    void Initialize()
    {
        BaseBehaviour.Initialize();
        DontDestroyOnLoad(gameObject);  //防止销毁自己

        var gameMgr = ManagementCenter.GetManager <GameManager>();

        if (gameMgr != null)
        {
            gameMgr.Initialize();   //初始化游戏管理器
        }
    }
Ejemplo n.º 11
0
        protected void Initialize(int port)
        {
            IsRunning = false;

            repository = LogManager.CreateRepository("NETCoreRepository");
            XmlConfigurator.Configure(repository, new FileInfo("log4net.config"));
            logger = LogManager.GetLogger(repository.Name, typeof(AppServer));

            ManagementCenter.Initialize();

            StartServer(port);
        }
Ejemplo n.º 12
0
    protected override void Enter()
    {
        base.Enter();

        Find <Button>(gameObject, "Button").onClick.AddListener(() =>
        {
            var sceneMgr = ManagementCenter.GetManager <CSceneManager>();
            sceneMgr.ChangeScene("BattleScene", "Map_1");

            var panelMgr = ManagementCenter.GetManager <PanelManager>();
            panelMgr.ClosePanel("UI_Prop");
        });
    }
Ejemplo n.º 13
0
    /// <summary>
    /// 进入战斗UI
    /// </summary>
    protected override void Enter()
    {
        Find <Button>(gameObject, "Btn1").onClick.AddListener(delegate()
        {
            var panelMgr = ManagementCenter.GetManager <PanelManager>();
            panelMgr.OpenPanel <UI_Prop>(UILayer.Fixed);


            //CTimer timeMgr = ManagementCenter.GetExtManager("TimerManager") as CTimer;
            //timeMgr.AddTimer(3, 0, (obj)=>
            //{
            //    panelMgr.OpenPanel<UI_Second>(UILayer.Fixed);
            //});
        });
    }
Ejemplo n.º 14
0
 static int GetExtManager(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         string arg0 = ToLua.CheckString(L, 1);
         object o    = ManagementCenter.GetExtManager(arg0);
         ToLua.Push(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Ejemplo n.º 15
0
    /// <summary>
    /// 加载地图
    /// </summary>
    protected void LoadMap(string mapName, Action callback)
    {
        var resPath = "Maps/" + mapName;
        var resMgr  = ManagementCenter.GetManager <ResourceManager>();

        resMgr.LoadAssetAsync <GameObject>(resPath, new string[] { mapName }, delegate(UnityEngine.Object[] prefabs)
        {
            if (prefabs != null && prefabs[0] != null)
            {
                var gameObj = Instantiate <GameObject>(prefabs[0] as GameObject);
                gameObj.transform.SetParent(battleScene);
                gameObj.transform.localScale    = Vector3.one;
                gameObj.transform.localPosition = Vector3.zero;

                callback?.Invoke();
            }
        });
    }
Ejemplo n.º 16
0
    public override void Initialize()
    {
        GameObject startPoint = GameObject.Find("Scene_0/PathObject/PathPoint/startPoint");

        var npcMgr = ManagementCenter.GetManager <NpcManager>();

        var     npcModule = moduleMgr.GetModule <NpcModule>();
        NpcData npcData   = npcModule.CreateNpcData(1000);

        npcData.roleid = 1000;
        npcData.fsm    = new NpcFSM();
        npcModule.AddNpcData(npcData);

        //var roleView = npcMgr.CreateNpc<NpcView>(npcData, IdleScene.transform);
        //npcMgr.AddNpc(npcData.npcid, roleView);
        //roleView.Initialize(npcData, startPoint.transform.position, ()=>
        //{
        //    npcData.fsm.Initialize(npcData.npcid);
        //});
    }
Ejemplo n.º 17
0
    /// <summary>
    /// UI自定义事件列表
    /// </summary>
    /// <returns></returns>
    public override Dictionary <GameEvent, Callback <object[]> > CtorEvent()
    {
        Dictionary <GameEvent, Callback <object[]> > eventDic = new Dictionary <GameEvent, Callback <object[]> >();

        //加载进度条事件
        eventDic[GameEvent.SCENE_LOAD_PROGRESS] = delegate(object[] param)
        {
            SetProgress((float)param[0]);
        };
        //加载完成
        eventDic[GameEvent.SCENE_LOAD_COMPLETE] = delegate(object[] param)
        {
            var timeMgr = ManagementCenter.GetExtManager("TimerManager") as CTimer;
            timeMgr.AddTimer(0.5f, 0, (obj) =>
            {
                var panelMgr = ManagementCenter.GetManager <PanelManager>();
                panelMgr.ClosePanel("UI_Loading");
            });
        };

        return(eventDic);
    }
Ejemplo n.º 18
0
    static int _CreateManagementCenter(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 0)
            {
                ManagementCenter obj = new ManagementCenter();
                ToLua.PushObject(L, obj);
                return(1);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to ctor method: ManagementCenter.New"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Ejemplo n.º 19
0
 public void SetManagementCenter(ManagementCenter center)
 {
     this.center = center;
 }