*How do I give my Co-Owner ("Team create person") a game-pass without them buying it?
I tried this:*
permission = { "PLAYERS NAME HERE" } -- My buddy's name local function WaitForChild(parent, childName) assert(parent, "ERROR: WaitForChild: parent is nil") while not parent:FindFirstChild(childName) do parent.ChildAdded:wait() end return parent[childName] end local GamePassService = game:GetService('MarketplaceService') local PlayersService = game:GetService('Players') local VipDoor = script.Parent local GamePassIdObject = script:WaitForChild( 'GamePassId') local JustTouched = {} local function TeleportToOtherSide(character, hitPart) local bottomOfDoor = VipDoor.CFrame.p - Vector3.new(0, VipDoor.Size.Y / 2, 0) local inFrontOfDoor = bottomOfDoor + VipDoor.CFrame.lookVector * 3 local behindDoor = bottomOfDoor - VipDoor.CFrame.lookVector * 3 local distanceToFront = (inFrontOfDoor - hitPart.Position).magnitude local distanceToBack = (behindDoor - hitPart.Position).magnitude if distanceToFront < distanceToBack then character:MoveTo(behindDoor) else character:MoveTo(inFrontOfDoor) end end local function OnTouched(otherPart) if otherPart and otherPart.Parent and otherPart.Parent:FindFirstChild('Humanoid') then local player = PlayersService:GetPlayerFromCharacter(otherPart.Parent) if player and not JustTouched[player] then JustTouched[player] = time() if GamePassService:UserOwnsGamePassAsync(player.userId, GamePassIdObject.Value) then TeleportToOtherSide(player.Character, otherPart) end end end end local function RemoveOldTouches() for player, touchTime in pairs(JustTouched) do if time() > touchTime + 0.3 then JustTouched[player] = nil end end end VipDoor.Touched:connect(OnTouched) while true do RemoveOldTouches() wait(1/30) end
I need help!``
On line 45, you can add your friends name to the if statement. Here's what I mean:
if GamePassService:UserOwnsGamePassAsync(player.userId, GamePassIdObject.Value) or player.Name == "NameHere" then TeleportToOtherSide(player.Character, otherPart) end
However, using a player's name isn't the best thing to do because players can change their name and it'd no longer work. Instead, you can use their UserID:
if GamePassService:UserOwnsGamePassAsync(player.userId, GamePassIdObject.Value) or player.UserId == 12345 then TeleportToOtherSide(player.Character, otherPart) end
There are other ways to do this, I'd just thought that this would be the easiest way for you. Also, you should use tab to indent your scripts instead of space. One more thing, make sure to use :Connect() instead of :connect() which is deprecated.