public ServerRequest(Type type, string commandId, ISFSObject requestData, GameObject handler, string callback) { this.type = type; this.commandId = commandId; this.requestData = requestData; this.handler = handler; this.callback = callback; }
/// <summary> /// Изменилось состояние игры /// </summary> /// <param name="data"></param> void GameStateChange(ISFSObject data) { GameStates gameState = (GameStates)Enum.Parse(typeof(GameStates), data.GetUtfString("gameState")); int time = data.GetInt("time"); if (OnGameStateUpdate != null) OnGameStateUpdate(gameState, time); }
public static NetworkTransform FromSFSObject(ISFSObject data) { NetworkTransform trans = new NetworkTransform(); ISFSObject transformData = data.GetSFSObject("transform"); float x = Convert.ToSingle(transformData.GetDouble("x")); float y = Convert.ToSingle(transformData.GetDouble("y")); float z = Convert.ToSingle(transformData.GetDouble("z")); float rx = Convert.ToSingle(transformData.GetDouble("rx")); float ry = Convert.ToSingle(transformData.GetDouble("ry")); float rz = Convert.ToSingle(transformData.GetDouble("rz")); trans.position = new Vector3(x, y, z); trans.angleRotation = new Vector3(rx, ry, rz); if (transformData.ContainsKey("t")) { trans.TimeStamp = Convert.ToDouble(transformData.GetLong("t")); } else { trans.TimeStamp = 0; } return trans; }
public void fromSFSObject(ISFSObject estimacion) { user = estimacion.GetUtfString("user"); valorEstimacion = estimacion.GetFloat("valorEstimacion"); descripcion = estimacion.GetUtfString("descripcion"); id_UserStory = estimacion.GetLong("id_Story"); }
/// <summary> /// Пришел ответ от расширения сервера /// </summary> /// <param name="cmd"></param> /// <param name="data"></param> void OnExtensionResponse(string cmd, ISFSObject data) { Responses response = (Responses) Enum.Parse(typeof(Responses), cmd); switch (response) { case Responses.GameStateChange: GameStateChange(data); break; case Responses.CurrentTime: CurrentTimeUpdate(data); break; case Responses.PlayersInfo: if (OnPlayersInfo != null) OnPlayersInfo(data); break; case Responses.Smile: Smile(data); break; case Responses.CirclesInfo: if (OnCirclesInfo != null) OnCirclesInfo(data); break; case Responses.CircleAndPlayer: if (OnCircleAndPlayer != null) OnCircleAndPlayer(data); break; } }
public void UpdatePlayerInfo(ISFSObject data, Color myColor) { String colorName = ""; long time = data.GetLong("time"); int s,m,h; string formattedTime; if(myColor == Color.red) colorName = "red"; if(myColor == Color.green) colorName = "green"; if(myColor == Color.cyan) colorName = "cyan"; if(myColor == Color.magenta) colorName = "magenta"; if(myColor == Color.yellow) colorName = "yellow"; int newtime = (int) time/1000; s = (int) newtime%60; m = (int) (newtime/60)%60; h = (int) (newtime/3600)%24; formattedTime = string.Format("{0:00}:{1:00}:{2:00}",h,m,s); GameObject stats = GameObject.Find("StatLabels"); stats.transform.FindChild("Name").GetComponent<UILabel>().text = data.GetUtfString("name"); stats.transform.FindChild("Color").GetComponent<UILabel>().text = colorName; stats.transform.FindChild("Color").GetComponent<UILabel>().color = myColor; stats.transform.FindChild("Money").GetComponent<UILabel>().text = data.GetInt("money").ToString(); stats.transform.FindChild("Timer").GetComponent<UILabel>().text = formattedTime; }
public override void HandleSync(ISFSObject obj) { if(obj.ContainsKey("gate_state")){ int newState = obj.GetInt("gate_state"); open = (newState == 0) ? true : false; } }
public static Vector3 GetSFSTransform(ISFSObject data) { float x = data.GetFloat("x"); float y = data.GetFloat("y"); float z = data.GetFloat("z"); return new Vector3(x,y,z); }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { if(anObjectIn.GetBool("Gathered")) { ourGWM.destroyObject(ourGWM.getResourceDictionary()[anObjectIn.GetInt("ID")]); ourGWM.getResourceDictionary().Remove(anObjectIn.GetInt("ID")); } }
public static Vector3 GetSFSRotation(ISFSObject data) { float rx = data.GetFloat("rx"); float ry = data.GetFloat("ry"); float rz = data.GetFloat("rz"); return new Vector3(rx, ry, rz); }
public void listAllUsers(ISFSObject dataObject) { ISFSArray datos = dataObject.GetSFSArray("usuarios"); foreach (SFSObject proyectoObject in datos){ allUsers.Add(proyectoObject.GetUtfString("nick")); } allUsersFullStrings = allUsers.ToArray(); }
public void HandleNetObjInit(ISFSObject data) { Debug.Log ("Handling obj init"); int id = data.GetInt("id"); NetSyncObj recipient = PlayerSpawner.Instance.GetRecipient(id); if(recipient != null){ recipient.HandleInit(data); } }
public void HandleNetObjSync(ISFSObject data) { // Debug.Log ("Handling obj sync"); int id = data.GetInt("id"); NetSyncObj recipient = PlayerSpawner.Instance.GetRecipient(id); if(recipient != null){ recipient.HandleSync(data); } // Debug.Log ("Handle obj sync, id: " + id); }
public void listAllProject(ISFSObject dataObject) { ISFSArray datos = dataObject.GetSFSArray("proyectos"); foreach (SFSObject proyectoObject in datos){ projects.Add(proyectoObject.GetUtfString("sala")); projectsFull.Add(proyectoObject.GetUtfString("nombre")); } projectNameStrings = projects.ToArray(); projectFullStrings = projectsFull.ToArray(); }
//esegue animazioni remote Tastiera public void eseguiAnimazioniRemoteT(ISFSObject sfsObjIn) { anim.SetFloat("Forward",sfsObjIn.GetFloat("f")); anim.SetFloat("Turn", sfsObjIn.GetFloat("t")); anim.SetBool("OnGround", sfsObjIn.GetBool("o")); anim.SetFloat("Jump", sfsObjIn.GetFloat("j")); anim.SetFloat("JumpLeg", sfsObjIn.GetFloat("jL")); anim.SetBool("Attacco1", sfsObjIn.GetBool("a1")); anim.SetBool("Attacco2", sfsObjIn.GetBool("a2")); }
public int GetInt(ISFSObject data, string key) { if (receiveEncrypted) { return provider.DecryptInt(data.GetByteArray(key)); } else { return data.GetInt(key); } }
public void ReceiveResultant(ISFSObject obj, bool clearBuffer = false) { if(obj.ContainsKey("char_pos")){ if(clearBuffer){ if(resultantInterpolator != null){ resultantInterpolator.ClearBuffer(); } } ReceiveResultant(CharPosEffComp.ResultantFromSFSObject(obj)); } }
public bool GetBool(ISFSObject data, string key) { if (receiveEncrypted) { return provider.DecryptBool(data.GetByteArray(key)); } else { return data.GetBool(key); } }
public double GetDouble(ISFSObject data, string key) { if (receiveEncrypted) { return provider.DecryptDouble(data.GetByteArray(key)); } else { return data.GetDouble(key); } }
public void ReceiveMoveDirection(ISFSObject obj, bool clearBuffer = false) { if(obj.ContainsKey("char_mov")){ if(clearBuffer){ if(moveDirInterpolator != null){ moveDirInterpolator.ClearBuffer(); } } ReceiveMoveDirection(CharPosEffComp.MoveDirFromSFSObject(obj)); } }
public void PutFloat(ISFSObject data, string key, float item) { if (sendEncrypted) { data.PutByteArray(key, provider.EncryptFloat(item)); } else { data.PutFloat(key, item); } }
public void PutDouble(ISFSObject data, string key, double item) { if (sendEncrypted) { data.PutByteArray(key, provider.EncryptDouble(item)); } else { data.PutDouble(key, item); } }
public void PutBool(ISFSObject data, string key, bool item) { if (sendEncrypted) { data.PutByteArray(key, provider.EncryptBool(item)); } else { data.PutBool(key, item); } }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { string aSettlementName = anObjectIn.GetUtfString("Name"); int ID = anObjectIn.GetInt("ID"); float[] location = anObjectIn.GetFloatArray("LocationArray"); int level = anObjectIn.GetInt("CenterNodeLevel"); GameObject aSettlement = ourGWM.createObject("Prefabs/Settlements/" + aSettlementName + "/" + level.ToString()); aSettlement.name = "Settlement_" + aSettlementName + "_" + ID; aSettlement.transform.position = new Vector3(location[0], location[1], location[2]); }
public void listUserXProject(ISFSObject dataObject) { ISFSArray datos = dataObject.GetSFSArray("usuarios"); users.Clear(); usersFull.Clear(); foreach (SFSObject proyectoObject in datos){ users.Add(proyectoObject.GetUtfString("nick")); usersFull.Add(proyectoObject.GetUtfString("rol")); } usersNameStrings =users.ToArray(); usersFullStrings = usersFull.ToArray(); }
public void HandleMessage(ISFSObject data) { if (beforeMessageRecieved != null) { beforeMessageRecieved(); } OnHandleMessage(data); if (afterMessageRecieved != null) { afterMessageRecieved(); } }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { string aResourceName = anObjectIn.GetUtfString("Name"); int ID = anObjectIn.GetInt("ID"); float[] location = anObjectIn.GetFloatArray("Location"); GameObject aResource = ourGWM.createObject("Prefabs/Resources/" + aResourceName); aResource.name = "Resource_" + aResourceName + "_" + ID; aResource.transform.position = new Vector3(location[0], location[1], location[2]); //Add Newly spawned resource to Dictionary ourGWM.getResourceDictionary().Add(ID, aResource); }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { string aCharacterName = anObjectIn.GetUtfString("CharacterName"); if(aCharacterName == ourGWM.getLPC().GetName()) { return; } else if(ourGWM.getPlayerDictionary().ContainsKey(aCharacterName)) { ourGWM.destroyObject("GameCharacter_" + aCharacterName); ourGWM.getPlayerDictionary().Remove(aCharacterName); } }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { string aCharacterName = anObjectIn.GetUtfString("CharacterName"); if(aCharacterName == ourGWM.getLPC().GetName()) { return; } else if(ourGWM.getPlayerDictionary().ContainsKey(aCharacterName)) { float Rotation = anObjectIn.GetFloat("Rotation"); ourGWM.getPlayerDictionary()[aCharacterName].GetComponent<RemotePlayerController>().SetRotation(Rotation); } }
public void HandleResponse(ISFSObject anObjectIn, GameWorldManager ourGWM) { string aCharacterName = anObjectIn.GetUtfString("CharacterName"); if(aCharacterName == ourGWM.getLPC().GetName()) { return; } else if(ourGWM.getPlayerDictionary().ContainsKey(aCharacterName)) { float[] LocationArray = anObjectIn.GetFloatArray("Location"); bool IsMoving = anObjectIn.GetBool("IsMoving"); ourGWM.getPlayerDictionary()[aCharacterName].GetComponent<RemotePlayerController>().SetPlayerMoving(IsMoving); ourGWM.getPlayerDictionary()[aCharacterName].transform.position = new Vector3(LocationArray[0], LocationArray[1], LocationArray[2]); } }
private void OnTtResult(object data) { ItemList.Clear(); JhGameTable GameData = App.GetGameData <JhGameTable>(); ISFSObject obj = (ISFSObject)data; ISFSArray usersArr = obj.GetSFSArray("users"); long time = obj.GetLong("svt"); for (int i = 0; i < usersArr.Count; i++) { ISFSObject objItem = usersArr.GetSFSObject(i); if (objItem.GetKeys().Length > 0) { var rItem = new TtResultItem { Name = objItem.GetUtfString("nick"), Avatar = objItem.GetUtfString("avatar"), Sex = objItem.GetShort("sex"), Gold = objItem.GetInt("gold"), WinCnt = objItem.GetInt("win"), LostCnt = objItem.GetInt("lose"), BipaiCnt = objItem.GetInt("abandon"), UId = objItem.GetInt("id") }; ItemList.Add(rItem); } } int bigWiner = 0; int cnt = 0; for (int i = 0; i < ItemList.Count; i++) { TtResultItem item = ItemList[i]; if (item.WinCnt > cnt) { bigWiner = i; cnt = item.WinCnt; } } ItemList[bigWiner].IsBigWinner = true; ISFSArray sendArr = SFSArray.NewInstance(); foreach (TtResultItem item in ItemList) { sendArr.AddSFSObject(item.GetSfsObj()); } ISFSObject sendObj = SFSObject.NewInstance(); sendObj.PutSFSArray("Users", sendArr); sendObj.PutUtfString("Time", DateTime.FromBinary(time).ToString()); sendObj.PutInt("MaxLun", GameData.maxRound); sendObj.PutInt("RoomID", GameData.CreateRoomInfo.RoomId); sendObj.PutInt("Ante", GameData.AnteRate[0]); sendObj.PutInt("Ju", GameData.CreateRoomInfo.CurRound); EventObj.SendEvent("TtResultViewEvent", "TtResultInfo", sendObj); }
/// <summary> /// 托管 /// </summary> /// <param name="data"></param> public void AutoRequest(ISFSObject data) { SendGameRequest(data); }
/// <summary> /// 大结算消息 /// </summary> /// <param name="data"></param> public void OnGameVer(ISFSObject data) { Facade.EventCenter.DispatchEvent(LoaclRequest.GameOverGetData, data); }
/// <summary> /// 打骰子请求 /// </summary> /// <param name="data"></param> public void RollDiceRequest(ISFSObject data) { SendGameRequest(data); }
/// <summary> /// 选择飞机 /// </summary> /// <param name="data"></param> public void ChoosePlaneRequest(ISFSObject data) { SendGameRequest(data); }
public SFSInvitation(User inviter, User invitee, int secondsForAnswer, ISFSObject parameters) { Init(inviter, invitee, secondsForAnswer, parameters); }
/// <summary> /// 解散 /// </summary> /// <param name="data"></param> public void HandsUp(ISFSObject data) { SendFrameRequest(ConstantData.KeyHandsUp, data); }
public override void GameResponseStatus(int type, ISFSObject response) { var gdata = App.GetGameData <BtwGameData>(); switch ((BtwSkin02RequestType)type) { case BtwSkin02RequestType.XiaZhu: YxDebug.Log("-----------------下注--------------"); WaitWin.Hide(); BetCtrl.Bet(response); ShowNumCtrl.RefreshNum(response); break; case BtwSkin02RequestType.ZhuangChange: YxDebug.Log("-----------------获取上庄列表--------------"); WaitWin.Hide(); UserListCtrl.RefreshBanker(response); ProgressCtrl.SetNum(response); BetCtrl.ShowChip(); break; case BtwSkin02RequestType.Start: YxDebug.Log("-----------------开始下注--------------"); WaitWin.Hide(); gdata.BeginBet = true; CardsCtrl.ReSetPonits(); CardsCtrl.gameObject.SetActive(false); ShowNumCtrl.Reset(); ReSetGame(); BetCtrl.ShowChip(); ProgressCtrl.ReSetCountdown(18); ProgressCtrl.BeginCountdown(); ApplyCtrl.RefreshBanker(); TimeBet.gameObject.SetActive(true); if (gdata.BankerPlayer.Info.Seat != -1) { gdata.BankerPlayer.AddBankerTime(); } Facade.Instance <MusicManager>().Play("beginbet"); YxMessageTip.Show("开始下注"); break; case BtwSkin02RequestType.Stop: YxDebug.Log("-----------------停止下注--------------"); gdata.BeginBet = false; BetCtrl.HideChip(); ProgressCtrl.EndCountdown(); TimeBet.gameObject.SetActive(false); Facade.Instance <MusicManager>().Play("stopbet"); WaitWin.Hide(); break; case BtwSkin02RequestType.RollResult: YxDebug.Log("-----------------发牌--------------"); CardsCtrl.BeginGiveCards(response); CardsCtrl.gameObject.SetActive(true); WaitWin.Hide(); break; case BtwSkin02RequestType.GameResult: YxDebug.Log("-----------------结算--------------"); WaitWin.Hide(); gdata.SetGameStatus(YxEGameStatus.Normal); CardsCtrl.ReceiveResult(response); ResultBet(CardsCtrl.Bpg, ShowNumCtrl.ZBet); StartCoroutine(ResultMoveChip()); if (ResultWin != null) { StartCoroutine(ShowResultView(response)); } RefreshSelf(response); ProgressCtrl.SetNumOnResult(response); break; case BtwSkin02RequestType.GroupBet: YxDebug.Log("-----------------流式下注--------------"); BetCtrl.GroupBet(response); ProgressCtrl.GroupRefreshNum(response); ShowNumCtrl.GroupRefreshNum(response); break; default: YxDebug.Log("-*-*-Wrong RequestType : " + type); break; } }
public override void RefreshBanker(ISFSObject responseData) { var gdata = App.GetGameData <BtwGameData>(); while (gdata.CurrentBankerList.Count != 0) { Destroy(gdata.CurrentBankerList[0]); gdata.CurrentBankerList.RemoveAt(0); } gdata.CurrentBankerList.Clear(); if (GridBankersPrefab.GetChildList().Count != 0) { foreach (var child in GridBankersPrefab.GetChildList()) { child.transform.parent = transform; Destroy(child.gameObject); } } if (!responseData.ContainsKey("bankers")) { return; } var bankers = responseData.GetSFSArray("bankers"); var b = responseData.GetInt("banker"); gdata.BankSeat = b; bool isHasMe = false; YxBaseGameUserInfo info = null; if (bankers == null || bankers.Size() == 0) { if (b == -1) { info = new YxBaseGameUserInfo { NickM = "系统", CoinA = 1147483647, Seat = -1, TotalCount = 0, WinTotalCoin = 0 }; gdata.BankerPlayer.SetMaxCoin(1147483646); gdata.BankerPlayer.Info = info; gdata.BankerPlayer.HideBankerTime(); } ApplyCtrl.Instance.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2); return; } for (int i = 0; i < bankers.Size(); i++) { var banker = bankers.GetSFSObject(i); var user = new YxBaseUserInfo { Seat = banker.GetInt("seat"), CoinA = banker.GetLong("ttgold"), NickM = banker.GetUtfString("username") }; if (user.Seat == b) { var oldBanker = gdata.BankerPlayer.Info; var bankerInfo = gdata.GetPlayerInfo(b, true); if (oldBanker == null || oldBanker.NickM != user.NickM) { bankerInfo.CoinA = user.CoinA; bankerInfo.NickM = user.NickM; bankerInfo.Seat = user.Seat; gdata.BankerPlayer.Info = bankerInfo; gdata.BankerPlayer.SetBankerTime(0); } var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject); userItem.name = "0"; userItem.GetComponent <UserListModel>().SetInfo(user, true, i + 1); gdata.CurrentBankerList.Add(userItem); } else { var userItem = CloneUser(BankerItemPrefab, GridBankersPrefab.gameObject); userItem.name = i + ""; userItem.GetComponent <UserListModel>().SetInfo(user, false, i + 1); gdata.CurrentBankerList.Add(userItem); } if (gdata.SelfSeat == user.Seat) { isHasMe = true; } } var applyCtrl = App.GetGameManager <BtwGameManager>().ApplyCtrl; if (isHasMe) { applyCtrl.SetStutus(0); } else { applyCtrl.SetStutus(gdata.GetPlayerInfo().CoinA >= gdata.MiniApplyBanker ? 1 : 2); } GridBankersPrefab.gameObject.SetActive(true); GridBankersPrefab.repositionNow = true; GridBankersPrefab.Reposition(); }
public void Update(ISFSObject data) { }
public override void GameStatus(int status, ISFSObject info) { }
public override void OnGetGameInfo(ISFSObject requestData) { base.OnGetGameInfo(requestData); TabelPlayerMgr.InitTablePlayers(requestData); }
public override void SetData(ISFSObject data, MahjongUserInfo userInfo) { userInfo.IsAuto = data.ContainsKey("cards"); }
public override void SetData(ISFSObject data, MahjongUserInfo userInfo) { mParams["userdata"] = new VarIsfsobject(data); }
public override void SetData(ISFSObject data, MahjongUserInfo userInfo) { mParams["diling"] = new VarInt(data.TryGetInt("diling")); }
/// <summary> /// 解散消息 /// </summary> /// <param name="data"></param> public void OnHandUp(ISFSObject data) { Facade.EventCenter.DispatchEvent(LoaclRequest.HandUpResultInfo, data); }