[Ayuda] Un FS de HeadShot
#1

Necesito ayuda llevo rato buscando y no consigo ninguno que sirva de verdad encontre uno pero es con todas las armas y yo lo necesito con sniper solamente no me funciono por eso, use el de otacon pero tampoco funciona me podrian ayudar?
Reply
#2

No es posible hacer uno 100% preciso, ya que no se puede detectar donde la bala impacta solo se puede saber donde apunta, es decir el recoil del arma hace que las balas no vayan precisamente hacia a donde apuntes por lo que no sabes si pego ahн. Por eso solo es posible con armas que tengan 0 recoil, como la sniper, rifle, minigun.
Podes usar este include para armar uno en OnPlayerTakeDamage, pero como te dije no es muy preciso ademбs de que hay problemas con las coordenadas de la cбmara y del vector de la cбmara cuando el jugador usa Widescreen.
https://sampforum.blast.hk/showthread.php?tid=403713
Reply
#3

pero es que no quiero que sea 100% preciso si no que se haga solo con sniper
Reply
#4

hay FS de eso que detectan cuando un user tiene la anim de que le hayan disparado a la cabeza con un francotirador. Puedes buscarlos para ver cуmo funcionan.
Reply
#5

Ese de la animaciуn se bugea ya que no siempre hace esa animaciуn y tambien en otros casos se hace esa animaciуn y no es disparado, por lo que tambiйn se bugea.
Reply
#6

pawn Код:
#include <a_samp>
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){
    /////////////////////////////////////////////////////
    if(newkeys == 132 && GetPlayerWeapon(playerid) == 34){
        new Float:Cvx, Float:Cvy, Float:Cvz;
        new Float:Cvx2, Float:Cvy2, Float:Cvz2;
        new Float:distance;
        new Float:P2x, Float:P2y, Float: P2z;
        new Float:Cx, Float:Cy, Float:Cz;
        GetPlayerCameraPos(playerid, Cx, Cy, Cz);
        GetPlayerCameraFrontVector(playerid, Cvx, Cvy, Cvz);
        for(new player, user = GetMaxPlayers(); player != user; player++){
            if((IsPlayerConnected(player) && player != playerid)){
                GetPlayerPos(player, P2x, P2y, P2z);
                if(GetPlayerSpecialAction(player) == SPECIAL_ACTION_DUCK){
                new Float:P2a; GetPlayerFacingAngle(player, P2a);
                P2a += 330; P2x += 0.27 * floatsin(-P2a, degrees);
                P2y += 0.27 * floatcos(-P2a, degrees); P2z -= 0.08;
                }else P2z += 0.76;
                distance = floatsqroot(floatpower(floatsub(P2x,Cx),2)+floatpower(floatsub(P2y,Cy),2)+floatpower(floatsub(P2z,Cz),2));
                Cvx2 = Cvx * distance + Cx; Cvy2 = Cvy * distance + Cy; Cvz2 = Cvz * distance + Cz;
                if(floatsqroot(floatpower(floatsub(P2x,Cvx2),2)+floatpower(floatsub(P2y,Cvy2),2)+floatpower(floatsub(P2z,Cvz2),2)) < 20.18){
                SetPlayerHealth(player, 0.0); break;}
            }
        }
    }
    /////////////////////////////////////////////////////
    return true;
}
Reply
#7

Gracias OTACON pero de todas maneras ya lo hice con el que me recomendaron arriba con el onplayerheadshot lo hice yo mismo gracias de todos modos
Reply
#8

Quote:
Originally Posted by yohan5632
Посмотреть сообщение
Gracias OTACON pero de todas maneras ya lo hice con el que me recomendaron arriba con el onplayerheadshot lo hice yo mismo gracias de todos modos
si de hecho ese esta mejor .
saludos.
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)