diff --git a/Addons/Commands/bonus.lua b/Addons/Commands/bonus.lua new file mode 100644 index 00000000..b2e7a40d --- /dev/null +++ b/Addons/Commands/bonus.lua @@ -0,0 +1,35 @@ +--[[ +Explosive Gaming + +This file can be used with permission but this and the credit below must remain in the file. +Contact a member of management on our discord to seek permission to use our code. +Any changes that you may make to the code are yours but that does not make the script yours. +Discord: https://discord.gg/r6dC2uK +]] +--Please Only Edit Below This Line----------------------------------------------------------- + +local settings = { + {key='character_mining_speed_modifier',scale=3}, + {key='character_crafting_speed_modifier',scale=3}, + {key='character_running_speed_modifier',scale=3}, + {key='character_build_distance_bonus',scale=20}, + {key='character_reach_distance_bonus',scale=20}, + {key='character_inventory_slots_bonus',scale=200} +} + +commands.add_command('bonus', 'Set your player bonus (default is 20, guest has 0)', {'bonus'}, function(event,args) + local player = Game.get_player(event) + local bonus = tonumber(args.bonus) + if not bonus or bonus < 0 or bonus > 50 then player_return{'commands.invalid-range',0,50} return commands.error end + for _,setting in pairs(settings) do player[setting.key] = setting.scale*math.floor(bonus)*0.01 end + player_return('Bonus set to: '..math.floor(bonus)..'%') +end) + +Event.register(defines.events.rank_change,function(event) + local player = Game.get_player(event) + if event.new_rank:allowed('bonus') then + for _,setting in pairs(settings) do player[setting.key] = setting.scale*0.2 end + else + for _,setting in pairs(settings) do player[setting.key] = 0 end + end +end) \ No newline at end of file diff --git a/Addons/load.lua b/Addons/load.lua index 6ca2e7ea..699a1dd1 100644 --- a/Addons/load.lua +++ b/Addons/load.lua @@ -25,6 +25,7 @@ require('Admin/auto-chat') require('Commands/cheat-mode') require('Commands/kill') require('Commands/repair') +require('Commands/bonus') require('Commands/tags') require('Commands/home') require('Commands/tp') -- requires Admin/admin diff --git a/Addons/playerRanks.lua b/Addons/playerRanks.lua index 244b6a49..8801a98d 100644 --- a/Addons/playerRanks.lua +++ b/Addons/playerRanks.lua @@ -188,7 +188,8 @@ ranks['Donator']:edit('allow',false,{ ['unjail']=true, ['set-home']=true, ['home']=true, - ['return']=true + ['return']=true, + ['bonus']=true }) ranks['Veteran']:edit('allow',false,{ ['tree-decon']=true,