Advertisement
TheIncgi

Like Reauth

May 27th, 2019
698
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.04 KB | None | 0 0
  1. local AM = luajava.bindClass("com.theincgi.advancedMacros.AdvancedMacros")
  2. local mc = AM:getMinecraft()
  3. local session = (mc.getSession or mc.func_110432_I)(mc)
  4. local username = (session.getUsername or session.func_111285_a)(session)
  5. log( "Username is &a&B"..username )
  6.  
  7.  
  8.  
  9. local mcProxy = (mc.getProxy or mc.func_110437_J)(mc)
  10.  
  11. local YggAuthServ = luajava.bindClass("com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService")
  12. local UUID = luajava.bindClass("java.util.UUID")
  13. local Agent = luajava.bindClass("com.mojang.authlib.Agent")
  14. local ReflectionHelper = luajava.bindClass("net.minecraftforge.fml.relauncher.ReflectionHelper")
  15. local randomUUID = UUID:randomUUID():toString()
  16. local UUIDTypeAdapter = luajava.bindClass("com.mojang.util.UUIDTypeAdapter")
  17. --local YggUserAuth =
  18. --local YggSessServ
  19.  
  20. local yas = luajava.new(YggAuthServ, mcProxy, randomUUID )
  21. local yua = yas:createUserAuthentication( Agent.MINECRAFT )
  22. local ymss = yas:createMinecraftSessionService()
  23.  
  24. local function setSession( s ) --TODO check
  25.   local sessionField = ReflectionHelper:findField(
  26.     mc.getClass(), "session", "S", "field_71449_j"
  27.   )
  28.   sessionField.setAccessable(true)
  29.   sessionField.set(mc, s )
  30. end
  31.  
  32. local function loginOnline(user, pass)
  33.   disconnect()
  34.   yua:setUsername(user)
  35.   yua:setPassword(pass) pass = nil
  36.   a, b = pcall( yua.logIn, yua )
  37.   if a then
  38.     toast("Login","Success!")
  39.     setSession( luajava.new(Session,
  40.       yua:getSelectedProfile():getName(),
  41.       UUIDTypeAdapter:fromUUID( yua:getSelectedProfile():getId() ),
  42.       yua:getAuthenticatedToken(),
  43.       yua:getUserType():getName()
  44.     ))
  45.     toast("Login","Session set!")
  46.   else
  47.     toast("Login","Fail'd")
  48.   end
  49. end
  50.  
  51. local function loginOffline(username)
  52.   disconnect()
  53.   local tmp = "OfflinePlayer:"..username --TODO FIX
  54.   local uuid = UUID:fromString( tmp )
  55.   toast("UUID", uuid)
  56.   setSession( luajava.new(Session,
  57.       username,
  58.       uuid:toString() ,
  59.       "invalid",
  60.       "legacy"
  61.     ))
  62.     toast("Login","Offline done")
  63. end
  64.  
  65. loginOffline("NotMyAccount")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement