Queria saber como é feito um npc interagir com o player. Exemplo: o npc está andando normal pela cidade e o player da um comando ou aperta uma tecla e parece um menu de funções pro player.
Entrei em um servidor onde tinha vários jogadores online mais não era encontrados pelo mapa no jogo, achei que fosse NPC, mais tentei criar um NPC no meu gamemode e eles não estão aparecendo na lista Tab, como eu faço para aparecer na lista de jogadores online junto com os jogadores?
Opa tudo bem?
Então eu to tentando adapitar o sistema do rootcase quando pega lixo em casa so que fica dando erro na parte da casa
Erro que aparece:
SERVER: Unknown command.
Código:
CMD:pegarlixo(playerid) {
if(PlayerInfo[playerid][pProfissao] == GARI)
{
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, vermelho, "| ERRO | Você não pode usar esse comando em um veículo.");
new vehicleid = GetPVarInt(playerid, "LastVehicleID");
if(GetVehicleModel(vehicleid) != 408) return SendClientMessage(playerid, vermelho, "| ERRO | Você precisa utilizar o veiculo trashmaster!");
if(HasTrash[playerid]) return SendClientMessage(playerid, vermelho, "| ERRO | Você ja esta carregando um Saco de Lixo.");
new id = Trash_Closest(playerid);
new casaid = GetPlayerClosestCasa(playerid);
if(id > 0)
{
if(TrashData[id][TrashLevel] < 1) return SendClientMessage(playerid, vermelho, "| ERRO | Não tem nenhum lixo aqui!");
new Float: x, Float: y, Float: z;
GetVehicleBoot(vehicleid, x, y, z);
if(GetPlayerDistanceFromPoint(playerid, x, y, z) >= 30.0) return SendClientMessage(playerid, vermelho, "| ERRO | Você não esta perto do seu veículo Trashmaster.");
TrashData[id][TrashLevel] --;
KillTimer(TrashData[id][TrashTimer]);
TrashData[id][TrashTimer] = SetTimerEx("FillTrash", REFILL_TIME * 1000, false, "i", id);
TrashCP[playerid] = CreateDynamicCP(x, y, z, 1.0, .playerid = playerid);
HasTrash[playerid] = true;
ApplyAnimation(playerid, "CARRY", "liftup105", 4.1, 0, 0, 0, 0, 0);
SetPlayerAttachedObject(playerid, ATTACHMENT_INDEX, 1264, 6, 0.222, 0.024, 0.128, 1.90, -90.0, 0.0, 0.5, 0.5, 0.5);
Streamer_SetIntData(STREAMER_TYPE_3D_TEXT_LABEL, TrashData[id][TrashLabel], E_STREAMER_COLOR, (TrashData[id][TrashLevel] == 0) ? 0xE74C3CFF : 0xF39C12FF);
}
Loop(i, MAX_CASAS) {
if(IsPlayerInRangeOfPoint(playerid, 2, CasaInfo[i][ca_X],CasaInfo[i][ca_Y], CasaInfo[i][ca_Z])){
if(CasaInfo[i][CasaLixoFora] > 0) {
if(CasaInfo[i][CasaLixoFora] < 1) return SendClientMessage(playerid, vermelho, "| ERRO | Não tem nenhum lixo nessa casa!");
new Float: x, Float: y, Float: z;
GetVehicleBoot(vehicleid, x, y, z);
if(GetPlayerDistanceFromPoint(playerid, x, y, z) >= 30.0) return SendClientMessage(playerid, vermelho, "| ERRO | Você não esta perto do seu veículo Trashmaster.");
CasaInfo[i][CasaLixoFora] --;
KillTimer(TrashData[id][TrashTimer]);
TrashData[id][TrashTimer] = SetTimerEx("FillTrash", REFILL_TIME * 1000, false, "i", id);
TrashCP[playerid] = CreateDynamicCP(x, y, z, 1.0, .playerid = playerid);
HasTrash[playerid] = true;
ApplyAnimation(playerid, "CARRY", "liftup105", 4.1, 0, 0, 0, 0, 0);
SetPlayerAttachedObject(playerid, ATTACHMENT_INDEX, 1264, 6, 0.222, 0.024, 0.128, 1.90, -90.0, 0.0, 0.5, 0.5, 0.5);
//
SalvarCasa(i);
AtualizarCasa(i);
}
}
}
} else SendClientMessage(playerid, vermelho, "| ERRO | Você não tem permissão!");
return 1;
}
Furious é um projeto de servidor dedicado a proporcionar a melhor experiência de 'roleplay' para todos os jogadores. Nosso objetivo é criar um ambiente imersivo, dinâmico e envolvente,
onde cada jogador pode viver suas histórias de maneira autêntica.
Denovo eu aqui não consigo selecionar a textdraw ela não fica nem vermelho
Código:
if (newkeys == 1024)
{
for (new i = 0; i < 44; i ++) PlayerTextDrawShow(playerid, menuinteracao[playerid][i]);
SelectTextDraw(playerid, 0xf4786dAA);
}
Código:
/////////////
if (playertextid == menuinteracao[playerid][7])
{
CancelSelectTextDraw(playerid);
for (new i = 0; i < sizeof(menuinteracao); i++) PlayerTextDrawHide(playerid, menuinteracao[playerid][i]);
}
Olá. Eu estou com uma ideia, mas não tenho ideia de como usar a função OnPlayerEnterVehicle, por isso gostaria da ajuda dos senhores.
Minha ideia é fazer com que o SetPlayerCheckpoint inicie em OnPlayerEnterVehicle. Porque se continuar do jeito que está,
basta que o player pegue quaquer outro veiculo e vá ate o destino para completar a rota e ganhar o dinheiro.
Como eu faço para que o jogador só consiga iniciar o trabalho estando montado no veiculo da profissão?
Atualmente o jogador precisa escolher a rota estando fora do veiculo ( Escolha minha )
Código PHP:
if(dialogid == Dialog_RotasT) { if(response) { if(listitem == 0) { if(Trabalhando[playerid] == false) return SendClientMessage(playerid, -1, "{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce nao bateu ponto (Cartao), portanto nao podera iniciar nenhuma rota, nem solicitar a saida de nenyum veiculo."); if(CCarregado[playerid] == true) return SendClientMessage(playerid, -1, "{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce ja solicitou uma viagem. Conclua a atual para solicitar mais uma."); if(CaminhaoTransportador[playerid] == 0) return SendClientMessage(playerid, -1, "{CFCFCF}||{FF0000}ERRO{CFCFCF}|| Voce ainda nao solicitou um veiculo."); CCarregado[playerid] = true; SendClientMessage(playerid, -1, "{CFCFCF}||{00FF00}K{CFCFCF}|| Rota (Medicamentos HPC - LS > SF) iniciada."); SendClientMessage(playerid, -1, "{CFCFCF}||{00FF00}K{CFCFCF}|| Suba em seu caminhao e va ate o destino."); SetPlayerCheckpoint(playerid, -2645.0540, 559.7567, 14.4609, 3.0); } } }
eu ja bati minha cabeça eu queria que quando uma box de notificação aparecer se o player fazer outra box aparecer, que ela apareça embaixo da outra alguem me ajuda??????
Este Filterscript apresenta um sistema de TextDraw com o objetivo de exibir o FPS do jogador.
Como funciona?
Assim que o jogador se conecta ao servidor, o textdraw é exibido no canto superior esquerdo da tela, mas com o valor 0. Dessa forma, quando o jogador spawnar no servidor, o FPS começará a ser exibido.
Note: Pode ocorrer que alguns APKs ou Launchers não funcionem.
Meu objetivo é mostrar no RG o nome do emprego e não o número ao qual ele corresponde.
Eu dei uma estudada rápida e consegui fazer dessa forma e também de uma outra que vou mostrar depois,
mas o problema é que quando utilizo /RG no game, só consigo ver o título, qual foi definido antes
na dialog.
Eu não entendo bem para que serve essa função str[cat,len,cpy,ncpy, etc...]
Se alguém puder me ajuda.
Código PHP:
// Desta foram, o compilador acusa strcpy como inesistente. strcpy(JobName, "Transportador", 0, sizeof(JobName));
// Assim funcionou, mas as informações não são mostradas. strmid(JobName, "Transportador", 0, sizeof(JobName));