🧠 Installation
🪜 First steps
- Install the latest stable version of MariaDB.
- Add all dependencies listed below and follow their installation instructions.
- Watch the quick installation walkthrough to set up the phone.(Skip the part with SQL)
- On the first launch of the phone, the SQL will insert the needed tables in your database.
🔴 Dependencies
- ox_lib Follow their installation instructions(latest).
- oxmysql Follow their installation instructions(latest).
🖼️ Frameworks
Our script is compatible with QBCore, QBox, ESX, and Standalone(custom framework or no framework).
If you are using QBCore, QBox, or ESX, you don't need to do anything else. The script will auto-detect the correct framework.
⚠️ Standalone
🎯 Resource positioning
lua-- First, we start the framework, never below ensure es_extended, qb-core, qbx_core (or your framework name) -- These resources must be started before the phone ensure your_banking ensure your_inventory ensure your_housing ensure your_garages -- the other scripts don't matter - they can be started before or after no difference -- The phone system ensure [phone] -- Put yseries or yphone or yflip-phone and props here!
💳 Phone Items
lua["phone"] = { label = "Phone", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yphone_natural"] = { label = "YPhone Natural", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yphone_black"] = { label = "YPhone Black", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yphone_white"] = { label = "YPhone White", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yphone_blue"] = { label = "Phone", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yflip_mint"] = { label = "YFlip Mint", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yflip_gold"] = { label = "YFlip Gold", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yflip_graphite"] = { label = "YFlip Graphite", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yflip_lavender"] = { label = "YFlip Lavender", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["y24_black"] = { label = "Y24 Black", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["y24_silver"] = { label = "Y24 Silver", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["y24_violet"] = { label = "Y24 Violet", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["y24_yellow"] = { label = "Y24 Yellow", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yfold_black"] = { label = "YFold Black", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } }, ["yphone_fold_black"] = { label = "YPhone Fold Black", weight = 100, stack = false, consume = 0, client = { export = "yseries.UsePhoneItem", remove = function() TriggerEvent("yseries:phone-item-removed") end, add = function() TriggerEvent("yseries:phone-item-added") end } },
luaphone = { name = 'phone', label = 'Phone', weight = 700, type = 'item', image = 'yflip_graphite.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'yphone or maybe yflip?' }, yphone = { name = 'yphone', label = 'Phone', weight = 700, type = 'item', image = 'yphone_black.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'YPhone? Cuz Y not.' }, yflipphone = { name = 'yflipphone', label = 'Phone', weight = 700, type = 'item', image = 'yflip_graphite.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Flip it.. won\'t break' }, yphone_natural = { name = 'yphone_natural', label = 'YPhone Natural', weight = 700, type = 'item', image = 'yphone_natural.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'YPhone? Cuz Y not.' }, yphone_black = { name = 'yphone_black', label = 'YPhone Black', weight = 700, type = 'item', image = 'yphone_black.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'YPhone? Cuz Y not.' }, yphone_white = { name = 'yphone_white', label = 'YPhone White', weight = 700, type = 'item', image = 'yphone_white.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'YPhone? Cuz Y not.' }, yphone_blue = { name = 'yphone_blue', label = 'YPhone Blue', weight = 700, type = 'item', image = 'yphone_blue.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'YPhone? Cuz Y not.' }, yflip_mint = { name = 'yflip_mint', label = 'YFlip Mint', weight = 700, type = 'item', image = 'yflip_mint.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Flip it.. won\'t break' }, yflip_gold = { name = 'yflip_gold', label = 'YFlip Gold', weight = 700, type = 'item', image = 'yflip_gold.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Flip it.. won\'t break' }, yflip_graphite = { name = 'yflip_graphite', label = 'YFlip Graphite', weight = 700, type = 'item', image = 'yflip_graphite.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Flip it.. won\'t break' }, yflip_lavender = { name = 'yflip_lavender', label = 'YFlip Lavender', weight = 700, type = 'item', image = 'yflip_lavender.png', unique = true, useable = true, shouldClose = true, combinable = nil, description = 'Flip it.. won\'t break' },