public void SelectUnit() { VersusDraftList.VersusDraftMessageData mess = new VersusDraftList.VersusDraftMessageData(); mess.h = 1; int num = 0; if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[0], (UnityEngine.Object)null)) { mess.uidx0 = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[0]); ++num; } if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[1], (UnityEngine.Object)null)) { mess.uidx1 = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[1]); ++num; } if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[2], (UnityEngine.Object)null)) { mess.uidx2 = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[2]); ++num; } this.SendRoomMessage(mess, false); if (num < this.SelectableUnitCount) { return; } FlowNode_GameObject.ActivateOutputLinks((Component)this, 102); }
private void SendRoomMessage(VersusDraftList.VersusDraftMessageData mess, bool immediate = false) { if (mess == null) { return; } MyPhoton instance = PunMonoSingleton <MyPhoton> .Instance; MyPhoton.MyPlayer myPlayer = instance.GetMyPlayer(); int myPlayerIndex = instance.MyPlayerIndex; int num = myPlayer != null ? myPlayer.playerID : 0; mess.pidx = myPlayerIndex; mess.pid = num; byte[] msg = GameUtility.Object2Binary <VersusDraftList.VersusDraftMessageData>(mess); instance.SendRoomMessageBinary(true, msg, MyPhoton.SEND_TYPE.Normal, false); if (!immediate) { return; } instance.SendFlush(); }
private void DecideUnit() { if (this.mRandomSelecting || !VersusDraftList.VersusDraftTurnOwn || this.mSelectingUnitIndex >= 6) { return; } VersusDraftList.VersusDraftMessageData mess = new VersusDraftList.VersusDraftMessageData(); mess.h = 2; if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[0], (UnityEngine.Object)null)) { VersusDraftUnit currentSelectCursor = VersusDraftUnit.CurrentSelectCursors[0]; int num = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[0]); currentSelectCursor.DecideUnit(true); mess.uidx0 = num; this.mVersusDraftSelectedUnit[this.mSelectingUnitIndex].Select(currentSelectCursor.UnitData); ++this.mSelectingUnitIndex; } if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[1], (UnityEngine.Object)null)) { VersusDraftUnit currentSelectCursor = VersusDraftUnit.CurrentSelectCursors[1]; int num = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[1]); currentSelectCursor.DecideUnit(true); mess.uidx1 = num; this.mVersusDraftSelectedUnit[this.mSelectingUnitIndex].Select(currentSelectCursor.UnitData); ++this.mSelectingUnitIndex; } if (UnityEngine.Object.op_Inequality((UnityEngine.Object)VersusDraftUnit.CurrentSelectCursors[2], (UnityEngine.Object)null)) { VersusDraftUnit currentSelectCursor = VersusDraftUnit.CurrentSelectCursors[2]; int num = this.mVersusDraftUnitList.IndexOf(VersusDraftUnit.CurrentSelectCursors[2]); currentSelectCursor.DecideUnit(true); mess.uidx2 = num; this.mVersusDraftSelectedUnit[this.mSelectingUnitIndex].Select(currentSelectCursor.UnitData); ++this.mSelectingUnitIndex; } this.SendRoomMessage(mess, false); this.FinishTurn(); }
private void UpdatePhotonMessage() { MyPhoton instance = PunMonoSingleton <MyPhoton> .Instance; if (UnityEngine.Object.op_Equality((UnityEngine.Object)instance, (UnityEngine.Object)null)) { return; } List <MyPhoton.MyEvent> events = instance.GetEvents(); if (events == null) { return; } while (events.Count > 0) { MyPhoton.MyEvent myEvent = events[0]; events.RemoveAt(0); if (myEvent.code == MyPhoton.SEND_TYPE.Normal && myEvent.binary != null) { VersusDraftList.VersusDraftMessageData buffer = (VersusDraftList.VersusDraftMessageData)null; if (GameUtility.Binary2Object <VersusDraftList.VersusDraftMessageData>(out buffer, myEvent.binary) && buffer != null) { switch (buffer.h) { case 1: VersusDraftUnit.ResetSelectUnit(); if (buffer.uidx0 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx0) { this.mVersusDraftUnitList[buffer.uidx0].SelectUnit(false); } if (buffer.uidx1 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx1) { this.mVersusDraftUnitList[buffer.uidx1].SelectUnit(false); } if (buffer.uidx2 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx2) { this.mVersusDraftUnitList[buffer.uidx2].SelectUnit(false); continue; } continue; case 2: if (buffer.uidx0 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx0) { this.mVersusDraftUnitList[buffer.uidx0].DecideUnit(false); ++this.mEnemyUnitIndex; } if (buffer.uidx1 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx1) { this.mVersusDraftUnitList[buffer.uidx1].DecideUnit(false); ++this.mEnemyUnitIndex; } if (buffer.uidx2 >= 0 && this.mVersusDraftUnitList.Count > buffer.uidx2) { this.mVersusDraftUnitList[buffer.uidx2].DecideUnit(false); ++this.mEnemyUnitIndex; continue; } continue; case 3: if (!this.ChangeTurn(true)) { for (int index = 0; index < this.SELECTABLE_UNIT_COUNT_OF_TURN[this.mTurn]; ++index) { this.mVersusDraftSelectedUnit[this.mSelectingUnitIndex + index].Selecting(); } continue; } continue; default: continue; } } } } }