๐Ÿ’ผ [ESX] AQ-Business, manage businesses, manage workers

You can check out the preview video here.

Features:

  • Interactive and responsive UI
  • Includes workers who have impact towards your paycheck
  • Includes useful information such as when is the next payment
  • Legal and illegal businesses
  • Easy to use admin menu
  • Massive configuration. Config example presented below.
Full config.
Config = {}

Config['Blips'] = {
  ShowBlips = true, -------- Toggle to turn off/on blips
  OwnedSprite = 475, -------- SPRITE OF OWNED BUSINESS
  NotOwnedSprite = 476, -------- SPRITE OF NOT OWNED BUSINESS
  Display = 6, -------- TYPE OF DISPLAY, EXAMPLE: ONLY MINIMAP, ONLY MAP, ETC...
  Color = 2, -------- COLOR OF BLIP
  Scale = 1.0, -------- SIZE OF BLIP
  ShortRange = true, -------- true = Will show on minimap when upclose.
}

Config['Dist'] = 3 -------- MINIMUM DISTANCE TO SHOW PROMPT
Config['KeyToOpen'] = Keys['E'] -------- KEY TO OPEN MENUS
Config['KeyToOpenText'] = 'E' -------- LETTER TO DISPLAY AT PROMPT, MUST BE SAME AS ['KeyToOpen']
Config['PayInterval'] = 1 -------- INTERVAL AT WHICH PAYCHECKS WILL BE PAID, VALUE IS IN HOURS
Config['AmountPerWorker'] = 200 -------- HOW MUCH EACH WORKER ADDS TO PAY
Config['WaitForUpdate'] = 200 -------- INCREMENT THIS BY 50 IF THE UI DOES NOT AUTO REFRESH
Config['UseMythicNotify'] = false
Config['MaximumItemCount'] = 50

-------- MESSAGE TEXTS --------

Config['CannotBeZero'] = "Amount can't be 0!"
Config['NotEnoughCash'] = "Not enough money!"
Config['NotEnoughStocks'] = "Not enough stocks!"
Config['AlreadyWorker'] = "This player is already a worker!"
Config['HireSelf'] = "You can not hire yourself!"
Config['OwnerSelf'] = "You can not make yourself owner!"
Config['NotEnoughItems'] = "Not enough items!"
Config['NotEnoughSpace']  = "You don't have enough space!"
Config['NotEnoughBusinessInventory'] = "You don't have that much in you business inventory!"
Config['PlayerNotFound'] = "Player not found"
Config['NotAllowed'] = "You're not the owner nor a worker!"
Config['TooManyItems'] = "Too many items!"

-------- COLOR VALUES CAN BE RGB() - RGBA() or HEX --------

Config['UIColorPalette'] = {
  adminMenuContainerColor = '#121212e0',
  modalContainerColor = '#121212e0',
  modalHeading = "#1ea5ff",
  submitButton = "#1ea5ff",
  submitButtonText = "#ffffff",
  menu = {
    buttonBackgroundColor = '#121212e0',
    headingColor = "#ffffff",
    buttonColor = "#ff5e64",
  },
  infoComponent = {
    infoHeading = "#1ea5ff",
    infoName = "#ffffff",
    infoValue = "#ff5e64",
  },
  inputs = {
    inputHeading = "#ffffff",
    inputBorder = "#ff5e64",
  },
  deleteBusiness = {
    infoTypeColor = "#ffffff",
    valueColor = "#ff5e64",
  },
  deleteWorker = {
    infoTypeColor = "#ffffff",
    valueColor = "#ff5e64",
  },
  sellBusiness = {
    sellBusinessMoney = '#4dff91'
  },
}

-------- UI TEXT CONFIG --------

Config['AdminMenu'] = {
  adminHeading = 'ADMIN MENU',
  adminCreateBusiness = 'Create business',
  adminRemoveBusiness = 'Remove business',
  adminGiveOwnership = 'Give ownership',
  adminCreateBusinessModal = {
    modalName = 'Create business',
    name = 'Business name:',
    item = 'Business item:',
    price = 'Business price:',
    payFrom = 'Pay from:',
    payTo = 'Pay to:',
    tax = 'Tax:',
    minimumItemAmount = 'Minimum item amount:',
    taxPlaceholder = 'Number is used as a percentage',
    submitButton = 'Submit business',
    errorMissingData = 'Missing data.',
    errorNameAlreadyTaken = 'Name already taken.',
  },
  adminDeleteBusinessModal = {
    modalName = 'Delete business',
    owner = 'Owner',
    name = 'Name',
    notFound = 'No businesses found.'
  },
  adminGiveOwnershipModal = {
    modalName = 'Give ownership',
    name = 'Business name:',
    userId = 'New owners ID:',
    submitButton = 'Save changes',
  },
}

