Advertisement
Guest User

Untitled

a guest
Jan 17th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.22 KB | None | 0 0
  1. local meta = FindMetaTable( "Player" )
  2.  
  3. function meta:IsPlayingGame()
  4.     if self:Team() == TEAM_BLUE or self:Team() == TEAM_RED then
  5.         return true
  6.     end
  7.    
  8.     return false
  9. end
  10.  
  11. function Minigames:IsPlayingCaptureTheFlag()
  12.     if table.HasValue(Minigames.CaptureTheFlag.Maps, game.GetMap()) then
  13.         return true
  14.     end
  15.  
  16.     return false
  17. end
  18.  
  19. function Minigames:IsPlayingTeamDeathmatch()
  20.     if table.HasValue(Minigames.TeamDeathmatch.Maps, game.GetMap()) then
  21.         return true
  22.     end
  23.  
  24.     return false
  25. end
  26.  
  27. function Minigames:IsPlayingTeamSurvival()
  28.     if table.HasValue(Minigames.TeamSurvival.Maps, game.GetMap()) then
  29.         return true
  30.     end
  31.  
  32.     return false
  33. end
  34.  
  35. function Minigames:IsPlayingFreeForAll()
  36.     if table.HasValue(Minigames.FreeForAll.Maps, game.GetMap()) then
  37.         return true
  38.     end
  39.  
  40.     return false
  41. end
  42.  
  43. function Minigames:IsPlayingAssaultCourse()
  44.     if table.HasValue(Minigames.AssaultCourse.Maps, game.GetMap()) then
  45.         return true
  46.     end
  47.  
  48.     return false
  49. end
  50.  
  51. function Minigames:IsPlayingTwoVersusAll()
  52.     if table.HasValue(Minigames.TwoVersusAll.Maps, game.GetMap()) then
  53.         return true
  54.     end
  55.  
  56.     return false
  57. end
  58.  
  59. function Minigames:ReturnGamemodeString()
  60.     return GetGlobalString("Minigames_CurrentGamemode")
  61. end
  62.  
  63. function Minigames:AreTeamsBalanced()
  64.     if #team.GetPlayers(2) == #team.GetPlayers(3) then
  65.         return true
  66.     end
  67.    
  68.     return false
  69. end
  70.  
  71. function Minigames:CanJoinBlue()
  72.     if  Minigames:IsPlayingFreeForAll() or Minigames:IsPlayingAssaultCourse() or Minigames:IsPlayingTwoVersusAll() then
  73.         return true
  74.     else
  75.         if Minigames:AreTeamsBalanced() then
  76.             return true
  77.         else
  78.             if #team.GetPlayers(2) < #team.GetPlayers(3) then
  79.                 return true
  80.             else
  81.                 return false
  82.             end
  83.         end
  84.     end
  85.    
  86.     return false
  87. end
  88.  
  89. //I know it's kinda sloppy to have two functions when I could merge them into one but I just thought this would be less messy cuz you gotta take into consideration the various gamemodes n stuff
  90. function Minigames:CanJoinRed()
  91.     if  Minigames:IsPlayingFreeForAll() or Minigames:IsPlayingAssaultCourse() or Minigames:IsPlayingTwoVersusAll() then
  92.         return false
  93.     else
  94.         if Minigames:AreTeamsBalanced() then
  95.             return true
  96.         else
  97.             if #team.GetPlayers(3) < #team.GetPlayers(2) then
  98.                 return true
  99.             else
  100.                 return false
  101.             end
  102.         end
  103.     end
  104.    
  105.     return false
  106. end
  107.  
  108.  
  109. function player.GetActive()
  110.     local tbl = {}
  111.    
  112.     for k, v in pairs(player.GetAll()) do
  113.         if v:Alive() and v:Team() != TEAM_SPECTATOR and v:Team() != TEAM_UNASSIGNED then
  114.             table.insert(tbl,v)
  115.         end
  116.     end
  117.    
  118.     return tbl
  119. end
  120.  
  121. function player.GetAliveTeammates(ply)
  122.     local tbl = {}
  123.    
  124.     for k, v in pairs(team.GetPlayers(ply:Team())) do
  125.         if v:Alive() then
  126.             table.insert(tbl,v)
  127.         end
  128.     end
  129.    
  130.     return tbl
  131. end
  132.  
  133. function Minigames:ReturnBlueAlive()
  134.     local tbl = {}
  135.    
  136.     for k, v in pairs(team.GetPlayers(2)) do
  137.         if v:Alive() then
  138.             table.insert(tbl,v)
  139.         end
  140.     end
  141.    
  142.     return tbl
  143.  
  144. end
  145.  
  146. function Minigames:ReturnRedAlive()
  147.         local tbl = {}
  148.    
  149.     for k, v in pairs(team.GetPlayers(3)) do
  150.         if v:Alive() then
  151.             table.insert(tbl,v)
  152.         end
  153.     end
  154.    
  155.     return tbl
  156. end
  157.  
  158. function meta:IsGhostMode()
  159.     return self:GetNWBool("Set_GhostMode", true)
  160. end
  161.  
  162. function meta:SetGhost(boolean)
  163.     return self:SetNWBool("Set_GhostMode", boolean)
  164. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement