Erro com Array ou variavel nao existe -
AlucardSnow - 18.01.2013
Eu pesquisei como arrumar mais nao consegui galera.
Os Erros
Код:
C:\Users\Cliente\Desktop\GM\RP\gamemodes\RP.pwn(270) : error 017: undefined symbol "Player"
C:\Users\Cliente\Desktop\GM\RP\gamemodes\RP.pwn(270) : warning 215: expression has no effect
C:\Users\Cliente\Desktop\GM\RP\gamemodes\RP.pwn(270) : error 001: expected token: ";", but found "]"
C:\Users\Cliente\Desktop\GM\RP\gamemodes\RP.pwn(270) : error 029: invalid expression, assumed zero
C:\Users\Cliente\Desktop\GM\RP\gamemodes\RP.pwn(270) : fatal error 107: too many error messages on one line
pawn Код:
// Linha 270
Player[playerid][Senha] = strval(inputtext);
Todo Codigo:
https://sampforum.blast.hk/showthread.php?tid=350855
Re: Erro com Array ou variavel nao existe -
HeyHoLetsGo - 18.01.2013
Vocк colocou essa variбvel abaixo do enumerador?
pawn Код:
new Player[MAX_PLAYERS][Informacoes];
Re: Erro com Array ou variavel nao existe -
AlucardSnow - 18.01.2013
sim Hey
Eu coloquei
pawn Код:
enum Informacoes
{
Senha,
Matou,
Morreu,
Dinheiro
}
new Player[MAX_PLAYERS][Informacoes];
new Erro[MAX_PLAYERS];
Re: Erro com Array ou variavel nao existe -
HeyHoLetsGo - 18.01.2013
Pode por seu cуdigo inteiro por gentileza?
Re: Erro com Array ou variavel nao existe -
tonisantolia - 18.01.2013
Sem o script inteiro nгo tem como saber
Re: Erro com Array ou variavel nao existe -
AlucardSnow - 18.01.2013
pawn Код:
// La encima
enum Informacoes
{
Senha,
Matou,
Morreu,
Dinheiro
}
new Player[MAX_PLAYERS][Informacoes];
new Erro[MAX_PLAYERS];
//
public OnGameModeExit()
{
DOF2_Exit();
return 1;
}
//
public OnPlayerConnect(playerid)
{
new arquivo[40], name[MAX_PLAYER_NAME]; //'arquivo' uma string para a format | 'name' para pegar o nome do playerid
GetPlayerName(playerid, name, 32); //Pega o nome do playerid
format(arquivo, 40, "Contas/%s.ini", name); //Formata o arquivo com o nome do playerid
if(DOF2_FileExists(arquivo)) //Verifica se a pasta existe
{ //Caso existir, irб retornar a dialog de Login
ShowPlayerDialog(playerid, DIALOG_LOGAR , DIALOG_STYLE_PASSWORD, "Logar", "Vocк й Registrado, digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar");
}
else //Caso o arquivo nгo exista
{ //Irб retornar a dialog de registro
ShowPlayerDialog(playerid, DIALOG_REGISTRO , DIALOG_STYLE_INPUT, "Registro", "Vocк ainda nгo й Registrado, digite uma senha para se registrar!", "Confirma", "Cancelar");
}
return 1;
}
//
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new arquivo[40], name[MAX_PLAYER_NAME]; //'arquivo' uma string para a format | 'name' para pegar o nome do playerid
GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid
format(arquivo, 40, "Contas/%s.ini", name); //Formata o arquivo com o nome do playerid
if(dialogid == DIALOG_REGISTRO)
{
if(!strval(inputtext)) //Verifica se o player digitou LETRAS, caso for true
{ //Retorna a dialog de registro novamente para ele digitar NЪMEROS
ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "Registro", "Digite apenas nъmeros!\nDigite sua senha novamente para se registrar!", "Confirma", "Cancelar");
return 1;
}
if(!response) //Verifica se ele clicar em 'Cancelar"
{ //Caso ele clicar em cancelar, irб retornar ao playerid KICK
Kick(playerid);
return 1;
}
else //Verifica se ele Confirma o Registro
{ //Caso for true, ira criar o arquivo na pasta CONTAS
Player[playerid][Senha] = strval(inputtext); //Player[playerid][Senha] vai ser igual ao que ele digitar na dialog Registro
DOF2_CreateFile(arquivo); //Vai criar o arquvivo na pasta Contas
DOF2_SetInt(arquivo, "Senha", Player[playerid][Senha]); //Vai salvar a senha do playerid
DOF2_SetInt(arquivo, "Matou", Player[playerid][Matou]); //Vai salvar quantas vezes ele matou
DOF2_SetInt(arquivo, "Morreu", Player[playerid][Morreu]); //Vai salvar quantas vezes ele morreu
DOF2_SetInt(arquivo, "Dinheiro", Player[playerid][Dinheiro]); //Vai salvar o dinheiro dele
DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo!
//Retornando a dialog de Login ao player no final para ele logar no server
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк se cadastrou, agora й sу logar com sua senha registrada!", "Confirma", "Cancelar");
}
}
if(dialogid == DIALOG_LOGAR)
{
if(!strval(inputtext)) //Verifica se o player digitou letras, caso for true
{ //Retorna a dialog de Login novamente para ele digitar NЪMEROS
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Digite apenas nъmeros!\nDigite sua senha cadastrada para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar");
return 1;
}
if(!response) //Verifica se ele clicar em 'Cancelar"
{ //Caso ele clicar em cancelar, irб retornar ao playerid KICK
Kick(playerid);
return 1;
}
else //Verifica se ele Confirma o Login
{ //Caso for true, ira verificar se o que ele digitar serб a mesma senha que ele se registrou anteriormente
Player[playerid][Senha] = DOF2_GetInt(arquivo, "Senha"); //Pega a senha do jogador no arquivo da conta
if(strval(inputtext) == Player[playerid][Senha]) //Se o que ele digitar for igual ao valor que carregou aqui em cima /\
{ //Retornarб os dados do player e apуs irб dar Spawn no mesmo
Player[playerid][Matou] = DOF2_GetInt(arquivo, "Matou"); //Pega quantos ele matou no arquivo
Player[playerid][Morreu] = DOF2_GetInt(arquivo, "Morreu"); //Pega quantos ele morreu no arquivo
Player[playerid][Dinheiro] = DOF2_GetInt(arquivo, "Dinheiro"); //Pega o dinheiro e iguala ao Player[playerid][Dinheiro]
GivePlayerMoney(playerid, Player[playerid][Dinheiro]); //Da o dinheiro carregado acima
SpawnPlayer(playerid); //Spawna o player
}
else //Caso ele digitar a senha errada
{
ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк digitou sua senha errado, digite-a novamente para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar");
Erro[playerid]++; //O erro vai aumentar cada vez que ele errar
if(Erro[playerid] == 5) //Quando chegar а 5 vezes, irб retornar a msg e o Ban
{
SendClientMessage(playerid, -1, "Vocк foi Kikado por errar 5 vezes a Senha!, contacte o Admin para retirar seu Ban!");
Kick(playerid);
return 1;
}
}
}
}
return 1;
}
Re: Erro com Array ou variavel nao existe -
HeyHoLetsGo - 18.01.2013
Quote:
Originally Posted by AlucardSnow
pawn Код:
// La encima enum Informacoes { Senha, Matou, Morreu, Dinheiro }
new Player[MAX_PLAYERS][Informacoes]; new Erro[MAX_PLAYERS]; // public OnGameModeExit() { DOF2_Exit(); return 1; } // public OnPlayerConnect(playerid) { new arquivo[40], name[MAX_PLAYER_NAME]; //'arquivo' uma string para a format | 'name' para pegar o nome do playerid GetPlayerName(playerid, name, 32); //Pega o nome do playerid format(arquivo, 40, "Contas/%s.ini", name); //Formata o arquivo com o nome do playerid if(DOF2_FileExists(arquivo)) //Verifica se a pasta existe { //Caso existir, irб retornar a dialog de Login ShowPlayerDialog(playerid, DIALOG_LOGAR , DIALOG_STYLE_PASSWORD, "Logar", "Vocк й Registrado, digite sua senha para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar"); } else //Caso o arquivo nгo exista { //Irб retornar a dialog de registro ShowPlayerDialog(playerid, DIALOG_REGISTRO , DIALOG_STYLE_INPUT, "Registro", "Vocк ainda nгo й Registrado, digite uma senha para se registrar!", "Confirma", "Cancelar"); } return 1; } // public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { new arquivo[40], name[MAX_PLAYER_NAME]; //'arquivo' uma string para a format | 'name' para pegar o nome do playerid GetPlayerName(playerid, name, 32); //Para pegar o nome do playerid format(arquivo, 40, "Contas/%s.ini", name); //Formata o arquivo com o nome do playerid if(dialogid == DIALOG_REGISTRO) { if(!strval(inputtext)) //Verifica se o player digitou LETRAS, caso for true { //Retorna a dialog de registro novamente para ele digitar NЪMEROS ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "Registro", "Digite apenas nъmeros!\nDigite sua senha novamente para se registrar!", "Confirma", "Cancelar"); return 1; } if(!response) //Verifica se ele clicar em 'Cancelar" { //Caso ele clicar em cancelar, irб retornar ao playerid KICK Kick(playerid); return 1; } else //Verifica se ele Confirma o Registro { //Caso for true, ira criar o arquivo na pasta CONTAS Player[playerid][Senha] = strval(inputtext); //Player[playerid][Senha] vai ser igual ao que ele digitar na dialog Registro DOF2_CreateFile(arquivo); //Vai criar o arquvivo na pasta Contas DOF2_SetInt(arquivo, "Senha", Player[playerid][Senha]); //Vai salvar a senha do playerid DOF2_SetInt(arquivo, "Matou", Player[playerid][Matou]); //Vai salvar quantas vezes ele matou DOF2_SetInt(arquivo, "Morreu", Player[playerid][Morreu]); //Vai salvar quantas vezes ele morreu DOF2_SetInt(arquivo, "Dinheiro", Player[playerid][Dinheiro]); //Vai salvar o dinheiro dele DOF2_SaveFile(); //E finalmente salvando o arquivo, sem essa funзгo o arquivo nгo serб salvo! //Retornando a dialog de Login ao player no final para ele logar no server ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк se cadastrou, agora й sу logar com sua senha registrada!", "Confirma", "Cancelar"); } } if(dialogid == DIALOG_LOGAR) { if(!strval(inputtext)) //Verifica se o player digitou letras, caso for true { //Retorna a dialog de Login novamente para ele digitar NЪMEROS ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Digite apenas nъmeros!\nDigite sua senha cadastrada para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar"); return 1; } if(!response) //Verifica se ele clicar em 'Cancelar" { //Caso ele clicar em cancelar, irб retornar ao playerid KICK Kick(playerid); return 1; } else //Verifica se ele Confirma o Login { //Caso for true, ira verificar se o que ele digitar serб a mesma senha que ele se registrou anteriormente Player[playerid][Senha] = DOF2_GetInt(arquivo, "Senha"); //Pega a senha do jogador no arquivo da conta if(strval(inputtext) == Player[playerid][Senha]) //Se o que ele digitar for igual ao valor que carregou aqui em cima /\ { //Retornarб os dados do player e apуs irб dar Spawn no mesmo Player[playerid][Matou] = DOF2_GetInt(arquivo, "Matou"); //Pega quantos ele matou no arquivo Player[playerid][Morreu] = DOF2_GetInt(arquivo, "Morreu"); //Pega quantos ele morreu no arquivo Player[playerid][Dinheiro] = DOF2_GetInt(arquivo, "Dinheiro"); //Pega o dinheiro e iguala ao Player[playerid][Dinheiro] GivePlayerMoney(playerid, Player[playerid][Dinheiro]); //Da o dinheiro carregado acima SpawnPlayer(playerid); //Spawna o player } else //Caso ele digitar a senha errada { ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_PASSWORD, "Logar", "Vocк digitou sua senha errado, digite-a novamente para logar!\nSe errar 5 vezes sua conta serб banida!", "Confirma", "Cancelar"); Erro[playerid]++; //O erro vai aumentar cada vez que ele errar if(Erro[playerid] == 5) //Quando chegar а 5 vezes, irб retornar a msg e o Ban { SendClientMessage(playerid, -1, "Vocк foi Kikado por errar 5 vezes a Senha!, contacte o Admin para retirar seu Ban!"); Kick(playerid); return 1; } } } } return 1; }
|
Vocк colocou as:
pawn Код:
#include a_samp
#include DOF2
Nй? ._.
Re: Erro com Array ou variavel nao existe -
AlucardSnow - 18.01.2013
Sim Hey coloquei elas e coloquei a Include DOF2 na pasta Includes...
Tudo certinho com isso
Re: Erro com Array ou variavel nao existe -
ViniBorn - 18.01.2013
Vocк tem certeza de que vai usar apenas nъmeros na senha?
Re: Erro com Array ou variavel nao existe -
AlucardSnow - 18.01.2013
Quote:
Originally Posted by Viniborn
Vocк tem certeza de que vai usar apenas nъmeros na senha?
|
Pois й eu vi isso e ia tentar arrumar
Mais se puder me ajuda ai a colocar caracterias e numeros ?