Config['OwnedMenu'] = {
  ownedCheckInfo = 'Check your bussiness info.',
  ownedCheckStats = 'Check your business stats.',
  ownedOpenControls = 'Business controls.',
  ownedPassOwnership = 'Pass over ownership.',
  ownedSellBusiness = 'Sell the business.',
  ownedBusinessInfo = {
    ownedFor = 'Owned for: ',
    ownedBy = 'Owned by: ',
    ownedName = 'Name: ',
    ownedItem = 'Item: ',
    ownedStocks = 'Current stocks: ',
    ownedPay = 'Pay from | to: ',
    ownedBuy = 'Buy price: ',
    ownedTax = 'Tax: ',
    ownedSell = 'Sell price: ',
    ownedWorkers = 'Workers',
  },
  ownedBusinessStats = {
    ownedPaycheck = 'Next paycheck: ',
    ownedTotalWealth = 'Total wealth acquired: ',
    ownedTotalDebt = 'Total debt paid: ',
    ownedTotalWorkers = 'Total workers: ',
  },
  ownedBusinessPassOwnership = {
    forms = {
      heading = 'New owner ID',
      buttonText = 'Transfer ownership',
    }
  },
  ownedBusinessControls = {
    heading = 'Controls menu',
    ownedStocks = 'Stocks',
    ownedWorkers = 'Workers',
    ownedInventory = 'Inventory',
    ownedReturn = 'Go back',
  },
  ownedBusinessStocks = {
    heading = 'Stocks menu: ',
    addStocks = 'Add stocks',
    removeStocks = 'Remove stocks',
    forms = {
      stocksHeading = 'Funds amount:',
      addStocksButtonText = 'Add funds',
      removeStocksButtonText = 'Remove funds',
    }
  },
  ownedBusinessWorkers = {
    heading = 'Workers menu',
    hireWorkers = 'Hire workers',
    fireWorkers = 'Fire workers',
    editWorkers = 'Edit workers',
    forms = {
      workerHeading = 'Player ID: ',
      hireWorkerButtonText = 'Hire',
    },
    fireWorker = {
      heading = 'Fire workers',
      workersName = 'Workers: ',
      notFound = 'No workers found.',
      useSteamName = true, -------- MUST HAVE ESX_IDENTITY
    },
    maximumWorkers = 5, -------- MAXIMUM AMOUNT OF WORKERS IN A BUSINESS
  },
  ownedBusinessInventory = {
    heading = 'Items: ',
    addInventoryItem = 'Add item',
    removeInventoryItem = 'Remove item',
    forms = {
      itemsHeading = 'Items amount:',
      addInventoryItemButtonText = 'Add items',
      removeInventoryItemButtonText = 'Remove items',
    },
  },
  buyBusiness = {
    buyBusinessHeading = 'Buy business',
    buyBusinessButton = "I'm buying it!",
  },
  sellBusinessModal = {
    modalMessage = "You'll get: ",
    confirmButtonText = 'Sell it!',
  },
  sellValuePercentage = 25, -------- PERCENTAGE AT WHICH BUSINESS WILL SELL FROM BUY PRICE, EXAMPLE: BUY RRICE = 500.000, SELL PRICE = 125.000 
}

:briefcase: UNAVAILABLE

4 Likes

Hi, and how the owner earn money, selling items to other players?

1 Like

The owner doesnโ€™t sell anything, when the business inventory has the needed amount of items, there is an hourly pay ( You can change it in the config ). Every worker adds an additional bonus to the pay check.

1 Like

ouh, very cool then!

2 Likes

Amazing job!

1 Like

Does the paycheck money come out of the business stocks or does it just generate based on number of workers from thin air?

It uses the specific item u set it to use, if it has the minimum required amount of items, it pays an hourly paycheck ( you can change the pay time ). Workers only add an additional amount to the paycheck.

great script, great dev. Thank you. 2222

1 Like

Where can I get this script?

1 Like