GCPhone im Laden
Hallo!
Ich habe ein Tutorial gestartet, um Neulingen dabei zu helfen, das zu machen GCPhone ein käuflicher Artikel.
Wenn Sie das Telefon noch nicht gekauft haben, können Sie es nicht öffnen. Genau das können Sie mit diesem Handbuch erreichen.
Zunächst möchte ich, dass Sie die neueste Ressource GCPhone herunterladen, die Sie hier finden: https://github.com/N3MTV/gcphone
Telefon als Element hinzufügen
Zunächst müssen Sie das Telefon zur Datenbank hinzufügen, um es zu einem zu machen Artikel.
Um dies zu erreichen, müssen Sie ´´phone´´ unter dem Namen hinzufügen. [THE NAME MUST BE PHONE]
Dann musst du das Label hinzufügen, das dem Namen im Spiel entspricht. [Name can be whatever]
In der dritten Reihe haben Sie das Limit, das der Betrag ist, den Sie im Spiel tragen können. [-1= Unlimited amount.
1= 1 phone max. 2= 2 phones max that a player can carry etc.]
Dann haben wir die anderen 2 Reihen, die ich als meine verlassen möchte.
ODER LADEN SIE DIESES NUR HERUNTER, WENN SIE ESX_SHOPS VERWENDEN::
INSERT INTO `items` (`name`, `label`, `limit`) VALUES
('phone', 'Phone', 1)
;
INSERT INTO shops (id, name, item, price) VALUES (98, 'TwentyFourSeven', 'phone', 175), (99, 'RobsLiquor', 'phone', 175), (100, 'LTDgasoline', 'phone', 175);
Ändern des GCPhone-Codes, damit das Telefon im Spielerinventar gesucht wird
Navigieren Sie zuerst zu GCPhone und gehen Sie dann zu client / main.lua
In main.lua füge dies oben auf der lua hinzu:
ESX = nil
Citizen.CreateThread(function()
while ESX == nil do
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
Citizen.Wait(0)
end
end)
Suchen Sie dann in main.lua (STRG + F) nach diesen Zeilen:
Citizen.CreateThread(function()
while true do
Citizen.Wait(0)
if IsControlJustPressed(1, KeyOpenClose) and GetLastInputMethod( 0 ) then
TooglePhone()
end
if menuIsOpen == true then
for _, value in ipairs(KeyToucheCloseEvent) do
if IsControlJustPressed(1, value.code) then
SendNUIMessage({keyUp = value.event})
end
end
end
end
end)
Und ersetzen Sie sie durch Folgendes:
Citizen.CreateThread(function()
while true do
Citizen.Wait(0)
if IsControlJustPressed(1, KeyOpenClose) and GetLastInputMethod( 0 ) then
ESX.TriggerServerCallback('gcphone:getItemAmount', function(qtty)
if qtty > 0 then
TooglePhone()
else
TriggerEvent('esx:showNotification', "You don´t have a ~r~phone~s~")
end
end, 'phone')
end
if menuIsOpen == true then
for _, value in ipairs(KeyToucheCloseEvent) do
if IsControlJustPressed(1, value.code) then
SendNUIMessage({keyUp = value.event})
end
end
end
end
end)
Jetzt sind wir in client / main.lua fertig. Gehen Sie zu server / main.lua und fügen Sie diesen Code so hoch wie möglich hinzu:
ESX = nil
TriggerEvent('esx:getSharedObject', function(obj)
ESX = obj
end)
ESX.RegisterServerCallback('gcphone:getItemAmount', function(source, cb, item)
local xPlayer = ESX.GetPlayerFromId(source)
local qtty = xPlayer.getInventoryItem(item).count
cb(qtty)
end)
Starten Sie GCPhone neu und Sie sollten jetzt das Telefon als Element auf Ihrem Server haben.
Bei Problemen kommentieren Sie einfach dieses Thema und ich werde versuchen, Ihnen so gut wie möglich zu helfen