Jump to content

How can i use on off with mshookfunction


z2x22

4 posts in this topic

Recommended Posts

Posted

this is my tweak code 

 

#include "Macros.h"

BOOL mofeed = true;


/*****************************/
// Please see sample.xm for sample menu code.

// title of your menu
static NSString *const title = @""; 

// who made the hack?
static NSString *const credits = @"";

// what font do you want the text to be? don't put anything for the default font
static NSString *const font = @"";

// should the menu have a blurred background? true or false
// FYI: this won't always look pretty
static const bool blur = true;

// blur style
// you MUST pick from these three: UIBlurEffectStyleExtraLight, UIBlurEffectStyleLight, or UIBlurEffectStyleDark
// *** If you opted for no blur background, this is ignored. However, you still need to fill it in. ***
static const UIBlurEffectStyle blurStyle = UIBlurEffectStyleDark;

// A complete list of fonts can be found here: http://iosfonts.com/
/******************************/


%hook UnityAppController


- (void)applicationDidBecomeActive:(id)arg0 {

    /* For iOS 11 compatibility, the theme color must be here. */
    /* The overall color for the menu and the button. */
    /* If you want a custom color, use rgb(color code) */
    /* Use rgb(arc4random_uniform(0xFFFFFF)) for a random color each launch. */
    UIColor *themeColor = rgb(arc4random_uniform(0xFFFFFF));

    UIWindow *main = [UIApplication sharedApplication].keyWindow.rootViewController.view;

    UIButton *openButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    openButton.frame = CGRectMake((main.frame.size.width/2)-15, (main.frame.size.height/2)+75, 30, 30);
    openButton.backgroundColor = [UIColor clearColor];
    openButton.layer.cornerRadius = 16;
    openButton.layer.borderWidth = 2;
    openButton.layer.borderColor = themeColor.CGColor;
    [openButton addTarget:self action:@selector(wasDragged:withEvent:) 
    forControlEvents:UIControlEventTouchDragInside];
    [openButton addTarget:self action:@selector(showMenu) 
    forControlEvents:UIControlEventTouchDownRepeat];

    if(!buttonAdded){
        timer(5){
            UIWindow *main = [UIApplication sharedApplication].keyWindow.rootViewController.view;
            menu = [[ModMenu alloc] initWithTitle:title credits:credits fontName:font theme:themeColor blur:blur blurStyle:blurStyle];

            /*
            Add features below this comment. Feel free to delete this comment if you're comfortable with how this menu works.

            Things are added to the menu in the order you have added them.

            A Hack is a switch that contains offsets, hacked hexes, and original hexes. Straightforward.
            To create one, call addHack.
            addHack is called as follows: addHack(@"Hack Name", @"The description of your hack", themeColor, {offsets}, {hacked hexes}, {original hexes});
            For example:
            addHack(@"Infinite Ammo", @"Ammo doesn't run out.", themeColor, {0x1001B292A}, {0xC0035FD6}, {0xD213AEB5});
            You can also have multiple offsets, hacked hexes, and original hexes. There's no limit to the number of offsets you can have! For example:
            addHack(@"No Recoil", @"No recoil prevents any recoil from being applied when you shoot.", themeColor, {0x356a7c, 0x110f0a}, {0x7047, 0x7047}, {0xf0b5, 0xf0b5});
            
            A Hook is a switch that used to hook a function and apply a feature. This doesn't make much sense because you cannot "unhook" a function if
            the user wants the feature off. It currently serves no purpose except for backward compatibility. All it does is turn on or off now.

            A SliderHook is a slider that can be customized to have a minimum and maximum value.
            Good for hooking a function and returning user-specified values. To create one, call addSliderHook.
            addSliderHook is called as follows: addSliderHook(@"Hack Name", @"Description of your hack", themeColor, initial value, minimum value, maximum value);
            For example:
            addSliderHook(@"Adjust Field of View", @"Adjust your field of view.", themeColor, 0, 100, 50);
            To get the value of a SliderHook:
            float value = [SliderHook getSliderValueForHook:@"hack name here"];
            int value = (int)[SliderHook getSliderValueForHook:@"hack name here"];

            A TextfieldHook is a textfield. Again, good for hooking a function and returning user-specified values.
            To create one, call addTextfieldHook.
            addTextfieldHook is called as follows: addTextfieldHook(@"Hack name", @"Description of your hack", themeColor);
            For example:
            addTextfieldHook(@"Set Gems", @"Set your gem amount.", themeColor);
            To get the value of a TextfieldHook:
            NSString *value = [TextfieldHook getTextfieldValueForHook:@"hack name here"];
            float value = [[TextfieldHook getTextfieldValueForHook:@"hack name here"] floatValue];
            int value = [[TextfieldHook getTextfieldValueForHook:@"hack name here"] intValue];

            A Switch does nothing but turn on or off. Useful when you are in a hooked function and need to know when to call a function or mod an instance variable.
            Since it doesn't do anything but turn on or off, it is essentially the same thing as a Hook.
            To create one, call addSwitch.
            addSwitch is called as follows:
            addSwitch(@"Hack name", @"Description of your hack", themeColor);
            For example:
            addSwitch(@"Kill Everyone", @"Kill everyone in the lobby", themeColor);
            To test whether or not a Switch is on:
            bool on = [Switch getSwitchOnForSwitch:@"hack name here"];

            If you want to use writeData in your Tweak.xm, now you can! Call writeData like you normally would.
            Call writeData after the menu has been created. If you use it where you add features, you'll be fine.

            Handle hooking with the HOOK and HOOK_NO_ORIG macros. I decided to let you guys handle hooking because
            it is too troublesome to make sure I handle cases where you guys pass parameters incorrectly.

            If I wanted to hook a function called LocalPlayer::Update at 0x1001B762A with a pointer to the original function, I would do this:
            HOOK(0x1001B762A, _LocalPlayer_Update, LocalPlayer_Update);

            Where _LocalPlayer_Update is the function you write, and LocalPlayer_Update is the pointer to the original function.

            You can use HOOK_NO_ORIG if you don't need the pointer to the original function:
            HOOK_NO_ORIG(0x1001B762A, _LocalPlayer_Update);

            If that is too confusing, you can always just use MSHookFunction. HOOK and HOOK_NO_ORIG just wrap MSHookFunction in a cleaner call.
            */

MSHookFunction((void *)getRealOffset(0x101196238), (void *)_PlayerMovement_Update, (void **)&PlayerMovement_Update);


            // add features


addSwitch(@"test", @"Kill everyone in the lobby", themeColor);
            
            mofeed = [Switch getSwitchOnForSwitch:@"test"];

            [main addSubview:openButton];
            [main addSubview:menu];



            buttonAdded = true;
        });




    }

    %orig;
}

