GMD_Scripts
  • INFORMATION
  • 🥵GMD_ChipChallenge
    • Install on Server
    • ⚙️Config
    • HowTo Add own Chips
  • 📡GMD_WalkieTalkie
    • 🗜️Install on Server
    • ⚙️Config
  • 🛬GMD_Entry
    • 🗜️Install on Server
    • ⚙️Config Script
  • 🪖GMD_ArmySystem
    • Installation
    • Troubleshooting
    • Configuration
      • Basic Config
      • Crafting Config
      • Raid Config
      • Server Config
    • API Developer
      • Events
      • functions
  • 🎅GMD_Christmas
    • ⚙️INSTALLATION
    • 🎮USAGE
  • 🏛️GMD_ServerWealthEngine
    • Install
    • Server Tax
      • Job Tax
      • Vehicle Tax
      • QS-Scripts
        • qs-billing
      • ESX Scripts
        • esx_billing
      • myScripts
        • myBilling
    • Server Vault Settings
      • QS-Scripts
        • qs-fuelstations
        • qs-housing
      • MyScripts
        • myShops
        • myWeaponshop
        • myVehicleshop
        • myProperties
        • myVehicleshop
      • ESX Scripts
        • esx_weaponshop
        • esx_shops
        • esx_vehicleshop
  • 📽️GMD_Loadingscreen
    • Loadingscreen Configs
      • Config Styles
      • Config LUA
      • SteamAPI Config
      • Use MyMultichar
    • Install on Server
      • Install
  • 🏦Database - Debian 10
  • 🏦Database- Debian 11
    • server console commands
Powered by GitBook
On this page
  1. GMD_ServerWealthEngine
  2. Server Tax

Job Tax

go in es_extended/server/paycheck.lua and replace the full code with that code

function StartPayCheck()
  CreateThread(function()
    while true do
      Wait(Config.PaycheckInterval)
      for player, xPlayer in pairs(ESX.Players) do
        local jobLabel = xPlayer.job.label
        local job = xPlayer.job.grade_name
        local salary = xPlayer.job.grade_salary
        local newSalary = exports['GMD_SWE']:GivePayCheckTax(xPlayer.source, salary, job)

        print(newSalary)

        if salary > 0 then
          if job == 'unemployed' then -- unemployed
            xPlayer.addAccountMoney('bank', salary, "Welfare Check")
            TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_help', salary),
              'CHAR_BANK_MAZE', 9)
            if Config.LogPaycheck then
              ESX.DiscordLogFields("Paycheck", "Paycheck - Unemployment Benefits", "green", {
                { name = "Player", value = xPlayer.name,   inline = true },
                { name = "ID",     value = xPlayer.source, inline = true },
                { name = "Amount", value = salary,         inline = true }
              })
            end
          elseif Config.EnableSocietyPayouts then -- possibly a society
            TriggerEvent('esx_society:getSociety', xPlayer.job.name, function(society)
              if society ~= nil then              -- verified society
                TriggerEvent('esx_addonaccount:getSharedAccount', society.account, function(account)
                  if account.money >= salary then -- does the society money to pay its employees?
                    xPlayer.addAccountMoney('bank', salary, "Paycheck")
                    account.removeMoney(salary)
                    if Config.LogPaycheck then
                      ESX.DiscordLogFields("Paycheck", "Paycheck - " .. jobLabel, "green", {
                        { name = "Player", value = xPlayer.name,   inline = true },
                        { name = "ID",     value = xPlayer.source, inline = true },
                        { name = "Amount", value = salary,         inline = true }
                      })
                    end

                    TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'),
                      TranslateCap('received_salary', salary), 'CHAR_BANK_MAZE', 9)
                  else
                    TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), '', TranslateCap('company_nomoney'), 'CHAR_BANK_MAZE', 1)
                  end
                end)
              else -- not a society
                xPlayer.addAccountMoney('bank', salary, "Paycheck")
                if Config.LogPaycheck then
                  ESX.DiscordLogFields("Paycheck", "Paycheck - " .. jobLabel, "green", {
                    { name = "Player", value = xPlayer.name,   inline = true },
                    { name = "ID",     value = xPlayer.source, inline = true },
                    { name = "Amount", value = salary,         inline = true }
                  })
                end
                TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_salary', salary),
                  'CHAR_BANK_MAZE', 9)
              end
            end)
          else -- generic job
            xPlayer.addAccountMoney('bank', newSalary, "Paycheck")
            if Config.LogPaycheck then
              ESX.DiscordLogFields("Paycheck", "Paycheck - Generic", "green", {
                { name = "Player", value = xPlayer.name,   inline = true },
                { name = "ID",     value = xPlayer.source, inline = true },
                { name = "Amount", value = newSalary,         inline = true }
              })
            end
            TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_salary', salary),
              'CHAR_BANK_MAZE', 9)
          end
        end
      end
    end
  end)
end
PreviousServer TaxNextVehicle Tax

Last updated 1 year ago

🏛️