[Ajuda] NPC ou ActorS?
#1

Olб,
Me Ajudem em 2 coisas pf
1- qual melhor ? NPC ou Actors?

2- Como coloco funзхes neles?
Reply
#2

Actors nгo tкm absolutamente nada a ver com NPC's (falando da usabilidade no SA:MP de ambos logicamente), actors sгo corpos estбticos (apenas executam animaзхes), NPC's sгo "pesados" e "complexos", envolvem file recording. Se seu NPC precisa se mover, use vocк tem q usar NPC, caso seja sу um bot que vai ficar parado no mesmo lugar use actor, pois os mesmos poupam muitos recursos do servidor.
Reply
#3

Quote:
Originally Posted by ipsLeon
Посмотреть сообщение
Actors nгo tкm absolutamente nada a ver com NPC's (falando da usabilidade no SA:MP de ambos logicamente), actors sгo corpos estбticos (apenas executam animaзхes), NPC's sгo "pesados" e "complexos", envolvem file recording. Se seu NPC precisa se mover, use vocк tem q usar NPC, caso seja sу um bot que vai ficar parado no mesmo lugar use actor, pois os mesmos poupam muitos recursos do servidor.
Tipo, tem como eu colocar um Actor com uma msg sobre ele ?
Reply
#4

Quote:
Originally Posted by Mnnny
Посмотреть сообщение
Tipo, tem como eu colocar um Actor com uma msg sobre ele ?
Cria uma textlabel na mesma posiзгo, com a coordenada z um pouco maior do que a posiзгo do actor.
Reply
#5

Quote:
Originally Posted by Mnnny
Посмотреть сообщение
Tipo, tem como eu colocar um Actor com uma msg sobre ele ?
https://sampforum.blast.hk/showthread.php?tid=573408

Код:
CMD:criaractor(playerid, params[]) {
    if(!IsPlayerAdmin(playerid)) return 0;
    new skin_actor, Nome[32];
    if(sscanf(params, "is[32]", skin_actor, Nome)) return SendClientMessage(playerid, -1, "{FF0000}Use: /criaractor [skin id] [nome]");
    if(skin_actor < 0 || skin_actor > 311) return SendClientMessage(playerid, -1, "{FF0000}O id й invбlido!");
    new Float:pP[4], Msg[144], Actorid;
    GetPlayerPos(playerid, pP[0], pP[1], pP[2]);
    GetPlayerFacingAngle(playerid, pP[3]);
    Actorid = CreateActor(skin_actor, pP[0], pP[1], pP[2], pP[3]);
    if(!IsValidActor(Actorid)) return SendClientMessage(playerid, -1, "{FF0000}Ocorreu um erro. Provavelmente o mбximo de actors foi atingido!");
    ActorData[Actorid][ActorSkin] = skin_actor;
    format(ActorData[Actorid][ActorNome], 32, Nome);
    format(Msg, 144, "{FFFF00}Actor id: %i (Skin: %i) (Nome: %s)", Actorid, skin_actor, Nome);
    SendClientMessage(playerid, -1, Msg);
    SetActorVirtualWorld(Actorid, GetPlayerVirtualWorld(playerid));
    format(Msg, 144, "%s (%i)", Nome, Actorid);
    ActorData[Actorid][ActorLabel] = Create3DTextLabel(Msg, 0xFFFF00AA, pP[0], pP[1], pP[2] + 1.0, 30.0, GetPlayerVirtualWorld(playerid));
    SetPlayerPos(playerid, pP[0] + 1.0, pP[1] + 1.0, pP[2]);
    return 1;
}
Crйditos ao NicK_ .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)