[Include] Extended Actor Functions
#1

Actor functions


Here are some useful functions related to actors. The purpose of this library is to extend the functionality of actors.

Function list
pawn Code:
// Resynchronize an actor.
forward ResyncActor(actorid);
// Respawns an actor.
forward RespawnActor(actorid);
// Checks if the actor is dead.
forward IsActorDead(actorid);
// Sets an actor's respawn time (after death).
forward SetActorRespawnTime(actorid, time);
// Checks if a player is in range of an actor.
forward IsPlayerInRangeOfActor(playerid, actorid, Float:radius = 5.0);
// Attaches a 3D text label to an actor.
forward Text3D:Attach3DTextLabelToActor(actorid, text[], color, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:distance = 10.0, worldid = 0, testlos = 0);
Callback list
pawn Code:
// Called when an actor dies.
forward OnActorDeath(actorid, killerid, reason);
// Called when an actor spawns.
forward OnActorSpawn(actorid);
// Called when a player aims at an actor.
forward OnPlayerTargetActor(playerid, newtarget, oldtarget);


Other benefits:
  • Animations are automatically preloaded for an actor, so you don't need to preload them yourself!
  • Actor damage is automatically deducted so you don't need to worry about doing that also.
  • This also fixes a bug where animations aren't cleared when an actor dies.
Usage

Here's some useful code to respawn a dead actor after 5 seconds:

pawn Code:
public OnActorDeath(actorid, killerid, reason)
{
    SetActorRespawnTime(actorid, 5000);
}


Attach a 3D text label to a certain actor:

pawn Code:
gActor = CreateActor(255, 0.0, 0.0, 10.0, 90.0);

gAttachedLabel = Attach3DTextLabelToActor(gActor, "I am an actor!\nPress {FFFF00}'Y'{FFFFFF} to interact with me!", 0xFFFFFFFF, 0.0, 0.0, 0.3, 10.0, 0);


Make the targeted actor put their hands up.

pawn Code:
public OnPlayerTargetActor(playerid, newtarget, oldtarget)
{
    if (newtarget != INVALID_ACTOR_ID)
    {
        ApplyActorAnimation(newtarget, "PED", "handsup", 4.1, 0, 0, 0, 0, 0);
    }
    if (oldtarget != INVALID_ACTOR_ID)
    {
        ClearActorAnimations(oldtarget);
    }
}
Download
http://pastebin.com/kkb9fgS3
Reply


Messages In This Thread
Extended Actor Functions - by Emmet_ - 08.05.2015, 10:35
Re: Extended Actor Functions - by Sellize - 08.05.2015, 10:38
Re: Extended Actor Functions - by Admigo - 08.05.2015, 10:48
Re: Extended Actor Functions - by Emmet_ - 08.05.2015, 10:58
Re: Extended Actor Functions - by JaydenJason - 08.05.2015, 11:01
Re: Extended Actor Functions - by Smileys - 08.05.2015, 11:03
Re: Extended Actor Functions - by SeV_ - 08.05.2015, 11:37
Re: Extended Actor Functions - by LMaxCo - 08.05.2015, 11:51
AW: Extended Actor Functions - by Infra - 08.05.2015, 12:44
Re: Extended Actor Functions - by Kar - 08.05.2015, 15:06

Forum Jump:


Users browsing this thread: 2 Guest(s)