Beispiel #1
0
 public MainMenu(EthosVRButton config) : base(config.Menu, config.X, config.Y, config.Name, config.Tooltip, GeneralUtils.GetColor(config.ColorScheme.Colors[0]), GeneralUtils.GetColor(config.ColorScheme.Colors[1]), GeneralUtils.GetColor(config.ColorScheme.Colors[2]), GeneralUtils.GetColor(config.ColorScheme.Colors[3]))
 {
     new QMSingleButton(this, 1, 0, "GitHub", new Action(() =>
     {
         Process.Start("https://github.com/Yaekith/EthosClient");
     }), "Open the github repository in a new browser window", Color.red, Color.white);
     new QMSingleButton(this, 2, 0, "Discord", new Action(() =>
     {
         Process.Start("https://discord.gg/pY4AN3Q");
     }), "Join the official discord", Color.red, Color.white);
     new QMSingleButton(this, 3, 0, "Credits", new Action(() =>
     {
         GeneralUtils.InformHudText(Color.yellow, "Yaekith - Developer\n404 - Developer");
     }), "Displays who made this cheat", Color.red, Color.white);
     new UtilsVRMenu(this, GeneralUtils.GetEthosVRButton("Utils"));
     new FunVRMenu(this, GeneralUtils.GetEthosVRButton("Fun"));
     new ProtectionsVRMenu(this, GeneralUtils.GetEthosVRButton("Protections"));
     new TargetVRMenu(GeneralUtils.GetEthosVRButton("PlayerOptions"));
     new FavoritesVRMenu(this, GeneralUtils.GetEthosVRButton("ExtendedFavorites"));
     new SettingsVRMenu(this, GeneralUtils.GetEthosVRButton("Settings"));
     new KeybindVRMenu(this, GeneralUtils.GetEthosVRButton("Keybinds"));
     new VRUtilsMenu(this, GeneralUtils.GetEthosVRButton("VRUtils"));
     new QMSingleButton(this, 4, 0, "Select\nYourself", new Action(() =>
     {
         GeneralWrappers.GetQuickMenu().SelectPlayer(GeneralWrappers.GetPlayerManager().GetCurrentPlayer());
     }), "Select your own current player and do some stuff to yourself, I don't know lol.", Color.red, Color.white);
     new QMToggleButton(this, 1, 2, "Hide\nYourself", new Action(() =>
     {
         GeneralWrappers.GetPlayerManager().GetCurrentPlayer().prop_VRCAvatarManager_0.gameObject.SetActive(false);
     }), "Unhide\nYourself", new Action(() =>
     {
         GeneralWrappers.GetPlayerManager().GetCurrentPlayer().prop_VRCAvatarManager_0.gameObject.SetActive(true);
     }), "Hide/Unhide yourself, for safety reasons maybe, who knows.", Color.red, Color.white);
 }
Beispiel #2
0
        private static bool TriggerEvent(ref VrcEvent __0, ref VrcBroadcastType __1, ref int __2, ref float __3)
        {
            try
            {
                Player Sender = GeneralWrappers.GetPlayerManager().GetPlayer(__2);
                if (__1 == VrcBroadcastType.Always || __1 == VrcBroadcastType.AlwaysUnbuffered || __1 == VrcBroadcastType.AlwaysBufferOne)
                {
                    if (Sender != null)
                    {
                        if (Sender.GetVRCPlayerApi().playerId != GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetVRCPlayerApi().playerId)
                        {
                            if (Configuration.GetConfig().AntiWorldTriggers)
                            {
                                return(false);
                            }
                        }
                    }
                }

                if (GeneralUtils.WorldTriggers && (__1 != VrcBroadcastType.Always || __1 != VrcBroadcastType.AlwaysBufferOne || __1 != VrcBroadcastType.AlwaysUnbuffered))
                {
                    __1 = VrcBroadcastType.Always;
                }
            }
            catch { }
            return(true);
        }
Beispiel #3
0
        private static bool AntiBlock(ref string __0, ref bool __1, ref Player __2)
        {
            //to-do; add support for moderation logging
            var us   = GeneralWrappers.GetPlayerManager().GetPlayer(__0);
            var them = __2.GetAPIUser();

            return(!Configuration.GetConfig().AntiBlock);
        }
Beispiel #4
0
        public override void OnUpdate()
        {
            try
            {
                if (GeneralUtils.SpinBot)
                {
                    PlayerWrappers.GetVRC_Player(PlayerWrappers.GetCurrentPlayer()).gameObject.transform.Rotate(0f, 20f, 0f);
                }
                if (Input.GetKey(KeyCode.LeftControl) && Input.GetKeyDown(KeyCode.S))
                {
                    GeneralUtils.SpinBot = !GeneralUtils.SpinBot;
                    GeneralUtils.ToggleUIButton("Spin Bot", GeneralUtils.SpinBot);
                }
                if (GeneralUtils.Flight)
                {
                    GameObject gameObject   = GeneralWrappers.GetPlayerCamera();
                    var        currentSpeed = (Input.GetKey(KeyCode.LeftShift) ? 16f : 8f);
                    var        player       = PlayerWrappers.GetCurrentPlayer();

                    if (Input.GetKey(KeyCode.W))
                    {
                        player.transform.position += gameObject.transform.forward * currentSpeed * Time.deltaTime;
                    }
                    if (Input.GetKey(KeyCode.A))
                    {
                        player.transform.position += player.transform.right * -1f * currentSpeed * Time.deltaTime;
                    }
                    if (Input.GetKey(KeyCode.S))
                    {
                        player.transform.position += gameObject.transform.forward * -1f * currentSpeed * Time.deltaTime;
                    }
                    if (Input.GetKey(KeyCode.D))
                    {
                        player.transform.position += player.transform.right * currentSpeed * Time.deltaTime;
                    }
                    if (Input.GetKey(KeyCode.Space))
                    {
                        player.transform.position += player.transform.up * currentSpeed * Time.deltaTime;
                    }
                    if (Math.Abs(Input.GetAxis("Joy1 Axis 2")) > 0f)
                    {
                        player.transform.position += gameObject.transform.forward * currentSpeed * Time.deltaTime * (Input.GetAxis("Joy1 Axis 2") * -1f);
                    }
                    if (Math.Abs(Input.GetAxis("Joy1 Axis 1")) > 0f)
                    {
                        player.transform.position += gameObject.transform.right * currentSpeed * Time.deltaTime * Input.GetAxis("Joy1 Axis 1");
                    }
                }
            }
            catch (Exception) { }
        }
Beispiel #5
0
        public static void ToggleColliders(bool toggle)
        {
            Collider[] array     = UnityEngine.Object.FindObjectsOfType <Collider>();
            Component  component = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetComponents <Collider>().FirstOrDefault <Component>();

            for (int i = 0; i < array.Length; i++)
            {
                Collider collider = array[i];
                if (collider.GetComponent <PlayerSelector>() != null || collider.GetComponent <VRC.SDKBase.VRC_Pickup>() != null || collider.GetComponent <QuickMenu>() != null || collider.GetComponent <VRC_Station>() != null || collider.GetComponent <VRC.SDKBase.VRC_AvatarPedestal>() != null && collider != component)
                {
                    collider.enabled = toggle;
                }
            }
        }
