FiveM Server „AWAITING-SCRPIT“ mögliche Lösung!
So bekommst Du dein eden_animal Skript wieder in den Griff!
Da ich das Skipt nicht geschrieben, sondern nur verändert habe, darf ich nur das Fehlerbehaftete Script der Ersteller verlinken, darum hast Du hier eine genau Anleitung, wie Du die fehlerbehafteten Dateien ersetzt.
Awaiting-Script fixen!
Dazu musst Du in deiner Datenbank diese SQL-Anfrage auführen (im Video erklärt), somit wird die von „eden_animal“ erzeugte Spalte wieder gelöscht und das Einreisen eines neuen Nutzers/Spielers, müsste wieder klappen 😉
ALTER TABLE users
DROP COLUMN pet;
eden_animal reparieren
Du findest hier nicht nur wie du es änderst, sonder den ganzen Installationsweg, solltest Du diesen auch nocheinmal kontrollieren wollen 🙂
- Download eden_animal
- Entpacke die ZIP-Datei
- Öffne den Ordner „eden_animal-master“
- Öffne den Ordner „Server„
- Öffne hier die Datei „main“ oder „main.lua“ (Text Editor nutzen)
- Inhalt in der „main“ Datei löschen
- Neuen Code einfügen:
ESX = nil
TriggerEvent(‚esx:getSharedObject‘, function(obj) ESX = obj end)
ESX.RegisterServerCallback(‚eden_animal:getPet‘, function(source, cb)
local xPlayer = ESX.GetPlayerFromId(source)
MySQL.Async.fetchAll(‚SELECT pet FROM owned_ped WHERE owner = @identifier ORDER BY id DESC LIMIT 1‘, {
[‚@identifier‘] = xPlayer.identifier
}, function(result)
if result[1].pet ~= nil then
cb(result[1].pet)
else
cb(“)
end
end)
end)
RegisterServerEvent(‚eden_animal:petDied‘)
AddEventHandler(‚eden_animal:petDied‘, function()
local _source = source
local xPlayer = ESX.GetPlayerFromId(_source)
MySQL.Async.execute(‚DELETE FROM owned_ped WHERE owner = @identifier‘, {
[‚@identifier‘] = xPlayer.identifier
})
end)
RegisterServerEvent(‚eden_animal:consumePetFood‘)
AddEventHandler(‚eden_animal:consumePetFood‘, function()
local _source = source
local xPlayer = ESX.GetPlayerFromId(_source)
xPlayer.removeInventoryItem(‚croquettes‘, 1)
end)
ESX.RegisterServerCallback(‚eden_animal:buyPet‘, function(source, cb, pet)
local xPlayer = ESX.GetPlayerFromId(source)
local price = GetPriceFromPet(pet)
if price == 0 then
print((‚eden_animal: %s attempted to buy an invalid pet!‘):format(xPlayer.identifier))
cb(false)
end
if xPlayer.getMoney() >= price then
xPlayer.removeMoney(price)
MySQL.Async.execute(‚INSERT INTO owned_ped (pet, owner) VALUES (@pet, @identifier)‘, {
[‚@identifier‘] = xPlayer.identifier,
[‚@pet‘] = pet
}, function(rowsChanged)
TriggerClientEvent(‚esx:showNotification‘, xPlayer.source, _U(‚you_bought‘, pet, ESX.Math.GroupDigits(price)))
cb(true)
end)
else
TriggerClientEvent(‚esx:showNotification‘, source, _U(‚your_poor‘))
cb(false)
end
end)
function GetPriceFromPet(pet)
for i=1, #Config.PetShop, 1 do
if Config.PetShop[i].pet == pet then
return Config.PetShop[i].price
end
end
return 0
end
8. Die „main“ Datei mit diesem Code abspeichern / überschreiben
9. Meine SQL-Anfragen ausführen! (In der Datenbank)
Scripts für „WEIGHT“ Nutzer in ITEMS
INSERT INTO `shops` (`store`, `item`, `price`) VALUES
(‚LTDgasoline‘, ‚croquettes‘, 100)
;
INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`) VALUES
(‚croquettes‘, ‚Croquettes‘, 1 , 0 , 1)
CREATE TABLE owned_ped (
id int NOT NULL AUTO_INCREMENT,
pet varchar(255),
owner varchar(255)
);
ODER Scripts für „LIMIT“ Nutzer in ITEMS
INSERT INTO `shops` (`store`, `item`, `price`) VALUES
(‚LTDgasoline‘, ‚croquettes‘, 100)
;
INSERT INTO `items` (`name`, `label`, `limit`, `rare`, `can_remove`) VALUES
(‚croquettes‘, ‚Croquettes‘, 1 , 0 , 1)
CREATE TABLE owned_ped (
id int NOT NULL AUTO_INCREMENT,
pet varchar(255),
owner varchar(255)
);
10. Geh zurück und lösche aus dem „eden_animal-master“ Ordner (Hauptordner) die alten sql anfragen.
11. Lade nun den ganzen Ordner „eden_animal-master“ Ordner (Hauptordner) auf deinen FiveM Server. Nutze dazu eine FTP-Verbindung um diech mit dem Server zu verbinden.
12. Ziehe mittels „Drag & Drop“ den „eden_animal-master“ Ordner (Hauptordner) in den „recources“ Ordner.
13. Öffne im „server-data“ Ordner (Einen zurück), die „server.cfg“ Datei
14. Füge diese Zeile hinzu
start eden_animal-master
15. Speicher die Datei „server.cfg“ ab
16. Server neustarten
FERTIG