Codex Studios
Visit our Tebex StoreOur Discord
  • ๐Ÿ‘‹Welcome to Codex Studios
  • Overview
    • ๐Ÿ’กAbout Us
    • โœจOur Features
  • ๐Ÿ’…RedM-Scripts
    • ๐ŸŒ[Codex Studios] : Core
      • Client Side
      • Server Side - CodexCore API
      • Config
      • ๐Ÿ“ Client Side (clientside.lua)
      • ๐Ÿงพ Server Side (serverside.lua)
      • ๐Ÿ›ก๏ธCodexCore Security Module
      • ๐Ÿ—’๏ธSecurity Detailed Explanation
      • ๐Ÿ”Client-Side: Securing Event Triggers
      • ๐Ÿ”’Server-Side: Securing Event Triggers
    • ๐Ÿ’ช[Codex Studios] : Trust Level
      • Client Side
      • Config
      • SQL
  • ๐Ÿ“ฆ[Codex Studios]: Supplies System
    • Client Side
    • Server-Side Town Supplies
    • Config
    • ๐Ÿช›Examples and Commands
    • Sql Updated
Powered by GitBook
On this page

Was this helpful?

  1. RedM-Scripts
  2. [Codex Studios] : Core

๐Ÿงพ Server Side (serverside.lua)

This script demonstrates the use of server-side functions from CodexCore, including currency handling, item usage, SQL access, and shared callbacks. Make sure the top of every server script using CodexCore includes the following setup:


local CodexCore = exports['codex_core']:getLibServer()
local Inventory = CodexCore.RequestInventoryAPI()
local Core = CodexCore.RequestCoreAPI()

-- ๐Ÿ“ก Register a server callback
CodexCore.RegisterServerCallback('CodexCore-lib:fetchUserCharacterIdentifier', function(source, cb)
    cb(CodexCore.GetCharacterIdentifier(source))
end)

-- ๐Ÿ’ผ Get Player Info
RegisterCommand("getjob", function(source)
    local job = CodexCore.GetJob(source)
    local grade = CodexCore.GetJobGrade(source)
    print("๐Ÿ‘ค Source:", source, "has job:", job, "grade:", grade)
end)

-- ๐Ÿ’ธ Get Currency
RegisterCommand("getmoney", function(source)
    local money = CodexCore.GetMoney(source)
    local gold = CodexCore.GetGold(source)
    local cents = CodexCore.GetCents(source)
    print("๐Ÿ’ฐ Cash:", money, "| ๐Ÿช™ Gold:", gold, "| ๐ŸŸก Cents:", cents)
end)

-- ๐Ÿ’ฐ Add/Remove Money
RegisterCommand("addcash", function(source)
    CodexCore.AddAccountMoney(source, 0, 100) -- Add $100
    print("๐Ÿ’ต 100$ added to source", source)
end)

RegisterCommand("removecash", function(source)
    CodexCore.RemoveAccountMoney(source, 0, 50) -- Remove $50
    print("๐Ÿ’ต 50$ removed from source", source)
end)

-- ๐Ÿ“ฆ Add/Remove Item
RegisterCommand("giveitem", function(source)
    CodexCore.AddItem(source, "bread", 2)
end)

RegisterCommand("removeitem", function(source)
    CodexCore.RemoveItem(source, "bread", 1)
end)

-- ๐Ÿ”Ž Check Item Count
RegisterCommand("itemcount", function(source)
    local count = CodexCore.GetItemCount(source, "bread")
    print("๐Ÿž You have", count, "bread(s).")
end)

-- ๐Ÿ” Register Usable Item
CodexCore.RegisterUsableItem("whiskey", function(source)
    TriggerClientEvent("codex:notify", source, "๐Ÿฅƒ You drank whiskey!", 5000)
end)

-- ๐Ÿง  SQL Usage
RegisterCommand("fetchusersql", function(source)
    local result = CodexCore.ExecuteSql("SELECT * FROM users WHERE identifier = @identifier", {
        ['@identifier'] = CodexCore.GetUserIdentifier(source)
    })
    print(json.encode(result))
end)
Previous๐Ÿ“ Client Side (clientside.lua)NextCodexCore Security Module

Last updated 1 month ago

Was this helpful?

๐Ÿ’…
๐ŸŒ