Wysłany: 2014-12-24, 22:06
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
Witam.
Mam problem z zadeklarowaniem parametru w funkcji :
-- param.
Mianowicie param to mia?by by? parametr komendy, czyli :
/komenda (PARAM) np. /komenda auto /komenda motor, oboj?tnie co by to by?o.
Oto fragment kodu :
local t = string . explode ( param )
local function czy_istnieje ( player , param )
for _ , v in ipairs ( miejsca_docelowe ) do
if string . find ( tostring ( t [ 1 ])) ~= v [ 7 ] then return false end
end
end
To jest tylko urywek kodu i jedna funkcja, obawiam si?, ?e wi?cej jest niepotrzebne..
Czy dobrze jest zadeklarowany parametr "param" czy nie?
Nie mam poj?cia dalej co tutaj zrobi?.
Prosz? o pomoc, z g?ry dzi?ki.
Wysłany: 2014-12-24, 23:22
Grzegorz00
Wiek: 29 Na forum: 4449 dni Posty: 10
Piwa : 102
H5N1:
MTA zwraca rzeczy wpisane po komendzie jako oddzielnie argumenty 'wpisane w funkcje'. Dlatego najlepiej zrobi? tak:
Kod: function cmd (commandName,...)
local args = {...}
end
Args to zmienna w postaci tabeli zawieraj?ca wszystkie argumenty wpisane po komendzie. Je?li chcesz mie? np. tekst wpisany po komendzie, to u?ywasz table.concat (args," "). Dlaczego tak, a nie jak w sampie to Ci nie wyt?umacz?, gdy? styczno?? z pawn mia?em praktycznie ?adn?.
Wysłany: 2014-12-25, 00:28
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
Nie rozumiem... moglbys mi to jako? technik? lopatologiczna wytlumaczyc xd?
Podpis
Jedyny kontakt ze mną to PW forum
Kod:
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Wysłany: 2014-12-25, 03:33
MeeShuffle
Programista/Grafik
Wiek: 32 Na forum: 4395 dni Posty: 2758
Nick w MP: Shuffle
Piwa : 8575
Chodzi Ci o zadeklarowanie param?
Wysłany: 2014-12-25, 04:32
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
Tak, dokladnie.
Podpis
Jedyny kontakt ze mną to PW forum
Kod:
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Wysłany: 2014-12-25, 11:24
MeeShuffle
Programista/Grafik
Wiek: 32 Na forum: 4395 dni Posty: 2758
Nick w MP: Shuffle
Piwa : 8575
Ale nie widz? nigdzie u Ciebie w funkcji czy_istnieje u?ytego param.
Wysłany: 2014-12-25, 14:00
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
Czyli, jak komenda ma mie? tylko 1 parametr, to nie musz? u?ywa? string.explode, tylko sprowadzi? do stringa parametr funkcji 'param' ?
Podpis
Jedyny kontakt ze mną to PW forum
Kod:
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Wysłany: 2014-12-25, 14:25
MeeShuffle
Programista/Grafik
Wiek: 32 Na forum: 4395 dni Posty: 2758
Nick w MP: Shuffle
Piwa : 8575
Chcesz u?yc argumentu co? w tym stylu ? :
/komenda cos tam
czy
/komenda cos
?
Wysłany: 2014-12-25, 15:15
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
To ma byc skrypt na 'taxi', je?eli gracz siedzi z przodu jako pasa?er, wpisuje /taxi Garcia albo /taxi Angel pine
Zatem param to jest 1 parametr komendy a ifem podanym na samej g?rze, stara?em si? por?wna? 1 parametr, czy jest lub nie jest r?wny v[7], kt?re jest r?wne w tabeli stringowi z nazw? miejscowo?ci, no czyli Doherty, Bayside itd.
Dlatego w sumie tutaj te? si? rodzi pytanie, czy do tego jest potrzebne string.find, czy po prostu tostring(param) ~= v[7].
Podpis
Jedyny kontakt ze mną to PW forum
Kod:
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Wysłany: 2014-12-25, 15:33
MeeShuffle
Programista/Grafik
Wiek: 32 Na forum: 4395 dni Posty: 2758
Nick w MP: Shuffle
Piwa : 8575
Je?li dobrze rozumiem, chcesz u?yc paru s??w umieszczonych w 1 argumencie :
addCommandHandler ( "taxi" , function ( plr , cmd , ... )
msg = table . concat ( {...}, " " )
outputChatBox ( msg , plr )
end )
Wysłany: 2014-12-25, 16:40
Jurandovsky
Kurdebele
Wiek: 17 Na forum: 4838 dni Posty: 915
Piwa : 2697
Do zamkni?cia... Spr?buj? to ju? jako? sam rozwi?za?.
Podpis
Jedyny kontakt ze mną to PW forum
Kod:
local noobs = getElementsByTitle("player", "Programista LUA")
for k, v in ipairs(noobs) do
outputChatBox("Bez mózgu jest użytkownik o nicku: "..getPlayerName(v), root)
destroyElement(v)
end
Tagi: parametr :: funkcji
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: