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

Wysłany: 2018-07-31, 12:31


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

Cze??, tworz? sobie z nud?w drug? wersj? mojego starego skryptu, lecz tutaj natkn??em si? na problem, poniewa? owszem - tworzy si? d?wi?k w ka?dym poje?dzie osobno, lecz dzia?a on poprawnie tylko w ostatnio stworzonym poje?dzie/tam gdzie ostatnio zosta?a w??czona syrena. W wcze?niejszym poje?dzie ona si? buguje i robi si? "podw?jna", co za tym idzie jednej nie da si? wy??czy?.

Przychodz? do was z pytaniem jak sobie poradzi? z tym problemem, aby d?wi?k by? indywidualny dla ka?dego pojazdu.


addEvent("toggleSiren"true)
addEventHandler("toggleSiren"root, function()
    if getPedOccupiedVehicle(localPlayerthen
        local vehicle getPedOccupiedVehicle(localPlayer)
        if not getElementData(vehicle"sirenStatus") == true then
            setElementData(vehicle"sirenStatus"true)
            local x,y,getElementPosition(vehicle)
            siren playSound3D("/sounds/siren.mp3"x,y,ztrue)
            setSoundVolume(siren0.8)
            setSoundMaxDistance(siren100)
            attachElements(sirenvehicle000)
        elseif getElementData(vehicle"sirenStatus") == true then
            setElementData(vehicle"sirenStatus"false)
            destroyElement(siren)
        end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-16, 18:40


Atroth







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

Piwa: 4808

Respekt: 540
Respekt: 540

vNeXxuS, nie potrafi? zrozumie? Twojego problemu. Mo?esz ja?niej?

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
 

 
Wysłany: 2018-08-17, 11:15


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

"Atroth" napisał/a:

vNeXxuS, nie potrafi? zrozumie? Twojego problemu. Mo?esz ja?niej?

Chodzi o to, ?e w przypadku gdy..

..w??cze syrene w jednym poje?dzie to mog? j? normalnie wy??czy? - wszystko ok.

..lecz gdy np. w??cze w jednym, oraz nie wy??czaj?c w drugim - moge wy??czy? tylko JEDEN d?wi?k, a gdy chce wy??czy? w tym pierwszym poje?dzie to syrena si? buguje i tworzy si? druga.

Nie wiem czy wyja?ni?em to ja?niej, ale inaczej si? chyba nie da.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-17, 11:31


Atroth







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

Piwa: 4808

Respekt: 540
Respekt: 540

vNeXxuS, do g?owy przysz?o mi takie rozwi?zanie: w??czanie syreny da?bym pod bind po stronie serwera. Stamt?d wykona?bym trigger:


triggerClientEvent(root,"event",player);


( Powinien dzia?a? :oops: )

Po stronie clienta:


sirens = {}; 

addEventHandler("event",root,function()
local vehicle getPedOccupiedVehicle(localPlayer);
if not getElementData(vehicle,"siren"then 
local id #sirens + 1; 
sirens[id] = playSound3D(...); -- uzupelnij
setElementData(vehicle,"siren",id,false);
else 
local id getElementData(vehicle,"siren");
destroyElement(sirens[id]); 
sirens[id] = nil;
setElementData(vehicle,"siren",false,false);
end 
end)


W tabeli b?d? przechowywane wszystkie d?wi?ki. Skrypt sprawdzi czy istnieje elementData "siren" - je?eli tak usunie d?wi?k z danej tabeli. My?l?, ?e to powinno rozwi?za? problem.

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
 

 
Wysłany: 2018-08-18, 12:46


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

"Atroth" napisał/a:

vNeXxuS, do g?owy przysz?o mi takie rozwi?zanie: w??czanie syreny da?bym pod bind po stronie serwera. Stamt?d wykona?bym trigger:


triggerClientEvent(root,"event",player);


( Powinien dzia?a? :oops: )

Po stronie clienta:


sirens = {}; 

addEventHandler("event",root,function()
local vehicle getPedOccupiedVehicle(localPlayer);
if not getElementData(vehicle,"siren"then 
local id #sirens + 1; 
sirens[id] = playSound3D(...); -- uzupelnij
setElementData(vehicle,"siren",id,false);
else 
local id getElementData(vehicle,"siren");
destroyElement(sirens[id]); 
sirens[id] = nil;
setElementData(vehicle,"siren",false,false);
end 
end)


W tabeli b?d? przechowywane wszystkie d?wi?ki. Skrypt sprawdzi czy istnieje elementData "siren" - je?eli tak usunie d?wi?k z danej tabeli. My?l?, ?e to powinno rozwi?za? problem.


Dzia?a, dzi?kuje - lecz podobny problem jest w przypadku ?wiate?.
Kod po stronie Clienta wygl?da tak:

function selected()
    local selected guiGridListGetSelectedItem(gridlist)
    local vehicle getPedOccupiedVehicle(localPlayer)
    if selected == 0 then
        triggerServerEvent("firstLights"localPlayervehiclevehicleid)
        triggerServerEvent("checkSiren"localPlayervehiclevehicleid)
    elseif selected == 1 then
        triggerServerEvent("firstLights"localPlayervehiclevehicleid)
    elseif selected == 2 then
        triggerServerEvent("secondLights"localPlayervehiclevehicleid)
        triggerServerEvent("checkSiren"localPlayervehiclevehicleid)
    elseif selected == 3 then
        triggerServerEvent("secondLights"localPlayervehiclevehicleid)
    elseif selected == 4 then
        triggerServerEvent("thirdLights"localPlayervehiclevehicleid)
        triggerServerEvent("checkSiren"localPlayervehiclevehicleid)
    elseif selected == 5 then
        triggerServerEvent("thirdLights"localPlayervehiclevehicleid)
    elseif selected == 7 then
        triggerServerEvent("toggleBelt"localPlayervehiclevehicleid)
        triggerServerEvent("checkSiren"localPlayervehiclevehicleid)
    elseif selected == 8 then
        triggerServerEvent("toggleBelt"localPlayervehiclevehicleid)
    end
end


I gdy w??cze w dw?ch pojazdach ?wiat?a, to zn?w w tym pierwszym nie moge ich wy??czy?, tylko si? odpalaj? drugi raz, przez co s? szybsze i ich si? ju? nie da w og?le wy??czy?, w drugim poje?dzie owszem.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-20, 17:00


Atroth







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

Piwa: 4808

Respekt: 540
Respekt: 540

vNeXxuS, to samo co poprzednio - tabela powinna rozwi?za? problem.

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
 

 
Wysłany: 2018-08-21, 17:22


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

"Atroth" napisał/a:

vNeXxuS, to samo co poprzednio - tabela powinna rozwi?za? problem.

A b?dzie jaka? du?a r??nica lub/i przeszkoda je?li u?yje tego po stronie S-Side? Bo tam g??wnie w??czaj? si? ?wiat?a.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-21, 17:58


Atroth







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

Piwa: 4808

Respekt: 540
Respekt: 540

vNeXxuS, chodzi Ci o ?wiat?a w poje?dzie w sensie to?


Więcej informacji znajdziesz w Wikipedii MTA:

setVehicleLightState


Czy o "mryga?ki" :-?

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
 

 
Wysłany: 2018-08-21, 18:12


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

"Atroth" napisał/a:

vNeXxuS, chodzi Ci o ?wiat?a w poje?dzie w sensie to?


Więcej informacji znajdziesz w Wikipedii MTA:

setVehicleLightState


Czy o "mryga?ki" :-?

No s? to "mryga?ki" zrobione za pomoc? setVehicleLightState.
Stworzy?em to samo co z d?wi?kiem po stronie S-Side i niby dzia?a.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2018-08-21, 18:18


Atroth







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

Piwa: 4808

Respekt: 540
Respekt: 540

vNeXxuS, je?li chcesz aby co chwile si? w??cza?y i wy??cza?y i mie? synchronizacj? to mo?esz po s-side. Chyba :oops: Nigdy takiego systemu nie robi?em i nie mia?em potrzeby.

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
 

 
Wysłany: 2018-08-21, 21:15


Nexisten

Moderator






Wiek: 22
Na forum: 4108 dni
Posty: 551
Nick w MP: Nexisten

Piwa: 1479

Respekt: 287,3
Respekt: 287,3Respekt: 287,3Respekt: 287,3

"Atroth" napisał/a:

vNeXxuS, je?li chcesz aby co chwile si? w??cza?y i wy??cza?y i mie? synchronizacj? to mo?esz po s-side. Chyba :oops: Nigdy takiego systemu nie robi?em i nie mia?em potrzeby.

W?a?nie mam to po S-Side i dzia?a w miar?, dzi?kuje Ci za pomoc!

Postaw piwo autorowi tego posta
 

 
Tagi: dźwięk :: dla :: oddzielnych :: pojazdów
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Dźwięk dla oddzielnych pojazdów 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