SHARE
TWEET

Untitled

a guest Apr 25th, 2019 70 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --[[
  2. Added a function to config to copy existing jobrank tables for other jobs:
  3. JBR_CopyRankTable(JobToCopy, Job)
  4. JobToCopy - This is the jobs ranktable it will copy and use
  5. Job - The job that should use the ranktable
  6.  
  7. Example: JBR_CopyRankTable(TEAM_CHIEF, TEAM_POLICE)
  8. This would give TEAM_POLICE the same ranks as TEAM_CHIEF
  9. However this only COPY the table, the progression is still unique for each job
  10. NOTE: THIS FUNCTION HAS TO BE CALLED AT THE END OF THE CONFIG
  11.  
  12. Added command to convert all data from SQLite to MySQL (This overwrites MySQL data, use player command if you wish to convert a specific player)
  13. Restart server once this command has been used as it doesn't update current players
  14. "jobranks_convertsql_all"
  15.  
  16. Config changes:
  17. ]]
  18. JobRanksConfig = JobRanksConfig or {}
  19.  
  20. //Use MySQL or not, edit database in sv_mysql.lua
  21. JobRanksConfig.MYSQLOO = false
  22.  
  23. //Who can access admin commands,menus etc
  24. JobRanksConfig.AdminAccessCustomCheck = function(Player)
  25.     if Player:IsAdmin() or Player:IsSuperAdmin() then
  26.         return true
  27.     else
  28.         return false
  29.     end
  30. end
  31. //How often should it update and save?
  32. JobRanksConfig.UpdateTimer = 30
  33. //Players Required to be able to earns playtime through timer
  34. JobRanksConfig.PlayersRequired = 0
  35. //Should it give SALARY*Bonus instead of SALARY+Bonus?
  36. //NOTE: This calculates BaseSalary + (BaseSalary/100*Bonus)
  37. //So if you set BonusSalary to 15 it will be 15% of the original salary
  38. JobRanksConfig.BonusSalaryPercent = false
  39. //Disables progression if player is AFK
  40. JobRanksConfig.DisableAFKProgress = true
  41. //NOTE: These uses DarkRPs chatcommand system, which means it will always use / before the command so by default it would be -> /rpromote NICK REASON
  42. //Chatcommand to promote
  43. JobRanksConfig.PromotionChatCommands = {"rpromote"}
  44. //Chatcommand to demote
  45. JobRanksConfig.DemotionChatCommands = {"rdemote"}
  46. //Should ranks reset when you die?
  47. JobRanksConfig.ResetRanksOnDeath = false
  48.  
  49. //HUD Jobranks
  50. JobRanksConfig.HUD = true
  51. //Defined 0-100, 0 is as much left as it can and 100 is as much right as it can
  52. JobRanksConfig.UIW = 100
  53. //Defined 0-100, 0 is as much up as it can and 100 is as much down as it can
  54. JobRanksConfig.UIH = 0
  55. --[[
  56. bar = a bar for progress
  57. time = text for time left
  58. number = numbers only
  59. ]]
  60. JobRanksConfig.HUDType = "number"
  61.  
  62. --[[
  63. 1 = Displays: Job
  64. 2 = Displays: Jobrank
  65. 3 = Displays: Job (JobRank)
  66. ]]
  67. JobRanksConfig.ShowJobType = 3
  68.  
  69. JobRanksConfig.UIBoxColor = Color(100,100,100,200)
  70. JobRanksConfig.UIOutlineColor = Color(200, 200, 200, 200)
  71. JobRanksConfig.UITextColor = Color(255,255,255,200)
  72. JobRanksConfig.BarBackground = Color(0,0,0,255)
  73. JobRanksConfig.Bar = Color(0,200,0,255)
  74.  
  75. JobRanks = JobRanks or {}
  76. JobRanksConfig.JobJoinRestrictments = JobRanksConfig.JobJoinRestrictments or {}
  77. JobRanksConfig.JobPermissionList = JobRanksConfig.JobPermissionList or {}
  78.  
  79. local function JBR_InitRanks()
  80. timer.Simple(3, function()
  81. --[[
  82. JBR_SetupRestrictedJob(Job, RequiredJobs)
  83. Job - The job to be restricted
  84. RequiredJobs - Table of the ranks you must reach in that specific job {[Job] = RequiredRank, [Job2] = RequiredRank} etc
  85. ]]
  86. JBR_SetupRestrictedJob(TEAM_CHIEF, {[TEAM_POLICE] = 8})
  87.  
  88. --[[
  89. JBR_SetupJobPermissionList(Job, AllowedJobs)
  90. Job - Job that is allowed to promote/demote
  91. AllowedJobs - The jobs the job is allowed to promote/demote {[Job] = true, [Job2] = true} etc
  92. ]]
  93. JBR_SetupJobPermissionList(TEAM_POLICE, {[TEAM_POLICE] = true})
  94.  
  95. --[[
  96. JBR_SetupRankTable(Job, MaxRank, BonusSalary, PrefixSeparator, Warrant, Wanted, DisableProgression)
  97. Job - Variable for job for example TEAM_POLICE
  98. MaxRank - Maximum rank achieveable
  99. BonusSalary - Bonus salary for each rank, so Amount*Rank, if bonus is set to 15 and you are rank 3 you would recieve 45$ extra
  100. PrefixSeparator - What should be between Prefix and Name, for example . would be Pvt.ToBadForYou or _ would be Pvt_ToBadForYou
  101. Warrant - Rank required to warrant, set to nil to disable
  102. Wanted - Rank required to Wanted, set to nil to disable
  103. DisableProgression - true or false, true will not allow the player to progress through playtime only through manual promotions
  104. ]]
  105. JBR_SetupRankTable(TEAM_POLICE, 8, 15, ".", 5, 5, false)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  106.  
  107. --[[
  108. JBR_SetupRank(RankID, TimeRequired, Name, Prefix, Permissions, ExtraStats, Loadout, Icon)
  109. RankID - RankID should start from 1
  110. TimeRequired - First rank MUST always have 0, other ranks must be above the previous one. It counts the difference between OLD and NEW rank
  111. Name - Rank name
  112. Prefix - Prefix before players name
  113.  
  114. Permissions
  115. ----------------------------------------------------
  116. Promote = true/false -> Can this rank promote?
  117. MaxPromotion = Number -> Max rank this rank can promote to
  118. Demote = true/false -> Can this rank demote?
  119. MaxDemotion = Number -> Max rank this rank can demote to
  120.  
  121. Leaving MaxPromotion empty will allow to set to highest rank
  122. Leaving MaxDemotion empty will allow to set to lowest rank
  123.  
  124. NOTE: Only add ranks that you want to grant permissions to, if the rank isn't in this config it can't promote or demote
  125. ----------------------------------------------------
  126.  
  127. ExtraStats - Extra stats (speaks for itself)
  128. Loadout - Extraloadout for this SPECIFIC rank
  129. Icon - Icon path for this ranks icon
  130. ]]
  131. //THE ICONS ARE JUST TEMPLATES, download icons online and insert their path here (Also upload it on workshop or to your FastDL and add it to force download)
  132. JBR_SetupRank(1, 0, "Recruit", "Rct", {Promote = false, Demote = false}, {Health = 5, Armor = 5}, {}, Material("jobranks/police/rank1.png"))
  133. JBR_SetupRank(2, 1500, "Deputy", "Dpt", {Promote = false, Demote = false}, {Health = 10, Armor = 10}, {}, Material("jobranks/police/rank2.png"))
  134. JBR_SetupRank(3, 3000, "Detective", "Det", {Promote = false, Demote = false}, {Health = 15, Armor = 15}, {}, Material("jobranks/police/rank3.png"))
  135. JBR_SetupRank(4, 6000, "Sergeant", "Sgt", {Promote = false, Demote = false}, {Health = 20, Armor = 20}, {}, Material("jobranks/police/rank4.png"))
  136. JBR_SetupRank(5, 12000, "Lieutenant", "Lt", {Promote = false, Demote = true, MaxDemotion = 4}, {Health = 25, Armor = 25}, {"weapon_pumpshotgun2"}, Material("jobranks/police/rank5.png"))
  137. JBR_SetupRank(6, 20000, "Captain", "Cpt", {Promote = true, Demote = false, MaxPromotion = 5}, {Health = 30, Armor = 30}, {}, Material("jobranks/police/rank6.png"))
  138. JBR_SetupRank(7, 30000, "Major", "Maj", {Promote = true, Demote = true, MaxPromotion = 5, MaxDemotion = 3}, {Health = 35, Armor = 35}, {"weapon_mp52"}, Material("jobranks/police/rank7.png"))
  139. JBR_SetupRank(8, 45000, "Inspector", "Insp", {Promote = true, Demote = true}, {Health = 40, Armor = 40}, {}, Material("jobranks/police/rank8.png"))
  140.  
  141. --[[
  142. RankID - Rank to setup for, set to false if for all ranks
  143. Function - Custom lua function
  144.  
  145. NOTE: ONLY SETUP CUSTOM LUA FUNCTION IF YOU KNOW WHAT YOU ARE DOING
  146. ]]
  147. JBR_SetupRankSpawnFunc(false, function(Player) print(Player, "all ranks") end) -- This custom lua function will run for ALL ranks upon SPAWN
  148. JBR_SetupRankSpawnFunc(1, function(Player) print(Player, "rank 1") end) -- This custom lua function will run for ONLY RANK 1 upon SPAWN
  149.  
  150. --[[
  151. JBR_SetupRankModel(RankID, ModelTbl)
  152. RankID - Rank to setup for
  153. ModelTbl - Model information, {{Model = "MODELPATH", Bodygroups{{BodygroupID, Amount}}, Skin = SKINID}}
  154. ]]
  155. JBR_SetupRankModel(1, {{Model = "models/player/police.mdl", Bodygroups = {{0,0},{2,1}}, Skin = 1}})--Sets model, two custom bodygroups and skin to 1
  156. --Skipped rank 2, it will now set default model on rank 2
  157. JBR_SetupRankModel(3, {{Model = "models/player/police.mdl", Bodygroups = {{0,0},{2,1}}, Skin = 1},{Model = "models/player/police_fem.mdl", Bodygroups = nil, Skin = 3}}) -- EXAMPLE OF MULTIPLY MODELS FOR ONE RANK
  158. JBR_SetupRankModel(4, {{Model = "models/player/police_fem.mdl", Bodygroups = nil, Skin = 3}})--Sets model, no bodygroups, sets skin to 3
  159. JBR_SetupRankModel(5, {{Model = nil, Bodygroups = nil, Skin = 2}})--Sets default model, no bodygroups, sets skin to 2
  160.  
  161. --[[
  162. JBR_AddLoadout(RankID, Weapons)
  163. RankID - RankID
  164. Weapons - List of weapons
  165. This adds the loadout to this rank AND all ranks ABOVE this rank
  166. ]]
  167. JBR_AddLoadout(5, {"weapon_pumpshotgun2"})
  168. JBR_AddLoadout(7, {"weapon_mp52"})
  169.  
  170. --[[
  171. JBR_AddEntity(RankID, Entities)
  172. RankID - RankID required to buy the entities
  173. Entities - List of entities
  174. This will allow the input rank and all ABOVE this rank to purchase these entities
  175. ]]
  176. JBR_AddEntity(5, {"money_printer"})
  177.  
  178. --[[
  179. JBR_AddShipment(RankID, Shipments)
  180. RankID - RankID required to buy the shipments
  181. Shipments - List of shipments
  182. This will allow the input rank and all ABOVE this rank to purchase these shipments
  183. ]]
  184. JBR_AddShipment(5, {"weapon_pumpshotgun2"})
  185.  
  186. JBR_SetupRankTable(TEAM_CHIEF, 4, 30, ".", 1, 1, false) -- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  187. JBR_SetupRank(1, 0, "Chief Recruit", "Rct", {Promote = false, Demote = false}, {Health = 5, Armor = 5}, {}, nil)
  188. JBR_SetupRank(2, 5000, "Deputy Chief", "Dpt", {Promote = false, Demote = false}, {Health = 25, Armor = 25}, {}, nil)
  189. JBR_SetupRank(3, 10000, "Assistant Chief", "Asst", {Promote = false, Demote = false}, {Health = 50, Armor = 50}, {}, nil)
  190. JBR_SetupRank(4, 20000, "Chief of Police", "Chief", {Promote = true, Demote = true}, {Health = 100, Armor = 100}, {}, nil)
  191.  
  192. JBR_SetupRankTable(TEAM_MEDIC, 9, 15, ".", nil, nil, false) -- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  193. JBR_SetupRank(1, 0, "Medic Trainee", nil, {Promote = false, Demote = false}, nil, {}, nil)
  194. JBR_SetupRank(2, 1500, "Medic", nil, {Promote = false, Demote = false}, nil, {}, nil)
  195. JBR_SetupRank(3, 3000, "Medical Scientist", nil, {Promote = false, Demote = false}, nil, {}, nil)
  196. JBR_SetupRank(4, 6000, "Junior Doctor", nil, {Promote = false, Demote = false}, nil, {}, nil)
  197. JBR_SetupRank(5, 12000, "Doctor", nil, {Promote = false, Demote = false}, nil, {}, nil)
  198. JBR_SetupRank(6, 20000, "Plastic Surgeon", nil, {Promote = false, Demote = false}, nil, {}, nil)
  199. JBR_SetupRank(7, 30000, "Brain Surgeon", nil, {Promote = false, Demote = false}, nil, {}, nil)
  200. JBR_SetupRank(8, 45000, "Chief Physician", nil, {Promote = false, Demote = false}, nil, {}, nil)
  201. JBR_SetupRank(9, 60000, "Hospital Manager", nil, {Promote = false, Demote = false}, nil, {}, nil)
  202.  
  203. JBR_SetupRankTable(TEAM_MAYOR, 7, 45, ".", 1, 1, false) -- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  204. JBR_SetupRank(1, 0, "Candidate", nil, {Promote = false, Demote = false}, nil, {}, nil)
  205. JBR_SetupRank(2, 5000, "Politician", nil, {Promote = false, Demote = false}, nil, {}, nil)
  206. JBR_SetupRank(3, 10000, "Vice Mayor", nil, {Promote = false, Demote = false}, nil, {}, nil)
  207. JBR_SetupRank(4, 15000, "Mayor", nil, {Promote = false, Demote = false}, nil, {}, nil)
  208. JBR_SetupRank(5, 20000, "Vice President", nil, {Promote = false, Demote = false}, nil, {}, nil)
  209. JBR_SetupRank(6, 25000, "President", nil, {Promote = false, Demote = false}, nil, {}, nil)
  210. JBR_SetupRank(7, 30000, "Supreme Leader", nil, {Promote = false, Demote = false}, nil, {}, nil)
  211.  
  212.  
  213. JBR_SetupRankTable(CLONETROOPER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  214. JBR_SetupRank(1, 0, "CT", "CT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  215.  
  216. JBR_SetupRankTable(CLONEDRILLINSTRUCTOR, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  217. JBR_SetupRank(1, 0, "DI Private", "DI PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  218. JBR_SetupRank(2, 0, "DI Private First Class", "DI PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  219. JBR_SetupRank(3, 0, "DI Specialist", "DI SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  220. JBR_SetupRank(4, 0, "DI Lance Corporal", "DI LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  221. JBR_SetupRank(5, 0, "DI Corporal", "DI CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  222. JBR_SetupRank(6, 0, "DI Sergeant", "DI SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  223. JBR_SetupRank(7, 0, "DI Staff Sergeant", "DI SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  224. JBR_SetupRank(8, 0, "DI Sergeant First Class", "DI SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  225. JBR_SetupRank(9, 0, "DI Master Sergeant", "DI MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  226. JBR_SetupRank(10, 0, "DI First Sergeant", "DI 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  227. JBR_SetupRank(11, 0, "DI Sergeant Major", "DI SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  228. JBR_SetupRank(12, 0, "DI Command Sergeant Major", "DI CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  229. JBR_SetupRank(13, 0, "DI Warrant Officer", "DI WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  230. JBR_SetupRank(14, 0, "DI Command Warrant Officer", "DI CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  231.  
  232. JBR_SetupRankTable(CLONEDRILLINTRUCTOROFFICER, 7, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  233. JBR_SetupRank(1, 0, "DI 2nd Lieutenant", "DI 2ndLT", {Promote = false, Demote = false, MaxPromotion = 14}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  234. JBR_SetupRank(2, 0, "DI Lieutenant", "DI LT", {Promote = false, Demote = false, MaxPromotion = 14}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  235. JBR_SetupRank(3, 0, "DI Captain", "DI CPT", {Promote = false, Demote = false, MaxPromotion = 14}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  236. JBR_SetupRank(4, 0, "DI Major", "DI MAJ", {Promote = true, Demote = true, MaxPromotion = 3}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  237. JBR_SetupRank(5, 0, "DI Lieutenant Colonel", "DI LTCOL", {Promote = true, Demote = true, MaxPromotion = 3}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  238. JBR_SetupRank(6, 0, "DI Colonel", "DI COL", {Promote = true, Demote = true, MaxPromotion = 3}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  239. JBR_SetupRank(7, 0, "DI Commander", "DI Commander", {Promote = true, Demote = true, MaxPromotion = 6}, {Health = 150, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  240.  
  241. JBR_SetupJobPermissionList(CLONEDRILLINTRUCTOROFFICER, {[CLONEDRILLINTRUCTOR] = true})
  242.  
  243. -- 212th
  244. JBR_SetupRankTable(ATTACKTROOPER, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  245. JBR_SetupRank(1, 0, "212th Private", "212th PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  246. JBR_SetupRank(2, 0, "212th Private First Class", "212th PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  247. JBR_SetupRank(3, 0, "212th Specialist", "212th SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  248. JBR_SetupRank(4, 0, "212th Lance Corporal", "212th LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  249. JBR_SetupRank(5, 0, "212th Corporal", "212th CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  250. JBR_SetupRank(6, 0, "212th Sergeant", "212th SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  251. JBR_SetupRank(7, 0, "212th Staff Sergeant", "212th SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  252. JBR_SetupRank(8, 0, "212th Sergeant First Class", "212th SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  253. JBR_SetupRank(9, 0, "212th Master Sergeant", "212th MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  254. JBR_SetupRank(10, 0, "212th First Sergeant", "212th 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  255. JBR_SetupRank(11, 0, "212th Sergeant Major", "212th SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  256. JBR_SetupRank(12, 0, "212th Command Sergeant Major", "212th CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  257. JBR_SetupRank(13, 0, "212th Warrant Officer", "212th WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  258. JBR_SetupRank(14, 0, "212th Command Warrant Officer", "212th CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  259. JBR_CopyRankTable(ATTACKTROOPER, ATTACKASSAULT)
  260. JBR_CopyRankTable(ATTACKTROOPER, ATTACKARC)
  261. JBR_CopyRankTable(ATTACKTROOPER, ATTACKANTITANK)
  262. JBR_CopyRankTable(ATTACKTROOPER, ATTACKHEAVY)
  263. JBR_CopyRankTable(ATTACKTROOPER, ATTACKAIRBOURNEENLISTED)
  264.  
  265. JBR_SetupRankTable(ATTACKOFFICER, 6, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  266. JBR_SetupRank(1, 0, "212th 2nd Lieutenant", "212th 2ndLT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  267. JBR_SetupRank(2, 0, "212th Lieutenant", "212th LT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  268. JBR_SetupRank(3, 0, "212th Captain", "212th CPT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  269. JBR_SetupRank(4, 0, "212th Major", "212th MAJ", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  270. JBR_SetupRank(5, 0, "212th Lieutenant Colonel", "212th LTCOL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  271. JBR_SetupRank(6, 0, "212th Colonel", "212th COL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  272. JBR_CopyRankTable(ATTACKOFFICER, ATTACKAIRBOURNEOFFICER)
  273.  
  274. JBR_SetupRankTable(ATTACKCOMMANDER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  275. JBR_SetupRank(1, 0, "212th Commander", "212th Commander", {Promote = true, Demote = true, MaxPromotion = 1}, {Health = 150, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  276.  
  277. JBR_SetupJobPermissionList(ATTACKOFFICER, {[ATTACKASSAULT] = true, [ATTACKARC] = true, [ATTACKANTITANK] = true, [ATTACKHEAVY] = true, [ATTACKAIRBOURNEENLISTED] = true, [ATTACKTROOPER] = true})
  278. JBR_SetupJobPermissionList(ATTACKAIRBOURNEOFFICER, {[ATTACKASSAULT] = true, [ATTACKARC] = true, [ATTACKANTITANK] = true, [ATTACKHEAVY] = true, [ATTACKAIRBOURNEENLISTED] = true, [ATTACKTROOPER] = true})
  279. JBR_SetupJobPermissionList(ATTACKCOMMANDER, {[ATTACKOFFICER] = true, [ATTACKAIRBOURNEOFFICER] = true, [ATTACKASSAULT] = true, [ATTACKARC] = true, [ATTACKANTITANK] = true, [ATTACKHEAVY] = true, [ATTACKAIRBOURNEENLISTED] = true, [ATTACKTROOPER] = true})
  280.  
  281. -- 104th
  282. JBR_SetupRankTable(WOLFENLISTED, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  283. JBR_SetupRank(1, 0, "104th Private", "104th PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  284. JBR_SetupRank(2, 0, "104th Private First Class", "104th PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  285. JBR_SetupRank(3, 0, "104th Specialist", "104th SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  286. JBR_SetupRank(4, 0, "104th Lance Corporal", "104th LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  287. JBR_SetupRank(5, 0, "104th Corporal", "104th CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  288. JBR_SetupRank(6, 0, "104th Sergeant", "104th SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  289. JBR_SetupRank(7, 0, "104th Staff Sergeant", "104th SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  290. JBR_SetupRank(8, 0, "104th Sergeant First Class", "104th SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  291. JBR_SetupRank(9, 0, "104th Master Sergeant", "104th MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  292. JBR_SetupRank(10, 0, "104th First Sergeant", "104th 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  293. JBR_SetupRank(11, 0, "104th Sergeant Major", "104th SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  294. JBR_SetupRank(12, 0, "104th Command Sergeant Major", "104th CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  295. JBR_SetupRank(13, 0, "104th Warrant Officer", "104th WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  296. JBR_SetupRank(14, 0, "104th Command Warrant Officer", "104th CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  297. JBR_CopyRankTable(WOLFENLISTED, WOLFCOMET)
  298. JBR_CopyRankTable(WOLFENLISTED, WOLFSINKER)
  299. JBR_CopyRankTable(WOLFENLISTED, WOLFBOOST)
  300. JBR_CopyRankTable(WOLFENLISTED, WOLFASSAULT)
  301. JBR_CopyRankTable(WOLFENLISTED, WOLFHEAVY)
  302. JBR_CopyRankTable(WOLFENLISTED, WOLFPACKARC)
  303. JBR_CopyRankTable(WOLFENLISTED, WOLFPACKARF)
  304.  
  305.  
  306. JBR_SetupRankTable(WOLFOFFICER, 6, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  307. JBR_SetupRank(1, 0, "212th 2nd Lieutenant", "212th 2ndLT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  308. JBR_SetupRank(2, 0, "212th Lieutenant", "212th LT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  309. JBR_SetupRank(3, 0, "212th Captain", "212th CPT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  310. JBR_SetupRank(4, 0, "212th Major", "212th MAJ", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  311. JBR_SetupRank(5, 0, "212th Lieutenant Colonel", "212th LTCOL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  312. JBR_SetupRank(6, 0, "212th Colonel", "212th COL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  313. JBR_CopyRankTable(WOLFOFFICER, WOLFPACKOFFICER)
  314.  
  315. JBR_SetupRankTable(WOLFCOMMANDER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  316. JBR_SetupRank(1, 0, "212th Commander", "212th Commander", {Promote = true, Demote = true, MaxPromotion = 1}, {Health = 150, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  317.  
  318. JBR_SetupJobPermissionList(WOLFOFFICER, {[WOLFCOMET] = true, [WOLFSINKER] = true, [WOLFBOOST] = true, [WOLFASSAULT] = true, [WOLFHEAVY] = true, [WOLFPACKARF] = true, [WOLFPACKARC] = true, [WOLFENLISTED] = true})
  319. JBR_SetupJobPermissionList(WOLFPACKOFFICER, {[WOLFCOMET] = true, [WOLFSINKER] = true, [WOLFBOOST] = true, [WOLFASSAULT] = true, [WOLFHEAVY] = true, [WOLFPACKARF] = true, [WOLFPACKARC] = true, [WOLFENLISTED] = true})
  320. JBR_SetupJobPermissionList(WOLFCOMMANDER, {[WOLFOFFICER] = true, [WOLFPACKOFFICER] = true, [WOLFCOMET] = true, [WOLFSINKER] = true, [WOLFBOOST] = true, [WOLFASSAULT] = true, [WOLFHEAVY] = true, [WOLFPACKARF] = true, [WOLFPACKARC] = true, [WOLFENLISTED] = true})
  321.  
  322. -- 501st
  323. JBR_SetupRankTable(LEGIONTROOPER, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  324. JBR_SetupRank(1, 0, "501st Private", "501st PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  325. JBR_SetupRank(2, 0, "501st Private First Class", "501st PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  326. JBR_SetupRank(3, 0, "501st Specialist", "501st SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  327. JBR_SetupRank(4, 0, "501st Lance Corporal", "501st LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  328. JBR_SetupRank(5, 0, "501st Corporal", "501st CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  329. JBR_SetupRank(6, 0, "501st Sergeant", "501st SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  330. JBR_SetupRank(7, 0, "501st Staff Sergeant", "501st SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  331. JBR_SetupRank(8, 0, "501st Sergeant First Class", "501st SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  332. JBR_SetupRank(9, 0, "501st Master Sergeant", "501st MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  333. JBR_SetupRank(10, 0, "501st First Sergeant", "501st 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  334. JBR_SetupRank(11, 0, "501st Sergeant Major", "501st SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  335. JBR_SetupRank(12, 0, "501st Command Sergeant Major", "501st CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  336. JBR_SetupRank(13, 0, "501st Warrant Officer", "501st WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  337. JBR_SetupRank(14, 0, "501st Command Warrant Officer", "501st CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  338. JBR_CopyRankTable(LEGIONTROOPER, LEGIONANTITANK)
  339. JBR_CopyRankTable(LEGIONTROOPER, LEGIONHEAVY)
  340. JBR_CopyRankTable(LEGIONTROOPER, LEGIONARC)
  341. JBR_CopyRankTable(LEGIONTROOPER, LEGIONAPPO)
  342. JBR_CopyRankTable(LEGIONTROOPER, LEGIONJESSE)
  343. JBR_CopyRankTable(LEGIONTROOPER, LEGIONECHO)
  344. JBR_CopyRankTable(LEGIONTROOPER, LEGIONFIVES)
  345.  
  346. JBR_SetupRankTable(LEGIONOFFICER, 6, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  347. JBR_SetupRank(1, 0, "501st 2nd Lieutenant", "501st 2ndLT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  348. JBR_SetupRank(2, 0, "501st Lieutenant", "501st LT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  349.  
  350. JBR_SetupRankTable(LEGIONCOMMANDER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  351. JBR_SetupRank(1, 0, "501st Captain", "501st CPT", {Promote = true, Demote = false, MaxPromotion = 1}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  352.  
  353. JBR_SetupJobPermissionList(LEGIONOFFICER, {[LEGIONANTITANK] = true, [LEGIONHEAVY] = true, [LEGIONARC] = true, [LEGIONAPPO] = true, [LEGIONJESSE] = true, [LEGIONECHO] = true, [LEGIONFIVES] = true, [LEGIONTROOPER] = true})
  354. JBR_SetupJobPermissionList(LEGIONCOMMANDER, {[LEGIONOFFICER] = true, [LEGIONANTITANK] = true, [LEGIONHEAVY] = true, [LEGIONARC] = true, [LEGIONAPPO] = true, [LEGIONJESSE] = true, [LEGIONECHO] = true, [LEGIONFIVES] = true, [LEGIONTROOPER] = true})
  355.  
  356. -- ARC
  357. JBR_SetupRankTable(ARCTROOPER, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  358. JBR_SetupRank(1, 0, "ARC Private", "ARC PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  359. JBR_SetupRank(2, 0, "ARC Private First Class", "ARC PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  360. JBR_SetupRank(3, 0, "ARC Specialist", "ARC SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  361. JBR_SetupRank(4, 0, "ARC Lance Corporal", "ARC LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  362. JBR_SetupRank(5, 0, "ARC Corporal", "ARC CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  363. JBR_SetupRank(6, 0, "ARC Sergeant", "ARC SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  364. JBR_SetupRank(7, 0, "ARC Staff Sergeant", "ARC SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  365. JBR_SetupRank(8, 0, "ARC Sergeant First Class", "ARC SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  366. JBR_SetupRank(9, 0, "ARC Master Sergeant", "ARC MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  367. JBR_SetupRank(10, 0, "ARC First Sergeant", "ARC 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  368. JBR_SetupRank(11, 0, "ARC Sergeant Major", "ARC SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  369. JBR_SetupRank(12, 0, "ARC Command Sergeant Major", "ARC CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  370. JBR_SetupRank(13, 0, "ARC Warrant Officer", "ARC WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  371. JBR_SetupRank(14, 0, "ARC Command Warrant Officer", "ARC CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  372. JBR_CopyRankTable(ARCTROOPER, ARCSPECIALIST)
  373. JBR_CopyRankTable(ARCTROOPER, ARCSHARPSHOOTER)
  374. JBR_CopyRankTable(ARCTROOPER, ARCHAVOC)
  375. JBR_CopyRankTable(ARCTROOPER, ARCBLITZ)
  376. JBR_CopyRankTable(ARCTROOPER, ARCHAMMER)
  377.  
  378. JBR_SetupRankTable(ARCOFFICER, 6, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  379. JBR_SetupRank(1, 0, "ARC 2nd Lieutenant", "ARC 2ndLT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  380. JBR_SetupRank(2, 0, "ARC Lieutenant", "ARC LT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  381. JBR_SetupRank(3, 0, "ARC Captain", "ARC CPT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  382. JBR_SetupRank(4, 0, "ARC Major", "ARC MAJ", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  383. JBR_SetupRank(5, 0, "ARC Lieutenant Colonel", "ARC LTCOL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  384. JBR_SetupRank(6, 0, "ARC Colonel", "ARC COL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  385.  
  386. JBR_SetupRankTable(ARCCOMMANDER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  387. JBR_SetupRank(1, 0, "ARC Commander", "ARC Commander", {Promote = true, Demote = true, MaxPromotion = 1}, {Health = 150, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  388.  
  389. JBR_SetupJobPermissionList(ARCOFFICER, {[ARCSPECIALIST] = true, [ARCSHARPSHOOTER] = true, [ARCHAVOC] = true, [ARCBLITZ] = true, [ARCHAMMER] = true, [ARCTROOPER] = true})
  390. JBR_SetupJobPermissionList(ARCCOMMANDER, {[ARCSPECIALIST] = true, [ARCSHARPSHOOTER] = true, [ARCHAVOC] = true, [ARCBLITZ] = true, [ARCHAMMER] = true, [ARCTROOPER] = true, [ARCOFFICER] = true})
  391.  
  392. -- 74th
  393. JBR_SetupRankTable(MEDTROOPER, 14, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  394. JBR_SetupRank(1, 0, "74th Private", "74th PVT", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  395. JBR_SetupRank(2, 0, "74th Private First Class", "74th PFC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  396. JBR_SetupRank(3, 0, "74th Specialist", "74th SPC", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  397. JBR_SetupRank(4, 0, "74th Lance Corporal", "74th LCPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  398. JBR_SetupRank(5, 0, "74th Corporal", "74th CPL", {Promote = false, Demote = false}, {Health = 0, Armor = 0}, {}, nil)
  399. JBR_SetupRank(6, 0, "74th Sergeant", "74th SGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  400. JBR_SetupRank(7, 0, "74th Staff Sergeant", "74th SSGT", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  401. JBR_SetupRank(8, 0, "74th Sergeant First Class", "74th SFC", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  402. JBR_SetupRank(9, 0, "74th Master Sergeant", "74th MSG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  403. JBR_SetupRank(10, 0, "74th First Sergeant", "74th 1SG", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  404. JBR_SetupRank(11, 0, "74th Sergeant Major", "74th SGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  405. JBR_SetupRank(12, 0, "74th Command Sergeant Major", "74th CSGM", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  406. JBR_SetupRank(13, 0, "74th Warrant Officer", "74th WO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  407. JBR_SetupRank(14, 0, "74th Command Warrant Officer", "74th CWO", {Promote = false, Demote = false}, {Health = 50, Armor = 0}, {}, nil)
  408. JBR_CopyRankTable(MEDTROOPER, MEDDOCTOR)
  409. JBR_CopyRankTable(MEDTROOPER, MEDDEFENCE)
  410. JBR_CopyRankTable(MEDTROOPER, MEDATTACK)
  411. JBR_CopyRankTable(MEDTROOPER, MEDOFFICER)
  412.  
  413.  
  414.  
  415. JBR_SetupRankTable(MEDSPECIALISTOFFICER, 6, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  416. JBR_SetupRank(1, 0, "74th 2nd Lieutenant", "74th 2ndLT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  417. JBR_SetupRank(2, 0, "74th Lieutenant", "74th LT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 50, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  418. JBR_SetupRank(3, 0, "74th Captain", "74th CPT", {Promote = false, Demote = false, MaxPromotion = 12}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  419. JBR_SetupRank(4, 0, "74th Major", "74th MAJ", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  420. JBR_SetupRank(5, 0, "74th Lieutenant Colonel", "74th LTCOL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  421. JBR_SetupRank(6, 0, "74th Colonel", "74th COL", {Promote = true, Demote = true, MaxPromotion = 4}, {Health = 100, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  422.  
  423. JBR_SetupRankTable(MEDCOMMANDER, 1, 0, " ", 0, 5, true)-- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
  424. JBR_SetupRank(1, 0, "74th Commander", "74th Commander", {Promote = true, Demote = true, MaxPromotion = 1}, {Health = 150, Armor = 0}, {"tfa_sw_dual_de10", "t3m4_empgrenade"}, nil)
  425.  
  426. JBR_SetupJobPermissionList(MEDSPECIALISTOFFICER, {[MEDDOCTOR] = true, [MEDDEFENCE] = true, [MEDATTACK] = true, [OFFICER] = true)
  427. JBR_SetupJobPermissionList(MEDCOMMANDER, {[MEDDOCTOR] = true, [MEDDEFENCE] = true, [MEDATTACK] = true, [MEDSPECIALISTOFFICER] = true, [MEDOFFICER] = true})
  428.  
  429. --[[
  430. NOTE: THIS FUNCTION HAS TO BE CALLED AT THE END OF THE CONFIG
  431.  
  432. JBR_CopyRankTable(JobToCopy, Job)
  433. JobToCopy - This is the jobs ranktable it will copy and use
  434. Job - The job that should use the ranktable
  435.  
  436. Example: JBR_CopyRankTable(TEAM_CHIEF, TEAM_POLICE)
  437. This would give TEAM_POLICE the same ranks as TEAM_CHIEF
  438. However this only COPY the table, the progression is still unique for each job
  439. ]]
  440. //Just an example, copies TEAM_POLICE ranktable and sets TEAM_POLICE ranktable to this.
  441. JBR_CopyRankTable(TEAM_POLICE, TEAM_POLICE)
  442. end)
  443. end
  444.  
  445. hook.Add("DarkRPFinishedLoading", "JBR_InitRanks", function()
  446.     if DCONFIG then
  447.         hook.Add("DConfigDataLoaded", "JBR_InitRanks", JBR_InitRanks)
  448.     elseif ezJobs then
  449.         hook.Add("ezJobsLoaded", "JBR_InitRanks", JBR_InitRanks)
  450.     else
  451.         hook.Add("loadCustomDarkRPItems", "JBR_InitRanks", JBR_InitRanks)
  452.     end
  453. end)
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top