Hello! So, I’ve been working on my project and everything was going fine until I’ve added a streak system.
Problem: When I click on the correct flag, the value changes, but instead of adding +1, a random numebr is added.
Changing streak happens in every first line of each if inside of :MouseButton1Click.
Code:
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local DataBase = ReplicatedStorage.CountryInfos.Database
local GUI = script.Parent
local Background = GUI.Background
local RoundFrame = Background.Round
local TweenService = game:GetService("TweenService")
local Country1 = RoundFrame.Country1
local Country2 = RoundFrame.Country2
local Shadow1 = RoundFrame.Shadow1
local Shadow2 = RoundFrame.Shadow2
local TweenInfos = TweenInfo.new(1.5,Enum.EasingStyle.Quad)
local RoundIn = TweenService:Create(RoundFrame,TweenInfos,{Position = UDim2.new(0.5, 0,0.5, 0)})
local RoundOut = TweenService:Create(RoundFrame,TweenInfo.new(2,Enum.EasingStyle.Quad),{Position = UDim2.new(-0.5, 0,0.5, 0)})
--
local RNG = Random.new()
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local DatabaseChildren = DataBase:GetChildren()
-- Functions
db = false
streak = 0
--
function round()
-- Round SetUp
RoundFrame.Position = UDim2.new(1.5, 0,0.5, 0)
RoundFrame.CenterLine.MainText.Text = "VS"
-- Get Random Country
local Country1Choose = DatabaseChildren[RNG:NextInteger(1, #DatabaseChildren)]
local Country2Choose = DatabaseChildren[RNG:NextInteger(1, #DatabaseChildren)]
while Country1Choose == Country2Choose do
Country2Choose = DatabaseChildren[RNG:NextInteger(1, #DatabaseChildren)]
--task.wait()
end
print(Country1Choose)
print(Country2Choose)
-- Update Country Info
Country1.CountryName.Value = Country1Choose.CountryName.Value
Country1.CountrySize.Value = Country1Choose.CountrySize.Value
Country1.CountryFlag.Value = Country1Choose.Flag.Value
Country2.CountryName.Value = Country2Choose.CountryName.Value
Country2.CountrySize.Value = Country2Choose.CountrySize.Value
Country2.CountryFlag.Value = Country2Choose.Flag.Value
-- Update Country
Country1.CountryNameText.Text = Country1.CountryName.Value
Country1.Flag.Image = "rbxassetid://"..Country1.CountryFlag.Value
Country1.FlagFake.Image = "rbxassetid://"..Country1.CountryFlag.Value
Country2.CountryNameText.Text = Country2.CountryName.Value
Country2.Flag.Image = "rbxassetid://"..Country2.CountryFlag.Value
Country2.FlagFake.Image = "rbxassetid://"..Country2.CountryFlag.Value
-- Round
RoundIn:Play()
Country1.Flag.MouseButton1Click:Connect(function()
if db == false then
db = true
if Country1.CountrySize.Value > Country2.CountrySize.Value then
print("correct")
streak += 1
--
RoundFrame.CenterLine.MainText.Streak.StreakNumber.Text = streak
RoundFrame.CenterLine.MainText.Text = ""
TweenService:Create(RoundFrame.CenterLine.MainText.True,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(1.5)
TweenService:Create(RoundFrame.CenterLine.MainText.True,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(0.5)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(0.7)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(3)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(2)
RoundOut:Play()
wait(1.5)
streak = streak+1
round()
elseif Country1.CountrySize.Value < Country2.CountrySize.Value then
print("wrong")
streak = 0
RoundFrame.CenterLine.MainText.Streak.StreakNumber.Text = streak
--
RoundFrame.CenterLine.MainText.Text = ""
TweenService:Create(RoundFrame.CenterLine.MainText.False,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(1.5)
TweenService:Create(RoundFrame.CenterLine.MainText.False,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(0.5)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(0.7)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(3)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(2)
RoundOut:Play()
wait(1.5)
streak = 0
round()
end
wait(3)
db = false
end
end)
Country2.Flag.MouseButton1Click:Connect(function()
if db == false then
if Country2.CountrySize.Value > Country1.CountrySize.Value then
print("correct")
streak += 1
RoundFrame.CenterLine.MainText.Streak.StreakNumber.Text = streak
--
RoundFrame.CenterLine.MainText.Text = ""
TweenService:Create(RoundFrame.CenterLine.MainText.True,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(1.5)
TweenService:Create(RoundFrame.CenterLine.MainText.True,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(0.5)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(0.7)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(3)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(2)
RoundOut:Play()
wait(1.5)
streak = streak+1
round()
elseif Country2.CountrySize.Value < Country1.CountrySize.Value then
print("wrong")
streak = 0
RoundFrame.CenterLine.MainText.Streak.StreakNumber.Text = streak
--
RoundFrame.CenterLine.MainText.Text = ""
TweenService:Create(RoundFrame.CenterLine.MainText.False,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(1.5)
TweenService:Create(RoundFrame.CenterLine.MainText.False,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(0.5)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(0.7)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 0}):Play()
wait(3)
TweenService:Create(RoundFrame.CenterLine.MainText.Streak,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
TweenService:Create(RoundFrame.CenterLine.MainText.Streak.StreakNumber,TweenInfo.new(0.25,Enum.EasingStyle.Quad),{TextTransparency = 1}):Play()
wait(2)
RoundOut:Play()
wait(1.5)
streak = 0
round()
end
end
end)
end
round()
If anything is unclear, please let me know. Thanks.