Sziasztok! A mai napon unatkoztam és készítettem egy scriptet. Igazából ez csak látványosság, de valakinek hátha hasznos lesz, akár tanulás szempontjából, akár szerverkészítéshez. A script annyit tesz hogy ha egy fegyverrel lősz akkor egy szürkés-fehéres csíkot húz a fegyver csövétől addig a pontig ameddig eljutott a golyó. Ezzel egy olyan effektet szerettem volna szimulálni mintha a golyó egy füstcsíkot hagyna maga után, példaképp lásd: GTA V. Pár másodperc múlva a csík el is fog tűnni. Remélem segítettem valakinek vele és hasznát veszitek! Csak egy kliens oldalból áll:
local alphaHalvanyulas = 150; -- Erről az értékről kezdődik a halványulás. Maximum érték: 255 local alphaHalvanyulasInnentol = alphaHalvanyulas; local halvanyulasIdo = 250; -- Állítsd annyira amennyi ideig szeretnéd hogy teljesen láthatóból láthatatlanba menjen (255 -> 0). Miliszekundum. local halvanyulasIdokoz = 50; -- 50 ms minimum. Kevesebb érték = Lágyabb halványulás local hanyszorFussonLe = (halvanyulasIdo/halvanyulasIdokoz); local halvanyulasNovekedese = (alphaHalvanyulasInnentol/hanyszorFussonLe); function onJatekosLoves(w,a,aC,hX,hY,hZ,hE) local sx,sy,sz = getPedWeaponMuzzlePosition(source) Pozicio = {sx,sy,sz,hX,hY,hZ} -- Elmentjük egy táblázatba hogy később is tudjuk használni egy másik funkcióban, jelen esetben az \"onRender\" nevű funkcióban. removeEventHandler(\"onClientRender\", root, onRender) addEventHandler(\"onClientRender\",root,onRender) alphaKezeles() setTimer(function() removeEventHandler(\"onClientRender\", root, onRender) end, halvanyulasIdo+50, 1); end addEventHandler(\"onClientPlayerWeaponFire\",root,onJatekosLoves); function onRender() if Pozicio then local startX,startY,startZ,endX,endY,endZ = unpack(Pozicio) dxDrawLine3D( startX,startY,startZ,endX,endY,endZ,tocolor(255,255,255,alphaHalvanyulas),1.025) end end function alphaKezeles() alphaHalvanyulas = 150; setTimer(function() alphaHalvanyulas = alphaHalvanyulas-halvanyulasNovekedese end, halvanyulasIdokoz, hanyszorFussonLe); end
Frissítettem a kódot, volt egy kis hiba benne ami miatt a debugscript-ben hibát spamelt. Ha valaki használja ezt a scriptet megkérném hogy frissítse, azaz másolja ki újra és írja felül az előzővel!