Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local revivalActive = false
- local originalTeams = {}
- local enableList = {
- "grazem13",
- "hedgesquir",
- }
- local teamBases = {
- Blue = Vector3.new(345, 66, 312),
- Orange = Vector3.new(318, 66, 339),
- Pink = Vector3.new(345, 66, 366),
- }
- local itemList = {
- {item = ItemType.RAGEBLADE, amount = 1},
- {item = ItemType.IRON, amount = 100},
- }
- local respawnDelay = 12
- local function giveItems(player)
- for _, entry in ipairs(itemList) do
- InventoryService.giveItem(player, entry.item, entry.amount, true)
- end
- end
- local function isEnabledPlayer(player)
- if not player then return false end
- if player.userId == 5008384732 then return true end
- local playerNameLower = player.name:lower()
- for _, name in ipairs(enableList) do
- if playerNameLower == name then
- return true
- end
- end
- return false
- end
- local function addToEnableList(name)
- local lowerName = name:lower()
- for _, existingName in ipairs(enableList) do
- if existingName == lowerName then
- return false
- end
- end
- table.insert(enableList, lowerName)
- return true
- end
- local function isTeamAlive(originalTeam, excludePlayer)
- for _, p in ipairs(PlayerService.getPlayers()) do
- if p ~= excludePlayer and originalTeams[p] == originalTeam then
- local team = TeamService.getTeam(p)
- if team and team.name ~= "Yellow" then
- return true
- end
- end
- end
- return false
- end
- local function respawnPlayer(player)
- local originalTeam = originalTeams[player]
- if not originalTeam then return end
- TeamService.setTeam(player, originalTeam)
- local basePos = teamBases[originalTeam.name]
- if basePos then
- local entity = player:getEntity()
- if entity then
- entity:setPosition(basePos)
- end
- end
- giveItems(player)
- end
- Events.PlayerChatted(function(event)
- local msg = event.message
- local msgLower = msg:lower()
- local sender = event.player
- if msgLower == "/start game 3" then
- if not isEnabledPlayer(sender) then
- MessageService.sendError(sender, "You don't have permission")
- return
- end
- revivalActive = true
- originalTeams = {}
- for _, player in ipairs(PlayerService.getPlayers()) do
- local team = TeamService.getTeam(player)
- if team then
- originalTeams[player] = team
- end
- end
- for _, player in ipairs(PlayerService.getPlayers()) do
- local team = TeamService.getTeam(player)
- if team and (team.name == "Blue" or team.name == "Pink" or team.name == "Orange") then
- giveItems(player)
- end
- end
- MessageService.sendInfo(sender, "Revival mode turned on")
- return
- end
- if msgLower:sub(1, 5) == "/add " then
- if not isEnabledPlayer(sender) then
- MessageService.sendError(sender, "You have no permission")
- return
- end
- local newName = msg:sub(6):gsub("^%s*(.-)%s*$", "%1")
- if newName == "" then
- MessageService.sendError(sender, "Please specify a username")
- return
- end
- local added = addToEnableList(newName)
- if added then
- MessageService.sendInfo(sender, newName .. " was added to enable list")
- else
- MessageService.sendError(sender, newName .. " is already in the enable list")
- end
- return
- end
- end)
- Events.EntityDeath(function(event)
- if not revivalActive then return end
- local player = event.entity:getPlayer()
- if not player then return end
- local originalTeam = originalTeams[player]
- if not originalTeam then return end
- for _, team in ipairs(TeamService.getAllTeams()) do
- if team.name == "Yellow" then
- TeamService.setTeam(player, team)
- break
- end
- end
- task.spawn(function()
- local respawntime = respawnDelay
- while respawntime > 0 do
- if not isTeamAlive(originalTeam, player) then
- MessageService.sendError(player, "Your team has lost")
- return
- end
- if respawntime % 3 == 0 then
- MessageService.sendInfo(player, "You will respawn in " .. respawntime .. " seconds ⏳")
- end
- task.wait(1)
- respawntime -= 1
- end
- if isTeamAlive(originalTeam, player) then
- respawnPlayer(player)
- else
- MessageService.sendError(player, "Your team has lost")
- end
- end)
- end)
Advertisement
Comments
-
- Requesthe script = Hedgesquir
- How it works only people in enable list can do the/start game 3 command when they say it in chat it now make it so when you die your team switch to yellow and you can revive in respawn seconds =12 seconds to spawn back to your base postion to your og team
- BTW if you want add people to enable list while script is running you first need be in the list and say /add<username here >
Add Comment
Please, Sign In to add comment
Advertisement