Beispiel #6
0
        public TargetVRMenu(EthosVRButton config) : base(config.Menu, config.X, config.Y, config.Name, config.Tooltip, GeneralUtils.GetColor(config.ColorScheme.Colors[0]), GeneralUtils.GetColor(config.ColorScheme.Colors[1]), GeneralUtils.GetColor(config.ColorScheme.Colors[2]), GeneralUtils.GetColor(config.ColorScheme.Colors[3]))
        {
            new QMSingleButton(this, 1, 0, "Teleport", new Action(() =>
            {
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().transform.position = PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).transform.position;
            }), "Teleports you to the selected player.", Color.red, Color.white);

            new QMToggleButton(this, 2, 0, "Local\nBlock", delegate
            {
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().GetUSpeaker().gameObject.SetActive(false);
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCAvatarManager().gameObject.SetActive(false);
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().prop_Boolean_0 = false; //disables the nameplate (always the first public boolean)
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().nameTag_old.gameObject.SetActive(false);
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().namePlate.gameObject.SetActive(false);
            }, "Local\nUnblock", delegate
            {
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().GetUSpeaker().gameObject.SetActive(true);
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().prop_Boolean_0 = true; //enables the nameplate (always the first public boolean)
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCAvatarManager().gameObject.SetActive(true);
            }, "Decide whether you want to block this user locally, meaning, the blocking doesn't effect them but it also makes them disappear to yourself.", Color.red, Color.white);

            new QMToggleButton(this, 3, 0, "Can't\nHear", delegate
            {
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().field_Internal_Boolean_3 = false;
            }, "Can\nHear", delegate
            {
                //canHear is always the second last internal boolean in the VRCPlayer class
                //canSpeak is 1 before it LOL
                PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().field_Internal_Boolean_3 = true;
            }, "Decide whether you want this user to be able to hear you or not", Color.red, Color.white);

            new QMToggleButton(this, 4, 0, "Can\nHear Whitelist", delegate
            {
                if (GeneralUtils.CantHearOnNonFriends && !GeneralUtils.WhitelistedCanHearUsers.Contains(PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetAPIUser().displayName))
                {
                    GeneralUtils.WhitelistedCanHearUsers.Add(PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetAPIUser().displayName);
                    PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().field_Internal_Boolean_3 = true;
                }
                //this is because you can't get the user id of a person who has left through their vrcplayerapi
            }, "Can't\nHear Blacklist", delegate
            {
                if (GeneralUtils.CantHearOnNonFriends && GeneralUtils.WhitelistedCanHearUsers.Contains(PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetAPIUser().displayName))
                {
                    GeneralUtils.WhitelistedCanHearUsers.Remove(PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetAPIUser().displayName);
                    PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).GetVRCPlayer().field_Internal_Boolean_3 = false;
                }
                //this is because you can't get the user id of a person who has left through their vrcplayerapi
            }, "This is for when you enable can't hear on everyone but friends, but you also want to whitelist/blacklist this user from being able to hear you aswell. When Can't Hear on Non friends is disabled, this won't do anything when toggled.", Color.red, Color.white);
        }
        public override void OnPlayerJoin(VRCPlayerApi player)
        {
            var _player = GeneralWrappers.GetPlayerManager().GetPlayer(player);

            if (_player == null)
            {
                return;
            }
            var apiuser = _player.GetAPIUser();

            if (apiuser == null)
            {
                return;
            }

            if (GeneralUtils.Authorities.TryGetValue(apiuser.id, out string what))
            {
                //im gonna use the what for later ok
                player.SetNamePlateColor(Color.cyan);
                ConsoleUtil.Info($"An Ethos Admin+ || {apiuser.displayName} has joined.");
            }

            if (GeneralUtils.CantHearOnNonFriends)
            {
                if (!APIUser.IsFriendsWith(apiuser.id))
                {
                    _player.GetVRCPlayer().field_Internal_Boolean_3 = false;
                }
            }

            if (Configuration.GetConfig().LogModerations)
            {
                GeneralUtils.InformHudText(Color.green, $"{apiuser.displayName} has joined.");
            }

            if (GeneralUtils.ESP)
            {
                GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
                for (int i = 0; i < array.Length; i++)
                {
                    if (array[i].transform.Find("SelectRegion"))
                    {
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.SetColor("_Color", Color.red);
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.SetColor("_Color", Color.magenta);
                        GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
                    }
                }
            }
        }
Beispiel #8
0
 private static bool AvatarShownPatch(ref string __0, bool __1, ref Player __2)
 {
     try
     {
         if (GeneralWrappers.GetPlayerManager().GetPlayer(__0) != null)
         {
             for (var i = 0; i < GeneralUtils.Modules.Count; i++)
             {
                 GeneralUtils.Modules[i].OnPlayerShown(GeneralWrappers.GetPlayerManager().GetPlayer(__0), __2, __1);
             }
         }
     }
     catch { }
     return(true);
 }
Beispiel #9
0
 private static bool ModForceOffMicPatch(ref string __0, ref Player __1)
 {
     try
     {
         if (GeneralWrappers.GetPlayerManager().GetPlayer(__0) != null)
         {
             for (var i = 0; i < GeneralUtils.Modules.Count; i++)
             {
                 GeneralUtils.Modules[i].OnPlayerWarned(GeneralWrappers.GetPlayerManager().GetPlayer(__0), __1);
             }
         }
     }
     catch { }
     return(true);
 }
Beispiel #10
0
 public TargetVRMenu() : base("UserInteractMenu", 3, 3, "Player\nOptions", "Open this menu and control what you want of other players.", Color.red, Color.white, Color.red, Color.cyan)
 {
     new QMSingleButton(this, 1, 0, "Teleport", new Action(() =>
     {
         PlayerWrappers.GetCurrentPlayer().transform.position = PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu()).transform.position;
     }), "Teleports you to the selected player.", Color.red, Color.white);
     new QMToggleButton(this, 2, 0, "Local\nBlock", delegate
     {
         var player = PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu());
         player.gameObject.SetActive(false);
     }, "Local\nUnblock", delegate
     {
         var player = PlayerWrappers.GetSelectedPlayer(GeneralWrappers.GetQuickMenu());
         player.gameObject.SetActive(true);
     }, "Decide whether you want to block this user locally, meaning, the blocking doesn't effect them but it also makes them disappear to yourself.", Color.red, Color.white);
 }
Beispiel #11
0
 private static bool EnterPortalPatch(PortalInternal __instance)
 {
     try
     {
         if (Configuration.GetConfig().PortalSafety)
         {
             GeneralWrappers.AlertV2($"Portal: {__instance.field_Private_ApiWorld_0.name}", $"Instance: {(__instance.field_Private_ApiWorld_0.instanceId == null ? "Random Public Instance" : __instance.field_Private_ApiWorld_0.instanceId)}\nWorld Creator: {__instance.field_Private_ApiWorld_0.authorName}\nWho Dropped: {__instance.GetPlayer().GetAPIUser().displayName}",
                                     "Enter", new Action(() =>
             {
                 Networking.GoToRoom($"{__instance.field_Private_ApiWorld_0.id}{__instance.field_Private_ApiWorld_0.instanceId}");
             }), "Don't Enter", new Action(() =>
             {
                 GeneralWrappers.ClosePopup();
             }));
             return(false);
         }
     }
     catch (Exception) { }
     return(true);
 }
Beispiel #12
0
        private static bool AntiLogout(ref string __0, ref Player __1)
        {
            try
            {
                if (GeneralWrappers.GetPlayerManager().GetPlayer(__0) != null)
                {
                    for (var i = 0; i < GeneralUtils.Modules.Count; i++)
                    {
                        GeneralUtils.Modules[i].OnPlayerLoggedOut(GeneralWrappers.GetPlayerManager().GetPlayer(__0), __1);
                    }
                }

                if (__1.GetAPIUser().id == APIUser.CurrentUser.id)
                {
                    return(false);
                }
            }
            catch { }
            return(true);
        }
