AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Set/Get Where player is aiming (https://forums.alliedmods.net/showthread.php?t=101209)

orglee 08-21-2009 19:53

Set/Get Where player is aiming
 
I already found how to get it ( http://forums.alliedmods.net/showthread.php?t=91122 ), but I have no idea how to set it.

alan_el_more 08-21-2009 20:18

Re: Set/Get Where player is aiming
 
PHP Code:

new origin[3]
get_user_origin(idorigin[3], 3


Bugsy 08-21-2009 20:25

Re: Set/Get Where player is aiming
 
Quote:

Originally Posted by alan_el_more (Post 908550)
PHP Code:

new origin[3]
get_user_origin(idorigin[3], 3


That usage is incorrect:
get_user_origin( id , origin , 3 )

orglee 08-21-2009 20:30

Re: Set/Get Where player is aiming
 
So there is some other way except of "fm_get_aim_origin()". Thanks. And what about setting it?

Bugsy 08-21-2009 20:45

Re: Set/Get Where player is aiming
 
From http://forums.alliedmods.net/showthread.php?t=49081

PHP Code:

stock setClientAIM ClientEntity )
{
    static 
Float:vecOrigin];
    static 
Float:vecTarget];
    static 
Float:angResult];

    
entity_get_vectorClientEV_VEC_originvecOrigin );
    
entity_get_vectorEntityEV_VEC_originvecTarget );

    
vecOrigin] = vecTarget] - vecOrigin];
    
vecOrigin] = vecTarget] - vecOrigin];
    
vecOrigin] = vecTarget] - vecOrigin];

    
vector_to_anglevecOriginangResult );

    
entity_set_vectorClientEV_VEC_anglesangResult );
    
entity_set_intClientEV_INT_fixangle);



orglee 08-22-2009 06:32

Re: Set/Get Where player is aiming
 
I have problems using this function. Could you give me some small example of what to pass to it please.

ot_207 08-22-2009 06:50

Re: Set/Get Where player is aiming
 
Quote:

Originally Posted by orglee (Post 908932)
I have problems using this function. Could you give me some small example of what to pass to it please.

You want to aim after a player. Then you must do something like this

PHP Code:

#include <amxmodx>
#include <engine>
#include <cstrike>

public plugin_init()
{
    
register_clcmd("aim""aim_func")
}

public 
aim_func(id)
{
    if (!
is_user_alive(id))
    {
        
client_print(idprint_chat"Be alive!")
        
        return 
PLUGIN_HANDLED
    
}
    
    new 
players[32],num,player
    
    get_players
(players,num,"a"// a for alive
    
    
for (new i=0;i<num;i++)
    {
        
player players[i]
        
        if (
cs_get_user_team(player) == cs_get_user_team(id))
            continue
        
        
setClientAIM(idplayer)
        
        return 
PLUGIN_HANDLED
    
}
    
    
client_print(idprint_chat"COULDN'T find an enemy player")
    return 
PLUGIN_HANDLED
}

stock setClientAIM ClientEntity )
{
    static 
Float:vecOrigin];
    static 
Float:vecTarget];
    static 
Float:angResult];

    
entity_get_vectorClientEV_VEC_originvecOrigin );
    
entity_get_vectorEntityEV_VEC_originvecTarget );

    
vecOrigin] = vecTarget] - vecOrigin];
    
vecOrigin] = vecTarget] - vecOrigin];
    
vecOrigin] = vecTarget] - vecOrigin];

    
vector_to_anglevecOriginangResult );

    
entity_set_vectorClientEV_VEC_anglesangResult );
    
entity_set_intClientEV_INT_fixangle);



orglee 08-22-2009 09:50

Re: Set/Get Where player is aiming
 
Ok code below does the trick ( well not fully )
PHP Code:

// Getting
entity_get_vector(iPlayerEV_VEC_anglesgCheckpointAngle[iPlayer]);
// Setting        
entity_set_vector(iPlayerEV_VEC_anglesgCheckpointAngle[iPlayer]);
entity_set_int(iPlayerEV_INT_fixangle1); 

There is still small glitch. Although player view is set correctly on 'x' and 'z' but not on 'y'. It does not set players view vertically.

ot_207 08-22-2009 13:04

Re: Set/Get Where player is aiming
 
should be -> entity_set_vector(iPlayer, EV_VEC_v_angles, gCheckpointAngle[iPlayer]);


All times are GMT -4. The time now is 15:15.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.