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

Wysłany: 2016-01-27, 17:42


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

Witam, jak zrobi? skrypt na mechanika chodzi mi tylko o sprawdzanie w markerze czy pojazd jest w 2 markerze

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 17:57


mlodasnygo







Wiek: 16
Na forum: 3973 dni
Posty: 205

Piwa: 518

Respekt: 161,8
Respekt: 161,8Respekt: 161,8

Za ma?o opisa?e?, ale ColshapeEditor powinien pom?c. :)

Podpis
600 dni - 10 marca 2017
:piwo: 500 piw :piwo: - 10 marca 2017
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 22:54


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

Ale mi pomog?e? chodzi mi poprostu o takie co? jak mechanik ?e stoj?c w 1 robisz w 2 np fixa dla 1 markera w kt?rym stoi pojazd

[ Dodano: 2016-01-27, 22:55 ]
chcem funkcji do zrobinia tego ewentualnie kawa?ek kodu jak kto? jest tak mi?y :p

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 22:55


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%

Więcej informacji znajdziesz w Wikipedii MTA:

isElementWithinMarker


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 22:59


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

A lepiej robi? na marker czy ColSphere

[ Dodano: 2016-01-27, 23:00 ]
To gdzie ma sta? pojazd

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 23:00


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
serek123, markery s? prostsze, mniej wi?cej nie ma r??nicy, r??ni si? jedynie kszta?tami, marker to marker - okr?g?y, tyle, colshape'y mo?esz tworzy? r??ne, od prostopad?o?cian?w do walc?w.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 23:02


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

Aha dzi?ki narazie nie zamykaj jak bd mia? jaki? b?ad to napisze tylko nie dawajcie mi koledzy gotowca tylko gdzie mam b??d bo chcem si? czego? nauczy?

[ Dodano: 2016-01-27, 23:30 ]
Wi?c tak DestroY, napisa?em co? takiego ale naprawia? moge poza ma?ym markerem wiem ?e musze gdzie? doda? not chyba ale nwm gdzie oto kod nie dawaj gotowca tylko powiedz gdzie b??d


local maly createMarker(-1989.0,88.5,27.0"cylinder"125525525550)
local duzy createMarker(-1995.4,89.2,27.0"cylinder"525525525550)

