Get ready for another fruitful season as you walk into a captivating world of never ending farming and pet raising with the help of the Wheat Tycoon 2 Script. This script or code will boost your farming activities to generate more crops quickly and sell them at a higher price instantly. It also helps you to do more rebirths faster and unlock certain resource multipliers and barn upgrades throughout the game.
Wheat Tycoon 2 Script Auto Farm, Auto Buttons, Auto Upgrade, Auto Rebirth, Auto Prestige
Copy the script below to level up your farming facilities in the game. Make sure to use the most effective executor or exploit to make your every harvest enjoyable and abundant. We have a list of available executors here.
loadstring(game:HttpGet("https://raw.githubusercontent.com/synthhex1/AutoFarm/refs/heads/main/WT2.lua"))()
Wheat Tycoon 2 Script Pastebin
--// Player / character
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ByteNet = ReplicatedStorage:WaitForChild("ByteNetReliable")
local TweenService = game:GetService("TweenService")
local autoButtons = false
local purchased = {} -- кэш купленных кнопок
----------------------------------------------------------------
-- Modern UI
----------------------------------------------------------------
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "ModernHelperUI"
ScreenGui.ResetOnSpawn = false
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
ScreenGui.Parent = player:WaitForChild("PlayerGui")
-- Main Frame
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.fromOffset(340, 387)
MainFrame.Position = UDim2.new(0.5, -170, 0.5, -193.5)
MainFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
MainFrame.BorderSizePixel = 0
MainFrame.ClipsDescendants = true
MainFrame.Parent = ScreenGui
-- Corner rounding
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 16)
MainCorner.Parent = MainFrame
-- Drop shadow effect
local Shadow = Instance.new("ImageLabel")
Shadow.Name = "Shadow"
Shadow.Size = UDim2.new(1, 40, 1, 40)
Shadow.Position = UDim2.fromOffset(-20, -20)
Shadow.BackgroundTransparency = 1
Shadow.Image = "rbxasset://textures/ui/GuiImagePlaceholder.png"
Shadow.ImageColor3 = Color3.fromRGB(0, 0, 0)
Shadow.ImageTransparency = 0.5
Shadow.ScaleType = Enum.ScaleType.Slice
Shadow.SliceCenter = Rect.new(10, 10, 118, 118)
Shadow.ZIndex = 0
Shadow.Parent = MainFrame
-- Accent gradient bar at top
local AccentBar = Instance.new("Frame")
AccentBar.Name = "AccentBar"
AccentBar.Size = UDim2.new(1, 0, 0, 4)
AccentBar.Position = UDim2.new(0, 0, 0, 0)
AccentBar.BorderSizePixel = 0
AccentBar.Parent = MainFrame
local BarGradient = Instance.new("UIGradient")
BarGradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(138, 43, 226)),
ColorSequenceKeypoint.new(0.5, Color3.fromRGB(75, 0, 130)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(138, 43, 226))
}
BarGradient.Parent = AccentBar
-- Header
local Header = Instance.new("Frame")
Header.Name = "Header"
Header.Size = UDim2.new(1, 0, 0, 60)
Header.Position = UDim2.new(0, 0, 0, 4)
Header.BackgroundTransparency = 1
Header.Parent = MainFrame
local Title = Instance.new("TextLabel")
Title.Name = "Title"
Title.Size = UDim2.new(1, -100, 0, 30)
Title.Position = UDim2.new(0, 20, 0, 10)
Title.BackgroundTransparency = 1
Title.Text = "Wheat Tycoon 2"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.Font = Enum.Font.GothamBold
Title.TextSize = 18
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = Header
local Subtitle = Instance.new("TextLabel")
Subtitle.Name = "Subtitle"
Subtitle.Size = UDim2.new(1, -100, 0, 18)
Subtitle.Position = UDim2.new(0, 20, 0, 38)
Subtitle.BackgroundTransparency = 1
Subtitle.Text = "Farm Helper v2.0"
Subtitle.TextColor3 = Color3.fromRGB(150, 150, 160)
Subtitle.Font = Enum.Font.Gotham
Subtitle.TextSize = 12
Subtitle.TextXAlignment = Enum.TextXAlignment.Left
Subtitle.Parent = Header
-- Minimize button
local MinimizeBtn = Instance.new("TextButton")
MinimizeBtn.Name = "MinimizeButton"
MinimizeBtn.Size = UDim2.fromOffset(36, 36)
MinimizeBtn.Position = UDim2.new(1, -88, 0, 14)
MinimizeBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 40)
MinimizeBtn.Text = "─"
MinimizeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
MinimizeBtn.Font = Enum.Font.GothamBold
MinimizeBtn.TextSize = 16
MinimizeBtn.BorderSizePixel = 0
MinimizeBtn.Parent = Header
local MinimizeCorner = Instance.new("UICorner")
MinimizeCorner.CornerRadius = UDim.new(0, 8)
MinimizeCorner.Parent = MinimizeBtn
-- Close button
local CloseBtn = Instance.new("TextButton")
CloseBtn.Name = "CloseButton"
CloseBtn.Size = UDim2.fromOffset(36, 36)
CloseBtn.Position = UDim2.new(1, -46, 0, 14)
CloseBtn.BackgroundColor3 = Color3.fromRGB(220, 38, 38)
CloseBtn.Text = "×"
CloseBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseBtn.Font = Enum.Font.GothamBold
CloseBtn.TextSize = 24
CloseBtn.BorderSizePixel = 0
CloseBtn.Parent = Header
local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(0, 8)
CloseCorner.Parent = CloseBtn
-- Hover effects for buttons
CloseBtn.MouseEnter:Connect(function()
TweenService:Create(CloseBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(239, 68, 68)}):Play()
end)
CloseBtn.MouseLeave:Connect(function()
TweenService:Create(CloseBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(220, 38, 38)}):Play()
end)
MinimizeBtn.MouseEnter:Connect(function()
TweenService:Create(MinimizeBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(45, 45, 50)}):Play()
end)
MinimizeBtn.MouseLeave:Connect(function()
TweenService:Create(MinimizeBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(35, 35, 40)}):Play()
end)
-- Scrollable content container
local Content = Instance.new("ScrollingFrame")
Content.Name = "Content"
Content.Size = UDim2.new(1, -40, 0, 309)
Content.Position = UDim2.new(0, 20, 0, 70)
Content.BackgroundTransparency = 1
Content.BorderSizePixel = 0
Content.ScrollBarThickness = 8
Content.ScrollBarImageColor3 = Color3.fromRGB(138, 43, 226)
Content.ScrollBarImageTransparency = 0.3
Content.CanvasSize = UDim2.new(0, 0, 0, 340) -- 4 кнопки × 65px + 3 отступа × 12px = 296px + запас
Content.ScrollingDirection = Enum.ScrollingDirection.Y
Content.ScrollingEnabled = true
Content.VerticalScrollBarInset = Enum.ScrollBarInset.ScrollBar
Content.ClipsDescendants = true
Content.Parent = MainFrame
-- Красивый скроллбар corner
local ScrollCorner = Instance.new("UICorner")
ScrollCorner.CornerRadius = UDim.new(1, 0)
ScrollCorner.Parent = Content
-- List layout for buttons
local ListLayout = Instance.new("UIListLayout")
ListLayout.Padding = UDim.new(0, 12)
ListLayout.SortOrder = Enum.SortOrder.LayoutOrder
ListLayout.Parent = Content
-- Padding внутри скролла
local ContentPadding = Instance.new("UIPadding")
ContentPadding.PaddingRight = UDim.new(0, 6) -- отступ от скроллбара
ContentPadding.Parent = Content
----------------------------------------------------------------
-- Modern Button Creator
----------------------------------------------------------------
local function createModernButton(text, layoutOrder, accentColor)
local ButtonFrame = Instance.new("Frame")
ButtonFrame.Name = text
ButtonFrame.Size = UDim2.new(1, -6, 0, 65) -- -6 чтобы не налезало на скроллбар
ButtonFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
ButtonFrame.BorderSizePixel = 0
ButtonFrame.LayoutOrder = layoutOrder
ButtonFrame.Parent = Content
local BtnCorner = Instance.new("UICorner")
BtnCorner.CornerRadius = UDim.new(0, 12)
BtnCorner.Parent = ButtonFrame
-- Status indicator
local StatusDot = Instance.new("Frame")
StatusDot.Name = "StatusDot"
StatusDot.Size = UDim2.fromOffset(10, 10)
StatusDot.Position = UDim2.new(0, 15, 0.5, -5)
StatusDot.BackgroundColor3 = Color3.fromRGB(100, 100, 110)
StatusDot.BorderSizePixel = 0
StatusDot.Parent = ButtonFrame
local DotCorner = Instance.new("UICorner")
DotCorner.CornerRadius = UDim.new(1, 0)
DotCorner.Parent = StatusDot
-- Button text
local BtnLabel = Instance.new("TextLabel")
BtnLabel.Name = "Label"
BtnLabel.Size = UDim2.new(1, -90, 0, 22)
BtnLabel.Position = UDim2.new(0, 35, 0, 12)
BtnLabel.BackgroundTransparency = 1
BtnLabel.Text = text
BtnLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
BtnLabel.Font = Enum.Font.GothamBold
BtnLabel.TextSize = 15
BtnLabel.TextXAlignment = Enum.TextXAlignment.Left
BtnLabel.Parent = ButtonFrame
-- Status text
local StatusLabel = Instance.new("TextLabel")
StatusLabel.Name = "Status"
StatusLabel.Size = UDim2.new(1, -90, 0, 16)
StatusLabel.Position = UDim2.new(0, 35, 0, 38)
StatusLabel.BackgroundTransparency = 1
StatusLabel.Text = "Disabled"
StatusLabel.TextColor3 = Color3.fromRGB(120, 120, 130)
StatusLabel.Font = Enum.Font.Gotham
StatusLabel.TextSize = 11
StatusLabel.TextXAlignment = Enum.TextXAlignment.Left
StatusLabel.Parent = ButtonFrame
-- Toggle button
local ToggleBtn = Instance.new("TextButton")
ToggleBtn.Name = "ToggleButton"
ToggleBtn.Size = UDim2.fromOffset(60, 32)
ToggleBtn.Position = UDim2.new(1, -70, 0.5, -16)
ToggleBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
ToggleBtn.Text = ""
ToggleBtn.BorderSizePixel = 0
ToggleBtn.Parent = ButtonFrame
local ToggleCorner = Instance.new("UICorner")
ToggleCorner.CornerRadius = UDim.new(1, 0)
ToggleCorner.Parent = ToggleBtn
-- Toggle slider
local Slider = Instance.new("Frame")
Slider.Name = "Slider"
Slider.Size = UDim2.fromOffset(26, 26)
Slider.Position = UDim2.fromOffset(3, 3)
Slider.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Slider.BorderSizePixel = 0
Slider.Parent = ToggleBtn
local SliderCorner = Instance.new("UICorner")
SliderCorner.CornerRadius = UDim.new(1, 0)
SliderCorner.Parent = Slider
-- Hover effect
ToggleBtn.MouseEnter:Connect(function()
TweenService:Create(ButtonFrame, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(35, 35, 40)}):Play()
end)
ToggleBtn.MouseLeave:Connect(function()
TweenService:Create(ButtonFrame, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(30, 30, 35)}):Play()
end)
-- Return components
return {
Frame = ButtonFrame,
Button = ToggleBtn,
Dot = StatusDot,
Status = StatusLabel,
Slider = Slider,
AccentColor = accentColor
}
end
----------------------------------------------------------------
-- Button Animations
----------------------------------------------------------------
local function toggleButton(btnData, enabled)
local tweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
if enabled then
TweenService:Create(btnData.Button, tweenInfo, {BackgroundColor3 = btnData.AccentColor}):Play()
TweenService:Create(btnData.Slider, tweenInfo, {Position = UDim2.fromOffset(31, 3)}):Play()
TweenService:Create(btnData.Dot, tweenInfo, {BackgroundColor3 = btnData.AccentColor}):Play()
btnData.Status.Text = "Active"
btnData.Status.TextColor3 = btnData.AccentColor
else
TweenService:Create(btnData.Button, tweenInfo, {BackgroundColor3 = Color3.fromRGB(40, 40, 45)}):Play()
TweenService:Create(btnData.Slider, tweenInfo, {Position = UDim2.fromOffset(3, 3)}):Play()
TweenService:Create(btnData.Dot, tweenInfo, {BackgroundColor3 = Color3.fromRGB(100, 100, 110)}):Play()
btnData.Status.Text = "Disabled"
btnData.Status.TextColor3 = Color3.fromRGB(120, 120, 130)
end
end
----------------------------------------------------------------
-- Create Buttons
----------------------------------------------------------------
local AutoButtonsBtn = createModernButton("Auto Buttons", 1, Color3.fromRGB(46, 213, 115))
local UpgradeBtn = createModernButton("Auto Upgrade", 2, Color3.fromRGB(52, 152, 219))
local RebirthBtn = createModernButton("Auto Rebirth", 3, Color3.fromRGB(155, 89, 182))
local PrestigeBtn = createModernButton("Auto Prestige", 4, Color3.fromRGB(241, 196, 15))
----------------------------------------------------------------
-- Smart Auto Buttons Logic (v2 — optimized & safe)
----------------------------------------------------------------
local function hasTouchTx(part)
for _, d in ipairs(part:GetDescendants()) do
if d:IsA("TouchTransmitter") then
return true
end
end
return false
end
-- перевод "$3.96M" -> 3960000
local function parsePrice(text)
if not text or text == "" then return math.huge end
text = text:gsub("%$", ""):gsub(",", ""):gsub("%s+", "")
local num, suffix = text:match("([%d%.]+)([KMB]?)")
num = tonumber(num)
if not num then return math.huge end
if suffix == "K" then num *= 1e3
elseif suffix == "M" then num *= 1e6
elseif suffix == "B" then num *= 1e9 end
return num
end
-- текущие деньги игрока
local function getMoney()
local stats = player:FindFirstChild("leaderstats")
if not stats then return 0 end
local money = stats:FindFirstChild("Money")
return money and money.Value or 0
end
----------------------------------------------------------------
-- Определяем участок игрока по ближайшей кнопке
----------------------------------------------------------------
local function getPlayerPlot()
local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local hrp = character:WaitForChild("HumanoidRootPart")
local plotsFolder = workspace:FindFirstChild("Plots")
if not plotsFolder then
warn("Not found workspace.Plots")
return nil
end
local nearestPlot, nearestDist = nil, math.huge
for _, plot in ipairs(plotsFolder:GetChildren()) do
local buyButtons = plot:FindFirstChild("BuyButtons")
if buyButtons and #buyButtons:GetChildren() > 0 then
local anyPart = buyButtons:FindFirstChildWhichIsA("BasePart", true)
if anyPart then
local dist = (hrp.Position - anyPart.Position).Magnitude
if dist < nearestDist then
nearestDist = dist
nearestPlot = plot
end
end
end
end
if nearestPlot then
print("Successfully")
else
warn("Maybe bug unsuccessfully")
end
return nearestPlot
end
-- Собираем кнопки только со СВОЕГО участка (исправлено)
local function collectButtonParts()
local out = {}
local myPlot = getPlayerPlot()
if not myPlot then return out end
local buyButtons = myPlot:FindFirstChild("BuyButtons")
if not buyButtons then return out end
for _, obj in ipairs(buyButtons:GetDescendants()) do
if obj:IsA("BasePart") and tonumber(obj.Name) and hasTouchTx(obj) then
table.insert(out, obj)
end
end
return out
end
-- получаем цену кнопки
local function getButtonPrice(part)
local gui = part:FindFirstChildOfClass("BillboardGui")
if not gui then return math.huge end
for _, obj in pairs(gui:GetDescendants()) do
if obj:IsA("TextLabel") or obj:IsA("TextBox") or obj:IsA("TextButton") then
local price = parsePrice(obj.Text)
if price ~= math.huge then
return price
end
end
end
return math.huge
end
----------------------------------------------------------------
-- Получаем кнопки, которые можно купить за текущие деньги
----------------------------------------------------------------
local function getAffordableButtons(myPlot, currentMoney)
local result = {}
local buyButtons = myPlot:FindFirstChild("BuyButtons")
if not buyButtons then return result end
for _, part in ipairs(buyButtons:GetDescendants()) do
if part:IsA("BasePart") and hasTouchTx(part) and not purchased[part] then
local price = getButtonPrice(part)
if price <= currentMoney then
table.insert(result, {part = part, price = price})
end
end
end
-- сортируем кнопки по цене (чтобы покупать от дешёвых к дорогим)
table.sort(result, function(a, b)
return a.price < b.price
end)
return result
end
local ByteNetForButtons = game:GetService("ReplicatedStorage"):FindFirstChild("ByteNetReliable")
local AUTO_TELE_PAYLOAD = buffer and buffer.fromstring or function(s) return s end
AUTO_TELE_PAYLOAD = AUTO_TELE_PAYLOAD("\"\001")
local function autoButtonsLoop()
autoButtons = not autoButtons
toggleButton(AutoButtonsBtn, autoButtons)
if not autoButtons then
print("off")
return
end
local myPlot = getPlayerPlot()
if not myPlot then
warn("plot not found")
toggleButton(AutoButtonsBtn, false)
autoButtons = false
return
end
print("Циклический Auto Buttons активирован для:", myPlot.Name)
task.spawn(function()
local hrp = (player.Character or player.CharacterAdded:Wait()):WaitForChild("HumanoidRootPart")
while autoButtons do
local buyButtons = myPlot:FindFirstChild("BuyButtons")
if not buyButtons then
task.wait(1)
continue
end
-- собираем все кнопки (даже если уже куплены — список обновится)
local allButtons = {}
for _, part in ipairs(buyButtons:GetDescendants()) do
if part:IsA("BasePart") and hasTouchTx(part) then
table.insert(allButtons, part)
end
end
-- сортируем по имени (чтобы шёл последовательно)
table.sort(allButtons, function(a, b)
return tonumber(a.Name) and tonumber(b.Name) and tonumber(a.Name) < tonumber(b.Name)
end)
for _, part in ipairs(allButtons) do
if not autoButtons then break end
if not (part and part.Parent) then continue end
local price = getButtonPrice(part)
local money = getMoney()
-- проверяем — хватает ли денег
if price <= money then
pcall(function()
ByteNetForButtons:FireServer(AUTO_TELE_PAYLOAD, {part})
firetouchinterest(hrp, part, 0)
task.wait(0.015)
firetouchinterest(hrp, part, 1)
end)
task.wait(0.05)
end
end
-- делаем круг по всем кнопкам заново
task.wait(0.5)
end
end)
end
----------------------------------------------------------------
-- Auto Upgrade Logic
----------------------------------------------------------------
local PAYLOAD = {
FasterGrowth = buffer.fromstring("\030\f\000FasterGrowth\005\000Wheat"),
PriceIncrease = buffer.fromstring("\030\r\000PriceIncrease\005\000Wheat"),
Rebirth = buffer.fromstring("\025"),
Prestige = buffer.fromstring("\026")
}
local function fireMany(payload, times, delaySec)
for i = 1, times do
ByteNet:FireServer(payload)
task.wait(delaySec or 0.05)
end
end
local autoUpgradeEnabled = false
local function autoUpgradeLoop()
autoUpgradeEnabled = not autoUpgradeEnabled
toggleButton(UpgradeBtn, autoUpgradeEnabled)
task.spawn(function()
while autoUpgradeEnabled do
fireMany(PAYLOAD.FasterGrowth, 15, 0.05)
fireMany(PAYLOAD.PriceIncrease, 100, 0.05)
for i = 1, 15 do
if not autoUpgradeEnabled then break end
task.wait(1)
end
end
end)
end
UpgradeBtn.Button.MouseButton1Click:Connect(autoUpgradeLoop)
----------------------------------------------------------------
-- Auto Rebirth Logic
----------------------------------------------------------------
local autoRebirthEnabled = false
local function autoRebirthLoop()
autoRebirthEnabled = not autoRebirthEnabled
toggleButton(RebirthBtn, autoRebirthEnabled)
task.spawn(function()
while autoRebirthEnabled do
ByteNet:FireServer(PAYLOAD.Rebirth)
for i = 1, 5 do
if not autoRebirthEnabled then break end
task.wait(0.5)
end
end
end)
end
RebirthBtn.Button.MouseButton1Click:Connect(autoRebirthLoop)
----------------------------------------------------------------
-- Auto Prestige Logic
----------------------------------------------------------------
local autoPrestigeEnabled = false
local function autoPrestigeLoop()
autoPrestigeEnabled = not autoPrestigeEnabled
toggleButton(PrestigeBtn, autoPrestigeEnabled)
task.spawn(function()
while autoPrestigeEnabled do
ByteNet:FireServer(PAYLOAD.Prestige)
for i = 1, 10 do
if not autoPrestigeEnabled then break end
task.wait(1)
end
end
end)
end
PrestigeBtn.Button.MouseButton1Click:Connect(autoPrestigeLoop)
----------------------------------------------------------------
-- Draggable Frame
----------------------------------------------------------------
local dragging, dragInput, dragStart, startPos
local function update(input)
local delta = input.Position - dragStart
MainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end
Header.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = MainFrame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
Header.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
game:GetService("UserInputService").InputChanged:Connect(function(input)
if input == dragInput and dragging then
update(input)
end
end)
----------------------------------------------------------------
-- Minimize/Maximize Logic
----------------------------------------------------------------
local isMinimized = false
local normalSize = UDim2.fromOffset(340, 387)
local minimizedSize = UDim2.fromOffset(340, 64)
MinimizeBtn.MouseButton1Click:Connect(function()
isMinimized = not isMinimized
local targetSize = isMinimized and minimizedSize or normalSize
local tweenInfo = TweenInfo.new(0.3, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
TweenService:Create(MainFrame, tweenInfo, {Size = targetSize}):Play()
TweenService:Create(Content, tweenInfo, {
Size = isMinimized and UDim2.new(1, -40, 0, 0) or UDim2.new(1, -40, 0, 309)
}):Play()
MinimizeBtn.Text = isMinimized and "+" or "─"
end)
AutoButtonsBtn.Button.MouseButton1Click:Connect(autoButtonsLoop)
----------------------------------------------------------------
-- Close Button
----------------------------------------------------------------
CloseBtn.MouseButton1Click:Connect(function()
TweenService:Create(MainFrame, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.In), {
Size = UDim2.fromOffset(0, 0),
Position = UDim2.new(0.5, 0, 0.5, 0)
}):Play()
task.wait(0.3)
ScreenGui:Destroy()
end)
-- Entrance animation
MainFrame.Size = UDim2.fromOffset(0, 0)
MainFrame.Position = UDim2.new(0.5, 0, 0.5, 0)
TweenService:Create(MainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {
Size = normalSize,
Position = UDim2.new(0.5, -170, 0.5, -193.5)
}):Play()
How To Use the Wheat Tycoon 2 Script
Follow these simple steps on how to use the Wheat Tycoon 2 Script:
1. Choose an effective executor/exploit from the list below (Free & Paid)
2. Download the executor you prefer. We have our list here.
3. Launch the Roblox game first, then the executor
4. When both the Roblox game and executor are open, press Inject or Attach (it depends on what executor you are using)
5. Paste the script you want to use
6. Press the Execute or Play button (again, it depends on what executor you are using)
7. That’s all, enjoy using the Wheat Tycoon 2 script GUI
About The Wheat Tycoon 2 Script
The Roblox Wheat Tycoon 2 Script is a set of unique codes that allows the user to have auto-farm features to instantly accumulate huge amounts of cash resources through wheat farming. With its efficient algorithms and instinctive interface, it is very easy to use, even if you are a newbie to this game or an experienced player.
A truly impressive tool for success in every Roblox game you will be part of.
By using the best script of the game, you now have an advantage over other players in terms of high-quality wheat crops and harvesting speed to become the most successful farmer in town. This will also help you hatch as many pets as possible until you acquire the best one and gain additional cash multipliers in your daily grind.
If you are looking for the latest Wheat Tycoon 2 Codes to maximize your cash and gem resources in the game, you can collect them here.
Always remember that all kinds of game scripts are illegal and may violate the Roblox Terms of Service, resulting in an account ban or other punishments. Be careful when using the script to avoid any game trouble while playing Roblox.
So what are you waiting for? Download the appropriate script of the game to fly high in the world ranking as one of the most productive farm empires in the fruitful season of Wheat Tycoon 2 today.