void (* PlayerMovement_Update)(void *PlayerMovement);
void _PlayerMovement_Update(void *PlayerMovement) {

*(float *)((uint64_t)PlayerMovement + 0x48) = 100.0f;
*(float *)((uint64_t)PlayerMovement + 0x78) = 100.0f;
*(float *)((uint64_t)PlayerMovement + 0x80) = 0.0f;
*(float *)((uint64_t)PlayerMovement + 0x74) = 16.0f;
PlayerMovement_Update(PlayerMovement);
}

%new
- (void)showMenu {
    [menu show];
}

%new
- (void)wasDragged:(UIButton *)button withEvent:(UIEvent *)event
{
    UITouch *touch = [[event touchesForView:button] anyObject];

    CGPoint previousLocation = [touch previousLocationInView:button];
    CGPoint location = [touch locationInView:button];
    CGFloat delta_x = location.x - previousLocation.x;
    CGFloat delta_y = location.y - previousLocation.y;

    button.center = CGPointMake(button.center.x + delta_x, button.center.y + delta_y);
}
%end

%ctor {
MSHookFunction((void *)getRealOffset(0x101196238), (void *)_PlayerMovement_Update, (void **)&PlayerMovement_Update);

}
void addHack(NSString *name, NSString *description, UIColor *theme, std::initializer_list<uint64_t> offsets, std::initializer_list<uint64_t> hackedHexes, std::initializer_list<uint64_t> originalHexes){
    if(menu == nil)
        return;
    
    std::vector<uint64_t> offsetVector;
    std::vector<uint64_t> hackedHexVector;
    std::vector<uint64_t> originalHexVector;
    
    offsetVector.insert(offsetVector.begin(), offsets.begin(), offsets.end());
    hackedHexVector.insert(hackedHexVector.begin(), hackedHexes.begin(), hackedHexes.end());
    originalHexVector.insert(originalHexVector.begin(), originalHexes.begin(), originalHexes.end());
    
    Hack *h = [[Hack alloc] initWithHackName:name info:description fontName:font theme:theme offset:offsetVector hackedHex:hackedHexVector originalHex:originalHexVector];
    [menu addHack:h];
}

