Problem with badges

Está bien, la costumbre de escribir en inglés xd
Mmm… ¿hay otro script que pueda usar esa id?
Mientras seleccionas la id, puedes hacer CTRL + Shift + F para buscar en todos los scripts.

1 Like

Gracias por ese consejo de usar CTRL + Shift + F, pero solo sale que hay un script que tiene esa ID :C

Aunque ¿exactamente a que se refiere “We already gave out”? Entiendo que es que el usuario ya tiene esa insignia, pero me gustaría que aunque el usuario tenga la insignia, no salga ningún mensaje en la consola.

Como está en color amarillo, es una advertencia para que no se sobrecargue AwardBadge y encontre el problema, el código se pausa hasta comprobar que el jugador tenga el badge, pero eso no significa que tenga que detenerse por completo, prueba esto

local badgeservice = game:GetService("BadgeService")
local id = 2124628997

local Checking = {}
script.Parent.Touched:Connect(function(hit)
	local plr = game.Players:GetPlayerFromCharacter(hit.Parent)
	if plr then
		local Badges = plr:FindFirstChild("Badges") or Instance.new("Folder", plr)
		Badges.Name = "Badges"
		
		if not Badges:FindFirstChild(tostring(id)) then
			if table.find(Checking, plr.UserId) then					return					end
			table.insert(Checking, plr.UserId)
			local success, hasBadge = pcall(function()
				return badgeservice:UserHasBadgeAsync(plr.UserId, id)
			end)
			if success and not hasBadge then	badgeservice:AwardBadge(plr.UserId,id)		end			
			Instance.new("StringValue", Badges).Name = tostring(id)
			table.remove(Checking, table.find(Checking, plr.UserId))
		end		
	end
end)

en resumen, guardará al jugador para que no acepte el nuevo toque y así no se sobrecargue, en Studio se veía así.
image

2 Likes

Holaaaa, esto funciono :3
Muchas gracias, pero quería saber si es que esto no podría traer algún tipo de retraso en el juego xd, es que se ve que es un script grande y pues: #miedo

1 Like

Nop, pausara una vez el código, pero solo para ese jugador, si otro toca la parte funcionara bien, de nada por ayudar ^ - ^
PD: marca mi publicación como solución para cerrar el post.