コード例 #1
0
        private void Update()
        {
            this.mUpdateTime -= Time.get_deltaTime();
            if ((double)this.mUpdateTime > 0.0)
            {
                return;
            }
            GameManager instance1 = MonoSingleton <GameManager> .Instance;
            MyPhoton    instance2 = PunMonoSingleton <MyPhoton> .Instance;

            if (!Object.op_Inequality((Object)instance2, (Object)null) || instance1.AudienceRoom == null || instance1.AudienceRoom.battle)
            {
                return;
            }
            if (!instance2.IsConnected() && !instance1.AudienceRoom.battle)
            {
                FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "FORCE_LEAVE");
                instance1.AudienceRoom = (MyPhoton.MyRoom)null;
            }
            else
            {
                if (!instance2.IsRoomListUpdated)
                {
                    return;
                }
                JSON_MyPhotonRoomParam myPhotonRoomParam1 = JSON_MyPhotonRoomParam.Parse(instance1.AudienceRoom.json);
                if (myPhotonRoomParam1 != null)
                {
                    MyPhoton.MyRoom room = instance2.SearchRoom(myPhotonRoomParam1.roomid);
                    if (room != null)
                    {
                        if (!room.json.Equals(instance1.AudienceRoom.json))
                        {
                            this.Refresh(room);
                            JSON_MyPhotonRoomParam myPhotonRoomParam2 = JSON_MyPhotonRoomParam.Parse(room.json);
                            if (myPhotonRoomParam2 != null && myPhotonRoomParam2.audience == 0)
                            {
                                FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "AUDIENCE_DISABLE");
                                instance1.AudienceRoom = (MyPhoton.MyRoom)null;
                                return;
                            }
                        }
                        instance1.AudienceRoom = room;
                        if (room.battle)
                        {
                            FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "START_AUDIENCE");
                        }
                    }
                    else
                    {
                        FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "DISBANDED");
                    }
                }
                instance2.IsRoomListUpdated = false;
                this.mUpdateTime            = this.UPDATE_INTERVAL;
            }
        }
コード例 #2
0
        public void OnApplicationFocus(bool hasFocus)
        {
            MyPhoton instance = PunMonoSingleton <MyPhoton> .Instance;

            if (hasFocus)
            {
                if (!Object.op_Inequality((Object)instance, (Object)null) || !instance.IsDisconnected() || !GlobalVars.VersusRoomReuse)
                {
                    return;
                }
                FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "RECONNECT");
            }
            else
            {
                if (!GlobalVars.VersusRoomReuse || !instance.IsConnected())
                {
                    return;
                }
                FlowNode_TriggerLocalEvent.TriggerLocalEvent((Component)this, "REUSE_ROOM");
            }
        }