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));
Tenho o sistema já praticamente pronto só falta o botão de comprar o veiculo que não está programado para certas funções posso dizer que tem duas setas para escolha do veiculo e no meio tem uma PreviewModel que é da imagem do veiculo que o player está visualizando, só falta o botão de comprar que não está pegando!! o código abaixo está pegando somente as setas para escolha do veiculo.
Olá. Desde já deixo avisado que não entendo muito e não tenho muito conhecimento sobre a função SetTimerEx, então por favor, me socorram
Código PHP:
public OnPlayerConnect(playerid) { new String[50]; // Whitelist format(String, 49, "WhiteList/%s.ini", pName(playerid)); if(!DOF2_FileExists(String)) { ShowPlayerDialog(playerid, Dialog_Whitelist, DIALOG_STYLE_MSGBOX, "WhiteList", "Sua conta nao foi encontrada na whitelist (lista de permissao para jogar)!\nVa ate o nosso discord para realizar gratuitamente o registro.", "Entendido", ""); SetTimerEx("DelayKick", 3000, false, "d", playerid); return 1; } // Verificar se o SetTimerEx ta funcionando. SetTimerEx("TestTimer", 2000, false, "d", playerid); printf("Timer de teste configurado para o jogador %d", playerid); return 1; }
forward TestTimer(playerid); public TestTimer(playerid) { printf("TestTimer chamado para o jogador %d", playerid); return 1; }
forward DelayKick(playerid); public DelayKick(playerid) { Kick(playerid); return 1; }
O testtimer funciona normalmente, mas o kick da whitelist não funciona. Eu estava mexendo e vi que funcionou 1 ou 2 vezes, mas não consegui deixar funcionando. Tem a possibilidade de eu estar usando alguma coisa desatualizada, não sei.
Sobre mim:
Para quem não me conhece, meu nome é Eduardo e trabalho com SA:MP há mais de 10 anos.
Durante esse período venho criando e moldando ferramentas que possam otimizar o tempo do programador e tornar a experiência de desenvolvimento mais atrativa e profissional.
Apesar de disponibilizar algumas ferramentas de forma gratuita, eu não as mantenho mais, portanto não possuem mais suporte.
Depois de muitos estudos em cima delas e pedidos sobre estes e novos lançamentos, resolvi fazer um pacote que até então está parcialmente pronto.
Sobre a ferramenta:
Há atualmente 12 ferramentas:
FolderFix
Tabulador
PawnDoc
Easy Pawn Completion
Pos Finder
Sound Browser
NTD Project Creator
NexTDE Project Creator
Memory String
Calculadora de econonomia
Seletor de cores
Extrator de textdraw
1. FolderFix:
Procura no diretório selecionado o primeiro gamemode encontrado e vasculha nele e em módulos (não submódulos) por cadeias de caracteres que coincidam com diretórios.
Será criado uma pasta em 'scriptfiles' com o nome "_FOLDERS_FIX_". Nela vai ter tudo que a ferramenta identificou como um possível diretório e sugere para que seja usado na pasta raiz de 'scriptfiles' para evitar possíveis crash por falta de pastas.
2. Tabulador:
Este sem dúvidas é o mais conhecido. Com ele você consegue organizar e tabular seu código sem perder a estrutura inicial do mesmo.
Facilmente identifique os 26 erros, caso o problema seja alguma chave.
Além de mais eficiente, você possui opções como:
Ignorar comentários em linhas
Ignorar comentários em blocos
Ignorar textos
Remover linhas em branco
Escolher qual caractere deve tabular
Codificação do script
3. PawnDoc:
A parte crucial de um script está na documentação.
Um script necessita de uma documentação adequada quando concedido a terceiros, pois é a forma mais fácil das pessoas entenderem o conceito e o objetivo por trás de determinado código.
Com esta ferramenta você consegue criar seu próprio layout de documentação com alguns recursos como:
Escolher que palavras-chave a ferramenta deve identificar para gerar a documentação
Descrição
Parâmetros (se houver)
Retorno
Codificação do script
4. Easy Pawn Completion
Este sem dúvida é uma das ferramentas mais completas para qualquer programador de SA:MP, pois com ela é possível criar dicionários e snippets para auto complementos de IDE.
Desta forma otimiza muito o tempo e ainda mostra para o programador quais funções existem com base no que ele digitou, bem como a complementação dos parâmetros.
Além da tamanha utilidade, também é possível configurar de forma avançada o que deve e o que não deve ser capturado para gerar o arquivo de auto-complete.
Atualmente é possível gerar para Sublime Text, Visual Studio Code e EmEditor.
5. Pos Finder:
Basicamente serve para identificar objetos, atores, veículos... Tudo o que foi criado server-side que você não faz ideia de como achar dentro do script.
Com essa ferramenta, basta informar as posições X, Y, Z e a área de busca que você quer procurar.
Ao finalizar, caso identifique o que se encaixa dentro do critério da coordenada e área de busca, será informado a linha inteira do código.
6. Sound Browser
Um dos sound previews mais completos com mais de 200 sons do GTA San Andreas.
Ouça e gere o código do som automaticamente ao selecionar o item.
7. NTD Project Creator:
Lê arquivos brutos e busca por quaisquer informações de textdraws e suas propriedades, gerando arquivos de projetos baseados no editor de textdraws criado por Nickk888SAMP.
Contém também o recurso de salvar o arquivo de projeto gerado diretamente no diretório da pasta do editor, bem como incluí-lo na lista de projetos automaticamente.
8. NexTD Project Creator:
Lê arquivos brutos e busca por quaisquer informações de textdraws e suas propriedades, gerando arquivos de projetos baseados no editor de textdraws criado por nexquery.
Contém também o recurso de salvar o arquivo de projeto gerado diretamente no diretório da pasta do editor, bem como incluí-lo na lista de projetos automaticamente.
9. Memory String:
Esta ferramenta efetua uma análise criteriosa pelo script procurando por cadeias de caracteres que contenham mais ou menos
caracteres que o necessário.
Basicamente, quando você discrimina uma quantia de caracteres para uma variável, você não define o valor necessário exato que vai precisar
e isso, por consequência, vai aumentar a memória do servidor gradativamente caso não seja seguido uma prática correta de alocação
de memória.
Assim como memória em excesso isso pode afetar da forma contrária. Quando se usa uma quantidade inferior de caracteres, acaba gerando
uma string incompleta para o jogador final.
Apesar da análise ser profunda e minuciosa, esses problemas são identificados dentro de segundos com essa ferramenta.
Você terá acesso a um log detalhado sobre as funções de formatação "format" e "mysql_format" e verificar a alocação da memória, conforme
exemplo abaixo.
Entre colchetes está o número da linha.
"Tamanho (superior)" informa que a quantidade de caracteres informada supera a recomendação
"Tamanho (inferior)" informa que a quantidade de caracteres informada é inferior a recomendação
"Tamanho recomendado:" informa a quantidade de caracteres necessários para aquela mensagem
Código:
[46311] format(tempString, sizeof tempString, "[INFO]:{FFFFFF} %s(%d) Uma mensagem de exemplo: %s!", GetPlayerNameEx(playerid), playerid, text);
Tamanho (superior): 150
Tamanho recomendado: 53
Este é um exemplo de exceção, onde não é possível identificar os valores dos especificadores, no entanto, há muitas outras que não
necessitam de tudo isso e você será notificado para fazer o ajuste, como este abaixo:
Código:
[27737] format(Stringdx, sizeof(Stringdx), "{A9A9A9}Voce possui {00FF00}R$%d{A9A9A9} na mochila\n\n-> Deseja colocar mais ou retirar?", pDinheiroNaMochila[playerid]);
Tamanho (superior): 220
Tamanho recomendado: 89
E o resultado da análise irá gerar estas informações:
Código:
Caracteres desperdiçados: 548643
Caracteres que faltam: 2
Tempo de execução: 14 segundos
10. Calculadora de economia:
Com essa ferramenta você realiza o cálculo final de uma economia completa no servidor, de forma que consiga especificar um valor e um período, gerando assim um total dentro do período estipulado.
Ótimo para payday, serviços/missões realizados(as) para evitar inflação.
11. Seletor de cores:
Pegue rapidamente as cores que você deseja em HEX, RGBA e decimal.
Possível também formatar um texto e reproduzí-lo com as cores que você deseja personalizar, alterando a cor de fundo conforme queira.
Pode também arrastar uma imagem e através dela, clique em cima da região desejada para captar a cor.
12. Extrator de Textdraw:
Extraia rapidamente todas as textdraws e suas propriedades de um arquivo, seja filterscript, gamemode ou mesmo um arquivo de textdraw exporada.
Altere a ordem de sobreposição (index) da textdraw
Visualize o index original da texdraw importada, para controle caso altere a ordem da textdraw
Altere o texto da textdraw
Alterne entre textdraw Global ou Player antes da exportação
Selecione o tipo de salvamento: OpenMP ou SA:MP
Como adquirir:
Atualmente é possível adquiri-la com pagamentos mensais seja por boleto, pix ou cartão de crédito.
Sou o único com permissão de comercializar o programa.
O programa está pronto e 100% operante. Porém ainda não recebe atualizações automáticas, mas de momento será com redirecionamento para nuvem para fazer o download da versão mais atual.
Para maiores informações gentileza entrar em contato.
Suporte:
Dou suporte 24/7 para dúvidas ou problemas.
Opa pessoal tudo bem? como faço pra fazer um balanço geral?
Meu servidor quando da UP um player ele recebe um salário. queria colocar o balanço, ou seja
Pegar o valor que tinha antes na conta dele e depois que receber o salário fazer o novo balanço.
SendClientMessagef(playerid, -1, "{FFFFFF}* Voce deu {E84F33}%d{FFFFFF} unidades do item {E84F33}%s{FFFFFF} para o(a) {E84F33}%s(%d)", params[2], itemName, PegarNome(params[0]), params[0]);
givePlayerItem(params[0], params[1], params[2]);
return 1;
}
A intenção desse comando é dar um item a um player, mas não está achando o nome correto na lista (Array), fui printar os parâmetros passados, quando passei como parametro item o nome "Mochila". Mas me retornou isso: "M☺chila".
No segundo caractere, está retornando esse caractere aleatório. E no jogo, o caractere não aparece, fica vazio.
Peço ajuda de você por favor quem puder ajuda agradeço, então eu quero usar o interior 3 para ficar como um escritorio de pegar emprego então cada emprego vai ter o seu escritorio, eu quero usar o mesmo interior pra isso que é o 3, ele já ta sendo usando para o emprego de taxista e agora quero fazer pro e bombeiro, mais tenho um problema, toda vez que coloco o interior e colocando em um virtual world diferente ele sempre vai pro interior do emprego de taxista, abaixo a esta o código pra entrar no interior do bombeiros que to tendo problemas.
mesmo colocando esse informações sempre e quando entro no interior vai pro do taxista e quando saiu, eu saiu no lado de fora do emprego de taxista
e não do de bombeiro que foi por onde eu entrei