Od dawien dawna testuje sobie ChatGPT. ChatGPT napisał mi nie jeden skrypt do MTA. Co o dziwo większość z nich działa. Jedno co mnie ciekawi na ile one są sprawne żeby można by było je wrzucić na serwer i nie powodowały błędów, mogli z nich korzystać inni gracze itd.
Sam się na dokładnej budowie skryptów nie znam, nie ogarniam tego. Jedynie potrafię takie bardzo proste skrypty napisać. Moim konikiem jest modelowanie modeli i w połączeniu z ChatGPT daje nowe możliwości w tworzeniu modeli. Tutaj dla przykładu podaje skrypt na radio. Radio można włączyć po przez markera. Zmienić stacje, wyłączyć i zmieniać głośność i to za pomocą klawiszy na klawiaturze. W sumie pytam z ciekawości. na ile on jest poprawnie napisany?
[lua]local markerX, markerY, markerZ = -684.65417, 935.66187, 12.33281
local marker = createMarker(markerX, markerY, markerZ, "cylinder", 1.0, 0, 255, 0, 150)
local defaultVolume, radioStream, currentStationIndex, isRadioPlaying, isInMarker, isBKeyUsed = 1.0, nil, 1, false, false, false
-- Dodaj stacje radiowe
local stations = {
{ url = "http://audio.radio.opole.pl:9000/ro1mp3", name = "Radio Opole" },
{ url = "http://n-16-8.dcs.redcdn.pl/sc/o2/Eurozet/live/meloradio.livx?audio=5", name = "Meloradio" },
{ url = "http://srv0.streamradiowy.eu:80/radio90-aac", name = "Radio 90" }
}
local lastVolumeUpdateTime = 0 -- Czas ostatniej aktualizacji głośności
local lastVolumeChan...
Ostatnio odkry?em ?e ChatGPT nie tylko potrafi wyszukiwa? r??ne informacje z internetu czy odpowiada? na r??ne tematy ale potrafi te? pisa? skrypty w lua i to do MTA, kt?re co odziwo prawie ka?de dzia?aj?. Mo?liwe ?e i ka?dy dzia?a? ale ja nie umie do ko?ca tego poprawi?. Np. w konsoli pisze mi ?e brakuje jakiego? argumentu.
Tutaj dla przyk?adu da?em mu za zadanie stworzenia skryptu kt?ry tworzy marker. Po wej?ciu do markera posta? zostaje teleportowana w inne miejsce. Dodatkowo chcia?em ?eby po wej?ciu do markera posta? zosta?a zamro?ona i obraz zosta? zaciemniony, a po teleportacji obraz zosta? rozja?niony natomiast sama kamera zosta?a ustawiona zaraz za postaci? i posta? ?eby zosta?a odmro?ona.
Przyk?ad owego kodu
[code]local markerX, markerY, markerZ = 2457.61035, -1658.38782, 12.31438 -- koordynaty markera
local markerRozmiar = 2 -- rozmiar markera
local celX, celY, celZ = 2355.60913, -1659.38721, 12.79288 -- koordynaty celu teleportacji
local kameraSciemnienie = 2000 -- czas w milisekundach przez jaki kamera ma by? ?ciemniona
local kameraOdmrozenie = 2000 -- czas w milisekundach przez jaki kamera ma by? rozja?niona
local marker = createMarker(markerX, markerY, markerZ, "cylinder", markerRozmiar)
function teleportGracza(gracz)
if isElementWithinMarker(gracz, marker) then -- sprawdzenie czy gracz jest w ?rodku markera
if not isPedInVehicle(gracz) then -- sprawdzenie czy gracz jest w poje?dzie
fadeCamera(gracz, false, kamer...
--System VIP wykonany przez Tysiek <mail:[email protected]>
--Dla projektu 4FUN PSZ MTA.
--Zakaz u?ywania skryptu bez mojej zogody.
--Wszystkie prawa zastrze?one.
--premia
-- Kamizelka i zdrowie
function kamizelka(plr,cmd,...)
local account = getPlayerAccount(plr)
local accname = getAccountName(account)
if isObjectInACLGroup("user."..accname, aclGetGroup("VIP")) then
setPedArmor(plr, 100)
outputChatBox("[4FuN VIP] U?y?es kamizelki!", plr, 171, 207, 0)
end
end
addCommandHandler("viparmor",kamizelka)
function uleczanie(plr,cmd,...)
local account = getPlayerAccount(plr)
local accname = getAccountName(account)
if isObjectInACLGroup("user."..accname, aclGetGroup("VIP")) then
setElementHealth (plr, 100)
outputChatBox("[4FuN VIP] Uleczy?e? si?!", plr, 171, 207, 0)
end
end
addCommandHandler("viphealth",uleczanie)
--NameTag
addEventHandler ( 'onPlayerLogin', function(plr)
local account = getPlayerAccount(plr)
local accname = getAccountName(account)
if isObjectInACLGroup("user."..accname, aclGetGroup("VIP")) then
setElementData(plr,"premium")
outputChatBox("[4FuN VIP] Posiadasz aktywne konto VIP.", plr, 171, 207, 0)
setPlayerNametagColor(plr, 171, 207,...
Mam do was pro?b? napisa?em m?j pierwszy skrypt wszystko dzia?a lecz zastanawiam si? czy ten skrypt jest dobrze napisany czy dany kod jest po dobrej stronie ?