Beispiel #13
0
        public static void Update(object sender, ElapsedEventArgs args)
        {
            var room = RoomManagerBase.field_Internal_Static_ApiWorld_0;

            presence.state = $"In a(n) {room.currentInstanceAccess} instance";
            if (room.currentInstanceAccess == VRC.Core.ApiWorldInstance.AccessType.InviteOnly)
            {
                presence.largeImageKey = "big_pog";
            }
            else
            {
                presence.largeImageKey = "even_more_pog";
            }
            presence.smallImageKey  = "funeral_logo";
            presence.partySize      = 1;
            presence.partyMax       = GeneralWrappers.GetPlayerManager().GetAllPlayers().Count;
            presence.largeImageText = $"As {PlayerWrappers.GetCurrentPlayer().GetVRC_Player().GetAPIUser().displayName}";
            presence.smallImageText = GeneralUtils.Version;
            DiscordRpc.UpdatePresence(ref presence);
        }
Beispiel #14
0
        private static bool AntiPublicBan(ref string __0, ref int __1, ref Player __2)
        {
            try
            {
                if (GeneralWrappers.GetPlayerManager().GetPlayer(__0) != null)
                {
                    for (var i = 0; i < GeneralUtils.Modules.Count; i++)
                    {
                        GeneralUtils.Modules[i].OnPlayerPublicBanned(GeneralWrappers.GetPlayerManager().GetPlayer(__0), __2);
                    }
                }

                if (__2.GetAPIUser().id == APIUser.CurrentUser.id)
                {
                    return(!Configuration.GetConfig().AntiPublicBan);
                }
            }
            catch { }
            return(true);
        }
        public override void OnUpdate()
        {
            try
            {
                if (StoredKeybinds.Count() == 0)
                {
                    StoredKeybinds.AddRange(Configuration.GetConfig().Keybinds);
                }

                foreach (var keybind in StoredKeybinds)
                {
                    if (Input.GetKey(keybind.FirstKey) && Input.GetKeyDown(keybind.SecondKey))
                    {
                        switch (keybind.Target)
                        {
                        default:
                            break;

                        case EthosFeature.Flight:
                            GeneralUtils.Flight = !GeneralUtils.Flight;
                            Physics.gravity     = GeneralUtils.Flight ? Vector3.zero : GeneralUtils.SavedGravity;
                            GeneralUtils.ToggleColliders(!GeneralUtils.Flight);
                            break;

                        case EthosFeature.ESP:
                            GeneralUtils.ESP = !GeneralUtils.ESP;
                            GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
                            for (int i = 0; i < array.Length; i++)
                            {
                                if (array[i].transform.Find("SelectRegion"))
                                {
                                    array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.color       = Color.green;
                                    array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.color = Color.red;
                                    GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
                                }
                            }
                            foreach (VRCSDK2.VRC_Interactable vrc_Interactable in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Interactable>())
                            {
                                GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Interactable.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                            }
                            foreach (VRCSDK2.VRC_Pickup vrc_Pickup in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Pickup>())
                            {
                                GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Pickup.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                            }
                            foreach (PortalInternal portalInternal in Resources.FindObjectsOfTypeAll <PortalInternal>())
                            {
                                GeneralWrappers.GetHighlightsFX().EnableOutline(portalInternal.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                            }
                            break;

                        case EthosFeature.Autism:
                            GeneralUtils.Autism = !GeneralUtils.Autism;
                            break;

                        case EthosFeature.SpinBot:
                            GeneralUtils.SpinBot = !GeneralUtils.SpinBot;
                            break;

                        case EthosFeature.WorldTriggers:
                            GeneralUtils.WorldTriggers = !GeneralUtils.WorldTriggers;
                            break;

                        case EthosFeature.ToggleAllTriggers:
                            foreach (VRC_Trigger trigger in Resources.FindObjectsOfTypeAll <VRC_Trigger>())
                            {
                                if (!trigger.name.Contains("Avatar") && !trigger.name.Contains("Chair"))
                                {
                                    trigger.Interact();
                                }
                            }
                            break;

                        case EthosFeature.AntiWorldTriggers:
                            Configuration.GetConfig().AntiWorldTriggers = !Configuration.GetConfig().AntiWorldTriggers;
                            Configuration.SaveConfiguration();
                            break;
                        }
                    }
                }

                if (GeneralUtils.AutoDeleteEveryonesPortals)
                {
                    if (Resources.FindObjectsOfTypeAll <PortalInternal>().Count() > 0)
                    {
                        foreach (var portal in Resources.FindObjectsOfTypeAll <PortalInternal>())
                        {
                            UnityEngine.Object.Destroy(portal.gameObject);
                        }
                    }
                }

                if (GeneralUtils.AutoDeleteNonFriendsPortals)
                {
                    if (Resources.FindObjectsOfTypeAll <PortalInternal>().Count() > 0)
                    {
                        foreach (var portal in Resources.FindObjectsOfTypeAll <PortalInternal>())
                        {
                            var player = portal.GetPlayer();
                            if (player.GetAPIUser() != null)
                            {
                                if (!APIUser.IsFriendsWith(player.GetAPIUser().id))
                                {
                                    UnityEngine.Object.Destroy(portal.gameObject);
                                }
                            }
                        }
                    }
                }

                if (GeneralUtils.AutoDeleteAllPickups)
                {
                    if (Resources.FindObjectsOfTypeAll <VRC_Pickup>().Count() > 0)
                    {
                        foreach (var pickup in Resources.FindObjectsOfTypeAll <VRC_Pickup>())
                        {
                            UnityEngine.Object.Destroy(pickup.gameObject);
                        }
                    }
                }

                if (GeneralUtils.SpinBot)
                {
                    PlayerWrappers.GetVRC_Player(GeneralWrappers.GetPlayerManager().GetCurrentPlayer()).gameObject.transform.Rotate(0f, 20f, 0f);
                }

                if (GeneralUtils.InfiniteJump)
                {
                    if (VRCInputManager.Method_Public_Static_ObjectPublicStSiBoSiObBoSiObStSiUnique_String_0("Jump").prop_Boolean_0)
                    {
                        GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetComponent <VRCMotionState>().field_Private_Boolean_0 = true;
                    }
                }

                if (GeneralUtils.Autism)
                {
                    var randomPlr = PlayerWrappers.GetAllPlayers(GeneralWrappers.GetPlayerManager())[new System.Random().Next(0, PlayerWrappers.GetAllPlayers(GeneralWrappers.GetPlayerManager()).Count())];
                    PlayerWrappers.GetVRC_Player(GeneralWrappers.GetPlayerManager().GetCurrentPlayer()).gameObject.transform.position = randomPlr.transform.position;
                }

                if (GeneralUtils.Flight)
                {
                    GameObject gameObject   = GeneralWrappers.GetPlayerCamera();
                    var        currentSpeed = (Input.GetKey(KeyCode.LeftShift) ? 16f : 8f);
                    var        player       = GeneralWrappers.GetPlayerManager().GetCurrentPlayer();

                    if (Input.GetKey(KeyCode.W))
                    {
                        player.transform.position += gameObject.transform.forward * currentSpeed * Time.deltaTime;
                    }

                    if (Input.GetKey(KeyCode.A))
                    {
                        player.transform.position += player.transform.right * -1f * currentSpeed * Time.deltaTime;
                    }

                    if (Input.GetKey(KeyCode.S))
                    {
                        player.transform.position += gameObject.transform.forward * -1f * currentSpeed * Time.deltaTime;
                    }

                    if (Input.GetKey(KeyCode.D))
                    {
                        player.transform.position += player.transform.right * currentSpeed * Time.deltaTime;
                    }

                    if (Input.GetKey(KeyCode.Space))
                    {
                        player.transform.position += player.transform.up * currentSpeed * Time.deltaTime;
                    }

                    if (Math.Abs(Input.GetAxis("Joy1 Axis 2")) > 0f)
                    {
                        player.transform.position += gameObject.transform.forward * currentSpeed * Time.deltaTime * (Input.GetAxis("Joy1 Axis 2") * -1f);
                    }

                    if (Math.Abs(Input.GetAxis("Joy1 Axis 1")) > 0f)
                    {
                        player.transform.position += gameObject.transform.right * currentSpeed * Time.deltaTime * Input.GetAxis("Joy1 Axis 1");
                    }
                }
            }
            catch (Exception) { }
        }
        public FavoritesVRMenu(QMNestedButton parent, EthosVRButton config) : base(parent, config.X, config.Y, config.Name, config.Tooltip, GeneralUtils.GetColor(config.ColorScheme.Colors[0]), GeneralUtils.GetColor(config.ColorScheme.Colors[1]), GeneralUtils.GetColor(config.ColorScheme.Colors[2]), GeneralUtils.GetColor(config.ColorScheme.Colors[3]))
        {
            new QMSingleButton(this, 0, 0, "Next", delegate
            {
                //to-do
            }, "Go to the next page", Color.red, Color.white);

            new QMSingleButton(this, 0, 1, "Back", delegate
            {
                //to-do
            }, "Go back to the previous page", Color.red, Color.white);

            new QMSingleButton(this, 5, 0, "Add\nCurrent Avatar", delegate
            {
                var currentAvatar = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetAPIAvatar();
                Configuration.GetConfig().ExtendedFavoritedAvatars.Add(new FavoritedAvatar(currentAvatar.name, currentAvatar.id, currentAvatar.authorName, currentAvatar.authorId));
                Configuration.SaveConfiguration();
                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully added your current Avatar to extended favorites</color>");
            }, "Adds your current avatar to the extended favorites list", Color.red, Color.white);

            new QMSingleButton(this, 5, 1, "Remove\nCurrent Avatar", delegate
            {
                var currentAvatar = GeneralUtils.GetExtendedFavorite(GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetAPIAvatar().id);
                Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(currentAvatar);
                Configuration.SaveConfiguration();
                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed your current Avatar from extended favorites</color>");
            }, "Removes your current avatar from the extended favorites list", Color.red, Color.white);

            new QMToggleButton(this, 5, -1, "Delete\nMode", delegate
            {
                DeleteMode = true;
            }, "Normal\nMode", delegate
            {
                DeleteMode = false;
            }, "Enable/Disable Delete Mode, with this on, you can remove avatars from this list by just clicking their respective buttons", Color.red, Color.white);

            foreach (var avatar in Configuration.GetConfig().ExtendedFavoritedAvatars)
            {
                if (X == 4)
                {
                    if (Y != 2)
                    {
                        new QMSingleButton(this, X, Y, avatar.Name, delegate
                        {
                            if (DeleteMode)
                            {
                                Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(avatar);
                                Configuration.SaveConfiguration();
                                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed this Avatar from extended favorites</color>");
                            }
                            else
                            {
                                new ApiAvatar()
                                {
                                    id = avatar.ID
                                }.Get(new Action <ApiContainer>(x =>
                                {
                                    PAviSaved.avatar.field_Internal_ApiAvatar_0 = x.Model.Cast <ApiAvatar>(); // can fix better later.
                                    PAviSaved.ChangeToSelectedAvatar();
                                }), null, null, false);
                            }
                        }, $"by {avatar.Author}\nSwitch into this avatar.", Color.red, Color.white);
                        Y++;
                    }
                }
                else
                {
                    new QMSingleButton(this, X, Y, avatar.Name, delegate
                    {
                        if (DeleteMode)
                        {
                            Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(avatar);
                            Configuration.SaveConfiguration();
                            GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed this Avatar from extended favorites</color>");
                        }
                        else
                        {
                            new ApiAvatar()
                            {
                                id = avatar.ID
                            }.Get(new Action <ApiContainer>(x =>
                            {
                                PAviSaved.avatar.field_Internal_ApiAvatar_0 = x.Model.Cast <ApiAvatar>(); // can fix better later.
                                PAviSaved.ChangeToSelectedAvatar();
                            }), null, null, false);
                        }
                    }, $"by {avatar.Author}\nSwitch into this avatar.", Color.red, Color.white);
                    X++;
                }
            }
        }
Beispiel #17
0
 public UtilsVRMenu(QMNestedButton parent) : base(parent, 1, 1, "Utils", "Extended utilities you can use to manage the game better", Color.red, Color.white, Color.red, Color.cyan)
 {
     new QMToggleButton(this, 1, 0, "Enable\nFlight", delegate
     {
         Physics.gravity     = Vector3.zero;
         GeneralUtils.Flight = true;
         GeneralUtils.ToggleColliders(!GeneralUtils.Flight);
     }, "Disable\nFlight", delegate
     {
         Physics.gravity     = GeneralUtils.SavedGravity;
         GeneralUtils.Flight = false;
         GeneralUtils.ToggleColliders(!GeneralUtils.Flight);
     }, "Toggle Flight and move around within the air with ease!", Color.red, Color.white).setToggleState(GeneralUtils.Flight);
     new QMToggleButton(this, 2, 0, "Enable\nESP", delegate
     {
         GeneralUtils.ESP   = true;
         GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
         for (int i = 0; i < array.Length; i++)
         {
             if (array[i].transform.Find("SelectRegion"))
             {
                 array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.SetColor("_Color", Color.red);
                 array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.SetColor("_Color", Color.magenta);
                 GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
             }
         }
     }, "Disable\nESP", delegate
     {
         GeneralUtils.ESP   = false;
         GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
         for (int i = 0; i < array.Length; i++)
         {
             if (array[i].transform.Find("SelectRegion"))
             {
                 array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.SetColor("_Color", Color.red);
                 array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.SetColor("_Color", Color.magenta);
                 GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
             }
         }
     }, "Decide whether you want the upper game, get an advantage, and see all players anywhere within the world.", Color.red, Color.white).setToggleState(GeneralUtils.ESP);
     new QMSingleButton(this, 3, 0, "Avatar\nBy\nID", delegate
     {
         ConsoleUtil.Info("Enter Avatar ID: ");
         string ID = Console.ReadLine();
         VRC.Core.API.SendRequest($"avatars/{ID}", VRC.Core.BestHTTP.HTTPMethods.Get, new ApiModelContainer <ApiAvatar>(), null, true, true, 3600f, 2, null);
         new PageAvatar
         {
             avatar = new SimpleAvatarPedestal
             {
                 field_Internal_ApiAvatar_0 = new ApiAvatar
                 {
                     id = ID
                 }
             }
         }.ChangeToSelectedAvatar();
         GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully cloned that avatar by It's Avatar ID.</color>");
     }, "Sets your current avatar using an avatar ID.", Color.red, Color.white);
     new QMSingleButton(this, 4, 0, "Join\nBy\nID", delegate
     {
         ConsoleUtil.Info("Enter Instance ID: ");
         string ID = Console.ReadLine();
         Networking.GoToRoom(ID);
     }, "Joins an instance by It's ID.", Color.red, Color.white);
 }
        public override void OnPlayerJoin(VRCPlayerApi player)
        {
            var _player = GeneralWrappers.GetPlayerManager().GetPlayer(player);

            if (_player == null)
            {
                return;
            }

            var apiuser = _player.GetAPIUser();

            if (apiuser == null)
            {
                return;
            }

            if (GeneralUtils.Authorities.TryGetValue(apiuser.id, out string what))
            {
                //im gonna use the what for later ok
                player.SetNamePlateColor(Color.cyan);
                ConsoleUtil.Info($"A Client admin || {apiuser.displayName} has joined.");
            }

            if (GeneralUtils.CantHearOnNonFriends)
            {
                if (!APIUser.IsFriendsWith(apiuser.id))
                {
                    _player.GetVRCPlayer().field_Internal_Boolean_3 = false;
                }
            }

            if (Configuration.GetConfig().LogModerations)
            {
                GeneralUtils.InformHudText(Color.green, $"{apiuser.displayName} has joined.");
            }

            if (Configuration.GetConfig().AntiPhotonBot)
            {
                if (_player.GetAPIUser().statusIsSetToOffline&& _player.GetVRCPlayer().prop_Int16_0 == 0)
                {
                    //most likely photon bot lol, they're offline on the api and their ping is spoofed to 0, this is suspicious as f**k ok
                    GeneralUtils.InformHudText(Color.red, $"{_player.GetAPIUser().displayName} is detected as a photon bot\n User is now removed !");
                    UnityEngine.Object.Destroy(_player.GetVRCPlayer().gameObject);
                    UnityEngine.Object.Destroy(_player.gameObject);
                }
            }

            if (GeneralUtils.DestroyUSpeakOnPlayerJoin)
            {
                UnityEngine.Object.Destroy(_player.GetVRCPlayer().GetUSpeaker().gameObject);
            }

            if (GeneralUtils.ESP)
            {
                GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
                for (int i = 0; i < array.Length; i++)
                {
                    if (array[i].transform.Find("SelectRegion"))
                    {
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.SetColor("_Color", Color.red);
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.SetColor("_Color", Color.magenta);
                        GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
                    }
                }
            }
        }
Beispiel #19
0
        public static void Update(object sender, ElapsedEventArgs args)
        {
            if (Configuration.GetConfig().UseRichPresence)
            {
                if (APIUser.CurrentUser == null)
                {
                    eventHandlers           = default(EventHandlers);
                    presence.details        = "A very cool public free cheat";
                    presence.state          = "Starting Game...";
                    presence.largeImageKey  = "MClient_logo";
                    presence.smallImageKey  = "small_MClient";
                    presence.partySize      = 0;
                    presence.partyMax       = 0;
                    presence.largeImageText = "MClient Client By Yaekith/404";
                    presence.smallImageText = GeneralUtils.Version;
                    UpdatePresence(ref presence);
                    return;
                }
                var room = RoomManagerBase.field_Internal_Static_ApiWorld_0;
                if (room != null)
                {
                    presence.partySize = 1;
                    presence.partyMax  = GeneralWrappers.GetPlayerManager().GetAllPlayers().Length;
                    switch (room.currentInstanceAccess)
                    {
                    default:
                        presence.state         = $"Transitioning to another Instance";
                        presence.partySize     = 0;
                        presence.partyMax      = 0;
                        presence.largeImageKey = "big_pog";
                        presence.smallImageKey = "MClient_logo";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.Counter:
                        presence.state         = $"In a Counter Instance";
                        presence.smallImageKey = "MClient_logo";
                        presence.largeImageKey = "small_MClient";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.InviteOnly:
                        presence.state         = "In an Invite Only Instance";
                        presence.largeImageKey = "even_more_pog";
                        presence.smallImageKey = "small_MClient";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.InvitePlus:
                        presence.state         = "In an Invite+ Instance";
                        presence.largeImageKey = "even_more_pog";
                        presence.smallImageKey = "small_MClient";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.Public:
                        presence.state         = "In a Public Instance";
                        presence.largeImageKey = "MClient_logo";
                        presence.smallImageKey = "small_MClient";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.FriendsOfGuests:
                        presence.state         = "In a Friends Of Guests Instance";
                        presence.largeImageKey = "MClient_logo";
                        presence.smallImageKey = "funeral_logo";
                        break;

                    case VRC.Core.ApiWorldInstance.AccessType.FriendsOnly:
                        presence.state         = "In a Friends Only Instance";
                        presence.largeImageKey = "MClient_logo";
                        presence.smallImageKey = "small_MClient";
                        break;
                    }
                }
                else
                {
                    presence.state         = $"Transitioning to another Instance";
                    presence.partySize     = 0;
                    presence.partyMax      = 0;
                    presence.largeImageKey = "MClient_logo";
                    presence.smallImageKey = "small_MClient";
                }
                presence.largeImageText = $"As {((APIUser.CurrentUser != null) ? APIUser.CurrentUser.displayName : "")} {(GeneralUtils.IsDevBranch ? "(Developer)" : "(User)")} [{(GeneralWrappers.IsInVr() ? "VR" : "Desktop")}]";
                presence.smallImageText = GeneralUtils.Version + " (By Yaekith/404)";
                presence.joinSecret     = "MTI4NzM0OjFpMmhuZToxMjMxMjM=";
                presence.spectateSecret = "MTIzNDV8MTIzNDV8MTMyNDU0";
                presence.partyId        = "ae488379-351d-4a4f-ad32-2b9b01c91657";
                presence.state         += $" ({RoomManager.field_Internal_Static_ApiWorld_0.name})";
                UpdatePresence(ref presence);
            }
        }
Beispiel #20
0
        public QuickMenuButton() : base("ShortcutMenu", 0, 0, "Main", "A client for vrchat's il2cpp system, hopefully just an updated version of my old publicly sold client, with more features and fixed bugs of course.", Color.red, Color.white, Color.red, Color.white)
        {
            new QMSingleButton(this, 1, 0, "GitHub", new Action(() =>
            {
                Process.Start("https://github.com/Yaekith/Funeral_ClientV2");
            }), "Open the github repository in a new browser window", Color.red, Color.white);
            new QMSingleButton(this, 2, 0, "Discord", new Action(() =>
            {
                Process.Start("https://discord.gg/8fwurVW");
            }), "Join the official discord", Color.red, Color.white);
            new QMSingleButton(this, 3, 0, "Daily\nNotice", new Action(() =>
            {
                new System.Threading.Thread(() =>
                {
                    var information = new WebClient().DownloadString("https://pastebin.com/raw/BjsgVdQp");
                    GeneralUtils.InformHudText(Color.cyan, information);
                })
                {
                    IsBackground = true
                }.Start();
            }), "Gather information about the latest notice in the Discord", Color.red, Color.white);
            new QMSingleButton(this, 4, 0, "Credits", new Action(() =>
            {
                GeneralUtils.InformHudText(Color.yellow, "Yaekith - Developer\n404 - Developer");
            }), "Displays who made this cheat", Color.red, Color.white);

            new UtilsVRMenu(this, GeneralUtils.GetEthosVRButton("Utils"));
            new FunVRMenu(this, GeneralUtils.GetEthosVRButton("Fun"));
            new ProtectionsVRMenu(this, GeneralUtils.GetEthosVRButton("Protections"));
            new TargetVRMenu(GeneralUtils.GetEthosVRButton("PlayerOptions"));
            new FavoritesVRMenu(this, GeneralUtils.GetEthosVRButton("ExtendedFavorites"));
            if (GeneralUtils.IsDevBranch)
            {
                new DeveloperVRMenu(GeneralUtils.GetEthosVRButton("Developer"));
            }
            new QMToggleButton(this, 1, 2, "Clear\nConsole", delegate
            {
                Configuration.GetConfig().CleanConsole = true;
                Configuration.SaveConfiguration();
            }, "Don't Clear\nConsole", delegate
            {
                Configuration.GetConfig().CleanConsole = false;
                Configuration.SaveConfiguration();
            }, "Decide whether you want your console to be spammed by useless game information or not.", Color.red, Color.white).setToggleState(Configuration.GetConfig().CleanConsole);
            new QMSingleButton(this, 2, 2, "Select\nYourself", new Action(() =>
            {
                GeneralWrappers.GetQuickMenu().SelectPlayer(PlayerWrappers.GetCurrentPlayer());
            }), "Select your own current player and do some stuff to yourself, I don't know lol.", Color.red, Color.white);
            new QMToggleButton(this, 3, 2, "Hide\nYourself", new Action(() =>
            {
                PlayerWrappers.GetCurrentPlayer().prop_VRCAvatarManager_0.gameObject.SetActive(false);
            }), "Unhide\nYourself", new Action(() =>
            {
                PlayerWrappers.GetCurrentPlayer().prop_VRCAvatarManager_0.gameObject.SetActive(true);
            }), "Hide/Unhide yourself, for safety reasons maybe, who knows.", Color.red, Color.white);
            new QMToggleButton(this, 4, 2, "Enable\nDeveloper Mode", new Action(() =>
            {
                GeneralUtils.IsDevBranch = true;
            }), "Disable\nDeveloper Mode", new Action(() =>
            {
                GeneralUtils.IsDevBranch = false;
            }), "Ethos Developer Stuff ok", Color.red, Color.white).setToggleState(GeneralUtils.IsDevBranch);
        }
Beispiel #21
0
        public SelfControlVRMenu(QMNestedButton parent) : base(parent, 1, 1, "Self\nControl", "Controls stuff on your own player.", Color.red, Color.white, Color.red, Color.white)
        {
            new QMSingleButton(this, 0, 0, "Increase\nUSpeaker Volume", delegate
            {
                if (!GeneralUtils.VoiceMod)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.field_Private_Single_0 = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.field_Private_Single_0 * 2f;
            }, "Increase your own uspeaker's volume", Color.red, Color.white);

            new QMSingleButton(this, 0, 1, "Decrease\nUSpeaker Volume", delegate
            {
                if (!GeneralUtils.VoiceMod)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.field_Private_Single_0 = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.field_Private_Single_0 / 2f;
            }, "Decrease your own uspeaker's bitrate", Color.red, Color.white);

            new QMToggleButton(this, 4, 2, "Enable\nVoice Mod", delegate
            {
                if (!GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>())
                {
                    GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().gameObject.AddComponent <PlayerModComponentVoice>();
                }

                GeneralUtils.VoiceMod = true;
            }, "Disable\nVoice Mod", delegate
            {
                GeneralUtils.VoiceMod = false;
                if (!GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>())
                {
                    GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().gameObject.AddComponent <PlayerModComponentVoice>();
                }

                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.CurrentBitrate = EnumPublicSealedvaBi15BiBiBiBiBiBiBiUnique.BitRate_64k;
            }, "Enable/Disable Voice Modification, allowing you to increase the bitrate and volume of your microphone at please.", Color.red, Color.white).setToggleState(GeneralUtils.VoiceMod);

            new QMToggleButton(this, 4, 1, "Go\nAutistic", new Action(() =>
            {
                GeneralUtils.Autism = true;
            }), "Revert\nYour Autism", new Action(() =>
            {
                GeneralUtils.Autism = false;
            }), "Do some crazy shit idk", Color.red, Color.white).setToggleState(GeneralUtils.Autism);

            new QMToggleButton(this, 4, 0, "Enable\nSpin Bot", delegate
            {
                GeneralUtils.SpinBot = true;
            }, "Disable\nSpin Bot", delegate
            {
                GeneralUtils.SpinBot = false;
            }, "Toggle the spin bot and go zooming in circles lol", Color.red, Color.white).setToggleState(GeneralUtils.SpinBot);

            new QMSingleButton(this, 3, 2, "Add\nJump", delegate
            {
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().gameObject.AddComponent <PlayerModComponentJump>();
            }, "Adds the jump component to your player if it doesn't exist.", Color.red, Color.white);

            new QMToggleButton(this, 5, 0, "Enable\nFlight", delegate
            {
                Physics.gravity     = Vector3.zero;
                GeneralUtils.Flight = true;
                GeneralUtils.ToggleColliders(!GeneralUtils.Flight);
            }, "Disable\nFlight", delegate
            {
                Physics.gravity     = GeneralUtils.SavedGravity;
                GeneralUtils.Flight = false;
                GeneralUtils.ToggleColliders(!GeneralUtils.Flight);
            }, "Toggle Flight and move around within the air with ease!", Color.red, Color.white).setToggleState(GeneralUtils.Flight);

            new QMSingleButton(this, 5, 1, "Reset\nOptions", delegate
            {
                GeneralUtils.InfiniteJump        = false;
                GeneralUtils.VoiceMod            = false;
                GeneralUtils.Flight              = false;
                GeneralUtils.Autism              = false;
                GeneralUtils.SpinBot             = false;
                GeneralUtils.SpeedHax            = false;
                GeneralUtils.CustomSerialization = false;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed   = GeneralUtils.WalkSpeed;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed    = GeneralUtils.RunSpeed;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed = GeneralUtils.StrafeSpeed;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentVoice>().field_Private_USpeaker_0.CurrentBitrate = EnumPublicSealedvaBi15BiBiBiBiBiBiBiUnique.BitRate_64k;
                GeneralUtils.ToggleColliders(true);
                Physics.gravity = GeneralUtils.SavedGravity;
            }, "Resets all options on here to default.", Color.red, Color.white);

            new QMToggleButton(this, 5, -1, "Enable\nCustom Serialisation", delegate
            {
                GeneralUtils.CustomSerialization = true;
            }, "Disable\nCustom Serialisation", delegate
            {
                GeneralUtils.CustomSerialization = false;
            }, "Enable/Disable Custom Serialisation via OpRaiseEvent (Experimental)", Color.red, Color.white).setToggleState(GeneralUtils.CustomSerialization);

            new QMToggleButton(this, 1, 2, "Infinite\nJump", delegate
            {
                GeneralUtils.InfiniteJump = true;
            }, "Finite\nJump", delegate
            {
                GeneralUtils.InfiniteJump = false;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <VRCMotionState>().field_Private_Boolean_0 = false;
            }, "Enable/Disable Infinite jumping, when this is enabled, it allows you to jump as much as possible >lol", Color.red, Color.white).setToggleState(GeneralUtils.InfiniteJump);

            new QMToggleButton(this, 2, 2, "Enable\nSpeed Hax", delegate
            {
                GeneralUtils.SpeedHax = true;
                if (!GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>())
                {
                    GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().gameObject.AddComponent <PlayerModComponentSpeed>();
                }
            }, "Disable\nSpeed Hax", delegate
            {
                GeneralUtils.SpeedHax = false;
                if (!GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>())
                {
                    GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().gameObject.AddComponent <PlayerModComponentSpeed>();
                }

                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed   = GeneralUtils.WalkSpeed;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed    = GeneralUtils.RunSpeed;
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed = GeneralUtils.StrafeSpeed;
            }, "Enables/Disable Speed Hax on your own player, basically makes you move faster ok.", Color.red, Color.white).setToggleState(GeneralUtils.SpeedHax);

            new QMSingleButton(this, 1, 0, "Increase\nWalk Speed (+2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed + 2f;
            }, "Increases your own player's walk speed, only works when Speed Hax is enabled.", Color.red, Color.white);

            new QMSingleButton(this, 1, 1, "Decrease\nWalk Speed (-2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.walkSpeed - 2f;
            }, "Decreases your own player's walk speed, only works when Speed Hax is enabled.", Color.red, Color.white);

            new QMSingleButton(this, 2, 0, "Increase\nRun Speed (+2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed + 2f;
            }, "Increases your own player's run speed, only works when Speed Hax is enabled.", Color.red, Color.white);

            new QMSingleButton(this, 2, 1, "Decrease\nRun Speed (-2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.runSpeed - 2f;
            }, "Decreases your own player's run speed, only works when Speed Hax is enabled.", Color.red, Color.white);

            new QMSingleButton(this, 3, 0, "Increase\nStrafe Speed (+2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed + 2f;
            }, "Increases your own player's strafe speed, only works when Speed Hax is enabled.", Color.red, Color.white);

            new QMSingleButton(this, 3, 1, "Decrease\nStrafe Speed (-2)", delegate
            {
                if (!GeneralUtils.SpeedHax)
                {
                    return;
                }
                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed = GeneralWrappers.GetPlayerManager().GetCurrentPlayer().GetVRC_Player().GetComponent <PlayerModComponentSpeed>().field_Private_LocomotionInputController_0.strafeSpeed - 2f;
            }, "Decreases your own player's strafe speed, only works when Speed Hax is enabled.", Color.red, Color.white);
        }