void addHook(NSString *name, NSString *description, UIColor *theme){
    if(menu == nil)
        return;
    
    Hook *h = [[Hook alloc] initWithHookName:name info:description fontName:font theme:theme];
    [menu addHook:h];
}

void addSliderHook(NSString *name, NSString *description, UIColor *theme, float initialValue, float minValue, float maxValue){
    if(menu == nil)
        return;

    if(minValue > maxValue)
        return;
    
    SliderHook *sh = [[SliderHook alloc] initWithSliderHookName:name info:description fontName:font theme:theme initialValue:initialValue minValue:minValue maxValue:maxValue];
    [menu addHook:sh];
}

void addTextfieldHook(NSString *name, NSString *description, UIColor *theme){
    if(menu == nil)
        return;
    
    TextfieldHook *th = [[TextfieldHook alloc] initWithTextfieldHookName:name info:description fontName:font theme:theme];
    [menu addHook:th];
}

void addSwitch(NSString *name, NSString *description, UIColor *theme){
    if(menu == nil)
        return;
    
    Switch *s = [[Switch alloc] initWithSwitchName:name info:description fontName:font theme:theme];
    [menu addHook:s];
}

void writeData(uint64_t offset, uint64_t hex){
    if(menu == nil)
        return;
    
    [menu writeTo:offset withHex:hex];
}



 

Archived

