-- Rayfield UI + Auto Fish (Fisch / Galaxy) - WITH FISH/SEC + DISABLE CAST ANIM local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))() local Window = Rayfield:CreateWindow({ Name = "Galaxy Auto Fish 69 - No Cast Anim", LoadingTitle = "weewee gaming 69", LoadingSubtitle = "auto + fps + disable visual cast", ConfigurationSaving = { Enabled = false } }) local Tab = Window:CreateTab("Main", 4483362458) local ToggleAuto = Tab:CreateToggle({ Name = "Auto Fish (Cast + Withdraw)", CurrentValue = false, Callback = function(v) getgenv().AutoFish = v if v then getgenv().StartTime = tick() updateCounterLabel() end end }) local SliderDelay = Tab:CreateSlider({ Name = "Loop Delay (seconds)", Range = {0.1, 2}, Increment = 0.1, Suffix = "s", CurrentValue = 0.3, Callback = function(v) getgenv().LoopDelay = v end }) local ToggleNoAnim = Tab:CreateToggle({ Name = "Disable Cast Animation (Visual Only)", CurrentValue = false, Flag = "NoCastAnim", Callback = function(v) getgenv().DisableCastAnim = v if v then Rayfield:Notify({ Title = "No Anim ON", Content = "Cast visual akan di-stop otomatis (rod freeze/minimal).", Duration = 3 }) else Rayfield:Notify({ Title = "No Anim OFF", Content = "Animasi cast kembali normal.", Duration = 3 }) end end }) local ToggleNotify = Tab:CreateToggle({ Name = "Show Batch Notifications", CurrentValue = false, Callback = function(v) getgenv().ShowNotify = v end }) local ToggleDetail = Tab:CreateToggle({ Name = "Detailed ID Notify (spam risk)", CurrentValue = false, Callback = function(v) getgenv().ShowDetailNotify = v end }) -- FISH COUNTER + FPS getgenv().FishCount = 0 getgenv().StartTime = 0 getgenv().DisableCastAnim = false local CounterLabel = Tab:CreateLabel("Fish Caught: 0 (0.00 fish/sec)") local ResetButton = Tab:CreateButton({ Name = "Reset Counter & Time", Callback = function() getgenv().FishCount = 0 getgenv().StartTime = tick() updateCounterLabel() end }) function updateCounterLabel() local elapsed = tick() - getgenv().StartTime local fps = elapsed > 0.1 and math.floor((getgenv().FishCount / elapsed) * 100) / 100 or 0 CounterLabel:Set("Fish Caught: " .. getgenv().FishCount .. " (" .. fps .. " fish/sec)") end task.spawn(function() while true do if getgenv().AutoFish then updateCounterLabel() end task.wait(1) end end) -- DISABLE CAST ANIMATION (hook AnimationPlayed) local function setupNoAnim() local player = game.Players.LocalPlayer local char = player.Character or player.CharacterAdded:Wait() local humanoid = char:WaitForChild("Humanoid") local animator = humanoid:WaitForChild("Animator") -- Intercept semua animation yang dimainkan local conn conn = animator.AnimationPlayed:Connect(function(track) if getgenv().DisableCastAnim then -- Stop visual cast (asumsi nama track contain "Cast" atau "Fishing" - adjust kalau beda) if track.Name:lower():find("cast") or track.Name:lower():find("fish") or track.Name:lower():find("rod") then track:AdjustSpeed(0) -- freeze anim (visual stop, logic server tetep jalan) -- atau track:Stop() kalau mau full stop, tapi bisa bug kalau server expect anim selesai end end end) -- Re-setup kalau char respawn player.CharacterAdded:Connect(function(newChar) if conn then conn:Disconnect() end setupNoAnim() -- recursive setup end) end -- Jalankan sekali pas load (setup hook) setupNoAnim() -- fungsi galaxy terdekat (sama seperti sebelumnya) local function getNearestGalaxy() local char = game.Players.LocalPlayer.Character if not char or not char:FindFirstChild("HumanoidRootPart") then return nil end local hrp = char.HumanoidRootPart local nearest, dist = nil, math.huge for _, galaxy in workspace.Galaxies:GetChildren() do local d = (galaxy:GetPivot().Position - hrp.Position).Magnitude if d < dist then dist = d nearest = galaxy end end return nearest end -- loop auto fish + trigger no-anim pas cast task.spawn(function() while true do if getgenv().AutoFish then local char = game.Players.LocalPlayer.Character if char and char:FindFirstChild("Rod") then local target = getNearestGalaxy() if target then local hrp = char.HumanoidRootPart local castPos = target:GetPivot().Position + Vector3.new(0, 5, 0) local castDir = (castPos - hrp.Position).Unit local rodModel = char.Rod:FindFirstChild("Model") if rodModel then local rodTip = rodModel:FindFirstChild("Nodes", true):FindFirstChild("RodTip", true) if rodTip and rodTip:FindFirstChild("Attachment") then -- CAST game:GetService("ReplicatedStorage").Events.Global.Cast:FireServer( char.Humanoid, castPos, castDir, rodTip.Attachment ) -- Optional: hide rod visual lebih agresif (kalau anim ga cukup) if getgenv().DisableCastAnim then task.delay(0.05, function() local rod = char:FindFirstChild("Rod") if rod then rod.Transparency = 1 end -- hide rod sementara (optional) end) end task.wait(0.08) game:GetService("ReplicatedStorage").Events.Global.WithdrawBobber:FireServer(char.Humanoid) end end end end end task.wait(getgenv().LoopDelay or 0.3) end end) -- AUTO CONFIRM + COUNTER (sama seperti sebelumnya) local rs = game:GetService("ReplicatedStorage") local itemEvent = rs.Events.Global.ClientRecieveItems itemEvent.OnClientEvent:Connect(function(_, _, _, catchData, _, waitData) if catchData then local confirmedCount = 0 local confirmedIds = {} for i, fishData in ipairs(catchData) do local fishId = fishData.id if fishId then task.wait(waitData[i] or 3) rs.Events.Global.ClientItemConfirm:FireServer(fishId) confirmedCount += 1 table.insert(confirmedIds, tostring(fishId)) getgenv().FishCount += 1 updateCounterLabel() end end if getgenv().ShowNotify and confirmedCount > 0 then local elapsed = tick() - getgenv().StartTime local fps = elapsed > 0.1 and math.floor((getgenv().FishCount / elapsed) * 100) / 100 or 0 Rayfield:Notify({ Title = "Batch Confirmed", Content = confirmedCount .. " fish (Total: " .. getgenv().FishCount .. " | " .. fps .. " fish/sec)", Duration = 2.5 }) end if getgenv().ShowDetailNotify and #confirmedIds > 0 then for _, id in confirmedIds do Rayfield:Notify({ Title = "Confirmed", Content = "ID: " .. id, Duration = 1.5 }) end end end end) Rayfield:Notify({ Title = "Updated! No Cast Anim Added", Content = "Toggle 'Disable Cast Animation' → rod cast visual freeze/minimal. FPS & counter tetep jalan.", Duration = 5 })