コード例 #1
0
ファイル: CellDesktop.cs プロジェクト: zhilianghuang/Fishing
    //-------------------------------------------------------------------------
    public override void update(float elapsed_tm)
    {
        if (LogicScene != null)
        {
            LogicScene.update(elapsed_tm);
        }

        // 更新座位上所有玩家
        foreach (var i in AllSeat)
        {
            if (i.et_playermirror != null)
            {
                i.et_playermirror.update(elapsed_tm);
            }
        }

        while (QueAoIEvent.Count > 0)
        {
            var ev_aoi = QueAoIEvent.Dequeue();

            DesktopNotify desktop_notify;
            desktop_notify.id   = DesktopNotifyId.PlayerSceneAoIUpdate;
            desktop_notify.data = EbTool.protobufSerialize <_tAoIEvent>(ev_aoi);

            StreamData sd = new StreamData();
            sd.event_id = StreamEventId.DesktopStreamEvent;
            sd.param1   = desktop_notify;
            var grain_desktop = Entity.getUserData <GrainCellDesktop>();
            grain_desktop.AsyncStream.OnNextAsync(sd);
        }
    }
コード例 #2
0
ファイル: CellDesktop.cs プロジェクト: zhilianghuang/Fishing
    //-------------------------------------------------------------------------
    public void logicScene2RenderAll(List <string> vec_param)
    {
        _tAoIEvent aoi_ev;

        aoi_ev.id        = _eAoIEvent.SceneBroadcast;
        aoi_ev.vec_param = vec_param;
        QueAoIEvent.Enqueue(aoi_ev);
    }