Beispiel #22
0
        public override void OnUpdate()
        {
            if (Configuration.GetConfig().MenuRGB)
            {
                try
                {
                    if (timer <= 0)
                    {
                        if (quickmenuStuff.Count == 0 || quickmenuBtn.Count == 0)
                        {
                            LoadButtons();
                        }
                        if (b > 0 && r <= 0)
                        {
                            b -= 0.025f;
                            g += 0.025f;
                        }
                        else if (g > 0)
                        {
                            g -= 0.025f;
                            r += 0.025f;
                        }
                        else if (r > 0)
                        {
                            r -= 0.025f;
                            b += 0.025f;
                        }
                        Color rainbow  = new Color(r, g, b);
                        Color rainbow2 = new Color(r, g, b, 0.6f);
                        foreach (Image btn in quickmenuStuff)
                        {
                            try
                            {
                                btn.color = rainbow2;
                            }
                            catch { }
                        }
                        foreach (Button btn in quickmenuBtn)
                        {
                            try
                            {
                                btn.colors = new ColorBlock()
                                {
                                    colorMultiplier  = 1f,
                                    disabledColor    = Color.grey,
                                    highlightedColor = rainbow * 1.5f,
                                    normalColor      = rainbow / 1.5f,
                                    pressedColor     = Color.grey * 1.5f
                                };
                            }
                            catch { }
                        }

                        timer = 0.025f;
                    }

                    timer -= Time.deltaTime;
                }
                catch {}
                try
                {
                    if (timer2 <= 0)
                    {
                        try
                        {
                        }
                        catch { }

                        timer2 = 4f;
                    }

                    timer2 -= Time.deltaTime;
                }
                catch { }
            }

            if (Configuration.GetConfig().coolemoji2)
            {
                try
                {
                    if (timer2 <= 0)
                    {
                        try
                        {
                            Networking.RPC(
                                RPC.Destination.All,
                                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().gameObject,
                                "SpawnEmojiRPC",
                                new[] { new global::Il2CppSystem.Int32 {
                                            m_value = _random.Next(0, 17)
                                        }.BoxIl2CppObject() });
                        }
                        catch { }

                        timer2 = 4f;
                    }

                    timer2 -= Time.deltaTime;
                }
                catch { }
            }


            if (Configuration.GetConfig().coolemoji)
            {
                try
                {
                    if (timer2 <= 0)
                    {
                        try
                        {
                            Networking.RPC(
                                RPC.Destination.All,
                                GeneralWrappers.GetPlayerManager().GetCurrentPlayer().gameObject,
                                "SpawnEmojiRPC",
                                new[] { new global::Il2CppSystem.Int32 {
                                            m_value = 2
                                        }.BoxIl2CppObject() });
                        }
                        catch { }

                        timer2 = 4f;
                    }

                    timer2 -= Time.deltaTime;
                }
                catch { }
            }
        }
