OnPlayerLogin Stops working. (Not MySQL) [SOLVED] -
InActtive™ - 05.01.2013
SOLVED
SOLUTION:
Turns out one of my includes included a y_users.ini.. The y_users.ini had it's own forward on "OnPlayerLogin":
pawn Код:
OnPlayerLogin(playerid, yid);
All I did was replace the "OnPlayerLogin" in my gamemode script with "OnPlayerLogIn" and it worked. I had a feeling there was another one somewhere, just didn't know where.
Hiya, anyone have an idea why my OnPlayerLogin stopped working? My OnPlayerRegister works fine... Idk what's wrong..
================================================== ======================
Errors:
pawn Код:
(267) : error 025: function heading differs from prototype
(6272) : error 035: argument type mismatch (argument 2)
(6328) : error 035: argument type mismatch (argument 2)
(19354) : error 025: function heading differs from prototype
(Line: 267)
pawn Код:
forward OnPlayerLogin(playerid,password[]);
(Line: 6272)
pawn Код:
OnPlayerLogin(playerid,tmppass);
(Line: 632
pawn Код:
OnPlayerLogin(playerid,tmppass);
(Line: 19354)
pawn Код:
public OnPlayerLogin(playerid,password[])
Everything seems fine.. Idk what's wrong..
Re: OnPlayerLogin Stops working. (Not MySQL) -
zDevon - 05.01.2013
Change tmppass to tmppass[]. Without the brackets you are declaring it as an integer, while in your forward it is a string.
Edit: just make sure tmppass is a string where you created it.
Re: OnPlayerLogin Stops working. (Not MySQL) -
SchurmanCQC - 05.01.2013
Quote:
Originally Posted by zDevon
Change tmppass to tmppass[]. Without the brackets you are declaring it as an integer, while in your forward it is a string.
Edit: just make sure tmppass is a string where you created it.
|
No, you are
100% wrong.
Make sure that tmppass is declared as a string with a size, and isn't empty.
Re: OnPlayerLogin Stops working. (Not MySQL) -
zDevon - 05.01.2013
Quote:
Originally Posted by Schurman
No, you are 100% wrong.
Make sure that tmppass is declared as a string with a size, and isn't empty.
|
Wrong? You said the exact same thing as me.
Re: OnPlayerLogin Stops working. (Not MySQL) -
SchurmanCQC - 05.01.2013
Quote:
Originally Posted by zDevon
Wrong? You said the exact same thing as me.
|
No, I did not. You told him to rename tmppass to tmppass[], which is NOT what I said.
Think, for a minute. When he uses the tmppass parameter, he is INVOKING the method, not declaring the method.
Do not do this, the compiler would throw invalid syntax errors.
Re: OnPlayerLogin Stops working. (Not MySQL) -
InActtive™ - 05.01.2013
Quote:
Originally Posted by Schurman
No, you are 100% wrong.
Make sure that tmppass is declared as a string with a size, and isn't empty.
|
It's not empty.
pawn Код:
new tmppass[64]; // Here it is :p This code looking good?
new playername[MAX_PLAYER_NAME];
strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
GetPlayerName(playerid, playername, sizeof(playername));
if(strlen(playername) == 3)
{
if(strcmp(playername, "InActive", true) == 0)
{
return 0;
}
else
{
SendClientMessage(playerid, COLOR_LIGHTRED, "Sorry, that name is too short, please change it.");
Kick(playerid);
return 1;
}
}
Encrypt(tmppass);
OnPlayerLogin(playerid,tmppass);
}
else
{
SendClientMessage(playerid, COLOR_RED, "You chose to leave the server.");
Kick(playerid);
}
}
That's what the main part of it looks like.
Re: OnPlayerLogin Stops working. (Not MySQL) -
SchurmanCQC - 05.01.2013
Your indentation and the code given is confusing. It looks like you have an extra closing bracket between your calling of OnPlayerLogin, and else {
Re: OnPlayerLogin Stops working. (Not MySQL) -
InActtive™ - 05.01.2013
Sorry, I tried to edit it to make it more legitimate... The code is much more organized in Pawno than in this thread.
Just before you posted that, I was thinking to myself "Maybe I have 1 extra or missing bracket". I went ahead and removed that one and got other errors. That tells me I DO have an extra/missing bracket lying around somewhere, the code is massive, but I gotta do what I gotta do or else this code will never compile successfully again .-.
Do you have any way I can reach you via. IM while I search for this extra/missing bracket? Any way you can assist me or any method you know how to find them easily?
Re: OnPlayerLogin Stops working. (Not MySQL) -
zDevon - 05.01.2013
Quote:
Originally Posted by Schurman
No, I did not. You told him to rename tmppass to tmppass[], which is NOT what I said.
Think, for a minute. When he uses the tmppass parameter, he is INVOKING the method, not declaring the method.
Do not do this, the compiler would throw invalid syntax errors.
|
You missed my edit I see. I corrected myself before you even posted.
Re: OnPlayerLogin Stops working. (Not MySQL) -
InActtive™ - 05.01.2013
Just wanted to notify that I've edited my post.