local a,b,c,d,e=game:GetService'Players',game:GetService'UserInputService',game:GetService'RunService',game:GetService'Lighting',false if getgenv().ZelenskyyUnload then local f,g=pcall(getgenv().ZelenskyyUnload)if not f then warn('Failed to clean up previous script instance: ',g)end end local f,g,h=a.LocalPlayer,workspace.CurrentCamera or workspace:WaitForChild'Camera','https://raw.githubusercontent.com/violin-suzutsuki/LinoriaLib/main/'local i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z=loadstring(game:HttpGet(h..'Library.lua'))(),loadstring(game:HttpGet(h..'addons/ThemeManager.lua'))(),loadstring(game:HttpGet(h..'addons/SaveManager.lua'))(),false,nil,false,false,nil,{W=false,A=false,S=false,D=false,Space=false,LeftControl=false,Q=false,E=false},{},{},{},{},{},{},nil,{},nil local function spawnTracked(A)local B=task.spawn(A)table.insert(y,B)return B end local function destroyWheels()local A,B=tostring(f.UserId),workspace:FindFirstChild'player_related'if not B then return end local C=B:FindFirstChild'cars'if not C then return end local D=C:FindFirstChild(A)if D then local E=D:FindFirstChild'wheels'if E then for F,G in ipairs{'RR','RL','FR','FL'}do local H=E:FindFirstChild(G)if H then H:Destroy()end end end end end local A,B,C=nil,{},{}local function setupCarWelds(D)local E,F=D:FindFirstChild'chassis',D:FindFirstChild'wheels'if not E or not F then return end for G,H in ipairs(F:GetChildren())do for I,J in ipairs{'wheel','axle'}do local K=H:FindFirstChild(J)if K and K:IsA'BasePart'then C[K]=K.CanCollide K.CanCollide=false local L=Instance.new'WeldConstraint'L.Part0=E L.Part1=K L.Parent=E table.insert(B,L)end end end end local function cleanupCarWelds()for D,E in ipairs(B)do if E and E.Parent then E:Destroy()end end table.clear(B)for D,E in pairs(C)do if D and D.Parent then D.CanCollide=E end end table.clear(C)A=nil end local function toggleDeploy(D)if D==l then return end l=D local E=f.Character local F=E and E:FindFirstChildOfClass'Humanoid'local G,H,I=F and F.Sit and F.SeatPart,tostring(f.UserId),workspace:FindFirstChild'player_related'local J=I and I:FindFirstChild'cars'local K=J and J:FindFirstChild(H)if not(K and G and G:IsDescendantOf(K)and K:FindFirstChild'chassis')then if l then i:Notify('You must be driving your vehicle to deploy!',3)if Toggles.DeployToggle then task.spawn(function()Toggles.DeployToggle:SetValue(false)end)end end return end local L,M=K.chassis,K:FindFirstChild'wheels'if l then if M then for N,O in ipairs(M:GetDescendants())do if O:IsA'BasePart'then O.CanCollide=false end end end if m then pcall(task.cancel,m)end m=task.spawn(function()task.wait(0.5)if l and L and L.Parent then L.Anchored=true L.AssemblyLinearVelocity=Vector3.new(0,0,0)L.AssemblyAngularVelocity=Vector3.new(0,0,0)i:Notify('Vehicle Deployed!',2)end end)else if m then pcall(task.cancel,m)end if L and L.Parent then L.Anchored=false L.AssemblyLinearVelocity=Vector3.new(0,0,0)L.AssemblyAngularVelocity=Vector3.new(0,0,0)end if M then for N,O in ipairs(M:GetDescendants())do if O:IsA'BasePart'then O.CanCollide=true end end end i:Notify('Vehicle Undeployed!',2)end end local function toggleFly(D)if D==n then return end n=D if n then local E=f.Character if E and E:FindFirstChild'Humanoid'then E.Humanoid.AutoRotate=false end p=c.RenderStepped:Connect(function(F)if not n then return end local G=f.Character if not G then return end local H=G:FindFirstChild'Humanoid'if H and H.AutoRotate then H.AutoRotate=false end local I=H and H.Sit and H.SeatPart local J=I and I.Parent and I.Parent.Parent if J and J~=A then cleanupCarWelds()A=J setupCarWelds(J)elseif not J and A then cleanupCarWelds()end local K=(H and H.Sit and A and A:FindFirstChild'chassis')or G:FindFirstChild'HumanoidRootPart'if not K then return end local L,M=Vector3.new(0,0,0),g.CFrame if q.W then L=L+M.LookVector end if q.S then L=L-M.LookVector end if q.A then L=L-M.RightVector end if q.D then L=L+M.RightVector end if q.Space then L=L+Vector3.new(0,1,0)end if q.LeftControl then L=L-Vector3.new(0,1,0)end local N,O=Options.FlySpeed and Options.FlySpeed.Value or 300,Options.FastSpeedMultiplier and Options.FastSpeedMultiplier.Value or 7 local P=N*(o and O or 1)if L.Magnitude>0 then K.CFrame=K.CFrame+(L.Unit*P*F)end local Q,R=(q.Q and 1 or 0)-(q.E and 1 or 0),Options.RotationSpeed and Options.RotationSpeed.Value or 180 local S=math.rad(R)if Q~=0 then K.CFrame=K.CFrame*CFrame.Angles(0,Q*S*F,0)end K.AssemblyLinearVelocity=Vector3.zero K.AssemblyAngularVelocity=Vector3.zero if A then for T,U in ipairs(A:GetDescendants())do if U:IsA'BasePart'then U.AssemblyLinearVelocity=Vector3.zero U.AssemblyAngularVelocity=Vector3.zero end end end end)else if p then p:Disconnect()p=nil end cleanupCarWelds()local E=f.Character if E and E:FindFirstChild'Humanoid'then E.Humanoid.AutoRotate=true end end end local D,E,F,G=nil,nil,{},{Ambient=d.Ambient,OutdoorAmbient=d.OutdoorAmbient,Brightness=d.Brightness,ClockTime=d.ClockTime,FogEnd=d.FogEnd,FogStart=d.FogStart,FogColor=d.FogColor}local function toggleFullbright(H)if H then if not(Toggles.CustomAmbientToggle and Toggles.CustomAmbientToggle.Value)then G.Ambient=d.Ambient G.OutdoorAmbient=d.OutdoorAmbient end G.Brightness=d.Brightness if not(Toggles.CustomTimeToggle and Toggles.CustomTimeToggle.Value)then G.ClockTime=d.ClockTime end D=c.RenderStepped:Connect(function()if not(Toggles.CustomAmbientToggle and Toggles.CustomAmbientToggle.Value)then d.Ambient=Color3.fromRGB(255,255,255)d.OutdoorAmbient=Color3.fromRGB(255,255,255)end d.Brightness=2 if not(Toggles.CustomTimeToggle and Toggles.CustomTimeToggle.Value)then d.ClockTime=14 end end)else if D then D:Disconnect()D=nil end if not(Toggles.CustomAmbientToggle and Toggles.CustomAmbientToggle.Value)then d.Ambient=G.Ambient d.OutdoorAmbient=G.OutdoorAmbient end d.Brightness=G.Brightness if not(Toggles.CustomTimeToggle and Toggles.CustomTimeToggle.Value)then d.ClockTime=G.ClockTime end end end local H local function toggleCustomTime(I)if I then if not(Toggles.Fullbright and Toggles.Fullbright.Value)then G.ClockTime=d.ClockTime end H=c.RenderStepped:Connect(function()if Options.CustomTimeSlider then d.ClockTime=Options.CustomTimeSlider.Value end end)else if H then H:Disconnect()H=nil end if not(Toggles.Fullbright and Toggles.Fullbright.Value)then d.ClockTime=G.ClockTime end end end local I local function toggleCustomAmbient(J)if J then if not(Toggles.Fullbright and Toggles.Fullbright.Value)then G.Ambient=d.Ambient G.OutdoorAmbient=d.OutdoorAmbient end I=c.RenderStepped:Connect(function()if Options.CustomAmbientColor then local K=Options.CustomAmbientColor.Value d.Ambient=K d.OutdoorAmbient=K end end)else if I then I:Disconnect()I=nil end if not(Toggles.Fullbright and Toggles.Fullbright.Value)then d.Ambient=G.Ambient d.OutdoorAmbient=G.OutdoorAmbient end end end local J local function toggleCustomAtmosphere(K)if K then G.FogColor=d.FogColor J=c.RenderStepped:Connect(function()if Options.CustomFogColor then d.FogColor=Options.CustomFogColor.Value end local L,M,N,O=Options.AtmosphereDensity and Options.AtmosphereDensity.Value or 0.3,Options.AtmosphereHaze and Options.AtmosphereHaze.Value or 0,Options.AtmosphereColor and Options.AtmosphereColor.Value or Color3.fromRGB(128,128,128),Options.AtmosphereDecay and Options.AtmosphereDecay.Value or Color3.fromRGB(128,128,128)for P,Q in ipairs(d:GetDescendants())do if Q:IsA'Atmosphere'then if not F[Q]then F[Q]={Density=Q.Density,Haze=Q.Haze,Color=Q.Color,Decay=Q.Decay}end Q.Density=L Q.Haze=M Q.Color=N Q.Decay=O end end end)else if J then J:Disconnect()J=nil end d.FogColor=G.FogColor if not(Toggles.NoFog and Toggles.NoFog.Value)then for L,M in pairs(F)do if L and L.Parent and L:IsA'Atmosphere'then for N,O in pairs(M)do pcall(function()L[N]=O end)end end end end end end local function clearFog()d.FogEnd=9e9 d.FogStart=0 for K,L in ipairs(d:GetDescendants())do if L:IsA'Atmosphere'then if not F[L]then F[L]={Density=L.Density,Haze=L.Haze,Color=L.Color,Decay=L.Decay}end if not(Toggles.CustomAtmosphereToggle and Toggles.CustomAtmosphereToggle.Value)then L.Density=0 L.Haze=0 end elseif L:IsA'DepthOfFieldEffect'or L:IsA'BlurEffect'or L:IsA'ColorCorrectionEffect'then if not F[L]then F[L]={Enabled=L.Enabled}end L.Enabled=false end end for K,L in ipairs(workspace:GetChildren())do if L:IsA'Clouds'then if not F[L]then F[L]={Enabled=L.Enabled}end L.Enabled=false end end local K=workspace:FindFirstChildOfClass'Terrain'if K then for L,M in ipairs(K:GetChildren())do if M:IsA'Clouds'then if not F[M]then F[M]={Enabled=M.Enabled}end M.Enabled=false end end end end local function toggleNofog(K)if K then G.FogEnd=d.FogEnd G.FogStart=d.FogStart E=c.RenderStepped:Connect(clearFog)clearFog()else if E then E:Disconnect()E=nil end d.FogEnd=G.FogEnd d.FogStart=G.FogStart for L,M in pairs(F)do local N=false repeat if L and L.Parent then if L:IsA'Atmosphere'and Toggles.CustomAtmosphereToggle and Toggles.CustomAtmosphereToggle.Value then N=true break end for O,P in pairs(M)do pcall(function()L[O]=P end)end end N=true until true if not N then break end end table.clear(F)end end local K,L=nil,false local function updateCarStats(M)local N,O,P=(identifyexecutor and identifyexecutor())or'Unknown',{'Solara','Xeno','JJSploit'},false for Q,R in ipairs(O)do if N:find(R)then P=true break end end if not getgc or P then if not L then L=true local Q=not getgc and'missing getgc'or'unsupported executor ('..N..')'i:Notify('Vehicle Stats Changer UnSupported ('..Q..')',5)end return end if M then K={road=Options.RoadSpeed and Options.RoadSpeed.Value,dirt=Options.DirtSpeed and Options.DirtSpeed.Value,grass=Options.GrassSpeed and Options.GrassSpeed.Value,mesonet=Toggles.MesonetToggle and Toggles.MesonetToggle.Value,torque=Options.TorqueSlider and Options.TorqueSlider.Value,gears=Options.GearsSlider and Options.GearsSlider.Value,brakes=Options.BrakesSlider and Options.BrakesSlider.Value,steerSpd=Options.SteerSpdSlider and Options.SteerSpdSlider.Value}end local Q=K if not Q then return end for R,S in pairs(getgc(true))do if type(S)=='table'and rawget(S,'Vehicle')and type(S.Vehicle)=='table'and rawget(S,'Driving')and type(S.Driving)=='table'then if Q.mesonet~=nil then S.Vehicle.Mesonet=Q.mesonet end if S.Driving.Speeds then if Q.road then S.Driving.Speeds.Road=Q.road end if Q.dirt then S.Driving.Speeds.Dirt=Q.dirt end if Q.grass then S.Driving.Speeds.Grass=Q.grass end end if Q.torque then S.Driving.Torque=Q.torque end if Q.gears then S.Driving.Gears=Q.gears end if Q.brakes then S.Driving.Brakes=Q.brakes end if Q.steerSpd then S.Driving.Steer_Spd=Q.steerSpd end end end end local function getTornadoWindSpeed(M)local N,O=0,M.Parent and M.Parent.Parent if O then local P=O:FindFirstChild'configs'local Q=P and P:FindFirstChild'tornado'local R=Q and Q:FindFirstChild'winds'if R and R:IsA'NumberValue'then N=R.Value end end return N end local function updateTornadoList()local M,N={},workspace:FindFirstChild'storm_related'local O=N and N:FindFirstChild'storms'if O then for P,Q in ipairs(O:GetChildren())do local R=Q:FindFirstChild'rotation'if R then local S=R:FindFirstChild'tornado_scan'if S then table.insert(M,S)end end end end table.sort(M,function(P,Q)return P:GetFullName()0 then local N,O=nil,-1 for P,Q in ipairs(u)do local R=getTornadoWindSpeed(Q)if R>O then O=R N=Q end end M=N or u[1]end end if not M or not M.Parent then return nil,nil end local N,O=Options.TornadoPredictionDistance and Options.TornadoPredictionDistance.Value or 500,t[M]local P=O and O.smoothedVel or Vector3.new(0,0,0)local Q=(P.Magnitude>0.1)and P.Unit or M.CFrame.LookVector if not Q or tostring(Q)=='nan, nan, nan'or Q.Magnitude==0 then Q=Vector3.new(0,0,1)end return M.Position+(Q*N),M end local function teleportToTornado()local M,N=predictTornadoPosition()if not M or not N then return end local O,P,Q=Vector3.new(M.X,2000,M.Z),Vector3.new(0,-3E3,0),RaycastParams.new()Q.FilterType=Enum.RaycastFilterType.Include Q.FilterDescendantsInstances={workspace:FindFirstChildOfClass'Terrain'or workspace.Terrain}local R,S=workspace:Raycast(O,P,Q),nil if R then local T=R.Position+Vector3.new(0,100,0)local U=workspace:Raycast(T,Vector3.new(0,-150,0),Q)if U then S=U.Position+Vector3.new(0,50,0)else S=R.Position+Vector3.new(0,50,0)end else S=M+Vector3.new(0,50,0)end local T=f.Character local U=T and(T:FindFirstChild'HumanoidRootPart'or T:FindFirstChildWhichIsA'BasePart')if U then if Toggles.DestroyWheels and Toggles.DestroyWheels.Value then destroyWheels()end local V=T:FindFirstChildOfClass'Humanoid'local W=(V and V.Sit and V.SeatPart)or U W.CFrame=CFrame.new(S)end end local function getOrCreateTornadoDrawings(M)if not r[M]then local N=Drawing.new'Square'N.Thickness=1.5 N.Color=Options.TornadoBoxColor and Options.TornadoBoxColor.Value or Color3.fromRGB(255,50,50)N.Filled=false N.Visible=false local O=Drawing.new'Square'O.Thickness=1 O.Color=Options.TornadoFilledColor and Options.TornadoFilledColor.Value or Color3.fromRGB(255,50,50)O.Transparency=0.7 O.Filled=true O.Visible=false local P=Drawing.new'Text'P.Size=18 P.Center=true P.Outline=true P.Color=Options.TornadoNameColor and Options.TornadoNameColor.Value or Color3.fromRGB(255,255,255)P.Visible=false r[M]={box=N,filledBox=O,name=P}end return r[M]end local function getProbeDisplayName(M)if w[M]then return w[M]end local N=M:FindFirstChild'info'if N and N:IsA'ModuleScript'then local O,P=pcall(require,N)if O and type(P)=='table'and P.Name then w[M]=P.Name return P.Name end end return M.Name end local function getOrCreateProbeDrawings(M)if not v[M]then local N=Drawing.new'Square'N.Thickness=1.5 N.Color=Options.ProbeBoxColor and Options.ProbeBoxColor.Value or Color3.fromRGB(0,200,255)N.Filled=false N.Visible=false local O=Drawing.new'Square'O.Thickness=1 O.Color=Options.ProbeFilledColor and Options.ProbeFilledColor.Value or Color3.fromRGB(0,200,255)O.Transparency=0.7 O.Filled=true O.Visible=false local P=Drawing.new'Text'P.Size=14 P.Center=true P.Outline=true P.Color=Options.ProbeNameColor and Options.ProbeNameColor.Value or Color3.fromRGB(255,255,255)P.Visible=false v[M]={box=N,filledBox=O,name=P}end return v[M]end local M=i:CreateWindow{Title='Zelenskyy',Center=true,AutoShow=true,TabPadding=8,MenuFadeTime=0.2}local N,O,P=M:AddTab'Main',M:AddTab'Visuals',M:AddTab'Settings'local Q=N:AddLeftGroupbox'Flight Settings'local R=Q:AddToggle('FlyToggle',{Text='Enable Flight',Default=false,Callback=function(R)if not e then return end toggleFly(R)end})R:AddKeyPicker('FlyKeybind',{Default='G',SyncToggleState=true,Mode='Toggle',Text='Fly Mode Key',NoUI=false})local S=Q:AddToggle('DeployToggle',{Text='Deploy Vehicle',Default=false,Callback=function(S)if not e then return end toggleDeploy(S)end})S:AddKeyPicker('DeployKeybind',{Default='B',SyncToggleState=true,Mode='Toggle',Text='Deploy Vehicle',NoUI=false})Q:AddSlider('FlySpeed',{Text='Flight Speed',Default=300,Min=10,Max=1500,Rounding=0,Compact=false,Suffix=' studs/s'})Q:AddSlider( 'FastSpeedMultiplier',{Text='Sprint Speed Multiplier',Default=7,Min=2,Max=20,Rounding=1,Compact=false,Suffix='x'})Q:AddSlider('RotationSpeed',{Text='Rotation Speed (Q/E)',Default=180,Min=45,Max=360,Rounding=0,Compact=false,Suffix=' deg/s'})local T=N:AddLeftGroupbox'Vehicle Upgrades'T:AddSlider('RoadSpeed',{Text='Road Speed',Default=108,Min=0,Max=1000,Rounding=0,Compact=false,Suffix=' mph'})T:AddSlider('DirtSpeed',{Text='Dirt Speed',Default=50,Min=0,Max=1000,Rounding=0,Compact=false,Suffix=' mph'})T:AddSlider('GrassSpeed',{Text='Grass Speed',Default=20,Min=0,Max=1000,Rounding=0,Compact=false,Suffix=' mph'})T:AddSlider('TorqueSlider',{Text='Torque',Default=405,Min=0,Max=10000,Rounding=0,Compact=false,Suffix=' N\u{b7}m'})T:AddSlider('GearsSlider',{Text='Gears Count',Default=3,Min=1,Max=10,Rounding=0,Compact=false,Suffix=' gears'})T:AddSlider('BrakesSlider',{Text='Braking Force',Default=1500,Min=0,Max=20000,Rounding=0,Compact=false,Suffix=' force'})T:AddSlider('SteerSpdSlider',{Text='Steering Speed',Default=0.05,Min=0.01,Max=0.1,Rounding=3,Compact=false,Suffix=' sec'})T:AddButton('Apply Car Stats',function()updateCarStats(true)end)local U=N:AddLeftGroupbox'Exploits'U:AddButton('Invite everyone to your convoy',function()for V,W in pairs(a:GetPlayers())do if W~=f then pcall(function()game:GetService'ReplicatedStorage':WaitForChild('events',3):WaitForChild('plr_convoy',3):FireServer{intent='invite',player=W.Name}end)end end i:Notify('Sent convoy invites to all players!',3)end)local V=N:AddRightGroupbox'Tornado Tracker'V:AddToggle('TornadoTrackerToggle',{Text='Tornado Tracker',Default=false})V:AddToggle('AutoSelectStrongest',{Text='Auto Select Strongest',Default=false})local W,X=false,V:AddDropdown('TornadoDropdown',{Text='Select Tornado',Values={},AllowNull=true,Callback=function(W)if not e then return end if W then local X=tonumber(W:match'^Tornado%s*(%d+)')if X and u[X]then x=u[X]end else x=nil end end})local Y,Z=X.OpenDropdown,X.CloseDropdown function X.OpenDropdown(_,...)W=true return Y(_,...)end function X.CloseDropdown(_,...)W=false return Z(_,...)end V:AddSlider('TornadoPredictionDistance',{Text='Prediction Distance',Default=500,Min=50,Max=5000,Rounding=0,Suffix=' studs'})V:AddLabel'Teleport Keybind':AddKeyPicker('TornadoTeleportKey',{Default='T',Mode='Hold',Text='Teleport to Tornado',NoUI=false})V:AddDivider()V:AddToggle('AutoTeleportToggle',{Text='Auto Teleport',Default=false})V:AddSlider('AutoTeleportDistance',{Text='Auto Teleport Distance',Default=150,Min=50,Max=1000,Rounding=0,Suffix=' studs'})V:AddSlider('AutoTeleportYOffset',{Text='Auto Teleport Y Offset',Default=0,Min=-500,Max=500,Rounding=0,Suffix=' studs'})V:AddSlider('AutoTeleportInterval',{Text='Auto Teleport Interval',Default=0.3,Min=0.1,Max=5,Rounding=1,Suffix='s'})local _=false i:GiveSignal(c.Heartbeat:Connect(function()if not e then return end if not(Toggles.TornadoTrackerToggle and Toggles.TornadoTrackerToggle.Value)then return end if not x then return end local aa=Options.TornadoTeleportKey if not aa then return end local ab=aa:GetState()if ab~=_ then _=ab if ab then teleportToTornado()end end end))local aa,ab,ac=O:AddLeftGroupbox'Tornado ESP',O:AddLeftGroupbox'Probe ESP',O:AddRightGroupbox'World Visuals'aa:AddToggle('TornadoBoxESP',{Text='Box ESP',Default=false,Callback=function(ad)end}):AddColorPicker('TornadoBoxColor',{Default=Color3.fromRGB(255,50,50),Title='Box Color'})aa:AddToggle('TornadoFilledBoxESP',{Text='Filled Box ESP',Default=false,Callback=function(ad)end}):AddColorPicker('TornadoFilledColor',{Default=Color3.fromRGB(255,50,50),Title='Filled Box Color'})aa:AddToggle('TornadoNameESP',{Text='Name ESP',Default=false,Callback=function(ad)end}):AddColorPicker('TornadoNameColor',{Default=Color3.fromRGB(255,255,255),Title='Name Color'})aa:AddToggle('TornadoPathESP',{Text='Prediction Path ESP',Default=false,Callback=function(ad)end}):AddColorPicker('TornadoPathColor',{Default=Color3.fromRGB(255,50,50),Title='Path Color'})aa:AddSlider('TornadoPathLength',{Text='Prediction Path Length',Default=500,Min=50,Max=5000,Rounding=0,Compact=false,Suffix=' studs'})aa:AddSlider('TornadoPathThickness',{Text='Prediction Path Thickness',Default=2.5,Min=0.5,Max=10,Rounding=1,Compact=false,Suffix=' px'})ab:AddToggle('ProbeBoxESP',{Text='Box ESP',Default=false,Callback=function(ad)end}):AddColorPicker('ProbeBoxColor',{Default=Color3.fromRGB(0,200,255),Title='Box Color'})ab:AddToggle('ProbeFilledBoxESP',{Text='Filled Box ESP',Default=false,Callback=function(ad)end}):AddColorPicker('ProbeFilledColor',{Default=Color3.fromRGB(0,200,255),Title='Filled Box Color'})ab:AddToggle('ProbeNameESP',{Text='Name ESP',Default=false,Callback=function(ad)end}):AddColorPicker('ProbeNameColor',{Default=Color3.fromRGB(255,255,255),Title='Name Color'})ac:AddToggle('Fullbright',{Text='Fullbright',Default=false,Callback=function(ad)if not e then return end toggleFullbright(ad)end})ac:AddToggle('NoFog',{Text='No Fog',Default=false,Callback=function(ad)if not e then return end toggleNofog(ad)end})ac:AddToggle('CustomTimeToggle',{Text='Custom Time',Default=false,Callback=function(ad)if not e then return end toggleCustomTime(ad)end})ac:AddToggle('CustomAmbientToggle',{Text='Custom Ambient',Default=false,Callback=function(ad)if not e then return end toggleCustomAmbient(ad)end}):AddColorPicker('CustomAmbientColor',{Default=Color3.fromRGB(128,128,128),Title='Ambient Color'})ac:AddSlider('CustomTimeSlider',{Text='Time of Day',Default=12,Min=0,Max=24,Rounding=1,Compact=false,Suffix=':00'})ac:AddDivider()ac:AddToggle('CustomAtmosphereToggle',{Text='Custom Atmosphere',Default=false,Callback=function(ad)if not e then return end toggleCustomAtmosphere(ad)end})ac:AddLabel'Fog Color':AddColorPicker('CustomFogColor',{Default=Color3.fromRGB(128,128,128),Title='Fog Color'})ac:AddLabel'Atmosphere Color':AddColorPicker('AtmosphereColor',{Default=Color3.fromRGB(128,128,128),Title='Atmosphere Color'})ac:AddLabel'Atmosphere Decay':AddColorPicker('AtmosphereDecay',{Default=Color3.fromRGB(128,128,128),Title='Atmosphere Decay'})ac:AddSlider('AtmosphereDensity',{Text='Atmosphere Density',Default=0.3,Min=0,Max=1,Rounding=2,Compact=false})ac:AddSlider('AtmosphereHaze',{Text='Atmosphere Haze',Default=0,Min=0,Max=10,Rounding=1,Compact=false})i:GiveSignal(c.RenderStepped:Connect(function()local ad,ae,af,ag=Toggles.TornadoBoxESP and Toggles.TornadoBoxESP.Value,Toggles.TornadoFilledBoxESP and Toggles.TornadoFilledBoxESP.Value,Toggles.TornadoNameESP and Toggles.TornadoNameESP.Value,Toggles.TornadoPathESP and Toggles.TornadoPathESP.Value if not ad and not ae and not af and not ag then for ah,ai in pairs(r)do ai.box.Visible=false ai.filledBox.Visible=false ai.name.Visible=false end for ah,ai in ipairs(s)do ai.Visible=false end return end updateTornadoList()local ah,ai={},tick()for aj,ak in ipairs(u)do ah[ak]=true if not t[ak]then t[ak]={lastPos=ak.Position,lastTime=ai,smoothedVel=Vector3.new(0,0,0)}end local al=t[ak]local am=math.clamp(ai-al.lastTime,0.016,0.06)if am>0 then local an=ak.Position local ao=(an-al.lastPos)/am if ao.Magnitude<500 then al.smoothedVel=al.smoothedVel:Lerp(ao,0.4)end al.lastPos=an al.lastTime=ai end local an,ao,ap=getOrCreateTornadoDrawings(ak),ak.CFrame,ak.Size if ao then local aq,ar=g:WorldToViewportPoint(ao.Position)if ar then local as,at,au,av,aw=math.huge,math.huge,-math.huge,-math.huge,{ao*CFrame.new(ap.X/2,ap.Y/2,ap.Z/2),ao*CFrame.new(-ap.X/2,ap.Y/2,ap.Z/2),ao*CFrame.new(ap.X/2,-ap.Y/2,ap.Z/2),ao*CFrame.new(-ap.X/2,-ap.Y/2,ap.Z/2),ao*CFrame.new(ap.X/2,ap.Y/2,-ap.Z/2),ao*CFrame.new(-ap.X/2,ap.Y/2,-ap.Z/2),ao*CFrame.new(ap.X/2,-ap.Y/2,ap.Z/2),ao*CFrame.new(-ap.X/2,-ap.Y/2,-ap.Z/2)}for ax,ay in ipairs(aw)do local az=g:WorldToViewportPoint(ay.Position)if az.Xau then au=az.X end if az.Y>av then av=az.Y end end local ax,ay=au-as,av-at an.box.Position=Vector2.new(as,at)an.box.Size=Vector2.new(ax,ay)an.box.Color=Options.TornadoBoxColor and Options.TornadoBoxColor.Value or Color3.fromRGB(255,50,50)an.box.Visible=ad an.filledBox.Position=Vector2.new(as,at)an.filledBox.Size=Vector2.new(ax,ay)an.filledBox.Color=Options.TornadoFilledColor and Options.TornadoFilledColor.Value or Color3.fromRGB(255,50,50)an.filledBox.Visible=ae local az,aA=(g.CFrame.Position-ak.Position).Magnitude,getTornadoWindSpeed(ak)an.name.Text=string.format('Tornado %d\n[%d studs]\nWind: %d mph',aj,math.floor(az),math.floor(aA))an.name.Position=Vector2.new(as+(ax/2),at-36)an.name.Color=Options.TornadoNameColor and Options.TornadoNameColor.Value or Color3.fromRGB(255,255,255)an.name.Visible=af else an.box.Visible=false an.filledBox.Visible=false an.name.Visible=false end end end for aj,ak in pairs(r)do if not ah[aj]then ak.box:Remove()ak.filledBox:Remove()ak.name:Remove()r[aj]=nil t[aj]=nil end end if ag then local aj=pcall(function()if#u==0 then for aj,ak in ipairs(s)do ak.Visible=false end return end local aj,ak=25,Options.TornadoPathLength and Options.TornadoPathLength.Value or 500 local al,am,an,ao=math.clamp(math.floor(ak/aj),2,100),Options.TornadoPathColor and Options.TornadoPathColor.Value or Color3.fromRGB(255,50,50),Options.TornadoPathThickness and Options.TornadoPathThickness.Value or 2.5,{}if workspace.CurrentCamera then table.insert(ao,workspace.CurrentCamera)end if f.Character then table.insert(ao,f.Character)end local ap=f.Character local aq=ap and ap:FindFirstChildOfClass'Humanoid'local ar=aq and aq.Sit and aq.SeatPart local as=ar and ar.Parent and ar.Parent.Parent if as then table.insert(ao,as)end local at=workspace:FindFirstChild'storm_related'local au=at and at:FindFirstChild'storms'if au then table.insert(ao,au)end local av=workspace:FindFirstChild'player_related'local aw=av and av:FindFirstChild'storms'if aw then table.insert(ao,aw)end local ax=RaycastParams.new()ax.FilterType=Enum.RaycastFilterType.Exclude ax.FilterDescendantsInstances=ao local function getGroundPoint(ay)local az,aA=Vector3.new(ay.X,1000,ay.Z),Vector3.new(0,-2E3,0)local aB=workspace :Raycast(az,aA,ax)if aB then return Vector3.new(ay.X,aB.Position.Y+2,ay.Z)end return Vector3.new(ay.X,0,ay.Z)end local ay=0 for az,aA in ipairs(u)do if aA and aA.Parent then local aB,aC=aA.Position,t[aA]local aD=aC and aC.smoothedVel or Vector3.new(0,0,0)local aE=(aD.Magnitude>0.1)and aD.Unit or aA.CFrame.LookVector if not aE or tostring(aE)=='nan, nan, nan'or aE.Magnitude==0 then aE=Vector3.new(0,0,1)end local aF={}for aG=0,al do local aH=aB+(aE*(aG*aj))table.insert(aF,getGroundPoint(aH))end for aG=1,al do local aH,aI,aJ=(az-1)*al+aG,aF[aG],aF[aG+1]local aK,aL=g:WorldToViewportPoint(aI)local aM,aN=g:WorldToViewportPoint(aJ)local aO=s[aH]if not aO then aO=Drawing.new'Line'aO.Thickness=an s[aH]=aO end if aL and aN then aO.From=Vector2.new(aK.X,aK.Y)aO.To=Vector2.new(aM.X,aM.Y)aO.Color=am aO.Thickness=an local aP=aG/al aO.Transparency=1-(aP*0.75)aO.Visible=true else aO.Visible=false end ay=aH end end end for az=ay+1,#s do s[az].Visible=false end end)if not aj then for ak,al in ipairs(s)do al.Visible=false end end else for aj,ak in ipairs(s)do ak.Visible=false end end end))i:GiveSignal(c.RenderStepped:Connect(function()local ad,ae,af=Toggles.ProbeBoxESP and Toggles.ProbeBoxESP.Value,Toggles.ProbeFilledBoxESP and Toggles.ProbeFilledBoxESP.Value,Toggles.ProbeNameESP and Toggles.ProbeNameESP.Value if not ad and not ae and not af then for ag,ah in pairs(v)do ah.box.Visible=false ah.filledBox.Visible=false ah.name.Visible=false end return end local ag,ah,ai=workspace:FindFirstChild'player_related'and workspace.player_related:FindFirstChild'probes',tostring(f.UserId),{}if ag then for aj,ak in ipairs(ag:GetChildren())do if ak.Name==ah then ai[ak]=true local al,am,an=getOrCreateProbeDrawings(ak),nil,nil if ak:IsA'Model'then am,an=ak:GetBoundingBox()else local ao=ak:IsA'BasePart'and ak or ak:FindFirstChildWhichIsA'BasePart'if ao then am,an=ao.CFrame,ao.Size end end if am then local ao,ap=g:WorldToViewportPoint(am.Position)if ap then local aq,ar,as,at,au=math.huge,math.huge,-math.huge,-math.huge,{am*CFrame.new(an.X/2,an.Y/2,an.Z/2),am*CFrame.new(-an.X/2,an.Y/2,an.Z/2),am*CFrame.new(an.X/2,-an.Y/2,an.Z/2),am*CFrame.new(-an.X/2,-an.Y/2,an.Z/2),am*CFrame.new(an.X/2,an.Y/2,-an.Z/2),am*CFrame.new(-an.X/2,an.Y/2,-an.Z/2),am*CFrame.new(an.X/2,-an.Y/2,an.Z/2),am*CFrame.new(-an.X/2,-an.Y/2,-an.Z/2)}for av,aw in ipairs(au)do local ax=g:WorldToViewportPoint(aw.Position)if ax.Xas then as=ax.X end if ax.Y>at then at=ax.Y end end local av,aw=as-aq,at-ar al.box.Position=Vector2.new(aq,ar)al.box.Size=Vector2.new(av,aw)al.box.Color=Options.ProbeBoxColor and Options.ProbeBoxColor.Value or Color3.fromRGB(0,200,255)al.box.Visible=ad al.filledBox.Position=Vector2.new(aq,ar)al.filledBox.Size=Vector2.new(av,aw)al.filledBox.Color=Options.ProbeFilledColor and Options.ProbeFilledColor.Value or Color3.fromRGB(0,200,255)al.filledBox.Visible=ae al.name.Text=getProbeDisplayName(ak)al.name.Position=Vector2.new(aq+(av/2),ar-18)al.name.Color=Options.ProbeNameColor and Options.ProbeNameColor.Value or Color3.fromRGB(255,255,255)al.name.Visible=af else al.box.Visible=false al.filledBox.Visible=false al.name.Visible=false end end end end end for aj,ak in pairs(v)do if not ai[aj]then ak.box:Remove()ak.filledBox:Remove()ak.name:Remove()v[aj]=nil w[aj]=nil end end end))local ad={}i:GiveSignal(c.Heartbeat:Connect(function()if Toggles.TornadoTrackerToggle and Toggles.TornadoTrackerToggle.Value then if W then return end updateTornadoList()table.clear(ad)local ae,af,ag=nil,-1,nil for ah,ai in ipairs(u)do local aj,ak=(g.CFrame.Position-ai.Position).Magnitude,getTornadoWindSpeed(ai)local al=string.format('Tornado %d [%d studs] (%d mph)',ah,math.floor(aj),math.floor(ak))table.insert(ad,al)if ak>af then af=ak ae=ai ag=ah end end X:SetValues(ad)if Toggles.AutoSelectStrongest and Toggles.AutoSelectStrongest.Value and ae then x=ae local ah=ad[ag]if X.Value~=ah then X:SetValue(ah)end end end end))i:GiveSignal(b.InputBegan:Connect(function(ae,af)if af then return end local ag=ae.KeyCode.Name if q[ag]~=nil then q[ag]=true end if ae.KeyCode==Enum.KeyCode.LeftShift then o=true end end))i:GiveSignal(b.InputEnded:Connect(function(ae)local af=ae.KeyCode.Name if q[af]~=nil then q[af]=false end if ae.KeyCode==Enum.KeyCode.LeftShift then o=false end end))j:SetLibrary(i)k:SetLibrary(i)j:SetFolder'Zelenskyy'k:SetFolder'Zelenskyy/configs'j:ApplyToGroupbox(P:AddLeftGroupbox'Themes')k:BuildConfigSection(P)k:LoadAutoloadConfig()pcall(function()k.OnPostLoad:Connect(function()updateCarStats(true)end)end)local function unloadScript()toggleFly(false)toggleFullbright(false)toggleNofog(false)toggleCustomTime(false)toggleCustomAmbient(false)toggleCustomAtmosphere(false)for ae,af in ipairs(y)do pcall(task.cancel,af)end table.clear(y)for ae,af in pairs(r)do pcall(function()af.box:Remove()af.filledBox:Remove()af.name:Remove()end)end table.clear(r)for ae,af in ipairs(s)do pcall(function()af:Remove()end)end table.clear(s)for ae,af in pairs(v) do pcall(function()af.box:Remove()end)pcall(function()af.filledBox:Remove()end)pcall(function()af.name:Remove()end)end table.clear(v)table.clear(w)x=nil if z then pcall(function()z:Destroy()end)z=nil end i:Unload()getgenv().ZelenskyyUnload=nil end i:OnUnload(function()toggleFly(false)toggleFullbright(false)toggleNofog(false)toggleCustomTime(false)toggleCustomAmbient(false)toggleCustomAtmosphere(false)for ae,af in ipairs(y)do pcall(task.cancel,af)end table.clear(y)for ae,af in pairs(r)do pcall(function()af.box:Remove()af.filledBox:Remove()af.name:Remove()end)end table.clear(r)for ae,af in ipairs(s)do pcall(function()af:Remove()end)end table.clear(s)for ae,af in pairs(v)do pcall(function()af.box:Remove()end)pcall(function()af.filledBox:Remove()end)pcall(function()af.name:Remove()end)end table.clear(v)table.clear(w)x=nil if z then pcall(function()z:Destroy()end)z=nil end getgenv().ZelenskyyUnload=nil end)getgenv().ZelenskyyUnload=unloadScript spawnTracked(function()while true do updateCarStats(false,true)task.wait(5)end end)spawnTracked(function()while true do local ae=Toggles.AutoTeleportToggle and Toggles.AutoTeleportToggle.Value if ae and x and x.Parent then local af,ag=t[x],x.Position if ag then local ah=f.Character if ah then local ai=ah:FindFirstChild'HumanoidRootPart'or ah:FindFirstChildWhichIsA'BasePart'if ai then destroyWheels()local aj,ak,al=ag,af and af.smoothedVel or Vector3.new(0,0,0),Options.AutoTeleportDistance and Options.AutoTeleportDistance.Value or 150 if ak.Magnitude>0.1 then aj=ag-(ak.Unit*al)end local am=Options.AutoTeleportYOffset and Options.AutoTeleportYOffset.Value or 0 local an=CFrame.new(aj+Vector3.new(0,am,0))ai.AssemblyLinearVelocity=Vector3.new(0,0,0)ai.AssemblyAngularVelocity=Vector3.new(0,0,0)local ao=ah:FindFirstChildOfClass'Humanoid'local ap=(ao and ao.Sit and ao.SeatPart)or ai ap.CFrame=an if not z or not z.Parent then z=Instance.new'Model'z.Name='TeleportCubeRoom'z.Parent=workspace end local function syncPart(aq,ar,as,at,au)local av=z:FindFirstChild(aq)if not av then av=Instance.new'Part'av.Name=aq av.Size=ar av.Anchored=true av.Material=Enum.Material.Neon av.Color=Color3.fromRGB(0,255,255)av.Parent=z end av.CanCollide=at av.Transparency=au av.CFrame=an*as end syncPart('Visual',Vector3.new(20,20,20),CFrame.new(0,0,0),false,0.8)syncPart('Floor',Vector3.new(20,1,20),CFrame.new(0,-10,0),true,1)syncPart('Ceiling',Vector3.new(20,1,20),CFrame.new(0,10,0),true,1)syncPart('Wall1',Vector3.new(1,20,20),CFrame.new(10,0,0),true,1)syncPart('Wall2',Vector3.new(1,20,20),CFrame.new(-10,0,0),true,1)syncPart('Wall3',Vector3.new(20,20,1),CFrame.new(0,0,10),true,1)syncPart('Wall4',Vector3.new(20,20,1),CFrame.new(0,0,-10),true,1)end end end else if z then pcall(function()z:Destroy()end)z=nil end end local af=Options.AutoTeleportInterval and Options.AutoTeleportInterval.Value or 0.3 task.wait(af)end end)e=true