-- HIMFOFIS Combat + Key System (Final) -- Reticle Rosa + Dummy + Ícone Hello Kitty + Câmera atrás do personagem local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local RS = game:GetService("RunService") local VIM = game:GetService("VirtualInputManager") local LP = Players.LocalPlayer local PG = LP:WaitForChild("PlayerGui") local KEY = "677free" local KEY_LINK = "https://discord.gg/3dess2tZfv" local Lock, Auto, Target = false, false, nil local Blocking, LastBlock = false, 0 if PG:FindFirstChild("HIMFOFIS") then PG.HIMFOFIS:Destroy() end local Gui = Instance.new("ScreenGui") Gui.Name = "HIMFOFIS" Gui.ResetOnSpawn = false Gui.IgnoreGuiInset = true Gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling Gui.Parent = PG --================ KEY SYSTEM ================ local KeyFrame = Instance.new("Frame") KeyFrame.Size = UDim2.fromOffset(280, 195) KeyFrame.Position = UDim2.new(0.5, -140, 0.5, -97) KeyFrame.BackgroundTransparency = 0.35 KeyFrame.BackgroundColor3 = Color3.fromRGB(20, 5, 25) KeyFrame.BorderSizePixel = 0 KeyFrame.Parent = Gui Instance.new("UICorner", KeyFrame).CornerRadius = UDim.new(0, 12) local ks = Instance.new("UIStroke", KeyFrame) ks.Color = Color3.fromRGB(255, 80, 200) ks.Thickness = 2 local KeyTitle = Instance.new("TextLabel", KeyFrame) KeyTitle.Size = UDim2.new(1, -20, 0, 30) KeyTitle.Position = UDim2.fromOffset(10, 8) KeyTitle.BackgroundTransparency = 1 KeyTitle.Text = "KEY SYSTEM" KeyTitle.TextColor3 = Color3.fromRGB(255, 90, 205) KeyTitle.TextSize = 20 KeyTitle.Font = Enum.Font.GothamBold local KeyBox = Instance.new("TextBox", KeyFrame) KeyBox.Size = UDim2.fromOffset(240, 34) KeyBox.Position = UDim2.new(0.5, -120, 0, 48) KeyBox.BackgroundColor3 = Color3.fromRGB(40, 10, 50) KeyBox.BackgroundTransparency = 0.3 KeyBox.BorderSizePixel = 0 KeyBox.PlaceholderText = "Enter Key" KeyBox.Text = "" KeyBox.TextColor3 = Color3.new(1,1,1) KeyBox.TextSize = 14 KeyBox.Font = Enum.Font.Gotham Instance.new("UICorner", KeyBox).CornerRadius = UDim.new(0, 8) local GetKeyBtn = Instance.new("TextButton", KeyFrame) GetKeyBtn.Size = UDim2.fromOffset(240, 34) GetKeyBtn.Position = UDim2.new(0.5, -120, 0, 92) GetKeyBtn.BackgroundColor3 = Color3.fromRGB(90, 30, 140) GetKeyBtn.BackgroundTransparency = 0.2 GetKeyBtn.BorderSizePixel = 0 GetKeyBtn.Text = "Get Key" GetKeyBtn.TextColor3 = Color3.new(1,1,1) GetKeyBtn.TextSize = 14 GetKeyBtn.Font = Enum.Font.GothamBold Instance.new("UICorner", GetKeyBtn).CornerRadius = UDim.new(0, 8) local SubmitBtn = Instance.new("TextButton", KeyFrame) SubmitBtn.Size = UDim2.fromOffset(240, 34) SubmitBtn.Position = UDim2.new(0.5, -120, 0, 134) SubmitBtn.BackgroundColor3 = Color3.fromRGB(150, 40, 160) SubmitBtn.BackgroundTransparency = 0.2 SubmitBtn.BorderSizePixel = 0 SubmitBtn.Text = "Submit" SubmitBtn.TextColor3 = Color3.new(1,1,1) SubmitBtn.TextSize = 14 SubmitBtn.Font = Enum.Font.GothamBold Instance.new("UICorner", SubmitBtn).CornerRadius = UDim.new(0, 8) local KeyMsg = Instance.new("TextLabel", KeyFrame) KeyMsg.Size = UDim2.new(1, -20, 0, 18) KeyMsg.Position = UDim2.fromOffset(10, 172) KeyMsg.BackgroundTransparency = 1 KeyMsg.Text = "" KeyMsg.TextColor3 = Color3.fromRGB(255, 80, 80) KeyMsg.TextSize = 12 KeyMsg.Font = Enum.Font.Gotham --================ PAINEL COMBAT ================ local Panel = Instance.new("Frame") Panel.Size = UDim2.fromOffset(250, 270) Panel.Position = UDim2.new(0, 20, 0.5, -135) Panel.BackgroundTransparency = 0.4 Panel.BackgroundColor3 = Color3.fromRGB(20, 5, 25) Panel.BorderSizePixel = 0 Panel.Visible = false Panel.Parent = Gui Instance.new("UICorner", Panel).CornerRadius = UDim.new(0, 12) local ps = Instance.new("UIStroke", Panel) ps.Color = Color3.fromRGB(255, 80, 200) ps.Thickness = 2 local Title = Instance.new("TextLabel", Panel) Title.Size = UDim2.new(1, -50, 0, 28) Title.Position = UDim2.fromOffset(6, 4) Title.BackgroundTransparency = 1 Title.Text = "COMBAT" Title.TextColor3 = Color3.fromRGB(255, 90, 205) Title.TextSize = 20 Title.Font = Enum.Font.GothamBold local MinBtn = Instance.new("TextButton", Panel) MinBtn.Size = UDim2.fromOffset(28, 28) MinBtn.Position = UDim2.new(1, -34, 0, 4) MinBtn.BackgroundTransparency = 1 MinBtn.Text = "–" MinBtn.TextColor3 = Color3.fromRGB(255, 100, 220) MinBtn.TextSize = 22 MinBtn.Font = Enum.Font.GothamBold local function MakeButton(text, y) local b = Instance.new("TextButton", Panel) b.Size = UDim2.fromOffset(220, 32) b.Position = UDim2.new(0.5, -110, 0, y) b.BackgroundColor3 = Color3.fromRGB(90, 25, 110) b.BackgroundTransparency = 0.25 b.BorderSizePixel = 0 b.Text = text b.TextColor3 = Color3.new(1,1,1) b.TextSize = 12 b.Font = Enum.Font.GothamBold Instance.new("UICorner", b).CornerRadius = UDim.new(0, 8) return b end local LockBtn = MakeButton("LOCK ON • OFF", 40) local BlockBtn = MakeButton("AUTO BLOCK • OFF", 78) local NoticeBtn = MakeButton("Notices & Updates", 116) local Status = Instance.new("TextLabel", Panel) Status.Size = UDim2.new(1, -12, 0, 18) Status.Position = UDim2.fromOffset(6, 160) Status.BackgroundTransparency = 1 Status.Text = "Status: Off" Status.TextColor3 = Color3.fromRGB(210, 160, 220) Status.TextSize = 11 Status.Font = Enum.Font.Gotham local Owner = Instance.new("TextLabel", Panel) Owner.Size = UDim2.new(1, -12, 0, 16) Owner.Position = UDim2.fromOffset(6, 182) Owner.BackgroundTransparency = 1 Owner.Text = "Owner HIMFOFIS" Owner.TextColor3 = Color3.fromRGB(190, 80, 235) Owner.TextSize = 10 Owner.Font = Enum.Font.GothamBold -- ÍCONE HELLO KITTY (imagem) local HelloKittyIcon = Instance.new("ImageLabel", Panel) HelloKittyIcon.Size = UDim2.fromOffset(40, 40) HelloKittyIcon.Position = UDim2.new(0.5, -20, 0, 205) HelloKittyIcon.BackgroundTransparency = 1 HelloKittyIcon.Image = "rbxassetid://10345568576" -- Kawaii Hello Kitty icon HelloKittyIcon.ScaleType = Enum.ScaleType.Fit --================ ÍCONE H ================ local HIcon = Instance.new("TextButton", Gui) HIcon.Size = UDim2.fromOffset(45, 45) HIcon.Position = UDim2.new(0, 20, 0.5, -22) HIcon.BackgroundTransparency = 0.3 HIcon.BackgroundColor3 = Color3.fromRGB(30, 5, 40) HIcon.BorderSizePixel = 0 HIcon.Text = "H" HIcon.TextColor3 = Color3.fromRGB(180, 50, 255) HIcon.TextSize = 26 HIcon.Font = Enum.Font.GothamBold HIcon.Visible = false Instance.new("UICorner", HIcon).CornerRadius = UDim.new(0, 10) local hs = Instance.new("UIStroke", HIcon) hs.Color = Color3.fromRGB(180, 50, 255) hs.Thickness = 2 --================ NOTICES ================ local NoticeFrame = Instance.new("Frame", Gui) NoticeFrame.Size = UDim2.fromOffset(310, 220) NoticeFrame.Position = UDim2.new(0.5, -155, 0.5, -110) NoticeFrame.BackgroundTransparency = 0.3 NoticeFrame.BackgroundColor3 = Color3.fromRGB(20, 5, 25) NoticeFrame.BorderSizePixel = 0 NoticeFrame.Visible = false Instance.new("UICorner", NoticeFrame).CornerRadius = UDim.new(0, 12) local ns = Instance.new("UIStroke", NoticeFrame) ns.Color = Color3.fromRGB(255, 80, 200) ns.Thickness = 2 local NoticeTitle = Instance.new("TextLabel", NoticeFrame) NoticeTitle.Size = UDim2.new(1, -20, 0, 28) NoticeTitle.Position = UDim2.fromOffset(10, 8) NoticeTitle.BackgroundTransparency = 1 NoticeTitle.Text = "Notices & Updates" NoticeTitle.TextColor3 = Color3.fromRGB(255, 90, 205) NoticeTitle.TextSize = 18 NoticeTitle.Font = Enum.Font.GothamBold local NoticeText = Instance.new("TextLabel", NoticeFrame) NoticeText.Size = UDim2.new(1, -24, 0, 145) NoticeText.Position = UDim2.fromOffset(12, 42) NoticeText.BackgroundTransparency = 1 NoticeText.Text = [[English: Join our server to get access to the updated script. We are currently in BETA. Português: Entre no nosso servidor para ter acesso ao script atualizado. Estamos em BETA.]] NoticeText.TextColor3 = Color3.fromRGB(230, 200, 240) NoticeText.TextSize = 13 NoticeText.Font = Enum.Font.Gotham NoticeText.TextWrapped = true NoticeText.TextXAlignment = Enum.TextXAlignment.Left NoticeText.TextYAlignment = Enum.TextYAlignment.Top local CloseNotice = Instance.new("TextButton", NoticeFrame) CloseNotice.Size = UDim2.fromOffset(120, 30) CloseNotice.Position = UDim2.new(0.5, -60, 1, -40) CloseNotice.BackgroundColor3 = Color3.fromRGB(140, 40, 150) CloseNotice.BackgroundTransparency = 0.2 CloseNotice.BorderSizePixel = 0 CloseNotice.Text = "Close" CloseNotice.TextColor3 = Color3.new(1,1,1) CloseNotice.TextSize = 14 CloseNotice.Font = Enum.Font.GothamBold Instance.new("UICorner", CloseNotice).CornerRadius = UDim.new(0, 8) --================ RETICLE ROSA ================ local Reticle = Instance.new("Frame") Reticle.Name = "LockReticle" Reticle.Size = UDim2.fromOffset(90, 90) Reticle.AnchorPoint = Vector2.new(0.5, 0.5) Reticle.BackgroundTransparency = 1 Reticle.Visible = false Reticle.Parent = Gui local MainDiamond = Instance.new("Frame", Reticle) MainDiamond.Size = UDim2.fromOffset(62, 62) MainDiamond.Position = UDim2.fromScale(0.5, 0.5) MainDiamond.AnchorPoint = Vector2.new(0.5, 0.5) MainDiamond.BackgroundTransparency = 1 MainDiamond.Rotation = 45 local stroke1 = Instance.new("UIStroke", MainDiamond) stroke1.Color = Color3.fromRGB(255, 80, 200) stroke1.Thickness = 2.8 local InnerDiamond = Instance.new("Frame", Reticle) InnerDiamond.Size = UDim2.fromOffset(30, 30) InnerDiamond.Position = UDim2.fromScale(0.5, 0.5) InnerDiamond.AnchorPoint = Vector2.new(0.5, 0.5) InnerDiamond.BackgroundTransparency = 1 InnerDiamond.Rotation = 45 local stroke2 = Instance.new("UIStroke", InnerDiamond) stroke2.Color = Color3.fromRGB(255, 140, 230) stroke2.Thickness = 2 local function CreateTip(offsetX, offsetY) local tip = Instance.new("Frame", Reticle) tip.Size = UDim2.fromOffset(16, 16) tip.Position = UDim2.new(0.5, offsetX, 0.5, offsetY) tip.AnchorPoint = Vector2.new(0.5, 0.5) tip.BackgroundTransparency = 1 tip.Rotation = 45 local s = Instance.new("UIStroke", tip) s.Color = Color3.fromRGB(255, 90, 215) s.Thickness = 2.2 return tip end CreateTip(0, -52) CreateTip(0, 52) CreateTip(-52, 0) CreateTip(52, 0) --================ FUNÇÕES ================ local function ValidCharacter(char) if not char then return false end local hum = char:FindFirstChildOfClass("Humanoid") local head = char:FindFirstChild("Head") local root = char:FindFirstChild("HumanoidRootPart") return hum and head and root and hum.Health > 0 end local function FindTarget() local cam = workspace.CurrentCamera if not cam then return nil end local center = cam.ViewportSize / 2 local best, bestDist = nil, 250 for _, p in ipairs(Players:GetPlayers()) do if p ~= LP and ValidCharacter(p.Character) then local pos, onScreen = cam:WorldToViewportPoint(p.Character.Head.Position) if onScreen and pos.Z > 0 then local dist = (Vector2.new(pos.X, pos.Y) - center).Magnitude if dist < bestDist then bestDist = dist best = p.Character end end end end for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("Model") and (obj.Name == "Dummy" or obj.Name:lower():find("dummy") or obj.Name:lower():find("bot")) then if ValidCharacter(obj) and obj ~= LP.Character then local head = obj:FindFirstChild("Head") if head then local pos, onScreen = cam:WorldToViewportPoint(head.Position) if onScreen and pos.Z > 0 then local dist = (Vector2.new(pos.X, pos.Y) - center).Magnitude if dist < bestDist then bestDist = dist best = obj end end end end end end return best end --================ BOTÕES ================ GetKeyBtn.MouseButton1Click:Connect(function() pcall(function() if setclipboard then setclipboard(KEY_LINK) end end) KeyMsg.TextColor3 = Color3.fromRGB(100, 220, 255) KeyMsg.Text = "Link copiado!" task.delay(5, function() if KeyMsg then KeyMsg.Text = "" end end) end) SubmitBtn.MouseButton1Click:Connect(function() if KeyBox.Text == KEY then KeyMsg.TextColor3 = Color3.fromRGB(80, 255, 120) KeyMsg.Text = "Key Correct!" task.wait(0.4) KeyFrame:Destroy() Panel.Visible = true else KeyMsg.TextColor3 = Color3.fromRGB(255, 80, 80) KeyMsg.Text = "Invalid Key" KeyBox.Text = "" end end) LockBtn.MouseButton1Click:Connect(function() Lock = not Lock if Lock then Target = FindTarget() LockBtn.Text = "LOCK ON • ON" LockBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 150) Status.Text = Target and "Target: "..(Target.Name or "Dummy") or "Searching..." else Target = nil LockBtn.Text = "LOCK ON • OFF" LockBtn.BackgroundColor3 = Color3.fromRGB(90, 25, 110) Reticle.Visible = false if not Auto then Status.Text = "Status: Off" end -- libera o personagem if LP.Character then local hum = LP.Character:FindFirstChildOfClass("Humanoid") if hum then hum.AutoRotate = true end end end end) BlockBtn.MouseButton1Click:Connect(function() Auto = not Auto if Auto then BlockBtn.Text = "AUTO BLOCK • ON" BlockBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 150) Status.Text = "Auto Block: On" else BlockBtn.Text = "AUTO BLOCK • OFF" BlockBtn.BackgroundColor3 = Color3.fromRGB(90, 25, 110) if not Lock then Status.Text = "Status: Off" end end end) NoticeBtn.MouseButton1Click:Connect(function() NoticeFrame.Visible = true end) CloseNotice.MouseButton1Click:Connect(function() NoticeFrame.Visible = false end) MinBtn.MouseButton1Click:Connect(function() Panel.Visible = false HIcon.Visible = true end) HIcon.MouseButton1Click:Connect(function() HIcon.Visible = false Panel.Visible = true end) --================ LOOPS (CÂMERA ATRÁS + PERSONAGEM) ================ RS.RenderStepped:Connect(function() if not Lock then Reticle.Visible = false return end if not Target or not ValidCharacter(Target) then Target = FindTarget() end if not Target or not ValidCharacter(Target) then Status.Text = "No Target" Reticle.Visible = false return end local cam = workspace.CurrentCamera local head = Target:FindFirstChild("Head") local myChar = LP.Character local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart") local hum = myChar and myChar:FindFirstChildOfClass("Humanoid") if cam and head and myRoot then -- 1. Personagem olha pro alvo if hum then hum.AutoRotate = false end local lookAt = Vector3.new(head.Position.X, myRoot.Position.Y, head.Position.Z) myRoot.CFrame = CFrame.lookAt(myRoot.Position, lookAt) -- 2. Câmera fica ATRÁS do personagem olhando pro alvo (não sai da tela) local offset = Vector3.new(0, 3.5, 9) -- altura e distância atrás local camPos = (myRoot.CFrame * CFrame.new(offset)).Position cam.CFrame = CFrame.lookAt(camPos, head.Position) -- 3. Reticle local screenPos, onScreen = cam:WorldToViewportPoint(head.Position) if onScreen and screenPos.Z > 0 then Reticle.Position = UDim2.fromOffset(screenPos.X, screenPos.Y) Reticle.Visible = true Status.Text = "Target: " .. (Target.Name or "Dummy") else Reticle.Visible = false end end end) -- Arrastar local drag, st, sp Title.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then drag, st, sp = true, i.Position, Panel.Position end end) UIS.InputChanged:Connect(function(i) if drag and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then local d = i.Position - st Panel.Position = UDim2.new(sp.X.Scale, sp.X.Offset + d.X, sp.Y.Scale, sp.Y.Offset + d.Y) end end) UIS.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then drag = false end end) print("✅ HIMFOFIS carregado! (Câmera atrás + ícone Hello Kitty)")