07/10/2020 06:03
Tutorial Actor & TextLabel
Sobre
Muitos não tem a mínima noção como se usar um actor e como ele é mais fácil que um Pickup c/ Textlabel
Eu mesmo não tinha noção de como usar e de como seria fácil minhas criações de GM usando Actor
Assim sigo trazendo esse Tutorial bem básico.
• Poderá usar em Lojas e qualquer outro interior
[u]• Poderá fazer sistemas usando Actor por exemplo: Assaltos, Vendas entre outros usando Actor
[/u]• Podera usar para simular pessoas dentro de interiores
[u]• Entre outras coisas...
[/u]
Sobre
Muitos não tem a mínima noção como se usar um actor e como ele é mais fácil que um Pickup c/ Textlabel
Eu mesmo não tinha noção de como usar e de como seria fácil minhas criações de GM usando Actor
Assim sigo trazendo esse Tutorial bem básico.
• Poderá usar em Lojas e qualquer outro interior
[u]• Poderá fazer sistemas usando Actor por exemplo: Assaltos, Vendas entre outros usando Actor
[/u]• Podera usar para simular pessoas dentro de interiores
[u]• Entre outras coisas...
[/u]
Imagens
Imagem Actor
Instalação
include:
Instalação
include:
Código:
/* SA:MP Actor Functions
*
* (c) Copyright 2005-2006, SA:MP Team
*
*/
#if defined _actors_included
#endinput
#endif
#define _actors_included
#pragma library actors
// Actor
native CreateActor(modelid, Float:X, Float:Y, Float:Z, Float:Rotation);
native DestroyActor(actorid);
native SpawnActor(actorid);
native ActorMoveTo(actorid, movetype, Float:X, Float:Y, Float:Z );
native ActorEnterVehicle(actorid, vehicleid, passenger);
native ActorExitVehicle(actorid,vehicleid);
native ActorDriveVehicleTo(actorid, vehicleid, Float:X, Float:Y, Float:Z, Float:Speed, drivetype, Float:MinAltitude=0.0, Float:MaxAltitude=0.0);
// Actor info
native SetActorPos(actorid, Float:x, Float:y, Float:z);
native SetActorPosFindZ(actorid, Float:x, Float:y, Float:z);
native GetActorPos(actorid, &Float:x, &Float:y, &Float:z);
native SetActorFacingAngle(actorid,Float:ang);
native GetActorFacingAngle(actorid,&Float:ang);
native SetActorInterior(actorid,interiorid);
native GetActorInterior(actorid);
native SetActorHealth(actorid, Float:health);
native GetActorHealth(actorid, &Float:health);
native SetActorArmour(actorid, Float:armour);
native GetActorArmour(actorid, &Float:armour);
native SetActorInvulnerable(actorid, invulnerable = true);
native IsActorInvulnerable(actorid);
native SetActorTeam(actorid, teamid);
native GetActorTeam(actorid);
native SetActorColor(actorid,color);
native GetActorColor(actorid);
native SetActorSkin(actorid, skinid);
native GetActorSkin(actorid);
native SetActorWeapon(actorid, weaponid);
native ResetActorWeapon(actorid);
native SetActorName(actorid, const name[]);
native GetActorState(actorid);
native GetActorWeapon(actorid);
native GetActorKeys(actorid, &keys, &updown, &leftright);
native GetActorName(actorid, const name[], len);
// Actor controls
native PutActorInVehicle(actorid, vehicleid, seatid);
native GetActorVehicleID(actorid);
native GetActorVehicleSeat(actorid);
native RemoveActorFromVehicle(actorid);
native ApplyActorAnimation(actorid, animlib[], animname[], Float:fDelta, loop, lockx, locky, freeze, time);
native ClearActorAnimations(actorid);
// Actor conditionals
native IsActorConnected(actorid);
native IsActorInVehicle(actorid, vehicleid);
native IsActorInAnyVehicle(actorid);
// Virtual Worlds
native SetActorVirtualWorld(actorid, worldid);
native GetActorVirtualWorld(actorid);
Crie um arquivo .inc escrito a_actor.inc e coloque na pasta includes
Criando um Actor
1. Criando variaveis
Obs: Criaremos uma variavel global com a quantidade de Actor que iremos criar
2. Criando o Primeiro Actor Parado
3. Criando Actor c/ Anim
4. Criando Actor c/ Arma
5. Criando Actor que morre
Pronto agora aprendeu como podemos usar os Actor em nosso servidor, Você também pode fazer sistemas usando Actor
Fica muito bom e divertido o servidor!
Agora é só felicidades criando e editando sua gamemode
Obs: Criaremos uma variavel global com a quantidade de Actor que iremos criar
Código:
#include < a_actor >
//No topo de sua Gamemode
new Actors[2+1];
Text3D:LabelActors[2+1];
2. Criando o Primeiro Actor Parado
Código:
Actors[0] = CreateActor(skin, x, y, z, Angle);
LabelActors[0] = Create3DTextLabel("{FFFFFF}Ola, Use {FF00FF}/ajuda {FFFFFF}para \n{FF00FF}consultar os comandos", 0x008080FF, x, y, z, 15.0, 0);
Attach3DTextLabelToPlayer(LabelActors[0], Actors[0], 0.0, 0.0, 0.7);
Código:
Actors[1] = CreateActor(skin, x, y, z, Angle);
LabelActors[1] = Create3DTextLabel("{FFFFFF}Ola, Use {FF00FF}/ajuda {FFFFFF}para \n{FF00FF}consultar os comandos", 0x008080FF, x, y, z, 15.0, 0);
Attach3DTextLabelToPlayer(LabelActors[1], Actors[1], 0.0, 0.0, 0.7);
ApplyActorAnimation(Actors[1],"BOMBER", "BOM_Plant", 4.1, 1, 0, 1, 0, 1);
Código:
Actors[2] = CreateActor(skin, x, y, z, Angle);
LabelActors[2] = Create3DTextLabel("{FFFFFF}Ola, Use {FF00FF}/ajuda {FFFFFF}para \n{FF00FF}consultar os comandos", 0x008080FF, x, y, z, 15.0, 0);
Attach3DTextLabelToPlayer(LabelActors[2], Actors[2], 0.0, 0.0, 0.7);
SetActorWeapon(Actors[2], 32);
Código:
Actors[3] = CreateActor(skin, x, y, z, Angle);
LabelActors[3] = Create3DTextLabel("{FFFFFF}Ola, Use {FF00FF}/ajuda {FFFFFF}para \n{FF00FF}consultar os comandos", 0x008080FF, x, y, z, 15.0, 0);
Attach3DTextLabelToPlayer(LabelActors[3], Actors[3], 0.0, 0.0, 0.7);
SetActorInvulnerable(Actors[3], false);
Pronto agora aprendeu como podemos usar os Actor em nosso servidor, Você também pode fazer sistemas usando Actor
Fica muito bom e divertido o servidor!
Agora é só felicidades criando e editando sua gamemode
______________________________________________________
+REP
O sucesso é a soma de pequenos esforços, repetidos dias após dias.