From a75ff34a358723338b9b85758827cceff7a52364 Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:50:50 +0100 Subject: [PATCH 1/7] Delete client.lua --- starterpack/client.lua | 24 ------------------------ 1 file changed, 24 deletions(-) delete mode 100644 starterpack/client.lua diff --git a/starterpack/client.lua b/starterpack/client.lua deleted file mode 100644 index ab07d24..0000000 --- a/starterpack/client.lua +++ /dev/null @@ -1,24 +0,0 @@ - - -ESX = nil -odebrane = false -Citizen.CreateThread(function() - while ESX == nil do - TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end) - Citizen.Wait(0) - end -end) - -RegisterCommand("starterpack", function() - ESX.TriggerServerCallback('odbierz:check', function(odebrane) - if odebrane then - ESX.ShowNotification("Nie można odebrać itemów dwa razy!") - else - ESX.ShowNotification("Odebrano itemy!") - odebrane = true - TriggerServerEvent("odbierz:odebrane", true) - TriggerServerEvent("odbierz:giveitem") - - end - end) -end, false) \ No newline at end of file From 8d2c6bce31f79ec871f6dce0a7bb94249effdbe2 Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:50:57 +0100 Subject: [PATCH 2/7] Delete fxmanifest.lua --- starterpack/fxmanifest.lua | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 starterpack/fxmanifest.lua diff --git a/starterpack/fxmanifest.lua b/starterpack/fxmanifest.lua deleted file mode 100644 index 10aced6..0000000 --- a/starterpack/fxmanifest.lua +++ /dev/null @@ -1,18 +0,0 @@ - - -fx_version 'adamant' - -game 'gta5' - -author 'polacy2017#4079' - -server_script { - '@mysql-async/lib/MySQL.lua', - 'server.lua', - 'config.lua' -} - -client_script { - 'client.lua', - 'config.lua' -} \ No newline at end of file From 6517164583f64cee4a09bcad26b313fe8c48b201 Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:51:02 +0100 Subject: [PATCH 3/7] Delete server.lua --- starterpack/server.lua | 73 ------------------------------------------ 1 file changed, 73 deletions(-) delete mode 100644 starterpack/server.lua diff --git a/starterpack/server.lua b/starterpack/server.lua deleted file mode 100644 index 80d25e2..0000000 --- a/starterpack/server.lua +++ /dev/null @@ -1,73 +0,0 @@ - -ESX = nil - -TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end) - - - -ESX.RegisterServerCallback('odbierz:check', function (source, cb) - local xPlayer = ESX.GetPlayerFromId(source) - local identifier = GetLicenseID(source) - - MySQL.Async.fetchScalar('SELECT odebrane FROM users WHERE identifier = @identifier', { - ['@identifier'] = identifier - }, function(odebrane) - - cb(odebrane) - print(odebrane) - end) - -end) - -RegisterServerEvent('odbierz:odebrane') -AddEventHandler('odbierz:odebrane', function(odebrane) - local identifier = GetLicenseID(source) - - MySQL.Sync.execute('UPDATE users SET odebrane = @odebrane WHERE identifier = @identifier', { - ['@identifier'] = identifier, - ['@odebrane'] = odebrane - }) -end) - -RegisterServerEvent('odbierz:giveitem') -AddEventHandler('odbierz:giveitem', function() - local xPlayer = ESX.GetPlayerFromId(source) - xPlayer.addInventoryItem("pistol", 1) - xPlayer.addInventoryItem("pistol_ammo_box", 20) - xPlayer.addInventoryItem("bread", 15) - xPlayer.addInventoryItem("water", 15) - sendToDiscord('Odbierz','Gracz ' ..GetPlayerName(source).. ', '..GetLicenseID(source)..' odebrał /odbierz' ,3999999) -end) - - -function sendToDiscord (name,message,color) - local DiscordWebHook = 'WEBHOOK' - local embeds = { - { - ["title"]=message, - ["type"]="rich", - ["color"] =color, - ["footer"]= { - ["text"]= "starterpack by polacy", - }, - } - } - - if message == nil or message == '' then return FALSE end - PerformHttpRequest(DiscordWebHook, function(err, text, headers) end, 'POST', json.encode({ username = name,embeds = embeds}), { ['Content-Type'] = 'application/json' }) -end - - - -GetLicenseID = function(src) - local sid = GetPlayerIdentifiers(src) - local license = 'Brak' - for k,v in ipairs(sid)do - if string.sub(v, 1, string.len("license:")) == "license:" then - license = v - break - end - end - - return license -end From d6b7e93e399aca6efda5be11a4225a15702de696 Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:51:10 +0100 Subject: [PATCH 4/7] Delete sql.sql --- starterpack/sql.sql | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 starterpack/sql.sql diff --git a/starterpack/sql.sql b/starterpack/sql.sql deleted file mode 100644 index 55b14dd..0000000 --- a/starterpack/sql.sql +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE `users` - ADD `odebrane` TINYINT(1) NULL DEFAULT '0' -; From b63b588d27f8380d7d322eb10d5277f7504e126e Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:51:53 +0100 Subject: [PATCH 5/7] Add new files Optimize, add support for new and old ESX and drop MySQL queries and client script. --- config.lua | 10 ++++++++++ fxmanifest.lua | 9 +++++++++ server/server.lua | 38 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 config.lua create mode 100644 fxmanifest.lua create mode 100644 server/server.lua diff --git a/config.lua b/config.lua new file mode 100644 index 0000000..3bd4ce7 --- /dev/null +++ b/config.lua @@ -0,0 +1,10 @@ +Config = { + StarterItems = { + {databasename = 'bread', count = 1}, + {databasename = 'water', count = 2}, + }, + + OldESX = false, + + Config.NotificationSystem = 'ESX' -- or mythic_notify +} \ No newline at end of file diff --git a/fxmanifest.lua b/fxmanifest.lua new file mode 100644 index 0000000..67cc70b --- /dev/null +++ b/fxmanifest.lua @@ -0,0 +1,9 @@ +fx_version 'cerulean' +game 'gta5' + +shared_script '@es_extended/imports.lua' -- Remove if using older ESX + +server_scripts { + 'config.lua', + 'server/server.lua' +} \ No newline at end of file diff --git a/server/server.lua b/server/server.lua new file mode 100644 index 0000000..f1559c6 --- /dev/null +++ b/server/server.lua @@ -0,0 +1,38 @@ +if Config.OldESX then + ESX = nil + TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end) +end + +RegisterNetEvent('esx:playerLoaded') -- When a player loads in, we can store some basic information about them locally +AddEventHandler('esx:playerLoaded', function(playerId, xPlayer, isNew) + ESX.Players[playerId] = xPlayer.job.name + local zPlayer = ESX.GetPlayerFromId(playerId) + if isNew then + for k, v in pairs(Config.StarterItems) do + zPlayer.addInventoryItem(v.databasename, v.count) + sendToDiscord('Starteritems','Player ' ..GetPlayerName(playerId).. ', '..zPlayer.identifier..' picked up' ,3999999) + if Config.NotificationSystem == 'ESX' then + xPlayer.showNotification('You received some starter items') + elseif Config.NotificationSystem == 'mythic_notify' then + TriggerClientEvent('mythic_notify:client:SendAlert', playerId, { type = 'inform', text = 'You received some starter items!', length = 2500, style = { ['background-color'] = '##', ['color'] = '#FFFFFF' } }) + end + end + end +end) + +function sendToDiscord (name,message,color) + local DiscordWebHook = Config.Webhook + local embeds = { + { + ["title"]=message, + ["type"]="rich", + ["color"] =color, + ["footer"]= { + ["text"]= "starterpack by polacy", + }, + } + } + + if message == nil or message == '' then return FALSE end + PerformHttpRequest(DiscordWebHook, function(err, text, headers) end, 'POST', json.encode({ username = name,embeds = embeds}), { ['Content-Type'] = 'application/json' }) +end \ No newline at end of file From 0d4dafb7831545b03c130b7be19dd041e271380c Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:52:51 +0100 Subject: [PATCH 6/7] Update README.md --- README.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index cbcf9c0..17fd455 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,9 @@ # starterpack -Simple /starterpack script for ESX Framework [FIVEM] +Simple starterpack script for ESX Framework [FIVEM] -It’s simple script for /starterpack. -If you write on chat /starterpack you can get start items or organization items for start. +It’s a simple starterpack script. +When creating a new character you will automatically get some starter items which is set in the config. You can use this one times per character. Items you can change in server.lua. -Script based on es_extended 1.2.0. -Sorry for my English!! +Script based on es_extended Legacy, but is working for ESX 1.1 and 1.2 From 32c783d8fb92546f48ce2212bbf784f699f02e4a Mon Sep 17 00:00:00 2001 From: 0pax <64065031+0pax@users.noreply.github.com> Date: Thu, 16 Dec 2021 18:53:30 +0100 Subject: [PATCH 7/7] Update config.lua Fix Config.Webhook --- config.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/config.lua b/config.lua index 3bd4ce7..53c1aa6 100644 --- a/config.lua +++ b/config.lua @@ -3,8 +3,8 @@ Config = { {databasename = 'bread', count = 1}, {databasename = 'water', count = 2}, }, - + OldESX = false, - - Config.NotificationSystem = 'ESX' -- or mythic_notify -} \ No newline at end of file + Config.NotificationSystem = 'ESX', -- or mythic_notify + Config.Webhook = 'WEBHOOK HERE' +}