Witamy na GTAOnline Obecny czas to 2018-11-17, 20:55 Użytkowników: 76716
Strona główna | Użytkownicy | Grupy | Faq | Regulamin | Zaloguj

Poprzedni temat :: Następny temat
Skrypt - respienie peda
Autor Wiadomość

Trainer 





Informacje
Nick w MP: Trainer
Wiek: 20
Na forum: 12 dni
Posty: 6
Respekt: 50

Wysłany: 2018-11-06, 15:40   Skrypt - respienie peda



Witam.


Niedawno postanowiłem przesiąść się na LUA. Aż tak zielony w tym nie jestem, ale niestety nawyki z innych języków pozostały.

A więc. Chcę stworzyć skrypt, gdzie mamy 3 pedy, które respią się za pomocą pętli z tablicy.

Po zabiciu peda ma się pojawić marker, a gdy w niego wejdziemy otrzymamy 50000$.

Wszystko niby jest okej, respi pedy. Tylko po zabiciu pierwszego peda i wejściu w marker, gdy zabijemy resztę pedów, po prostu markery się nie pojawiają.

Marker ma się pojawiać w pozycji gdzie ped został zabity.

Chciałbym dostać wskazówkę, gdyż lepiej się uczyć próbując niż czekając na gotowe.

Ucieszyłbym się gdybym zobaczył gdzie robię błędy, także śmiało możecie pisać co źle robię i co mogę poprawić.

Kod:


local spawns = {
{-313.68054, 1873.28271, 42.28906},
{-344.61700, 1891.42993, 42.28906},
{-278.48669, 1872.72583, 42.28906}
}


for i,v in ipairs(spawns) do
ped = createPed(127, v[1], v[2], v[3])
setElementHealth(ped, 200);

function died(plr)

local x,y,z = getElementPosition(ped)
local markercash = createMarker(x,y,z -0.7,"cylinder",1,255,0,0)
destroyElement(ped)

addEventHandler("onMarkerHit", markercash, function(plr)
givePlayerMoney(plr,50000)
destroyElement(markercash)
end)
end
addEventHandler("onPedWasted", ped, died)
end



Postaw piwo autorowi tego posta
 

CjPomarancza 
LUA CJ





Informacje
Wiek: 20
Na forum: 428 dni
Posty: 91
Piwa: 11
Respekt: 50

Wysłany: 2018-11-06, 18:06   




local spawns = { 
{-313.680541873.2827142.28906}, 
{-344.617001891.4299342.28906}, 
{-278.486691872.7258342.28906} 
} 


for i,v in ipairs(spawns) do 
ped createPed(127v[1], v[2], v[3]) 
setElementData(ped"peds_from_this_script"truesetElementHealth(ped200); 
end

function died(ped) 
if getElementData(source"peds_from_this_script"then

local x,y,getElementPosition(sourcelocal markercash createMarker(x,y,-0.7,"cylinder",1,255,0,0destroyElement(sourceaddEventHandler("onMarkerHit"markercash, function(plrgivePlayerMoney(plr,50000destroyElement(markercashendend
end 
addEventHandler("onPedWasted"rootdied


pewnie mozna to zrobic zeby zamiast w addEventHandler arg. root dac wlasnie okreslonego peda i chcialem to zrobic zeby nazywac zmienne pedow w inny sposob, tj. ped1, ped2 (ped i klucz tabeli) ale nie pamietam jak sie to robi a nie chcialo mi sie sprawdzac

teraz krotkie objasnienie:

dzialo sie tak, gdyz petla nadpisywala sobie zmienna ped i po skonczeniu petli miala ona wartosc ostatniego peda w tabeli, dlatego tylko po zabiciu jego to dzialalo

dla kazdego peda ktory sie zrespi z tabeli nadaje elementdate by rozroznic, czy to ped ten czy moze jakis inny

dla
Więcej informacji znajdziesz w Wikipedii MTA:

onPedWasted
source == ped ktory zostal zabity, dlatego uzylem source

Sorki ze nie ma wskazowki ale po prostu nie wiedzialem jak to sensownie wytlumaczyc by ktokolwiek to zrozumial :)

Licze na piwko :)

_________________
noobek

Pomogłem? Doceń mnie i postaw :piwo: :)
  
Postaw piwo autorowi tego posta
 
Więcej szczegółów
Wystawiono 1 piw(a):
Trainer

Trainer 





Informacje
Nick w MP: Trainer
Wiek: 20
Na forum: 12 dni
Posty: 6
Respekt: 50

Wysłany: 2018-11-06, 20:00   



Dziękuję z całego serca :)

Postaw piwo autorowi tego posta
 
Tagi: skrypt :: respienie :: peda
Anonymous



Dołaczył: Wczoraj 0:00
Posty: 1
Skad: google.com


Anonymous Koniecznie zajrzyj na:








Wyświetl posty z ostatnich:   
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
Wersja do druku

Skocz do:  


phpBB by Przemo modified by xXx 2003-2016

Template GTAONLINE created by gtaonline.pl



Strona wygenerowana w 0,17 sekundy. Zapytań do SQL: 18