Advertisement
stirante

Messenger tweaks

Mar 21st, 2016
1,348
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.05 KB | None | 0 0
  1. package com.stirante.janicode;
  2.  
  3. import android.app.Application;
  4. import android.content.Context;
  5.  
  6. import java.util.Random;
  7.  
  8. import de.robv.android.xposed.IXposedHookLoadPackage;
  9. import de.robv.android.xposed.XC_MethodHook;
  10. import de.robv.android.xposed.XSharedPreferences;
  11. import de.robv.android.xposed.XposedBridge;
  12. import de.robv.android.xposed.XposedHelpers;
  13. import de.robv.android.xposed.callbacks.XC_LoadPackage;
  14.  
  15. /**
  16.  * Created by stirante
  17.  */
  18. public class XposedMain implements IXposedHookLoadPackage {
  19.     @Override
  20.     public void handleLoadPackage(final XC_LoadPackage.LoadPackageParam packageParam) throws Throwable {
  21.         if (packageParam.packageName.equalsIgnoreCase("com.facebook.orca")) {
  22.             XposedBridge.log("In messenger!");
  23.             XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
  24.                 @Override
  25.                 protected void afterHookedMethod(MethodHookParam param) throws Throwable {
  26.                     messengerStuff(packageParam);
  27.                 }
  28.             });
  29.         }
  30.     }
  31.  
  32.     private void messengerStuff(XC_LoadPackage.LoadPackageParam packageParam) {
  33.         final XSharedPreferences prefs = new XSharedPreferences("com.stirante.janicode");
  34.         prefs.makeWorldReadable();
  35.         final Random rand = new Random();
  36.         if (prefs.getBoolean("enable_photo_editing", false)) {
  37.             XposedHelpers.findAndHookConstructor("com.facebook.messaging.photos.editing.ao", packageParam.classLoader, boolean.class, boolean.class, boolean.class, new XC_MethodHook() {
  38.                 @Override
  39.                 protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
  40.                     XposedBridge.log("Changing photo editing config " + param.args[0] + " " + param.args[1] + " " + param.args[2]);
  41.                     param.args[0] = true;
  42.                     param.args[1] = true;
  43.                     param.args[2] = true;
  44.                 }
  45.             });
  46.         }
  47.         if (prefs.getBoolean("enable_basket_cheat", false)) {
  48.             XposedHelpers.findAndHookMethod("com.facebook.messaging.bball.c", packageParam.classLoader, "e", new XC_MethodHook() {
  49.                 @Override
  50.                 protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
  51.                     int minimum;
  52.                     try {
  53.                         minimum = Integer.parseInt(prefs.getString("minimum_score", "0"));
  54.                     }
  55.                     catch (Exception e) {
  56.                         minimum = 0;
  57.                     }
  58.                     XposedBridge.log("Score!");
  59.                     if (minimum == 0) return;
  60.                     if (XposedHelpers.getIntField(XposedHelpers.getObjectField(param.thisObject, "a"), "c") == 0) {
  61.                         XposedBridge.log("Easy start!");
  62.                         XposedHelpers.setIntField(XposedHelpers.getObjectField(param.thisObject, "a"), "c", rand.nextInt(20) + minimum);
  63.                     }
  64.                 }
  65.             });
  66.         }
  67.     }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement