Narutimmy Posted July 18, 2016 Share Posted July 18, 2016 Buenas! , alguien recuerda el super golpe del gta sa? ese que mandaba el cuerpo a la mier** ? saben si se puede hacer en mta ya sea con puño o con un arma? Link to comment
Castillo Posted July 18, 2016 Share Posted July 18, 2016 Podrias intentar usar las funciones de velocidad ( getElementVelocity/setElementVelocity ). Link to comment
Simple0x47 Posted July 18, 2016 Share Posted July 18, 2016 Otra manera alternativa a lo que ha dicho Solid, trigeas una función que obtenga las coordenadas de la cámara con getCameraMatrix, después de ello obtienes el PED que ha sido golpeado, con ello obtienes su coordenada actual después de lo cual puedes emplear un interpolateBetweencon easing function Linear para llevar a cabo el cambio de las coordenadas del PED dañado a la coordenada enfocada con la cámara. Después de ello un setElementPosition para emplear las coordenadas generadas por InterpolateBetween así moviendo al ped. La velocidad con la que quieres que pase todo esto depende de ti Link to comment
Narutimmy Posted July 18, 2016 Author Share Posted July 18, 2016 Podrias intentar usar las funciones de velocidad ( getElementVelocity/setElementVelocity ). Probe al hacer esto, pero no me funciono, en ocaciones si desaparece el objetivo osea si lo habienta, pero no siempre, ademas la idea es que sea lanzado asia el lado contrario de la direccion de donde obtuvo el disparo como puedo hacerlo? -----EPIC DEATH HAMMER! function MegaHammer(attacker, weapon, bodypart, loss) local speedx, speedy, speedz = getElementVelocity (getLocalPlayer()) if getElementData(getLocalPlayer(),"ZonaSegura") == false then if weapon == 34 then if getElementData(attacker,"currentweapon_1") == "AWP Asiimov" then setElementVelocity(getLocalPlayer(), speedx, speedy+100, speedz) end end end end addEventHandler("onClientPlayerDamage", getLocalPlayer(), MegaHammer) addEventHandler("onClientPedDamage", getLocalPlayer(), MegaHammer) Link to comment
Narutimmy Posted July 19, 2016 Author Share Posted July 19, 2016 Con moveObject sería mejor.https://wiki.multitheftauto.com/wiki/MoveObject https://wiki.multitheftauto.com/wiki/Easing pero eso solo funciona en objetos que no? lo que quiero mover es personas y autos Link to comment
Alexs Posted July 19, 2016 Share Posted July 19, 2016 No leí el post, pero te dejo un enlace a un topic que supongo que es similar: https://forum.multitheftauto.com/viewtopic.php?f ... 4&p=425741 local power = 1 local powerUp = 0.5 addEventHandler("onClientPedDamage", getRootElement(), function(attacker) -- attacker == getLocalPlayer() because setElementVelocity is synced with server if(attacker and attacked ~= source and attacker == getLocalPlayer())then local aPosX, aPosY, aPosZ = getElementPosition(attacker) local sPosX, sPosY, sPosZ = getElementPosition(source) local angle = math.atan2(aPosX - sPosX, aPosY - sPosY) - math.rad(90) local velX, velY, velZ = getElementVelocity(source) setElementVelocity(source, velX + power*-math.cos(angle), velY + power*math.sin(angle), velZ + powerUp) end end) -- use this to test power addCommandHandler("fuu", function() local posX, posY, posZ = getElementPosition(getLocalPlayer()) local ped = createPed(16, posX, posY + 10, posZ) end) Link to comment
Simple0x47 Posted July 19, 2016 Share Posted July 19, 2016 Gracias por tomar en cuenta mi manera :v Link to comment
Narutimmy Posted July 19, 2016 Author Share Posted July 19, 2016 Gracias por tomar en cuenta mi manera :v perdona, es que no entendi mucho de como dices <.< Link to comment
Narutimmy Posted July 26, 2016 Author Share Posted July 26, 2016 Pudiste hacerlo? no , probe la forma que me dio alex pero no funiono, 1 de cada 10 lo habienta un poco hacia arriba pero solamente, probe a subirle la potencia y lo mismo Link to comment
Simple0x47 Posted July 26, 2016 Share Posted July 26, 2016 Intenta leer de nuevo mi metodo a ver si entiendes lo que digo :v Link to comment
Narutimmy Posted July 26, 2016 Author Share Posted July 26, 2016 Intenta leer de nuevo mi metodo a ver si entiendes lo que digo :v lo que no se usar es " interpolateBetween" Link to comment
Alexs Posted July 26, 2016 Share Posted July 26, 2016 Ahora ya leí el post completo y me parece que el método idóneo y ortodoxo para lo que buscas es el que te pasé, además lo comprobé y funciona correctamente. Link to comment
Recommended Posts