oq há de errado nesse script que não vai para o próximo check point oq fiz de errado ? esse emprego está dentro de uma include queria só saber o motivo mesmo de não ir ao próximo checkpoint automaticamente se tá tudo na lógica certa ,algum erro cometi q não estou sabendo identificar
/missao onibus
forward rotabus(playerid);
new busjob[256];
new timerbus[MAX_PLAYERS];
new rotabusjob[MAX_PLAYERS] = 0;
CMD:busjob(playerid){
if(corridaativa)return SendClientMessage(playerid,0x00FFFFFF,"voce nao pode usar esse comando agora");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 437){
SendClientMessage(playerid, -1,"| INFO | Serviço iniciado com sucesso! Siga o ícone vermelho no mapa para chegar ao primeiro ponto de ônibus!");
if(busjob[playerid] == 0){
busjob[playerid] = 1;
SetPlayerCheckpoint(playerid,2212.9006,-2235.4822,13.5469, 3.0);
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
}
}
SendClientMessage(playerid, -1,"| ERRO | Você tem que estar em uma ônibus para começar a rota!");
return 1;
}
stock bus_OnPlayerEnterCheckpoint(playerid){
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 437){
if(busjob[playerid] == 1){
busjob[playerid] = 2;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2029.1879,-2106.7595,13.0503,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 2){
busjob[playerid] = 3;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1965.0934,-1879.8435,13.0460,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 3){
busjob[playerid] = 4;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1825.0763,-1641.5555,13.0406,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 4){
busjob[playerid] = 5;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1661.4106,-1513.8069,13.0394,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 5){
busjob[playerid] = 6;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1718.1519,-1355.8612,13.0379,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 6){
busjob[playerid] = 7;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1515.8977,-1157.4445,23.5693,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 7){
busjob[playerid] = 8;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1007.3337,-1137.6353,23.3041,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 8){
busjob[playerid] = 9;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,913.9140,-1512.6134,13.0294,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 9){
busjob[playerid] = 10;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,668.9059,-1735.8870,13.1442,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 10){
busjob[playerid] = 11;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,716.0936,-1323.2404,13.0542,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 11){
busjob[playerid] = 12;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1105.4869,-1284.3621,13.0984,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 12){
busjob[playerid] = 13;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1248.8213,-1152.4312,23.2720,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 13){
busjob[playerid] = 14;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1598.3813,-1164.2426,23.5697,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 14){
busjob[playerid] = 15;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1931.6448,-1139.5239,24.7676,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 15){
busjob[playerid] = 16;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2113.3770,-1304.4203,23.5052,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 16){
busjob[playerid] = 17;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2349.2502,-1304.5952,23.6209,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 17){
busjob[playerid] = 18;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2598.7876,-1260.2065,46.9628,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 18){
busjob[playerid] = 19;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2677.5920,-1051.4144,69.0702,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 19){
busjob[playerid] = 20;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2834.8110,-1140.3776,24.4193,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 20){
busjob[playerid] = 21;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2830.0747,-1602.7433,10.5848,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 21){
busjob[playerid] = 22;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2819.3320,-1923.2450,10.5925,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 22){
busjob[playerid] = 23;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2646.7800,-2151.7402,10.5687,10);
SendClientMessage(playerid, -1,"| INFO | Os passageiros estão saindo e/ou entrando no ônibus! Aguarde...");
timerbus[playerid] = SetTimerEx("rotabus", 1000, false, "i",playerid);
return 1;
}
if(busjob[playerid] == 23){
busjob[playerid] = 0;
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid, -1,"| INFO | Serviço finalizado! Você recebeu R$300 por ter completado todo o percurso!");
SendClientMessage(playerid, -1,"| INFO | Volte ao spawn da profissão e inicie o serviço para fazer o percurso novamente use /busjob!");
fiz um script um trabalho de maquinista então ao chegar ao check point queria saber se existe alguém meio de parar o trem instantaneamente pois ele e difícil de parar resolvi fazer assim mas não deu certo
Código:
#define trem_included
forward parada(playerid);
new tremjob[256];
new timertrem[MAX_PLAYERS];
new rotatremjob[MAX_PLAYERS] = 0;
stock trem_Init(){
AddStaticVehicleEx(537,1700.0,-1950.0,13.0,0.0,1,1,60); // trem
AddStaticVehicleEx(569,1690.0,-1950.0,13.0,0.0,1,1,60);//vagao
return 1;
}
stock trem_OnPlayerConnect(playerid){
rotatremjob[playerid] = 0;
return 1;
}
CMD:tremjob(playerid){
if(corridaativa)return SendClientMessage(playerid,0x00FFFFFF,"voce nao pode usar esse comando agora");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 537){
SendClientMessage(playerid, -1,"| INFO | Serviço iniciado com sucesso! Siga o ícone vermelho no mapa para chegar ao primeiro ponto de ônibus!");
if(tremjob[playerid] == 0){
tremjob[playerid] = 1;
new vehicleid = GetPlayerVehicleID(playerid);
SetPlayerCheckpoint(playerid,1742.7112,-1953.7690,15.0995, 3.0);
SetVehicleVelocity(vehicleid, 0.0,0.0,0.0);
}
}
SendClientMessage(playerid, -1,"| ERRO | Você tem que estar em uma ônibus para começar a rota!");
return 1;
}
stock trem_OnPlayerEnterCheckpoint(playerid){
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 537){
if(tremjob[playerid] == 1){
tremjob[playerid] = 2;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,2864.7500,1297.3916,12.3495,10);
SendClientMessage(playerid, -1,"| INFO | 1/6 Aguarde...");
SetVehicleVelocity(vehicleid,0.0,0.0,0.0);
return 1;
}
if(tremjob[playerid] == 2){
tremjob[playerid] = 3;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,1435.2920,2632.2500,12.3495,10);
SendClientMessage(playerid, -1,"| INFO | 2/6 Aguarde...");
SetVehicleVelocity(vehicleid,0.0,0.0,0.0);
return 1;
}
if(tremjob[playerid] == 3){
tremjob[playerid] = 4;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,574.0625,1268.7861,13.4983,10);
SendClientMessage(playerid, -1,"| INFO | 3/6 Aguarde...");
SetVehicleVelocity(vehicleid,0.0,0.0,0.0);
timertrem[playerid] = SetTimerEx("parada", 10000, false, "i",playerid);
return 1;
}
if(tremjob[playerid] == 4){
tremjob[playerid] = 5;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,-1944.2625,124.2805,27.2245,10);
SendClientMessage(playerid, -1,"| INFO | 4/6 Aguarde...");
SetVehicleVelocity(vehicleid,0.0,0.0,0.0);
timertrem[playerid] = SetTimerEx("parada", 10000, false, "i",playerid);
return 1;
}
if(tremjob[playerid] == 5){
tremjob[playerid] = 6;
TogglePlayerControllable(playerid,0);
SetPlayerCheckpoint(playerid,818.5896,-1369.9158,-0.0131,10);
SendClientMessage(playerid, -1,"| INFO | 5/6 Aguarde...");
SetVehicleVelocity(vehicleid,0.0,0.0,0.0);
timertrem[playerid] = SetTimerEx("parada", 10000, false, "i",playerid);
return 1;
}
if(tremjob[playerid] == 6){
tremjob[playerid] = 0;
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid, -1,"| INFO | 6/6 Serviço finalizado! Você recebeu R$500 por ter completado todo o percurso!");
SendClientMessage(playerid, -1,"| INFO | Volte ao spawn da profissão e inicie o serviço para fazer o percurso novamente use /tremjob!");
CallRemoteFunction("dinheiro_GivePlayerMoney", "dd", playerid, 500);
}
}
return 1;
}
stock trem_parada(playerid)
{
timertrem[playerid] = SetTimerEx("MsgBus", 100, false, "i",playerid);
TogglePlayerControllable(playerid,1);
return 1;
}
fala povo criei esse script chamado de cruise Control , oq ele faz? simplesmente ao usar o comando /cruise ele e ativado ao aperta o acelerador no Android conhecido por KEY_SPRINT ele lhe dará uma velocidade aocaoertar novamente outra coloquei 5 velocidades iguais aos carros dos npc que dirige pelas ruas no GTA offline isso uma fs você não precisa ficar segurando o botão de acelerar apertou um vez o veículo já anda automaticamente espero q gostem se quiserem modificar a velocidade fiquem a vontade , ah lembrando para reduzir e só usar o botão do freio conhecido por KEY_JUMP
caso alguém queira modificar para Pc e só mudar as teclas para acelerar KEY_UP conhecido por tecla W e KEY_DOWN conhecido pelo S que geralmente freia
Código:
#include a_samp
#include zcmd
main() {
printf("Cruise Control v1.0 criado por ANDREX\n");
}
new bool:CruiseControlActive[MAX_PLAYERS];
new CruiseSpeedLevel[MAX_PLAYERS];
new Float:CruiseSpeeds[] = {
0.0, // Parado
0.16, // devagar, como IA no trânsito lento
0.26, // urbano normal
0.36, // média
0.46, // rápido (rodovia)
0.56 // bem rápido (máximo comum)
};
new bikeModels[] = {448, 461, 462, 463, 468, 521, 522, 581, 586};
stock IsBike(modelid) {
for (new i = 0; i < sizeof(bikeModels); i++) {
if (modelid == bikeModels[i]) {
return 1;
}
}
return 0;
}
public OnPlayerUpdate(playerid) {
if (CruiseControlActive[playerid]) {
new vehicleid = GetPlayerVehicleID(playerid);
new Float:z;
GetVehicleZAngle(vehicleid, z);
new Float:speed = CruiseSpeeds[CruiseSpeedLevel[playerid]];
new Float:velx, Float:vely, Float:velz;
GetVehicleVelocity(vehicleid, velx, vely, velz);
new Float:x = floatsin(-z, degrees) * speed;
new Float:y = floatcos(-z, degrees) * speed;
SetVehicleVelocity(vehicleid, x, y, velz);
new Float:health;
GetVehicleHealth(vehicleid, health);
if (health < 900.0) {
CruiseControlActive[playerid] = false;
CruiseSpeedLevel[playerid] = 0;
SetVehicleVelocity(vehicleid, 0.0, 0.0, 0.0);
GameTextForPlayer(playerid, "~r~Cruzeiro desativado devido a danos", 2000, 3);
}
}
return 1;
}
public OnVehicleDamageStatusUpdate(vehicleid) {
for (new i = 0; i < MAX_PLAYERS; i++) {
if (GetPlayerVehicleID(i) == vehicleid) {
if (IsBike(GetVehicleModel(vehicleid))) {
if (CruiseControlActive[i]) {
CruiseControlActive[i] = false;
CruiseSpeedLevel[i] = 0;
SetVehicleVelocity(vehicleid, 0.0, 0.0, 0.0);
GameTextForPlayer(i, "~r~Cruzeiro desativado devido a danos", 2000, 3);
}
}
}
}
return 1;
}
? New StarT RPG - Servidor de SAMP RPG ?
? Servidor Online 24h | ? Versão: SA-MP 0.3.7
Está em busca de um servidor dinâmico, divertido e com uma comunidade ativa? Então venha jogar no New StarT RPG!
Oferecemos uma experiência única no mundo do roleplay, com sistemas otimizados e administração presente.
✨ Destaques do Servidor:
✅ Profissões e organizações bem balanceadas
✅ Eventos diários com prêmios incríveis
✅ Economia realista e gameplay fluida
✅ Mapas exclusivos e atualizações constantes
✅ Suporte rápido e comunidade acolhedora
? É novo no servidor? Sem problemas! Temos benefícios para iniciantes e uma equipe pronta para te ajudar.
//criado por ANDREX nao retire os creditos , voce voce so estara enganando a si propio
#include <a_samp>
#include <zcmd>
#include <dini>
#define DIALOG_NOME_TP 1000 //mude caso voce ja use essa numerwcao na gm para naodar conflito
#define DIALOG_LISTA_TP 1001
// Comando para criar teleporte
CMD:tele(playerid, params[]){
if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,0x00FFFF,"[!] voce nao e um adminstrador");
ShowPlayerDialog(playerid, DIALOG_NOME_TP, DIALOG_STYLE_INPUT, "Criar Teleporte", "Digite o nome para o novo teleporte:", "Salvar", "Cancelar");
return 1;
}
// Manipula dialogs
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
if(dialogid == DIALOG_NOME_TP){
if(!response || isnull(inputtext)){
SendClientMessage(playerid, -1, "Criação de teleporte cancelada.");
return 1;
}
new file[64];
format(file, sizeof(file), "teleportes/%s.ini", inputtext);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
dini_Create(file);
dini_FloatSet(file, "X", x);
dini_FloatSet(file, "Y", y);
dini_FloatSet(file, "Z", z);
// Adicionar à lista.txt se ainda não existir
new listfile[] = "teleportes/lista.txt";
new File:check = fopen(listfile, io_read);
new exists = 0;
new line[64];
if(check){
while(fread(check, line)){
line[strlen(line)-1] = '\0';
if(strcmp(line, inputtext, true) == 0){
exists = 1;
break;
}
}
fclose(check);
}
if(!exists){
new File:add = fopen(listfile, io_append);
if(add){
fwrite(add, inputtext);
fwrite(add, "\n");
fclose(add);
}
}
new msg[64];
format(msg, sizeof(msg), "Teleporte '%s' criado com sucesso!", inputtext);
SendClientMessage(playerid, -1, msg);
return 1;
}
if(dialogid == DIALOG_LISTA_TP){
if(!response) return 1;
new name[64], file[64], line, File:handle;
handle = fopen("teleportes/lista.txt", io_read);
if(!handle) return SendClientMessage(playerid, 0x00FFFF, "[!]Erro ao ler a lista de teleportes.");
while(fread(handle, name)){
name[strlen(name)-1] = '\0'; // remove '\n'
if(line == listitem){
format(file, sizeof(file), "teleportes/%s.ini", name);
if(!fexist(file)){
SendClientMessage(playerid, -1, "Este teleporte não existe mais.");
fclose(handle);
return 1;
}
new Float:x = dini_Float(file, "X");
new Float:y = dini_Float(file, "Y");
new Float:z = dini_Float(file, "Z");
SetPlayerPos(playerid, x, y, z);
new msg[64];
format(msg, sizeof(msg), "Teleportado para '%s'.", name);
SendClientMessage(playerid, -1, msg);
break;
}
line++;
}
fclose(handle);
return 1;
}
return 0;
}
um comando simples para quando um jogador estiver logado na rcon usar /tele ele cria o nome do local onde ele quer e automaticamente é criado as coordenadas dentro de uma pasta chamada teleportes aí quando o player quiser apertar o nome /teleportes vai aparecer a lista de teleportes com o nome do que o player admin criou e ao ser clicado ele se teletransportar o local quem quiser adaptar e ao invés de usar a função nativa a SetPayerPos pode usar para ficar como SetPlayerCheckpoint assim se torna um GPS ao invés de um teleporte aí vocês que sabem espero que esse código ajuda alguma pessoa aí pois criei para meu servidor freeroam lembrando tudo fica salvo na pasta teleportes aoviniciar o servidor continuará tudo salvo usei a include Dini para salvar
Você precisa criando uma pasta dentro da scriptfiles chamada teleportes de dentro da pasta Teleportes um arquivo lista.txt
Emotion Multiplayer - eLauncher
Este projeto não é um novo mod multiplayer. O Emotion Multiplayer > eLauncher faz parte de uma iniciativa open-source com o objetivo de organizar e compartilhar ferramentas, modificações e códigos com as comunidades SA-MP e open.mp. Sobre o projeto
Sou apaixonado por desenvolvimento voluntário e software de código aberto. Enquanto explorava alguns repositórios da comunidade SA-MP, tive a ideia de criar um launcher dedicado. Foi assim que nasceu o Emotion Launcher (eLauncher).
O objetivo deste projeto é facilitar para que donos de servidores — especialmente os que administram servidores grandes — possam criar seus próprios launchers personalizados de forma prática e profissional.
Você pode criar o seu próprio launcher baseado no eLauncher. Tecnologias utilizadas
Linguagem: C#
Interface: WinForms
Plataforma: .NET 8.0
Teste agora
Você pode explorar e testar o launcher acessando:
Site oficial: https://elauncher.site
Código-fonte: https://github.com/emotionmultiplayer/eLauncher
Discord: https://discord.gg/DuUExyFQv6 Contribuições
Contribuições são bem-vindas. Se você tiver ideias, melhorias ou correções, sinta-se à vontade para abrir uma issue ou enviar um pull request no repositório. Emotion Multiplayer – desenvolvido com dedicação para a comunidade.
preciso recriar um banco de dados para ligar uma gamemode aqui que eu tenho, eu perdi o banco de dados dela e não estou conseguindo recriar ele, se alguém puder recriar ele para mim fazendo um grande favor, ficarei grato!!
vou mandar aqui arquivo mysql da gm
Eu estou usando o novo compilador pawno 3.10.10 mas após usar esse compilador e compilar as minhas coisas são tudo compilado com sucesso porém aparece o famoso 171 warning como eu desativou isso pois isso e do próprio compilador e não do meu código