[15:50:22] [debug] #1 00316c8c in public Tempo () in GRP.amx
[15:50:23] [debug] Run time error 4: "Array index out of bounds"
[15:50:23] [debug] Attempted to read/write array element at negative index -1
esta aparecendo essas mensagens no log
segue o codigo
Código:
public Tempo()
{
new Dia,Mes,Ano;
getdate(Dia,Mes,Ano);
new HoraRoYal, MinutoRoYal, SegundoRoYal;
gettime(HoraRoYal, MinutoRoYal, SegundoRoYal);
switch(HoraRoYal)
{
case 0: SetWorldTime(0);
case 1: SetWorldTime(0);
case 2: SetWorldTime(1);
case 3: SetWorldTime(2);
case 4: SetWorldTime(4);
case 5:
{
if(MinutoRoYal == 0 && SegundoRoYal == 0)
{
SetWorldTime(5);
SendClientMessageToAll(COR_AMARELO, "| GMX | Atencao o Servidor ira reiniciar automaticamente em 30 segundos.");
SetTimer("ReiniciarServidor", 30000, false);
printf("[gmx] primeiro aviso de restart dado com sucesso [%d:%d:%d].", HoraRoYal, MinutoRoYal, SegundoRoYal);
}
else
{
SetWorldTime(5);
}
}
case 6: SetWorldTime(6);
case 7: SetWorldTime(7);
case 8: SetWorldTime(8);
case 9: SetWorldTime(9);
case 10: SetWorldTime(10);
case 11: SetWorldTime(11);
case 12: SetWorldTime(12);
case 13: SetWorldTime(13);
case 14: SetWorldTime(14);
case 15: SetWorldTime(15);
case 16: SetWorldTime(16);
case 17: SetWorldTime(20);
case 18: SetWorldTime(21);
case 19: SetWorldTime(22);
case 20: SetWorldTime(22);
case 21: SetWorldTime(23);
case 22: SetWorldTime(23);
case 23: SetWorldTime(23);
}
foreach(Player, i)
{
new str[100];
format(str, sizeof(str), "%02d/%02d/%d - %02d:%02d",Ano,Mes,Dia, HoraRoYal, MinutoRoYal);
TextDrawSetString(SpaceTD[2], str);
TextDrawShowForPlayer(i,SpaceTD[2]);
MostrarTDPrincipal(i);
EsconderTDPrincipal(i);
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
if(GetPlayerSpeed(i) > 300)
{
if(PlayerInfo[i][Admin] == 0)
{
format(gstring,sizeof(gstring), "AntCheat: O Player %s(%d) Foi Kickado por Suspeita de Speed Hack", PlayerName(i), i);
SendClientMessageToAll(COLOR_LIGHTRED, gstring);
ShowPlayerDialog(i,5000,DIALOG_STYLE_MSGBOX,"{FFFFFF}Kick {8B008B}Space RolePlay","{8B008B}> {FFFFFF}Voce foi Kickado por Suspeita de Speed Hack\n{8B008B}> {FFFFFF}Prox.Vez Sera Banido.","Sair","");
SetTimerEx("KickPlayer", 100, false, "i", i);
}
return 1;
}
}
else
{
if(GetPlayerState(i) == PLAYER_STATE_ONFOOT)
{
if(GetPlayerSpeed(i) > 100)
{
if(PlayerInfo[i][Admin] == 0)
{
format(gstring,sizeof(gstring), "AntCheat: O Player %s(%d) Foi Kickado por Suspeita de Fly Hack ou Surf", PlayerName(i), i);
SendClientMessageToAll(COLOR_LIGHTRED, gstring);
ShowPlayerDialog(i,5000,DIALOG_STYLE_MSGBOX,"{FFFFFF}Kick {8B008B}Space RolePlay","{8B008B}> {FFFFFF}Voce foi Kickado por Suspeita de Fly Hack ou Surf\n{8B008B}> {FFFFFF}Voce nao pode Praticar Surf em Nosso Servidor, Prox.Vez Sera Banido.","Sair","");
SetTimerEx("KickPlayer", 100, false, "i", i);
}
return 1;
}
}
}
if(IsPlayerInAnyVehicle(i))
{
new vid = GetPlayerVehicleID(i);
if(GetVehicleModel(vid) != 481 && GetVehicleModel(vid) != 509 && GetVehicleModel(vid) != 510)
{
if (GetPlayerVehicleSeat(i) == 0)
{
new Float:health;
GetVehicleHealth(GetPlayerVehicleID(i), health);
if(health <= 300 && health > 0)
{
SetVehicleHealth(GetPlayerVehicleID(i), 300);
motor[vid] = false;
new engine, farol, alarme, portas, capo, portamalas, objetivo;
GetVehicleParamsEx(vid, engine, farol, alarme, portas, capo, portamalas, objetivo);
SetVehicleParamsEx(vid, VEHICLE_PARAMS_OFF, farol, alarme, portas, capo, portamalas, objetivo);
GameTextForPlayer(i, "~w~Veiculo ~r~Quebrado", 1000, 4);
}
}
}
}
if(GetPlayerCash(i) != GetPlayerMoney(i))
{
ResetMoneyBar(i);//Resets the money in the original moneybar, Do not remove!
UpdateMoneyBar(i,GetPlayerCash(i));//Sets the money in the moneybar to the serverside cash, Do not remove!
}
if(!IsPlayerInAnyVehicle(i))
{
if(GetPlayerSpeed(i) > 250 && GetPlayerSpecialAction(i) != SPECIAL_ACTION_USEJETPACK)
{
if(PlayerInfo[i][Admin] == 0)
{
foreach(Player, j)
{
if(PlayerInfo[j][Admin] > 0)
{
format(gstring, sizeof(gstring), "AntCheat: O Jogador %s[%d] esta com suspeita de Speed Hack [%dKm/h] fique de olho nele.", PlayerName(i), i, GetPlayerSpeed(i));
SendClientMessage(j, COLOR_LIGHTRED, gstring);
}
}
}
}
}
if(dmsafe[i] == 3)
{
dmsafe[i] = 0;
format(gstring, sizeof(gstring), "Kick Space RP: O Jogador %s foi kickado automaticamente, Motivo: Matando em Area-Safe.", PlayerName(i));
SendClientMessageToAll(COLOR_LIGHTRED, gstring);
Kick(i);
}
if(EstaUsandoCelular[i] == true)
{
new ano,mes,dia;
getdate(ano, mes, dia);
gettime(HoraRoYal, MinutoRoYal, SegundoRoYal);
format(gstring, sizeof(gstring), "%02d:%02d", HoraRoYal, MinutoRoYal);
TextDrawSetString(TelaInicialCelular[14], gstring);
format(gstring, sizeof(gstring), "%02d/%02d/%04d", dia,mes,ano);
TextDrawSetString(TelaInicialCelular[20], gstring);
}
if(PlayerInfo[i][Vip] >= 1)
{
if(PlayerInfo[i][TempoVip] >= 1)
{
PlayerInfo[i][TempoVip] = PlayerInfo[i][TempoVip] - 1;
}
if(PlayerInfo[i][TempoVip] <= 0)
{
PlayerInfo[i][TempoVip] = 0;
PlayerInfo[i][Vip] = 0;
SendClientMessage(i, -1,"{FFDC33}=-=-=-=-=-=-=-= {FFFFFF}Info Vip{FFDC33} =-=-=-=-=-=-=-=");
SendClientMessage(i, -1,"{FFDC33}Info. {FFFFFF}Seu Vip Expirou, Renove-o com Um Staff Em Nosso Discord");
SendClientMessage(i, -1,"{FFDC33}Info. {FFFFFF}Caso Nao Queira Renovar nao Precisa Entrar em Contato Com um Admin.");
SendClientMessage(i, -1,"{FFDC33}=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=");
GameTextForPlayer(i, "~w~Seu Vip ~r~Expirou!!", 10000, 1);
}
}
}
return 1;
}
Boa noite a todos. Acabou me ocorrendo um problema com os checkpoints na profissão de caminhoneiro. Eu coloquei para marcar o local de entrega através do "SetPlayerCheckpoint", e até aí tava tudo ok, porém, notei que ao me aproximar de algum outro checkpoint e ele aparecer marcado no mini-mapa, o checkpoint anterior que estava setado como local da entrega simplesmente some do mini-mapa, como se fosse cancelado assim que o outro checkpoint aparece. Alguém tem alguma noção do que poderia causar isso? Desde já, agradeço a todas as respostas que forem dadas. Muito obrigado!
• Quem sou eu?
Meu nome é Fábio Stralioti, sou MBA em Análise e Desenvolvimento de Sistemas, trabalho com programação SA:MP desde 2012, estou retornando as atividades no meio. Possuo conhecimento em várias linguagens de programação. (Pawn, Php, Pascal e Flutter).
• Quais serviços eu realizo?
Desenvolvimento de sites;
Criação de GameModes;
Criação de FilterScripts;
Criação de Sistemas;
Correções de bugs.
• Como funciona meu trabalho?
Trabalho de forma simples e objetiva, trabalho com data de entrega prevista em contrato de prestação de serviços, feito para assegurar as duas partes do CONTRATADO e do CONTRATANTE, trabalho com 50% do valor do serviço antes do inicio do desenvolvimento e os outros 50% na data de entrega, após testes e correções. Não trabalho por TeamViewer ou AnyDesk.
• Serviços realizados?
Como dito acima estou retornando a desenvolver para o SA:MP, eu tinha muitas postagens de scripts no antigo fórum que foi desativado, assim eu perdi 99% dos scripts que já foi realizado, porém estarei criando alguns scripts gratuitos e estarei postando por aqui para ir atualizando o portfólio.
• Contato:
Possuo meios de contato de fácil acesso. Disponibilizei um número de WhatsApp somente para contato com os clientes de desenvolvimento e também pelo discord.
(44) 99954-0863
Discord: @fstraliotipawn
Boa boa rpzd,
Então por eu utilizar muitos TextDraws Players, acabei que atingi o limite, e alguma TextDraws Players não aparecem mais;
Porém pesquisando eu vi que tem um geito de burlar isso, usando uma include 'textdraw-streamer', então decidi incluí-la em meu Gamemode, após compilar, não deu um erro, nem warning, então fui para os testes, porém sem sucesso, Nenhuma TextDraw apareceu para mim depois que coloquei está include
Nem mesmo a tela de login, que usa TextDraw, apareceu.
Se alguém puder me dar alguma dica, se preciso definir algo em meu script, ou outra coisa, fico agradecido.
Alguém pode fazer um sistema de mostrar as horas e minutos em textodraw de Payday? Eu já fiz a Textdraw, só falta ela funcionar. Ela tá assim: 59:21 (demonstração), só preciso do looping pra fazer funcionar o tempo e mostrar na tela, ela é para o Player não global.
Boa tarde a todos. Tô com um probleminha onde o players simplesmente não sai da ação SPECIAL_ACTION_HANDSUP de forma alguma, e já tentei de tudo que é forma. Até agora, a única solução foi apertando o F. Seria algum erro com a própria ação? Existe alguma forma de resolver isso? Desde já, agreço a todos por cada uma das respostas, muito obrigado!
Como que faz para atualizar a Textdraw toda vez que o player ganhar moedas ou perder. A minha Textdraw é aquelas que fica lá em baixo e tem as informações do player, ela é para o player. É muito cansativo toda vez que fizer uma função nova ter que atualizar a Textdraw por uma stock.
Boa tarde pessoal! Gostaria que me tirassem uma dúvida a respeito do StreamDistance e DrawDistance. Eu já tenho um breve resumo sobre ambos, mas gostaria que me dissessem a diferença entre cada um, e como saber qual valor colocar (ao menos uma média boa). É bom colocar o mesmo valor para ambos? Se não, por quê? Desde já, agradeço cada uma das respostas que forem dadas. Muito obrigado!
Olá a todos, talvez alguns me conheçam outros não.
Meu nome é Fábio e fui um dos que contribuíam com conteúdos no antigo fórum.
Fiquei um tempo afastado porém estou voltando a produzir algumas coisas. Estou buscando estudos para entender as novas alterações, atualizações e tudo mais.
Fora isso gostaria de agradecer o @xbruno1000x pois me ensinou a fazer um if hehe.
Eu desenvolvi um sistema aqui para ajudar um colega que serve como base para vocês expandirem e usarem em vosso servidor.
O sistema é de moeda secundária, sempre foi muito difícil conter sistema desse gênero distribuído gratuitamente por ai.
No sistema consta somente armas e veículos para adquirirem com "CASH".