Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2017-09-21, 18:37


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

Witam, jestem pocz?tkuj?cym w LUA i chce si? uczy? tego j?zyka. Kilka rzeczy uda?o mi si? samodzielnie oskryptowa?, ale chcia?em spr?bowa? czego? trudniejszego - napisania pracy na serwer RPG. Moim pierwszym pomys?em by?a praca Maszynisty Poci?gu, wi?c do tego si? zabra?em. Zacz??em pisa? skrypt, ale mam pewien problem.
Ot?? potrzebuje wiedzie?, jak zrobi?, by marker by? widoczny dopiero po wykonaniu jakiej? funkcji (np. ?eby pierwszy marker tworzy? si? dopiero po rozpocz?ciu pracy, ale m?g?by? dalej wykorzystywany). Zrobi?em co? takiego, doda?em tworzenie markeru (nie local, chocia? to te? pr?bowa?em) do linijki z funkcj? rozpoczynania pracy, ale potem dodaj?c addEventHandler("onMarkerHit", skrypt nie widzi tego markera. Aktualnie skrypt wygl?da tak, chodzi o pierwszyMarker = createMarker... oraz addEventHandler("onMarkerHit", pierwszyMarker, drugiMarkerFunkcja)


local startMarker createMarker(-1951.04160.8326.28"cylinder"2000240)

local bsVehicle = {}
local bsVehicleBlip = {}
local bsJobMarker = {}
local bsJobBlip = {}


function startpraca(thePlayer)
setElementData(thePlayer,"AdvLife","maszynista")
bsVehicle[thePlayer] = createVehicle(570,-1947.27159.5125.72)

    outputChatBox("Witaj w pracy Maszynisty! Uruchom silnik, i pod??aj za punktami, przez niebieskie przeje?dzaj, a na czerwonych zatrzymuj si? na minimum 5 sekund."thePlayer)


setElementData(bsVehicle[thePlayer],"maszynista"getPlayerName(thePlayer))
setElementData(bsVehicle[thePlayer],"Maszynistapraca","pociag")
warpPedIntoVehicle(thePlayer,bsVehicle[thePlayer])


pierwszyMarker createMarker(-1939.23209.4223.45"checkpoint"2.500250240)
end

function drugiMarkerFunkcja(thePlayer)

drugiMarker createMarker(-1766.72391.580.24"checkpoint"2.500250240)

givePlayerMoney(thePlayer10)
end

addEventHandler("onMarkerHit"startMarkerstartpraca)
]addEventHandler("onMarkerHit"pierwszyMarkerdrugiMarkerFunkcja)



Po wpisaniu /debugscript 3 i restarcie skryptu pojawia si?:
WARNING: [prace]/praca_pociag/skrypt.lua:32: Bad argument @ 'addEventHandler' [Expected element at argument 2, got nil]


Za pomoc stawiam piwko :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:07


Atroth







Wiek: 23
Na forum: 3677 dni
Posty: 1089
Nick w MP: Atroth

Piwa: 4808

Respekt: 540
Respekt: 540


addEventHandler("onMarkerHit",root,function(el,dim)
if getElementType(el) == "player" then else return end
if source == pierwszyMarker then
--cos
end)


Przyk?ad. Sprawdza czy ?r?d?em jest marker tworzony z jakiej? funkcji czy co?. Mo?esz po prostu da? resourceRoot zamiast root, wtedy b?dzie si? to odnosi? tylko do tego zasobu.

Podpis

Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
CjPomarancza
Wysłany: 2017-09-21, 19:15


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

Teraz z kolei wychodzi co? takiego


Podpis
Pomogłem? Doceń mnie i postaw :piwo: :)
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:22


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

]addEventHandler("onMarkerHit", pierwszyMarker, drugiMarkerFunkcja)
?le skopiowane? na pocz?tku jest ] no i to ?e w argumencie masz "thePlayer" nie oznacza ?e to jest gracz. Z wiki wiemy ?e ten parametr przyjmuje warto?? element. Czyli to jest pojazd, gracz, obiekt itp wi?c tutaj

givePlayerMoney(thePlayer10)

juz jest blad

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
CjPomarancza
Wysłany: 2017-09-21, 19:30


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

^ ?le skopiowane, przez przypadek musia?em wcisn??, w pliku lua tego nie ma.
Je?li marker nie by? dodany w funkcji tylko do samego pocz?tku, to z theplayer te? dzia?alo. Poprawione, nadal ten problem.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:33


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

to nie wiem jak mo?esz da? kas? funkcj? givePlayerMoney pojazdowi... daj na sam poczatek linijke
"local pierwszyMarker;"

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:39


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

Ale chodzi o to, ?e jak dam na sam pocz?tek local pierwszymarker to wszystko dzia?a, ale jest on widoczny ca?y czas, a nie po wej?ciu w pierwszy marker. No chyba, ?e jestem na tyle g?upi, ?e czego? nie rozumiem

Podpis
Pomogłem? Doceń mnie i postaw :piwo: :)
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:41


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

nie masz robi? "local pierwszyMarker = createMarker" tylko "local pierwszyMarker"

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:47


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