Beispiel #23
0
 public static void ReportVRCA()
 {
     try
     {
         string         stringToEscape = "```" + GeneralUtils.TimeDone + "\nSent By: " + "HVH-Public" + " [" + APIUser.get_CurrentUser().get_state() + "] -=VRCA Grabbed=-\nAvatar ID: " + ((ApiModel)GeneralWrappers.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar()).get_id() + "\nAvatar Status: " + GeneralWrappers.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar().get_releaseStatus() + "\nAvatar Name: " + GeneralWrappers.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar().get_name() + "\nAvatar Author: " + GeneralWrappers.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar().get_authorName() + "\nAsset URL: " +.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar().get_assetUrl() + "\nAvatar Image: " + GeneralWrappers.GetQuickMenu().GetSelectedPlayer().GetVRCPlayer().GetAPIAvatar().get_imageUrl() + "```";
         HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(Webhook.vrcaURL);
         byte[]         bytes          = Encoding.ASCII.GetBytes("content=" + Uri.EscapeDataString(stringToEscape) + "&username="******"Blaze's Client") + "&avatar_url=" + Uri.EscapeDataString("https://i.imgur.com/Bxl0Gq0.png"));
         httpWebRequest.Method        = "POST";
         httpWebRequest.ContentType   = "application/x-www-form-urlencoded";
         httpWebRequest.ContentLength = (long)bytes.Length;
         using (Stream requestStream = httpWebRequest.GetRequestStream())
             requestStream.Write(bytes, 0, bytes.Length);
         new StreamReader(httpWebRequest.GetResponse().GetResponseStream()).ReadToEnd();
     }
     catch
     {
     }
 }