This topic is now archived and is closed to further replies.

  • Our picks

    • Mech Assemble v1.6.25 [+5 Jailed Cheats]
      Modded/Hacked App: Mech Assemble By ONEMT PTE. LTD.
      Bundle ID: com.ios.mecharogue.online
      App Store Link: https://apps.apple.com/us/app/mech-assemble/id6739125107?uo=4



      🤩 Hack Features

      - High Defense
      - No Reload
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 69 replies
    • Mech Assemble v1.6.25 [+5 Cheats]
      Modded/Hacked App: Mech Assemble By ONEMT PTE. LTD.
      Bundle ID: com.ios.mecharogue.online
      App Store Link: https://apps.apple.com/us/app/mech-assemble/id6739125107?uo=4

       

      🤩 Hack Features

      - High Defense
      - No Reload
       
        • Agree
        • Haha
        • Winner
        • Like
      • 54 replies
    • Andy Volcano: Tile Match Story v1.5.14 +7 [OP Cheats]
      Modded/Hacked App: Andy Volcano: Tile Match Story By SayGames LTD
      Bundle ID: com.playstrom.tile.match
      iTunes Store Link: https://apps.apple.com/us/app/andy-volcano-tile-match-story/id1639080259?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Infinite Health
      - Infinite Coins
      - Infinite Stars
      - Infinite Gloves
      - Infinite Boomerangs
      - Infinite Propellers
      - Infinite Bombs


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Like
      • 22 replies
    • Andy Volcano: Tile Match Story v1.5.14 +7 [OP Cheats]
      Modded/Hacked App: Andy Volcano: Tile Match Story By SayGames LTD
      Bundle ID: com.playstrom.tile.match
      iTunes Store Link: https://apps.apple.com/us/app/andy-volcano-tile-match-story/id1639080259?uo=4


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - Infinite Health
      - Infinite Coins
      - Infinite Stars
      - Infinite Gloves
      - Infinite Boomerangs
      - Infinite Propellers
      - Infinite Bombs


      Jailbreak required hack(s): https://iosgods.com/forum/5-game-cheats-hack-requests/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Agree
        • Like
      • 20 replies
    • Gear Clicker v8.7.9 +3 [Free Upgrades]
      Modded/Hacked App: Gear Clicker By Rollic Games Oyun Yazilim ve Pazarlama Anonim Sirketi
      Bundle ID: com.kb.gearclicker
      iTunes Store Link: https://apps.apple.com/us/app/gear-clicker/id6444687282?uo=4


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - No Popup Ads
      - Free Upgrades
      - Free Gears


      Jailbreak required hack(s): https://iosgods.com/forum/5-game-cheats-hack-requests/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 68 replies
    • Gear Clicker v8.7.9 +3 [Free Upgrades]
      Modded/Hacked App: Gear Clicker By Rollic Games Oyun Yazilim ve Pazarlama Anonim Sirketi
      Bundle ID: com.kb.gearclicker
      iTunes Store Link: https://apps.apple.com/us/app/gear-clicker/id6444687282?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - No Popup Ads
      - Free Upgrades
      - Free Gears


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 75 replies
    • Idle Brick Breaker v2.1.74 +3 Jailed Cheats [Currency Hack]
      Modded/Hacked App: Idle Brick Breaker - Breakout By Tech Tree Games LLC
      Bundle ID: com.TechTreeGames.IdleBrickBreaker
      iTunes Store Link: https://apps.apple.com/us/app/idle-brick-breaker-breakout/id1522164283?uo=4


      Hack Features:
      - Infinite Cash
      - Infinite Gems
      - No reset on Prestige


      Jailbreak required hack(s): https://iosgods.com/forum/5-game-cheats-hack-requests/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
        • Informative
        • Agree
        • Thanks
        • Winner
        • Like
      • 51 replies
    • Idle Brick Breaker v2.1.74 +3 [Currency Hack]
      Modded/Hacked App: Idle Brick Breaker - Breakout By Tech Tree Games LLC
      Bundle ID: com.TechTreeGames.IdleBrickBreaker
      iTunes Store Link: https://apps.apple.com/us/app/idle-brick-breaker-breakout/id1522164283?uo=4


      Hack Features:
      - Infinite Cash
      - Infinite Gems
      - No reset on Prestige


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
        • Informative
        • Agree
        • Thanks
        • Winner
        • Like
      • 40 replies
    • Idle Mine Dig: Drill & Collect v1.23.42 +7 [Currency Hack]
      Modded/Hacked App: Idle Mine Dig: Drill & Collect By APPS TEKNOLOJI ANONIM SIRKETI
      Bundle ID: tr.com.apps.drill.and.collect
      iTunes Store Link: https://apps.apple.com/us/app/idle-mine-dig-drill-collect/id1642304873?uo=4

       

      📌 Mod Requirements

      - Jailbroken iPhone or iPad.
      - iGameGod / Filza / iMazing.
      - Cydia Substrate, ElleKit, Substitute or libhooker depending on your jailbreak (from Sileo, Cydia or Zebra).

       

      🤩 Hack Features

      - No Ads
      - VIP Active
      - Freeze Currency
      - Freeze Pills
      - Freeze Tickets
      - Freeze Tokens
      - All Costumes Unlocked

       

      ⬇️ iOS Hack Download Link


        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 18 replies
    • Idle Mine Dig: Drill & Collect v1.23.42 +7 Jailed Cheats [Currency Hack]
      Modded/Hacked App: Idle Mine Dig: Drill & Collect By APPS TEKNOLOJI ANONIM SIRKETI
      Bundle ID: tr.com.apps.drill.and.collect
      iTunes Store Link: https://apps.apple.com/us/app/idle-mine-dig-drill-collect/id1642304873?uo=4

       

      📌 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🤩 Hack Features

      - No Ads
      - VIP Active
      - Freeze Currency
      - Freeze Pills
      - Freeze Tickets
      - Freeze Tokens
      - All Costumes Unlocked

       

      ⬇️ iOS Hack Download IPA Link


        • Agree
        • Thanks
        • Winner
        • Like
      • 19 replies
    • Pocket Land! v0.118.1 +3 Jailed Cheats [Currency Hack]
      Modded/Hacked App: Pocket Land! By GRAND-ATTIC LIMITED
      Bundle ID: gs.hadi.pocketisland
      iTunes Store Link: https://apps.apple.com/us/app/pocket-land/id6446137216?uo=4


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Sideloadly / Cydia Impactor or alternatives.
      - A Computer Running Windows/macOS/Linux with iTunes installed.


      Hack Features:
      - Freeze Currency
      - Freeze Resources


      Jailbreak required hack(s): https://iosgods.com/forum/5-game-cheats-hack-requests/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 83 replies
    • Pocket Land! v0.118.1 +3 [Currency Hack]
      Modded/Hacked App: Pocket Land! By GRAND-ATTIC LIMITED
      Bundle ID: gs.hadi.pocketisland
      iTunes Store Link: https://apps.apple.com/us/app/pocket-land/id6446137216?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Freeze Currency
      - Freeze Resources
      - Upgrade without Resources (Dont Abuse)


      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 45 replies
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines