Advertisement
ApexdaUser

somescr-ke

Dec 29th, 2023
955
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.97 KB | None | 0 0
  1. _G.olm = getsenv(game.Players.LocalPlayer.PlayerScripts.CharacterScript)["loadmap"]
  2. print("saved old loadmap(), replacing...")
  3. for i,v in pairs(getsenv(game.Players.LocalPlayer.PlayerScripts.CharacterScript)) do
  4. getfenv(0)[i] = getsenv(game.Players.LocalPlayer.PlayerScripts.CharacterScript)[i] end
  5. getsenv(game.Players.LocalPlayer.PlayerScripts.CharacterScript)["loadmap"] = newcclosure(function(map)
  6. _G.loading = true
  7.     rf.mapdebris:ClearAllChildren()
  8.     map.Parent = workspace
  9.     onrope, pole = nil,nil
  10.     ignore = {char, vis, workspace.debris, button, textbox, snapshotcam}
  11.     rg3 = {}
  12.     spinCF = {}
  13.     enemies = {}
  14.     eggs = 0
  15.     maxeggs = 8
  16.     gotice = false
  17.     UI.UI.egg.Visible = false
  18.     script.bgm:Stop()script.bgmW:Stop()script.bgmA:Stop()script.bgmC:Stop()
  19.     script.bgm.SoundId = "rbxassetid://"..map.settings.bgm.Value
  20.     script.bgmW.SoundId = map.settings:FindFirstChild'bgmW' and "rbxassetid://"..map.settings.bgmW.Value or "rbxasset://sounds/uuhhh.mp3"
  21.     script.bgmA.SoundId = map.settings:FindFirstChild'bgmA' and "rbxassetid://"..map.settings.bgmA.Value or "rbxasset://sounds/uuhhh.mp3"
  22.     script.bgmC.SoundId = map.settings:FindFirstChild'bgmC' and "rbxassetid://"..map.settings.bgmC.Value or "rbxasset://sounds/uuhhh.mp3"
  23.     script.bgmP.SoundId = map.settings:FindFirstChild'bgmP' and "rbxassetid://"..map.settings.bgmP.Value or "rbxasset://sounds/uuhhh.mp3"
  24.     script.bgm.Volume,script.bgmW.Volume,script.bgmA.Volume,script.bgmC.Volume=0,0,0,0
  25.     local toload = {}
  26.    
  27.     if map:FindFirstChild'spawn'then map.spawn:Destroy() end
  28.    
  29.     while map:FindFirstChild'GROUP'do
  30.         local g = map.GROUP
  31.         for _,v in pairs(g:GetChildren())do
  32.             v.Parent = map
  33.         end
  34.         g:Destroy()
  35.     end
  36.     for _,v in pairs(map:GetChildren())do
  37.         if v.Name == "water" then
  38.             rg3[#rg3+1]=v
  39.             if v:FindFirstChild'pos'then
  40.                 v.pos.Value = v.CFrame
  41.             else
  42.                 local g = v:Clone()
  43.                 g.Parent = v
  44.                 g.Name = "notwater"
  45.                 g.Size = v.Size-Vector3.new(1,1,1)*.2
  46.                 g.Transparency = 1
  47.                 local x, y, z, R00, R01, R02, R10, R11, R12, R20, R21, R22  = v.CFrame:components()
  48.                 g.CFrame = CFrame.new(x, y, z, -R00, R01, R02, -R10, R11, R12, -R20, R21, R22)
  49.             end
  50.         elseif v.Name == "candy"then
  51.             local c = rf.candy:Clone()
  52.             c.Parent = map
  53.             c.CFrame = CFrame.new(v.Position)
  54.             c.pos.Value = v.Position
  55.             spinCF[#spinCF+1] = c
  56.             rg3[#rg3+1]=c
  57.             v:Destroy()
  58.         elseif v.Name == "candy2"then
  59.             for x = 1, 6 do
  60.                 local c = rf.candy:Clone()
  61.                 c.Parent = map
  62.                 c.CFrame = CFrame.new((v.CFrame*CFrame.Angles(0,x/6*math.pi*2,0)*CFrame.new(0,0,-v.Size.X)).p)
  63.                 c.pos.Value = c.Position
  64.                 spinCF[#spinCF+1] = c
  65.                 rg3[#rg3+1]=c
  66.             end
  67.             v:Destroy()
  68.         elseif v.Name == "hcandy"then
  69.             local c = rf.hcandy:Clone()
  70.             c.Parent = map
  71.             c.CFrame = CFrame.new(v.Position)
  72.             c.pos.Value = v.Position
  73.             spinCF[#spinCF+1] = c
  74.             rg3[#rg3+1]=c
  75.             v:Destroy()
  76.         elseif v.Name == "egg"then
  77.             local c = rf.egg:Clone()
  78.             c.Parent = map
  79.             c.CFrame = CFrame.new(v.Position)
  80.             c.pos.Value = v.Position
  81.             spinCF[#spinCF+1] = c
  82.             rg3[#rg3+1]=c
  83.             v:Destroy()
  84.         elseif v.Name == "battery"then
  85.             local c = rf.battery:Clone()
  86.             c.Parent = map
  87.             c.CFrame = CFrame.new(v.Position)
  88.             c.pos.Value = v.Position
  89.             spinCF[#spinCF+1] = c
  90.             rg3[#rg3+1]=c
  91.             v:Destroy()
  92.         elseif v.Name == "jetpack"or v.Name == "skateboard"or v.Name == "flamethrower" then
  93.             v.vis.pos.Value = v.Position
  94.             spinCF[#spinCF+1] = v.vis
  95.         elseif string.sub(v.Name,1,5)=="ToCam"or v.Name == "Light"or string.sub(v.Name, 1,3)=="TPa" or v:FindFirstChild'tx'
  96.             or v.Name=="lava" or v.Name=="breakable"then
  97.             rg3[#rg3+1]=v
  98.         elseif v.Name == "ropemod"then
  99.             torope(true, v)
  100.         elseif v.Name == "enemy"then
  101.             local c = rf.enemies[v.id.Value]:Clone()
  102.             c.Parent = map
  103.             c.col.CFrame = v.CFrame
  104.             enemies[#enemies+1] = {c, require(c.ModuleScript)}
  105.             c.col.tag.Value = #enemies
  106.             rg3[#rg3+1]=c.col
  107.             ignore[#ignore+1] = c
  108.             v:Destroy()
  109.         elseif string.sub(v.Name,1,6)=="unlock"then
  110.             if prog>=tonumber(string.sub(v.Name,7,-1)) then
  111.                 v:Destroy()
  112.             end
  113.         elseif v.Name == "door" then
  114.             rg3[#rg3+1]=v
  115.         elseif v.Name == "breakable"then
  116.             rg3[#rg3+1]=v
  117.         elseif v.Name == "icedcream"then
  118.             local c
  119.             if icedfound[v.id.Value] then
  120.                 c = rf.notcream:Clone()
  121.             else
  122.                 c = rf.icedcream:Clone()
  123.             end
  124.             c.Parent = v.Parent
  125.             c.CFrame = v.CFrame
  126.             c.pos.Value = v.Position
  127.             spinCF[#spinCF+1] = c
  128.             c.desc.Value = v.desc.Value
  129.             c.id.Value = v.id.Value
  130.             v:Destroy()
  131.         elseif v.Name == "silent" then
  132.             rg3[#rg3+1]=v
  133.         elseif v.Name == "wind" then
  134.             rg3[#rg3+1]=v
  135.         end
  136.     end
  137.     if map:FindFirstChild'picks'then
  138.         for _,v in pairs(map.picks:GetChildren())do
  139.             ignore[#ignore+1] = v
  140.             local t = Instance.new("Vector3Value")
  141.             t.Parent = v
  142.             t.Name = "st"
  143.             t.Value = v.Position
  144.             v.CollisionGroupId = 2
  145.             v.Touched:Connect(function(h)
  146.                 if h.Name == "kill"then
  147.                     v.CFrame = CFrame.new(t.Value)
  148.                     v.Velocity = Vector3.new()
  149.                 end
  150.             end)
  151.         end
  152.         map.picks.ChildRemoved:connect(function(v)
  153.             wait()
  154.             if map:FindFirstChild'picks' then
  155.                 v.Parent = map.picks
  156.                 v.CFrame = CFrame.new(v.st.Value)
  157.                 v.Velocity = Vector3.new()
  158.                 v.RotVelocity = Vector3.new()
  159.             end
  160.         end)
  161.     end
  162.     if map:FindFirstChild'moving' then
  163.         for _,v in pairs(map.moving:GetChildren())do
  164.             if v:FindFirstChild'endo'then
  165.                 v.start.Value = v.Position
  166.                 v.endo.Value = v.Position + v.endo.Value
  167.                 if v.Name == "water"then
  168.                     rg3[#rg3+1]=v
  169.                 end
  170.             elseif v:FindFirstChild("start")then
  171.                 v.start.Value = v.Position
  172.             end
  173.         end
  174.     end
  175.     for _,v in pairs(game.Lighting:GetChildren())do
  176.         if v.Name=="copy"then
  177.             v:Destroy()
  178.         end
  179.     end
  180.     for _,v in pairs(map.settings.lighting:GetChildren())do
  181.         if v.Name=="copy"then
  182.             v.Parent = game.Lighting
  183.         else
  184.             game.Lighting[v.Name] = v.Value
  185.         end
  186.     end
  187.     wait()
  188.     game.ContentProvider:PreloadAsync(toload)
  189.     script.bgm:Play()script.bgmW:Play()script.bgmA:Play()script.bgmC:Play()script.bgmP:Play()
  190.     _G.loading = false
  191. end)
  192. print("Replaced loadmap()")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement