//This method is called when receiving remote heading // We update course here public void ReceiveHeading(SFSObject data) { if (receiveMode) { Vector3 pos = new Vector3(Convert.ToSingle(data.GetNumber("x")), Convert.ToSingle(data.GetNumber("y")), Convert.ToSingle(data.GetNumber("z")) ); float angle = Convert.ToSingle(data.GetNumber("a")); long time = (long) data.GetNumber("t"); float speed = Convert.ToSingle(data.GetNumber("s")); long accelerationTime = (long) data.GetNumber("at"); float endSpeed = -1; if (accelerationTime != -1) { endSpeed = Convert.ToSingle(data.GetNumber("es")); } //Debug.Log("ReceiveHeading() has received a heading : "+pos+"; a="+angle+", s="+speed+", t="+time+", at="+accelerationTime+", es="+endSpeed); course.InitFromValues(pos, angle, time, speed, endSpeed, accelerationTime); if(hasReceivedHeading == true) CreateInterceptor(); hasReceivedHeading = true; } }
public SendableObject(SmartFox conn, bool encrypt) { provider = EncryptionProvider.GetInstance(); sendEncrypted = encrypt; connection = conn; data = new SFSObject(); }
public ArrayList getHighScores(string juego) { SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("tabla",juego); extensionManager.sendRequest(new ExtensionRequest("consultarHighScores", sfsObject), "getHighScores", getHighScoresResponse); return this.ultimaConsultaHighScores; }
void OnConnection(BaseEvent evt) { bool connectionSuccess = (bool)evt.Params["success"]; Debug.Log("OnConn:" + connectionSuccess); if (connectionSuccess) { SFSObject loginData = new SFSObject(); loginData.PutUtfString("username", usernameField.value); loginData.PutUtfString("password", passwordField.value); sfs.Send(new Sfs2X.Requests.LoginRequest("", "", "MainZone", loginData)); connectionWindow.SetActive(false); loggingWindow.SetActive(true); } else { sfs = Connection.Instance().Reset(); SetupListeners(); loginWindow.SetActive(true); connectionWindow.SetActive(false); } }
private ISFSObject CreatePublicMessageObject(JSONObject jsonData, string commandId) { ISFSObject objOut = new SFSObject(); objOut.PutByteArray("jsonData", Utils.ToByteArray(jsonData.ToString())); objOut.PutUtfString("message", jsonData.GetString("message")); objOut.PutUtfString("cmd", commandId); return objOut; }
/// <summary> /// Начать игру с N количеством игроков /// </summary> /// <param name="maxUsers"></param> void Play(PlayModes playMode) { ISFSObject data = new SFSObject(); data.PutUtfString("playMode", Util.EnumToStr(playMode)); data.PutUtfString("nickName", IOL.Instance.UserNick); SendToLastJoinedRoom(Reqeusts.Play, data); }
public SFSObject toSFSObject() { SFSObject asocObject = new SFSObject (); asocObject.PutLong ("Id_Test", Id_Test); asocObject.PutLong ("Id_Task", Id_Tarea); return asocObject; }
void SendTransform() { if ((timeLastBuffering >= bufferingPeriod)&&((lastAnimation!="idle")||(currentAnimation!="idle"))) {//&&(lastAnimation.Equals("idle")) lastState = NetworkTransform.FromTransform(thisTransform); SFSObject data=new SFSObject(); if (!currentAnimation.Equals(lastAnimation)) data.PutUtfString("anim",currentAnimation); lastState.ToSFSObject(data); buffer.AddSFSObject(data); timeLastSending += bufferingPeriod; packageSize+=1; timeLastBuffering = 0.0f; lastAnimation=currentAnimation; //return; } else if (!packageSize.Equals(0)){ sendBuffer(); packageSize=0; } if (packageSize.Equals(packageMaxSize)){ sendBuffer(); packageSize=0; //timeLastSending = 0.0f; } timeLastBuffering += Time.deltaTime; }
public void insertarTutorial(string nick, string tutorial) { SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("nick",nick); sfsObject.PutUtfString("tutorial",tutorial); extensionManager.sendRequest(new ExtensionRequest("insertarTutorial", sfsObject)); }
public void getTutorial(string nick, dbCallback getCallback) { this.getCallback= getCallback; SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("nick",nick); extensionManager.sendRequest(new ExtensionRequest("consultarTutorial", sfsObject), "getTutorial", getTutorialResponse); }
//This method is called when receiving remote transform // We update lastState here to know last received transform state void ReceiveTransform(SFSObject data) { Debug.Log("ReceiveTransform()"); if (receiveMode) { Vector3 pos = new Vector3(Convert.ToSingle(data.GetNumber("x")), Convert.ToSingle(data.GetNumber("y")), Convert.ToSingle(data.GetNumber("z")) ); Quaternion rot = new Quaternion( Convert.ToSingle(0.0), Convert.ToSingle(data.GetNumber("ry")), Convert.ToSingle(0.0), Convert.ToSingle(data.GetNumber("w")) ); lastState.InitFromValues(pos, rot); // Adding next received state to the queue NetworkTransform nextState = new NetworkTransform(this.gameObject); nextState.InitFromValues(pos, rot); queue.Enqueue(nextState); Debug.Log("queue length: "+Convert.ToString(queue.Count)); } }
private void initPacketFromHost(SFSObject aObject) { long id = aObject.GetLong("i"); for(int i = 0;i<this.sortedHorses.Count;i++) { if(sortedHorses[i].horseID==id) { sortedHorses[i].initFromPackage(aObject); } } }
//consulta las noticias segun la categoria y facultad public void getBackNews(string category, string faculty) { SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("categoria",category); sfsObject.PutUtfString("facultad",faculty); //downloadFinished = false; extensionManager.sendRequest(new ExtensionRequest("consultarNews", sfsObject), "getNews", getNewsResponse); }
void SendAnimationMessage(string message) { SmartFoxClient client = NetworkController.GetClient(); SFSObject data = new SFSObject(); data.Put("_cmd", "a"); //We put _cmd = "a" here to know that this object contains animation message data.Put("mes", message); client.SendObject(data); }
/// <summary> /// Send local transform to the server /// </summary> /// <param name="ntransform"> /// A <see cref="NetworkTransform"/> /// </param> public void SendTransform(NetworkTransform ntransform) { Room room = sfs.LastJoinedRoom; ISFSObject data = new SFSObject(); ntransform.ToSFSObject(data); ExtensionRequest request = new ExtensionRequest("sendTransform", data, room, true); // True flag = UDP sfs.Send(request); }
void SendDamage(int damage) { SmartFoxClient client = NetworkController.GetClient(); SFSObject data = new SFSObject(); data.Put("_cmd", "d"); //We put _cmd = "d" to identify the message as a damage message data.Put("amount", damage); //how much damage was dealt client.SendObject(data); }
public void insertarMensaje(string nick, string mensaje) { Debug.Log("Entro al insertarMensaje---------------!!!"); SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("nick",nick); sfsObject.PutUtfString("mensaje",mensaje); extensionManager.sendRequest(new ExtensionRequest("insertarMensaje", sfsObject)); }
void ForceRemotePlayerToSendTransform(User user) { SmartFoxClient client = NetworkController.GetClient(); SFSObject data = new SFSObject(); data.Put("_cmd", "f"); //We put _cmd = "f" here to know that this object contains "force send transform" demand data.Put("to_uid", user.GetId()); // Who this message is for client.SendObject(data); }
public void handlePacketFromHost(SFSObject aObject) { long id = aObject.GetLong("i"); for(int i = 0;i<this.sortedHorses.Count;i++) { if(sortedHorses[i].horseID==id) { sortedHorses[i].dataPackage = aObject; } } }
public SFSObject asSFSObject(int aRound) { SFSObject s = new SFSObject (); s.PutInt ("id",this.horseID); s.PutUtfString ("c", this.compressedString(aRound)); s.PutLong ("o", this.ownerID); s.PutInt ("u", SmartfoxConnectionHandler.REF.smartfoxuid); return s; }
public void SendChatMessage(string message) { Room room = smartFox.LastJoinedRoom; SFSObject mes = new SFSObject(); mes.PutUtfString ("message", message); ExtensionRequest request = new ExtensionRequest("chatMessage", mes, room); smartFox.Send(request); }
public static void InviaAnimazioneControllerClick(int userId, float forward, bool attacco1, bool attacco2) { SFSObject objOut = new SFSObject(); objOut.PutFloat("f", forward); objOut.PutBool("a1", attacco1); objOut.PutBool("a2", attacco2); me.sfs.Send(new ExtensionRequest("SanC", objOut, me.sfs.LastJoinedRoom)); }
private void SendCollisionEvent(string otherUUID) { SFSObject data = new SFSObject (); data.PutUtfString ("a", UUID); data.PutUtfString ("b", otherUUID); Debug.Log ("Reporting collision between " + UUID + " & " + otherUUID); server.Send (new ExtensionRequest ("collision", data, server.LastJoinedRoom)); }
public void getAvatar(string nick, dbCallback getCallback) { Debug.Log("Entro al getAvatar---------------!!!"); this.getCallback= getCallback; SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("nick",nick); extensionManager.sendRequest(new ExtensionRequest("consultarAvatar", sfsObject), "getAvatar", getAvatarResponse); }
public void Button_Clicked(String buttonName) { if(buttonName == "LoginButton") { String EncryptedPW = PasswordUtil.MD5Password(PasswordTB.text); SFServer.Send(new LoginRequest(UsernameTB.text, EncryptedPW, GAME_ZONE)); SFServer.Send(new JoinRoomRequest("Game")); } if(buttonName == "RegisterButton") { this.RegisterPanel.SetActive(true); this.LoginPanel.SetActive(false); SFServer.Send(new LoginRequest("", "", "Registration")); } if(buttonName == "ExitButton") { SFServer.Disconnect(); SFServer.RemoveAllEventListeners(); Application.Quit(); } if(buttonName == "CreateButton") { InputField UsernameTB = GameObject.Find("UsernameTB").GetComponent<InputField>(); InputField PasswordTB = GameObject.Find("PasswordTB").GetComponent<InputField>(); InputField ConfirmPasswordTB = GameObject.Find("ConfirmPasswordTB").GetComponent<InputField>(); InputField EmailTB = GameObject.Find("EmailTB").GetComponent<InputField>(); InputField RegistrationKeyTB = GameObject.Find("RegistrationKeyTB").GetComponent<InputField>(); Debug.Log("Username: "******"Password: "******"ConfirmPW: " + ConfirmPasswordTB.text); Debug.Log("Email: " + EmailTB.text); Debug.Log("RegistrationKey: " + RegistrationKeyTB.text); if(PasswordTB.text == ConfirmPasswordTB.text) { SFSObject NewAccountObject = new SFSObject(); NewAccountObject.PutUtfString("Username", UsernameTB.text); NewAccountObject.PutUtfString("PasswordHash", PasswordTB.text); NewAccountObject.PutUtfString("Email", EmailTB.text); NewAccountObject.PutUtfString("RegistrationKey", RegistrationKeyTB.text); this.SFServer.Send(new ExtensionRequest("$SignUp.Submit", NewAccountObject)); } else { if(!MessageText.activeInHierarchy) { MessageText.SetActive(true); } MessageText.GetComponent<Text>().text = "Passwords do not match! Please check and try again."; } } if(buttonName == "BackButton") { this.LoginPanel.SetActive(true); this.RegisterPanel.SetActive(false); } }
public void getToken(string usuario,string redSocial, dbCallback getCallback) { Debug.Log("Entro al getToken---------------!!!"); this.getCallback= getCallback; SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("usuario",usuario); sfsObject.PutUtfString("redSocial",redSocial); smartFox.Send(new ExtensionRequest("consultarToken",sfsObject)); }
//Insercion de doorlog public void insertarDoorLog(string usuario,string puerta, string siguienteescena) { SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("usuario",usuario.ToString()); sfsObject.PutUtfString("escena",siguienteescena.ToString()); sfsObject.PutUtfString("puerta",puerta.ToString()); extensionManager.sendRequest(new ExtensionRequest("insertarDoorLog", sfsObject)); Debug.Log("InsertarAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"); }
public void SendHealthChange(string ShooterName, int damage) { SFSObject message = new SFSObject (); message.PutUtfString ("shooterName", ShooterName); message.PutInt("damage",damage); Room room = smartFox.LastJoinedRoom; ExtensionRequest request = new ExtensionRequest("updateHealth", message, room); smartFox.Send(request); }
public void insertarAvatar(string nick, string avatar) { Debug.Log("Entro al insertarAvatar---------------!!!"); SFSObject sfsObject = new SFSObject(); sfsObject.PutUtfString("nick",nick); Debug.Log("dato insertado = "+ avatar); sfsObject.PutUtfString("avatar",avatar); extensionManager.sendRequest(new ExtensionRequest("insertarAvatar", sfsObject)); }
void OnLogin(BaseEvent e) { Debug.Log("Welcome "+ e.Params["user"]); ISFSObject objOut = new SFSObject(); objOut.PutInt("a",sumA); objOut.PutInt("b",sumB); _sfs.Send(new ExtensionRequest("SUM_INTS",objOut)); _sfs.Send(new JoinRoomRequest(roomName)); }
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); }
public void SetPlayerCards(SFSObject dataObject) { Debug.Log("Received started cards!"); dominionGame.InitPlayerCards(dataObject); }
public void SetCurrentState(SFSObject dataObject) { Debug.Log("Received current state!"); dominionGame.UpdateCurrentState(dataObject); }
private void UpdateUserVariables(BaseEvent evt) { ArrayList arrayList = (ArrayList)evt.Params["changedVars"]; User user = (User)evt.Params["user"]; GameObject gameObject = (!user.IsItMe) ? GameObject.Find("remote_" + user.PlayerId) : GameObject.Find("localPlayer"); SFSObject sFSObject = new SFSObject(); bool flag = false; IEnumerator enumerator = arrayList.GetEnumerator(); try { while (enumerator.MoveNext()) { switch ((string)enumerator.Current) { case "clientState": checkClientState(user); break; case "avatarState": Debug.Log("<< AVATAR STATE HAS CHANGED: " + user.Name + " to state: " + user.GetVariable("avatarState").GetStringValue() + " playerID: " + user.PlayerId); checkAvatarState(user); break; case "moveState": if (!user.IsItMe) { sFSObject.PutInt("moveState", user.GetVariable("moveState").GetIntValue()); flag = true; } break; case "moveDir": if (!user.IsItMe) { sFSObject.PutInt("moveDir", user.GetVariable("moveDir").GetIntValue()); flag = true; } break; case "x": if (!user.IsItMe) { sFSObject.PutFloat("x", (float)user.GetVariable("x").GetDoubleValue()); flag = true; } break; case "y": if (!user.IsItMe) { sFSObject.PutFloat("y", (float)user.GetVariable("y").GetDoubleValue()); flag = true; } break; case "armAngle": if (!user.IsItMe) { sFSObject.PutFloat("armAngle", (float)user.GetVariable("armAngle").GetDoubleValue()); flag = true; } break; case "faceTargetDir": if (!user.IsItMe) { sFSObject.PutFloat("faceTargetDir", (float)user.GetVariable("faceTargetDir").GetDoubleValue()); flag = true; } break; case "weaponId": if (gameObject != null) { gameObject.SendMessage("changeWeapon", user.GetVariable("weaponId").GetIntValue()); } break; case "health": if (gameObject != null) { gameObject.SendMessage("UpdateHealth", (int)user.GetVariable("health").GetDoubleValue()); } break; case "hacks": if (gameObject != null) { gameObject.SendMessage("UpdateHacks", user); } break; case "boost": if (user.GetVariable("boost").GetIntValue() < 0) { Logger.trace("Player boost expired"); Player player3 = gameObject.GetComponent("Player") as Player; player3.deactivePickup(isTeam: false); } else { Logger.trace("Player picked up a boost"); } break; case "teamBoost": if (user.GetVariable("teamBoost").GetIntValue() < 0) { Debug.Log("Player team boost expired"); Player player2 = gameObject.GetComponent("Player") as Player; player2.deactivePickup(isTeam: true); } else { Debug.Log("Player picked up a team boost"); } break; case "inactive": if (user.IsItMe && user.GetVariable("inactive").GetBoolValue()) { Player player = gameObject.GetComponent("Player") as Player; player.gs.QuitGame(1); } break; case "nickName": if (user.IsItMe) { GameData.MyDisplayName = user.GetVariable("nickName").GetStringValue(); Debug.Log("Setting nickname to value: " + user.GetVariable("nickName").GetStringValue()); } gameObject.SendMessage("SetDisplayName", user.GetVariable("nickName").GetStringValue()); break; } } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } if (gameObject != null && flag) { gameObject.SendMessage("ReceiveTransform", sFSObject); } }
public void OnExtensionResponse(BaseEvent evt) { try { string text = (string)evt.Params["cmd"]; ISFSObject iSFSObject = (SFSObject)evt.Params["params"]; switch (text) { case "pingAck": break; case "spawnPlayerAck": break; case "findRoom": Logger.trace("[OnExtensionResponse] found room"); break; case "findRoomAck": Logger.trace("[OnExtensionResponse] room found " + evt.Params.ToString()); break; case "startGame": Logger.trace("[OnExtensionResponse] Receiving Message startGame"); break; case "stopGame": Logger.trace("[OnExtensionResponse] Receiving stop game"); break; case "sendEvents": { SFSArray sFSArray = (SFSArray)iSFSObject.GetSFSArray("events"); for (int j = 0; j < sFSArray.Size(); j++) { SFSObject sFSObject2 = (SFSObject)sFSArray.GetSFSObject(j); int int3 = sFSObject2.GetInt("playerId"); PassEventToPlayerObject(sFSObject2, int3); } break; } case "queueTime": m_qTime = iSFSObject.GetInt("queueTime"); break; case "sendSummary": { Debug.Log("\n"); Debug.Log("\n"); Debug.Log("\n"); Debug.Log("### receiving summary"); Debug.Log("\n"); Debug.Log("\n"); Logger.trace("Battle Summary Received"); Logger.traceError("Summary:" + iSFSObject.GetDump()); int @int = iSFSObject.GetInt("BanzaiTotal"); int int2 = iSFSObject.GetInt("AtlasTotal"); Debug.Log("banzai total: " + @int); Debug.Log("atlas total: " + int2); GameData.BanzaiHacks = @int; GameData.AtlasHacks = int2; string[] keys = iSFSObject.GetKeys(); string[] array = keys; foreach (string text2 in array) { if (!text2.Equals("BanzaiTotal") && !text2.Equals("AtlasTotal")) { SFSObject sFSObject = (SFSObject)iSFSObject.GetSFSObject(text2); Logger.traceError("statData: " + sFSObject.GetDump()); int playerId = Convert.ToInt32(text2); GameData.addPlayerStats(playerId, sFSObject); } } GameObject gameObject = GameObject.Find("Game"); GamePlay gamePlay = gameObject.GetComponent("GamePlay") as GamePlay; if (gamePlay != null) { gamePlay.BattleSummaryReceived(); } else { Debug.Log("cant find gameplay"); } break; } default: Logger.trace("[OnExtensionResponse] unhandled event: " + text); break; } } catch (Exception ex) { Logger.traceError("Exception handling response: " + ex.Message + " >>> " + ex.StackTrace); } }
/// <summary> /// Sends exension request to the server /// </summary> /// <param name="id">ID of request</param> /// <param name="dataObject">Data to send</param> public void sendClientRequest(RequestId id, SFSObject dataObject) { string extCmd = id.ToString(); smartFox.Send(new ExtensionRequest(extCmd, dataObject, smartFox.LastJoinedRoom)); }
/// <summary> /// 向服务器端发送扩展请求 /// </summary> /// <param name="cmd">扩展标识</param> /// <param name="data">扩展所需参数对象</param> public static void SendExtMessage(string cmd, SFSObject data) { NetMgr.SendExtMessage(cmd, data); }
public void ReceiveEvent(SFSObject data) { Logger.trace(string.Empty); Logger.trace("::::::::: ReceiveEvent ::::::::::::"); Logger.trace(data.GetDump()); Logger.trace(string.Empty); GamePlay gamePlayScript = GamePlay.GetGamePlayScript(); Player player = GetComponent("Player") as Player; int num = Convert.ToInt32(data.GetInt("playerId")); int num2 = Convert.ToInt32(data.GetInt("msgType")); switch (num2) { case 21: case 120: case 200: break; case 1: ReceiveSuitWeapon(data); break; case 101: gamePlayScript.serverReady = true; Logger.trace("<< << should start game >> >>"); break; case 40: Logger.trace("<< << ignoring spawn message for player:" + num.ToString() + " >> >>"); break; case 23: { if (!player.mIsLocal) { break; } int num15 = Convert.ToInt32(data.GetInt("oppId")); int num16 = Convert.ToInt32(data.GetInt("currHealth")); int num17 = Convert.ToInt32(data.GetInt("boost")); int mNumCaptures = Convert.ToInt32(data.GetInt("captures")); int idx = Convert.ToInt32(data.GetInt("weaponIdx")); Player player3 = gamePlayScript.players[num15 - 1].GetComponent("Player") as Player; player3.healthCurrent = num16; player3.mNumCaptures = mNumCaptures; player3.changeWeapon(idx); if (num17 > 0) { int num18 = num17 >> 16; if ((num18 & 0x8000) > 0) { num18 &= 0x7FFF; player3.activateBoostsInProgress(num18); } num18 = (num17 & 0xFFFF); if ((num18 & 0x8000) > 0) { num18 &= 0x7FFF; player3.activateBoostsInProgress(num18); } } break; } case 25: if (player.mIsLocal) { int puIdx2 = Convert.ToInt32(data.GetInt("boostIdx")); float puTime = Convert.ToSingle(data.GetFloat("boostTime")); gamePlayScript.setPickupActive(puIdx2, puTime); } break; case 4: { Logger.trace("<< myPlayer name: " + player.name); float shotAngle = Convert.ToSingle(data.GetFloat("angle")); float angleIncrement = Convert.ToSingle(data.GetFloat("inc")); int bnum = Convert.ToInt32(data.GetInt("bnum")); Vector3 startPt = new Vector3(Convert.ToSingle(data.GetFloat("x")), Convert.ToSingle(data.GetFloat("y")) + yAdjust, 0f); Logger.trace("<< " + base.gameObject.name + " weapon: " + player.weaponIdx); player.remoteShoot(startPt, shotAngle, angleIncrement, bnum); break; } case 5: { float ang = Convert.ToSingle(data.GetFloat("angle")); int isGun = Convert.ToInt32(data.GetInt("type")); int num19 = Convert.ToInt32(data.GetInt("num")); if (num != GameData.MyPlayerId) { Logger.trace("<< someone else telling me to throw"); } Vector3 pos = new Vector3(Convert.ToSingle(data.GetFloat("x")), Convert.ToSingle(data.GetFloat("y")) + yAdjust, 0f); player.ThrowGrenade(pos, ang, isGun, num19); break; } case 9: { Logger.trace("received explode message"); int num14 = Convert.ToInt32(data.GetInt("num")); Logger.trace("<< trying to find grenade num " + num14); GameObject gameObject6 = GameObject.Find("grenade_" + num14.ToString()); if (gameObject6 != null) { Grenade grenade = gameObject6.GetComponent("Grenade") as Grenade; grenade.Explode(); } break; } case 24: if (player.mIsLocal) { gamePlayScript.mGameTimer = Convert.ToSingle(data.GetFloat("time")); gamePlayScript.serverReady = true; } break; case 6: { int num10 = Convert.ToInt32(data.GetInt("idx")); Logger.trace("<< need to change weapon " + num10); if (player != null) { player.changeWeapon(num10); } break; } case 18: { float x2 = Convert.ToSingle(data.GetFloat("xstart")); float y2 = Convert.ToSingle(data.GetFloat("ystart")); float x3 = Convert.ToSingle(data.GetFloat("xend")); float y3 = Convert.ToSingle(data.GetFloat("yend")); gamePlayScript.DrawSniperLine(x2, y2, x3, y3); break; } case 8: { int num6 = Convert.ToInt32(data.GetInt("myIdx")); int num7 = Convert.ToInt32(data.GetInt("pType")); int puIdx = Convert.ToInt32(data.GetInt("pIdx")); Logger.trace("<< receiving pickup " + num6 + " of type " + num7); gamePlayScript.activatePickup(puIdx, num7, num6); break; } case 10: { float damage = Convert.ToSingle(data.GetFloat("damage")); int num11 = Convert.ToInt32(data.GetInt("playerId")); int attackerId = Convert.ToInt32(data.GetInt("uAttackerID")); int num12 = Convert.ToInt32(data.GetInt("bnum")); int num13 = Convert.ToInt32(data.GetInt("hs")); float health = Convert.ToSingle(data.GetFloat("health")); if (num13 == 1) { Logger.trace("<< shot was a HEADSHOT!"); } string text2 = "bullet_" + num12; Debug.Log("<< damage done by bullet " + text2); if (num12 >= 0) { GameObject gameObject4 = GameObject.Find(text2); Debug.Log("<< should destroy bullet " + num12); if (gameObject4 != null) { Debug.Log("<< should be destroying bullet " + text2); UnityEngine.Object.Destroy(gameObject4); } else { Debug.Log("<< Couldn't find Bullet " + text2); gamePlayScript.addBulletNotToAdd(num12); } } GameObject gameObject5 = gamePlayScript.players[num11]; if (!(gameObject5 != null)) { break; } Player player2 = gameObject5.GetComponent("Player") as Player; if (player2 != null) { player2.ApplyDamage(damage, health, num13 == 1, attackerId); if (gamePlayScript != null && !(gamePlayScript.mHUD != null)) { } } break; } case 16: { Logger.trace("received rocket explode message"); int num9 = Convert.ToInt32(data.GetInt("num")); float x = Convert.ToSingle(data.GetFloat("x")); float y = Convert.ToSingle(data.GetFloat("y")); string text = "bullet_" + num9; Logger.trace("<< trying to find " + text); GameObject gameObject2 = GameObject.Find(text); if (gameObject2 == null) { Debug.Log("couldn't find bullet"); GameObject gameObject3 = UnityEngine.Object.Instantiate(gamePlayScript.rocket, new Vector3(x, y, 0f), Quaternion.identity) as GameObject; Projectile projectile = gameObject3.GetComponent("Projectile") as Projectile; projectile.transform.position = new Vector3(x, y, 0f); projectile.Explode(); } else { Projectile projectile2 = gameObject2.GetComponent("Projectile") as Projectile; projectile2.transform.position = new Vector3(x, y, 0f); projectile2.Explode(); } break; } case 17: { int num8 = Convert.ToInt32(data.GetInt("num")); player.ShowTaunt(num8); break; } case 20: { int num3 = Convert.ToInt32(data.GetInt("uAttackerID")); int num4 = Convert.ToInt32(data.GetInt("playerId")); int num5 = Convert.ToInt32(data.GetInt("bnum")); if (num5 >= 0) { GameObject gameObject = GameObject.Find("bullet_" + num5); if (gameObject != null) { Logger.trace("<< killing bullet " + num5 + " because it collided with player"); UnityEngine.Object.Destroy(gameObject); } } gamePlayScript.mHUD.AddMessage(GameData.trimDisplayName(gamePlayScript.m_networkManager.getNameByID(num3 + 1)) + " hacked " + GameData.trimDisplayName(gamePlayScript.m_networkManager.getNameByID(num4 + 1))); break; } case 50: if (!(base.gameObject.name != "localPlayer")) { Logger.trace("<< play beep because can't perform action"); } break; case 22: { int pickupType = Convert.ToInt32(data.GetInt("uPickup")); player.deactivatePickupOnPlayer(pickupType); break; } default: Logger.traceError("<< UNHANDLED MESSAGE : " + num2); break; } }
void OnResponse(BaseEvent eventParam) { if (false) { Console.WriteLine("OnResponse : " + eventParam.Type); foreach (var kvp in eventParam.Params) { Console.WriteLine("\t" + kvp.Key + " : " + kvp.Value); } } var varst = (SFSObject)eventParam.Params["params"]; //Console.WriteLine(varst.GetDump()); Task.Run(() => { var vars = (SFSObject)eventParam.Params["params"]; var array = eventParam.Params["cmd"].ToString().Split('.'); var text = array[0]; if (text == "Chat") { Console.WriteLine(text); } else if (text == "TemtemWelfare") { Console.WriteLine(text); } else if (text == "PA") { Console.WriteLine(text); } else if (text == "GameStart") { if (vars.ContainsKey("inbattle")) { InBattle = vars.GetBool("inbattle"); } GameStarted = true; X = vars.GetFloat("x"); Y = vars.GetFloat("z"); //Thread.Sleep(700); SFClient.Send(new LogoutRequest()); //Task.Run(() => { SFClient.Send(new LogoutRequest()); }); } else if (text == "Monsters") { Console.WriteLine(text); } else if (text == "PickAndBan") { Console.WriteLine(text); } else if (text == "Notifications") { Console.WriteLine(text); } else if (text == "UCP") { Console.WriteLine(text); } else if (text == "Coop") { Console.WriteLine(text); } else if (text == "Friends") { Console.WriteLine(text); } else if (text == "Gameplay") { //Console.WriteLine(text); } else if (text == "Battle") { if (array.Length > 1) { if (array[1] == "CurrentState") { var enemies = vars.GetSFSArray("aiMon"); var count = 0; foreach (temtem.networkserialized.NetworkMonster monster in enemies) { if (monster == null) { continue; } count++; } if (!fleed) { battleTicks.Add(Environment.TickCount); battleTimes.Add(battleTicks.Last() - battleTicks[battleTicks.Count - 2]); Console.WriteLine(DateTime.Now + " : new battle, last battle time " + (battleTimes.Last() / 1000.0f) + ", average time " + battleTimes.Average() / 1000.0f); fleed = true; while (fleeBug) { } fleeBug = true; fleeThread = new Thread(() => { while (fleeBug) { if (!SFClient.IsConnected) { SFClient.KillConnection(); Console.WriteLine("reseting"); Thread.Sleep(2000); return; } var actype4 = new SFSObject(); actype4.PutByte("actype", 4); SFClient.Send(new ExtensionRequest("battle", actype4)); SFClient.Send(new ExtensionRequest("battle", actype4)); var aioArray = new SFSArray(); for (Byte i = 0; i < count; i++) { var aioObj = new SFSObject(); aioObj.PutByte("slot", (Byte)(64 + i)); aioObj.PutByte("techI", i); aioObj.PutByte("actype", 0); aioArray.AddSFSObject(aioObj); } var aio = new SFSObject(); aio.PutSFSArray("aiO", aioArray); Thread.Sleep(2500); if (fleeBug) { SFClient.Send(new ExtensionRequest("battle", aio)); } Thread.Sleep(1000); } }); fleeThread.Start(); } foreach (temtem.networkserialized.NetworkMonster monster in enemies) { if (monster == null) { continue; } var monsterCache = Temtems.AllTemtems[monster.monsterNumber]; Console.WriteLine(" " + monsterCache.name + " (lvl" + monster.level + ") : " + (monster.luma ? "Shiny" : "Normal") + " : " + (monster.gender ? "Female" : "Male")); } } if (array[1] == "BattleFinished") { fleeBug = false; InBattle = false; fleed = false; //Thread.Sleep(2000); SFClient.Send(new LogoutRequest()); } if (array[1] == "BattleTurnResult") { if (vars.ContainsKey("result")) { var result = vars.GetSFSArray("result"); foreach (SFSObject r in result) { if (r.GetBool("runres")) { //Console.WriteLine("run success"); } //Console.WriteLine("run fail"); } } else { Console.WriteLine("no result"); } } } } else if (text == "Inventory") { Console.WriteLine(text); } else if (text == "PromoCode") { Console.WriteLine(text); } else if (text == "UPP") { //Console.WriteLine(text); } else if (text == "Movement") { Console.WriteLine(text); } else if (text == "Breeding") { Console.WriteLine(text); } else if (text == "World") { if (!trigger) { trigger = true; /*Task.Run(() => * { * System.Threading.Thread.Sleep(1000); * Login(); * }); * Task.Run(() => * { * System.Threading.Thread.Sleep(2000); * SFClient.Send(new ExtensionRequest("joinRoom", new SFSObject())); * });*/ } Console.WriteLine(text); } else if (text == "SetNickname") { Console.WriteLine(text); } else if (text == "Trade") { Console.WriteLine(text); } else if (text == "PCControl") { Console.WriteLine(text); } else { Console.WriteLine("unk : " + text); } }); }
IEnumerator HandleVoiceMessage(float waitSeconds, SFSObject dataObj) { yield return(new WaitForSeconds(Math.Max(0.001f, waitSeconds))); VoiceManager.Inst.HandleMessage(dataObj); }
public void RequestGameInfo() { SendRequest(new ExtensionRequest(GameKey + InteractParameter.Crjin, SFSObject.NewInstance())); }
public void ReadyGame() { IRequest request = new ExtensionRequest(GameKey + RequestCmd.Ready, SFSObject.NewInstance()); SendRequest(request); }
public void UpdateNumberCard(SFSObject dataObject) { Debug.Log("Received checking cost card!"); dominionGame.buyCard(dataObject); }
public void RecordObjectMessage(User sender, SFSObject message) { msgRecorder.RecordObjectMessage(sender, message); }
public override void Behaviour(string cmd, int id, SFSObject data) { }