AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   get_user_aiming SOLID_TRIGGER problem (https://forums.alliedmods.net/showthread.php?t=217638)

Netsys 06-05-2013 10:09

get_user_aiming SOLID_TRIGGER problem
 
How I can get the entity to which I am pointing (the entity is solid_trigger) with get_user_aiming not work, I've searched the forum but did not find much

GordonFreeman (RU) 06-05-2013 10:49

Re: get_user_aiming SOLID_TRIGGER problem
 
Code from Grab+ plugin by ian.cammarata:

Code:
stock traceline( const Float:vStart[3], const Float:vEnd[3], const pIgnore, Float:vHitPos[3] ){     engfunc( EngFunc_TraceLine, vStart, vEnd, 0, pIgnore, 0 )     get_tr2( 0, TR_vecEndPos, vHitPos )     return get_tr2( 0, TR_pHit ) } stock get_view_pos( const id, Float:vViewPos[3] ){     new Float:vOfs[3]     pev( id, pev_origin, vViewPos )     pev( id, pev_view_ofs, vOfs )               vViewPos[0] += vOfs[0]     vViewPos[1] += vOfs[1]     vViewPos[2] += vOfs[2] } stock Float:vel_by_aim( id, speed = 1 ){     new Float:v1[3], Float:vBlah[3]     pev( id, pev_v_angle, v1 )     engfunc( EngFunc_AngleVectors, v1, v1, vBlah, vBlah )         v1[0] *= speed     v1[1] *= speed     v1[2] *= speed         return v1 } stock get_aiment(id){     new target     new Float:orig[3], Float:ret[3]     get_view_pos( id, orig )     ret = vel_by_aim( id, 9999 )         ret[0] += orig[0]     ret[1] += orig[1]     ret[2] += orig[2]         target = traceline( orig, ret, id, ret )         new movetype     if( target && pev_valid( target ) )     {         movetype = pev( target, pev_movetype )         if( !( movetype == MOVETYPE_WALK || movetype == MOVETYPE_STEP || movetype == MOVETYPE_TOSS ) )             return 0     }     else     {         target = 0         new ent = engfunc( EngFunc_FindEntityInSphere, -1, ret, 10.0 )         while( !target && ent > 0 )         {             movetype = pev( ent, pev_movetype )             if( ( movetype == MOVETYPE_WALK || movetype == MOVETYPE_STEP || movetype == MOVETYPE_TOSS )             && ent != id  )             target = ent             ent = engfunc( EngFunc_FindEntityInSphere, ent, ret, 10.0 )         }     }     if(0<target<=get_maxplayers())         return 0         new classname[32]     pev(target,pev_classname,classname,31)         return target }


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

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