A dobra xD
Zrobi?em ten pierwszy marker, teraz w kt?rej linijce wpisa? jego w?a?ciwo?ci? :-?
(tak, jestem debilem)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 19:51


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466

to si? nazywa deklaracj?. o?wiadczasz ?e co? b?dzie w kodzie wi?c mo?esz robi? pod to funkcje i/lub eventy kt?re nie da?oby si? zrobi? bo skrypt nie wiedzia?by o co chodzi z t? nazw?. nic wi?cej nie zmieniaj. je?eli dalej nie dzia?a to daj db3

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 20:00


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

Kompletnie si? ju? pogubi?em w waszych wypowiedziach xD

local startMarker createMarker(-1951.04160.8326.28"cylinder"2000240)
local pierwszyMarker

local bsVehicle = {}
local bsVehicleBlip = {}
local bsJobMarker = {}
local bsJobBlip = {}


function startpraca(thePlayer)
setElementData(thePlayer,"AdvLife","maszynista")
bsVehicle[thePlayer] = createVehicle(570,-1947.27159.5125.72)

    outputChatBox("Witaj w pracy Maszynisty! Uruchom silnik, i pod??aj za punktami, przez niebieskie przeje?dzaj, a na czerwonych zatrzymuj si? na minimum 5 sekund."thePlayer)


setElementData(bsVehicle[thePlayer],"JobOwner"getPlayerName(thePlayer))
setElementData(bsVehicle[thePlayer],"AGJob","taxi")
warpPedIntoVehicle(thePlayer,bsVehicle[thePlayer])


pierwszyMarker createMarker(-1939.23209.4223.45"checkpoint"2.500250240)
end

function drugiMarkerFunkcja(thePlayer)

drugiMarker createMarker(-1766.72391.580.24"checkpoint"2.500250240)

givePlayerMoney(player10)
end

addEventHandler("onMarkerHit"startMarkerstartpraca)
addEventHandler("onMarkerHit"pierwszyMarkerdrugiMarkerFunkcja)

addEventHandler("onMarkerHit",root,function(el,dim)
if getElementType(el) == "player" then else return end
if source == pierwszyMarker then
outputChatBox("test")
end)



Aktualnie skrypt wygl?da tak, po wpisaniu /debugscript 3 pokazuje si? ERROR. Loading Script Failed [prace]/praca_pociagu/skrypt.lua:39: unexpected symbol near ')'

Podpis
Pomogłem? Doceń mnie i postaw :piwo: :)
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 20:04


amited







Wiek: 26
Na forum: 3714 dni
Posty: 1233
Nick w MP: Amited

Piwa: 512

Respekt: 466
Respekt: 466


local startMarker createMarker(-1951.04160.8326.28"cylinder"2000240)
local pierwszyMarker

local bsVehicle = {}
local bsVehicleBlip = {}
local bsJobMarker = {}
local bsJobBlip = {}


function startpraca(thePlayer)
setElementData(thePlayer,"AdvLife","maszynista")
bsVehicle[thePlayer] = createVehicle(570,-1947.27159.5125.72)

    outputChatBox("Witaj w pracy Maszynisty! Uruchom silnik, i pod??aj za punktami, przez niebieskie przeje?dzaj, a na czerwonych zatrzymuj si? na minimum 5 sekund."thePlayer)


setElementData(bsVehicle[thePlayer],"JobOwner"getPlayerName(thePlayer))
setElementData(bsVehicle[thePlayer],"AGJob","taxi")
warpPedIntoVehicle(thePlayer,bsVehicle[thePlayer])


pierwszyMarker createMarker(-1939.23209.4223.45"checkpoint"2.500250240)
end

function drugiMarkerFunkcja(thePlayer)

drugiMarker createMarker(-1766.72391.580.24"checkpoint"2.500250240)

givePlayerMoney(player10)
end

addEventHandler("onMarkerHit"startMarkerstartpraca)
addEventHandler("onMarkerHit"pierwszyMarkerdrugiMarkerFunkcja)

tak zostaw

Podpis
"amited" napisał/a:
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-21, 20:08


CjPomarancza

:-)






Wiek: 17
Na forum: 3183 dni
Posty: 90

Piwa: 12

Respekt: 60

Nie wiem co zrobi?e?, ale teraz praca startuje.
Z kolei teraz po wjechaniu w pierwszy marker nic si? nie dzieje. xD
Najlepiej jakby? m?g? wyt?umaczy? krok po kroku co i jak, jak co? takiego zrobi?. Chcia?bym aby skrypt po wjechaniu w blip dawa? okre?lon? kwot? pieniedzy, usuwa? ten marker i tworzy? nast?pny. Oraz pewnie potem b?d? mia? problem z kolejnym, czyli tym, by w pewnych punktach trzeba si? zatrzyma? na kilka sekund by dosta? pieni?dze i kontynuowa? prac?.

Podpis
Pomogłem? Doceń mnie i postaw :piwo: :)
Postaw piwo autorowi tego posta
 

 
Tagi: nie :: działa :: markerhit.
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Nie działa mi markerhit. Odpowiedz do tematu

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku