Narutimmy Posted May 4, 2015 Share Posted May 4, 2015 Hola tengo un script que cuando le disparas a un zombie, auto o persona genera una X en donde disparastes en si para avisarte que si atinastes el tiro.. el problema es que esta mal... solo comprueba tu lado osea que tu le ayas dado, entonces queria editarlo para que al disparar la X no salga osea verifique si le distes... intente con un element data que cuando recibas daño te ponga el data y lo verifique con la otra mitad... nose si me explico pero no funciona... alguien me ayuda? ---------------------------------------------------------------------- ------- Script: ------------- Visit: --------------- Made in ------- ------- 7rust-Dev ---------7rust.bplaced.de----------- GERMANY ------- ---------------------------------------------------------------------- local screenX, screenY local drawTimer local isDrawing local sound function drawHitMarker() dxDrawImage(screenX-16, screenY-16, 32, 32, "hitmarker.png") end function fireFunc(weapon, ammo, ammoInClip, hitX, hitY, hitZ, hitElement) if hitElement then if (getElementType(hitElement)=="player" and getElementData(hitElement,"Hit") == true) or getElementType(hitElement)=="ped" or getElementType(hitElement)=="vehicle" then screenX, screenY = getScreenFromWorldPosition(hitX, hitY, hitZ) if not screenX then return end if isDrawing then return end isDrawing = true local sound = playSound("hitmarker-sound.wav") setSoundVolume( sound , 0.3) addEventHandler("onClientRender", root, drawHitMarker) if drawTimer and isTimer(drawTimer) then killTimer(drawTimer) end drawTimer = setTimer(function() isDrawing = false removeEventHandler("onClientRender", root, drawHitMarker) end, 500, 1) end end end--func addEventHandler("onClientPlayerWeaponFire", localPlayer, fireFunc) ---------------------------------------------------------------------- ------- Script: ------------- Visit: --------------- Made in ------- ------- 7rust-Dev ---------7rust.bplaced.de----------- GERMANY ------- ---------------------------------------------------------------------- function get_hit() ---fadeCamera(false,1,255,0,0) local hit_sound=playSound("hitmarker-sound.wav") setSoundVolume(hit_sound,0.2) setElementData(localPlayer,"Hit",true) function cam() setElementData(localPlayer,"Hit",false) end setTimer(cam,150,1) end addEventHandler("onClientPlayerDamage",getLocalPlayer(),get_hit) ---------------------------------------------------------------------- ------- Script: ------------- Visit: --------------- Made in ------- ------- 7rust-Dev ---------7rust.bplaced.de----------- GERMANY ------- ---------------------------------------------------------------------- Link to comment
alex17 Posted May 4, 2015 Share Posted May 4, 2015 mm no te entendí nada podrias explicarte mejor ? Link to comment
Narutimmy Posted May 4, 2015 Author Share Posted May 4, 2015 mm no te entendí nada podrias explicarte mejor ? Explico... cuando yo disparo se ejecuta "onClientPlayerWeaponFire" y si esa bala pega en un ped, user o auto me genera esta imagen en el punto del impacto " dxDrawImage(screenX-16, screenY-16, 32, 32, "hitmarker.png")" Ahi todo bien, el problema esta que por diferencias de ping yo puedo por ejemplo dispararte pero tu no recibes la bala, el script no verifica eso, lo que yo quiero es que algo asi como con un IF te pregunte ati si recibistes daño antes de que se genera la imagen... osea syncronizar las 2 partes. Esto poreque en ocaciones users les disparan a otros y al ver la X piensan que asetaron y no es cierto entonces se quejan de hack o abuser. Link to comment
Tomas Posted May 4, 2015 Share Posted May 4, 2015 Para eso tendrás que usar server-side, es lo único que se me ocurre. Link to comment
MTA Team 0xCiBeR Posted May 4, 2015 MTA Team Share Posted May 4, 2015 Como dice tomas, un client-side -> server-side quizás utilizando el evento onClientPlayerDamage Link to comment
Narutimmy Posted May 6, 2015 Author Share Posted May 6, 2015 Como dice tomas, un client-side -> server-side quizás utilizando el evento onClientPlayerDamage Algun ejemplo? Link to comment
Recommended Posts