public void Update() { if (Player.model == null) { NetworkRegions.loaded = Time.realtimeSinceStartup; } else if (Time.realtimeSinceStartup - NetworkRegions.loaded > 1f) { NetworkRegions.region = NetworkRegions.getRegion(Player.model.transform.position); if (NetworkRegions.region.x != NetworkRegions.lastRegion.x || NetworkRegions.region.y != NetworkRegions.lastRegion.y) { NetworkEvents.triggerOnRegionUpdate(); NetworkRegions.lastRegion = NetworkRegions.region; } } }
private void Bank(CommandArgs args) { BetterNetworkUser user = args.sender; Vector3 target = new UnityEngine.Vector3(-273.985F, 59.87F, -15.0616F); user.position = target; user.player.gameObject.GetComponent <Life> ().networkView.RPC("tellStatePosition", UnityEngine.RPCMode.All, new object[] { target, user.rotation }); user.player.gameObject.GetComponent <NetworkInterpolation>().tellStatePosition_Pizza(target, user.rotation); NetworkEvents.triggerOnRegionUpdate(); NetworkEvents.triggerOnRegionUpdate(); }
/// <summary> /// Teleports the home. /// The object must contains the betternetworkuser and vector3 as original location! /// </summary> /// <returns>The home.</returns> /// <param name="args">Arguments.</param> private IEnumerator TeleportHome(object[] args) { Debug.Log("Teleport home coroutine started!"); BetterNetworkUser user = (BetterNetworkUser)args[0]; Vector3 originalPosition = (Vector3)args[1]; int i = 10; bool result = false; while (i > 0) { if (!user.position.Equals(originalPosition)) { Reference.Tell(user.networkPlayer, "Teleportation cancelled"); result = false; break; } if (i % 2 == 0) { NetworkManager.error("Teleporting to home in " + i / 2 + " seconds...", "Textures/Skills/survivalist", user.networkPlayer); } i--; yield return(new WaitForSeconds(0.5f)); } if (user.position.Equals(originalPosition)) { this.teleportUserTo(user, this.playerHomes[user.steamid]); Reference.Tell(user.networkPlayer, "Teleported home."); NetworkEvents.triggerOnRegionUpdate(); this.usedHomeCommand[user.steamid] = UnityEngine.Time.realtimeSinceStartup; yield return(result); } yield return(false); }