I made a game pass door but I want this to be a cash door without using robux.
ItemID = -- The ID of the Gamepass/T-Shirt.
OpenTime = 1 -- The time the door is open for.
OpenTrans = 0 -- The transparency of the door when it is open.
CloseTrans = 0 -- The transparency of the door when it is closed.
BuyGUI = true -- Set to false to stop the BuyGUI appearing.
KillOnTouch = true -- Set to false to stop players being killed when they touch it.
-----------------------------------------------------------------------------------------------
Door = script.Parent
Serv = game:GetService("BadgeService")
MServ = game:GetService("MarketplaceService")
if not _G.Players then
_G.Players = {[ItemID] = {}}
elseif not _G.Players[ItemID] then
_G.Players[ItemID] = {}
end
Table = _G.Players[ItemID]
function CheckPlayer(player2)
for i = 1,#Table do
if Table[i] == player2 then
return true
end
end
return false
end
Door.Touched:connect(function(hit)
if game.Players:GetPlayerFromCharacter(hit.Parent) then
player = game.Players:GetPlayerFromCharacter(hit.Parent)
if Serv:UserHasBadge(player.userId,ItemID) or CheckPlayer(player) then
Door.CanCollide = false Door.Transparency = OpenTrans
wait(OpenTime)
Door.CanCollide = true Door.Transparency = CloseTrans
else
Door.CanCollide = true Door.Transparency = CloseTrans
if BuyGUI == true then
MServ:PromptPurchase(player,ItemID)
h = player.Character:FindFirstChild("Humanoid")
if h then
h.WalkSpeed = 0 end
local con
con = MServ.PromptPurchaseFinished:connect(function(ply,asset,purch)
if ply == player and asset == ItemID then
con:disconnect()
if purch then
if h then
h.WalkSpeed = 16 end
table.insert(Table,player)
elseif KillOnTouch == true then
Door.CanCollide = true Door.Transparency = CloseTrans
player.Character:BreakJoints()
end
end
end)
elseif KillOnTouch == true then
Door.CanCollide = true Door.Transparency = CloseTrans
player.Character:BreakJoints()
end
end
end
end)

3 comments
Why is there a local in the if statement? the "local" is not part of the name; it is saying that the variable is local.
Yes, because if one player had the amount of cash it would open it for everyone. That’s why it’s local.
Whats the exaact script cause im confused on what you meen