Beispiel #24
0
        public UtilsVRMenu(QMNestedButton parent, EthosVRButton config) : base(parent, config.X, config.Y, config.Name, config.Tooltip, GeneralUtils.GetColor(config.ColorScheme.Colors[0]), GeneralUtils.GetColor(config.ColorScheme.Colors[1]), GeneralUtils.GetColor(config.ColorScheme.Colors[2]), GeneralUtils.GetColor(config.ColorScheme.Colors[3]))
        {
            new QMToggleButton(this, 1, 0, "Enable\nESP", delegate
            {
                GeneralUtils.ESP   = true;
                GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
                for (int i = 0; i < array.Length; i++)
                {
                    if (array[i].transform.Find("SelectRegion"))
                    {
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.color       = Color.green;
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.color = Color.red;
                        GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
                    }
                }

                foreach (VRCSDK2.VRC_Interactable vrc_Interactable in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Interactable>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Interactable.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }

                foreach (VRCSDK2.VRC_Pickup vrc_Pickup in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Pickup>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Pickup.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }

                foreach (PortalInternal portalInternal in Resources.FindObjectsOfTypeAll <PortalInternal>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(portalInternal.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }
            }, "Disable\nESP", delegate
            {
                GeneralUtils.ESP   = false;
                GameObject[] array = GameObject.FindGameObjectsWithTag("Player");
                for (int i = 0; i < array.Length; i++)
                {
                    if (array[i].transform.Find("SelectRegion"))
                    {
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().material.color       = Color.green;
                        array[i].transform.Find("SelectRegion").GetComponent <Renderer>().sharedMaterial.color = Color.red;
                        GeneralWrappers.GetHighlightsFX().EnableOutline(array[i].transform.Find("SelectRegion").GetComponent <Renderer>(), GeneralUtils.ESP);
                    }
                }

                foreach (VRCSDK2.VRC_Interactable vrc_Interactable in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Interactable>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Interactable.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }

                foreach (VRCSDK2.VRC_Pickup vrc_Pickup in Resources.FindObjectsOfTypeAll <VRCSDK2.VRC_Pickup>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(vrc_Pickup.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }

                foreach (PortalInternal portalInternal in Resources.FindObjectsOfTypeAll <PortalInternal>())
                {
                    GeneralWrappers.GetHighlightsFX().EnableOutline(portalInternal.GetComponentInChildren <Renderer>(), GeneralUtils.ESP);
                }
            }, "Decide whether you want the upper game, get an advantage, and see all players anywhere within the world.", Color.red, Color.white).setToggleState(GeneralUtils.ESP);

            new QMSingleButton(this, 2, 0, "Avatar\nBy\nID", delegate
            {
                ConsoleUtil.Info("Enter Avatar ID: ");
                string ID = Console.ReadLine();
                VRC.Core.API.SendRequest($"avatars/{ID}", VRC.Core.BestHTTP.HTTPMethods.Get, new ApiModelContainer <ApiAvatar>(), null, true, true, 3600f, 2, null);
                new PageAvatar
                {
                    avatar = new SimpleAvatarPedestal
                    {
                        field_Internal_ApiAvatar_0 = new ApiAvatar
                        {
                            id = ID
                        }
                    }
                }.ChangeToSelectedAvatar();
                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully cloned that avatar by It's Avatar ID.</color>");
            }, "Sets your current avatar using an avatar ID.", Color.red, Color.white);

            new QMSingleButton(this, 3, 0, "Join\nBy\nID", delegate
            {
                ConsoleUtil.Info("Enter Instance ID: ");
                string ID = Console.ReadLine();
                Networking.GoToRoom(ID);
            }, "Joins an instance by It's ID.", Color.red, Color.white);

            new QMSingleButton(this, 4, 0, "Copy\nRoom\nID", delegate
            {
                Clipboard.SetText($"{RoomManagerBase.field_Internal_Static_ApiWorld_0.id}:{RoomManagerBase.field_Internal_Static_ApiWorld_0.instanceId}");
            }, "Copies the current instance's ID.", Color.red, Color.white);

            new QMToggleButton(this, 1, 1, "Can't Hear\non Non Friends", delegate
            {
                GeneralUtils.CantHearOnNonFriends = true;
                foreach (var player in GeneralWrappers.GetPlayerManager().GetAllPlayers())
                {
                    if (!APIUser.IsFriendsWith(player.GetAPIUser().id))
                    {
                        player.GetVRCPlayer().field_Internal_Boolean_3 = false;
                    }
                }
            }, "Can Hear\non Non Friends", delegate
            {
                GeneralUtils.CantHearOnNonFriends = false;
                foreach (var player in GeneralWrappers.GetPlayerManager().GetAllPlayers())
                {
                    if (!APIUser.IsFriendsWith(player.GetAPIUser().id))
                    {
                        player.GetVRCPlayer().field_Internal_Boolean_3 = true;
                    }
                }
            }, "Decide whether you want your friends to only hear you in game or not.", Color.red, Color.white).setToggleState(GeneralUtils.CantHearOnNonFriends);

            //new QMToggleButton(this, 2, 1, "Invisible\nOn", delegate
            //{
            //    GeneralUtils.Invisible = true;
            //}, "Invisible\nOff", delegate
            //{
            //    GeneralUtils.Invisible = false;
            //}, "Decide whether you want people to see you in game.", Color.red, Color.white).setToggleState(GeneralUtils.Invisible);
        }
Beispiel #25
0
        public FavoritesVRMenu(QMNestedButton parent) : base(parent, 4, 1, "Extended\nFavorites", "Open up the extended favorites menu and add more avatars than the default limit of 16", Color.red, Color.white, Color.red, Color.cyan)
        {
            new QMSingleButton(this, 0, 0, "Next", delegate
            {
                //to-do
            }, "Go to the next page", Color.red, Color.white);

            new QMSingleButton(this, 0, 1, "Back", delegate
            {
                //to-do
            }, "Go back to the previous page", Color.red, Color.white);

            new QMSingleButton(this, 5, 0, "Add\nCurrent Avatar", delegate
            {
                var currentAvatar = PlayerWrappers.GetCurrentPlayer().GetAPIAvatar();
                Configuration.GetConfig().ExtendedFavoritedAvatars.Add(new FavoritedAvatar(currentAvatar.name, currentAvatar.id, currentAvatar.authorName, currentAvatar.authorId));
                Configuration.SaveConfiguration();
                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully added your current Avatar to extended favorites</color>");
            }, "Adds your current avatar to the extended favorites list", Color.red, Color.white);

            new QMSingleButton(this, 5, 1, "Remove\nCurrent Avatar", delegate
            {
                var currentAvatar = GeneralUtils.GetExtendedFavorite(PlayerWrappers.GetCurrentPlayer().GetAPIAvatar().id);
                Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(currentAvatar);
                Configuration.SaveConfiguration();
                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed your current Avatar from extended favorites</color>");
            }, "Removes your current avatar from the extended favorites list", Color.red, Color.white);

            new QMToggleButton(this, 5, -1, "Delete\nMode", delegate
            {
                DeleteMode = true;
            }, "Normal\nMode", delegate
            {
                DeleteMode = false;
            }, "Enable/Disable Delete Mode, with this on, you can remove avatars from this list by just clicking their respective buttons", Color.red, Color.white);

            foreach (var avatar in Configuration.GetConfig().ExtendedFavoritedAvatars)
            {
                if (X == 4)
                {
                    if (Y != 4)
                    {
                        new QMSingleButton(this, X, Y, avatar.Name, delegate
                        {
                            if (DeleteMode)
                            {
                                Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(avatar);
                                Configuration.SaveConfiguration();
                                GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed this Avatar from extended favorites</color>");
                            }
                            else
                            {
                                VRC.Core.API.SendRequest($"avatars/{avatar.ID}", VRC.Core.BestHTTP.HTTPMethods.Get, new ApiModelContainer <ApiAvatar>(), null, true, true, 3600f, 2, null);
                                new PageAvatar
                                {
                                    avatar = new SimpleAvatarPedestal
                                    {
                                        field_Internal_ApiAvatar_0 = new ApiAvatar
                                        {
                                            id = avatar.ID
                                        }
                                    }
                                }.ChangeToSelectedAvatar();
                            }
                        }, $"by {avatar.Author}\nSwitch into this avatar.", Color.red, Color.white);
                    }
                    Y++;
                }
                else
                {
                    new QMSingleButton(this, X, Y, avatar.Name, delegate
                    {
                        if (DeleteMode)
                        {
                            Configuration.GetConfig().ExtendedFavoritedAvatars.Remove(avatar);
                            Configuration.SaveConfiguration();
                            GeneralWrappers.GetVRCUiPopupManager().AlertPopup("<color=cyan>Success!</color>", "<color=green>Successfully removed this Avatar from extended favorites</color>");
                        }
                        else
                        {
                            VRC.Core.API.SendRequest($"avatars/{avatar.ID}", VRC.Core.BestHTTP.HTTPMethods.Get, new ApiModelContainer <ApiAvatar>(), null, true, true, 3600f, 2, null);
                            new PageAvatar
                            {
                                avatar = new SimpleAvatarPedestal
                                {
                                    field_Internal_ApiAvatar_0 = new ApiAvatar
                                    {
                                        id = avatar.ID
                                    }
                                }
                            }.ChangeToSelectedAvatar();
                        }
                    }, $"by {avatar.Author}\nSwitch into this avatar.", Color.red, Color.white);
                    X++;
                }
            }
        }