function marker2(plr)
    if isElementWithinMarker (plrmalythen
    else
    outputChatBox("Musisz sta? w markerze aby naprawi? auto."player25500)
    end
            for kv in ipairs(getElementsByType("vehicle")) do
            if isElementWithinMarker vduzy then
                if isPedInVehicle plr then
                end
            fixVehicle(v)
            outputChatBox("Naprawi??? pojazd"plr)
            end
        end
end
addCommandHandler("fix"marker2)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 23:44


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
serek123, nie do ko?ca taka kolejno??. Podam Ci troch? moim zdaniem ?atwiejsz? form?


if not isElementWithinMarker (plrmalythen 
outputChatBox("Musisz sta? w markerze aby naprawi? auto."player25500)
return end


Je?eli nie b?dzie w markerze funkcja si? zatrzymuje, nie trzeba dalej jakich? end?w ani nic.

Druga sprawa, p?tla na pojazdy jest nie optymalna w tym przypadku


Więcej informacji znajdziesz w Wikipedii MTA:

getElementsWithinMarker

Funkcje oznaczone jako "Usefull functions" musisz doda? do kodu, s? stworzone przez graczy, nie developer?w.


Tutaj jest edytowana, u?yj tej zamiast tej z wiki, edytowana specjalnie na twoje potrzeby - zwr?ci jedynie pojazdy.











Teraz tak, gdy pobierzesz te elementy sprawdzasz ile ich jest,

Jak sprawdzi? ? Dodajesz "krzaczek" przed zmienn? w kt?rej przechowasz tabel?.


pojazdy getElementsWithinMarker(marker)
ilosc_pojazdow #pojazdy


P??niej sprawdzasz ile ich jest, najpro?ciej w ten spos?b


ilosc_pojazdow ~= 1


Wykona to si? tylko wtedy gdy b?dzie ilo?? pojazd?w w markerze inna od 1, czyli 0, 2,3,4...

Tutaj mo?e przyda? Ci si? podana na pocz?tku forma "ko?czenia funkcji", gdy b?d? np 2 pojazdy.

I teraz sama naprawa - nie u?yjesz tu p?tli. Z racji, ?e w tabeli przechowywanej pod zmienn? b?dzie tylko 1 warto?? jest to bezsensowne

U?yj czego? takiego


fivVehicle(pojazdy[1]) --pobiera to 1 warto?? z tabeli przechowywanej pod zmiennpojazdy







Mam nadziej?, ?e jako? to wyt?umaczy?em, swoj? drog? wyczerpuj?cy post xD

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-27, 23:51


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

Mam db z tym

if isElementWithinMarker pojazdyduzy then


db
bad argument @ 'isElementWithinMarker' [Expected element at argument 1, got boolean]

Ostatnio zmieniony przez serek123 2016-01-28, 00:07, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:05


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
serek123, ten kod z spoilera wrzucasz gdzies np na koniec pliku (poza funkcjami itp), uzywasz go jak normalnej funkcji i wlasnie na tej podstawie znajdziesz pojazd, ktory jest w markerze. Post?puj zgodnie z instrukcjami, jak wszystko zrobisz dobrze powinno lata? elegancko.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:09


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

takie db mam z t? linijk?


if isElementWithinMarker pojazdyduzy then



db
bad argument @ 'isElementWithinMarker' [Expected element at argument 1, got boolean]

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:10


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%
serek123, poka? ca?y kod, bedzie znaczenie ?atwiej.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:10


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70


local maly createMarker(-1989.0,88.5,27.0"cylinder"125525525550)
local duzy createMarker(-1995.4,89.2,27.0"cylinder"525525525550)

function getElementsWithinMarker(marker)
    if (not isElement(marker) or getElementType(marker) ~= "marker"then
        return false
    end
    markerColShape getElementColShape(marker)
    elements getElementsWithinColShape(markerColShape"vehicle")
    return elements
end

function marker2(plrpojazdy)
    if not isElementWithinMarker (plrmalythen 
    outputChatBox("Musisz sta? w markerze aby naprawi? auto."player25500)
    return end
        pojazdy getElementsWithinMarker(marker)
        ilosc_pojazdow 1
            if isElementWithinMarker pojazdyduzy then
            fixVehicle(pojazdy[1])
            outputChatBox("Naprawi?e? pojazd."plr)
            else
            end
end
addCommandHandler("fix"marker2)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:14


#404







Wiek: 26
Na forum: 4772 dni
Posty: 1438

Piwa: 2512

Respekt: 833,5
Respekt: 833,5Respekt: 833,5

Ostrzeżeń: 60%

if ilosc_pojazdow ~= 1 then
outputChatBox("Za duzo lub za malo"plr)
return end
            if isElementWithinMarker pojazdy[1], duzy then



A w funkcji, getElementsWithinMarker w nawiasie podajesz marker, kt?ry ma sprawdzi? - czyli zmienna od duzego markera.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-28, 00:17


serek123

Lua, MySql, Sql






Wiek: 27
Na forum: 4334 dni
Posty: 217
Nick w MP: Serek.

Piwa: 374

Respekt: 70

Tak ma to wygl?da? ?


function marker2(plrpojazdy)
    if not isElementWithinMarker (plrmalythen 
    outputChatBox("Musisz sta? w markerze aby naprawi? auto."player25500)
    return end
        pojazdy getElementsWithinMarker(marker)
        if ilosc_pojazdow ~= 1 then
        outputChatBox("Za duzo lub za malo"plr)
        return end
            if isElementWithinMarker pojazdy[1], duzy then
            fixVehicle(pojazdy[1])
            outputChatBox("Naprawi?e? pojazd."plr)
            else
            end
end
addCommandHandler("fix"marker2)


Postaw piwo autorowi tego posta
 

 
Tagi: sprawdzanie :: czy :: pojazd :: jest :: markerze
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

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