Function GetPlayerCameraTargetActor retrieve the ID of the actor the player is looking at (in any).
Function GetPlayerCameraTargetActor was added in 0.3.7 and will not work in earlier versions!
This function is disabled by default to save bandwidth. Use EnablePlayerCameraTarget to enable it for each player.
This function only tells you which actor (if any) the player is looking at. To find out if they are aiming at them, you need to use GetPlayerTargetActor.

int playerid The ID of the player to get the target actor of.

Return Values:
The ID of the actor the player is looking at.

// Example Usage: Actors perform a 'hands up' animation when aimed at.

new bool:ActorHandsup[MAX_ACTORS];
public OnPlayerConnect(playerid)
    EnablePlayerCameraTarget(playerid, 1);
    return 1;
public OnPlayerUpdate(playerid)
    // Find out what actor (if any) the player is LOOKING at
    new playerTargetActor = GetPlayerCameraTargetActor(playerid);
    // If they ARE looking at ANY actor
    if(playerTargetActor != INVALID_ACTOR_ID)
        // Store the player's weapon so we can check if they are armed
        new playerWeapon = GetPlayerWeapon(playerid);
        // Get the player's keys so we can check if they are aiming
        new keys, updown, leftright;
        GetPlayerKeys(playerid, keys, updown, leftright);
        // If the actor hasn't put its hands up yet, AND the player is ARMED
        if(!ActorHandsup[playerTargetActor] && playerWeapon >= 22 && playerWeapon <= 42 && keys & KEY_AIM)
            // Apply 'hands up' animation
            ApplyActorAnimation(playerTargetActor, "SHOP", "SHP_HandsUp_Scr",4.1,0,0,0,1,0);
            // Set 'ActorHandsup' to true, so the animation won't keep being reapplied
            ActorHandsup[playerTargetActor] = true;
    return 1;

Related Functions
The following functions may be useful, as they are related to this function in one way or another.

Related Callbacks
The following callbacks might be useful as well, as they are related to this callback in one way or another.