dudb 2.4 to save money/stats/whatever ERROR
#1

i did everything on topic http://forum.sa-mp.com/index.php?topic=4798.0
but i get a ERROR:

C:\Users\Michael\Desktop\test.pwn(85) : error 021: symbol already defined: "OnPlayerConnect"
C:\Users\Michael\Desktop\test.pwn(89) : error 021: symbol already defined: "OnPlayerCommandText"
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


2 Errors.
-------------------------------------------------------------------------------------------------------
I dont know how to fix it can somebody help me?
Reply
#2

maybe you added double of OnPlayerCommand and OnPlayerConnect check and delete one
Reply
#3

Quote:
Originally Posted by ByFukara
maybe you added double of OnPlayerCommand and OnPlayerConnect check and delete one
impossible this is my code:
-----------------------------------------------------------------------------------------------------
#include <a_samp>
// for the samp stuff
#include <dutils>
// for the functions dini and dudb need
#include <dudb>
// for the userdatabase, get dudb version 2.0 for this.
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define COLOR_SYSTEM 0xEFEFF7AA

new PLAYERLIST_authed[MAX_PLAYERS];
stock SystemMsg(playerid,msg[]) {
if ((IsPlayerConnected(playerid))&&(strlen(msg)>0)) {
SendClientMessage(playerid,COLOR_SYSTEM,msg);
}
return 1;
}

public OnPlayerCommandText(playerid,cmdtext[]) {
return false;
}

public OnPlayerConnect(playerid) {
return false;
}

/*
* This function will be useful when we need the playername
* © by DracoBlue 2006
*/
stock PlayerName(playerid) {
new name[255];
GetPlayerName(playerid, name, 255);
return name;
}
/*
* /register password
*
*/
dcmd_register(playerid,params[]) {

// The command shouldn't work if we already are authed
if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Already authed.");

// The command shouldn't work if an account with this
// nick already exists
if (udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Account already exists, please use '/login password'.");

// Did he forgot the password?
if (strlen(params)==0) return SystemMsg(playerid,"Correct usage: '/register password'");

// We save the money to the accstate
if (udb_Create(PlayerName(playerid),params)) return SystemMsg(playerid,"Account successfully created. Login with '/login password' now.");
return true;

}
/*
* /login password
*
*/
dcmd_login(playerid,params[]) {

// The command shouldn't work if we already are authed
if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Already authed.");

// The command shouldn't work if an account with this
// nick does not exists
if (!udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Account doesn't exist, please use '/register password'.");

// Did he forgot the password?
if (strlen(params)==0) return SystemMsg(playerid,"Correct usage: '/login password'");

if (udb_CheckLogin(PlayerName(playerid),params)) {
// Login was correct

// Following thing is the same like the missing SetPlayerCommand
GivePlayerMoney(playerid,dUserINT(PlayerName(playe rid)).("money")-GetPlayerMoney(playerid));

PLAYERLIST_authed[playerid]=true;

return SystemMsg(playerid,"Successfully authed!");
}
// Login was incorrect
return SystemMsg(playerid,"Login failed!");
}
public OnPlayerConnect(playerid) {
PLAYERLIST_authed[playerid]=false;
return false;
}
public OnPlayerCommandText(playerid,cmdtext[]) {
dcmd(login,5,cmdtext); // because login has 5 characters
dcmd(register,8,cmdtext); // because register has 8 characters
return false;
}
public OnPlayerDisconnect(playerid) {
if (PLAYERLIST_authed[playerid]) {
// Was loggedin, so save the data!
dUserSetINT(PlayerName(playerid)).("money",GetPlay erMoney(playerid));
}
PLAYERLIST_authed[playerid]=false;
return false;
}
Reply
#4

Quote:
Originally Posted by michaeldevel
impossible this is my code:
Impossible..? You just did it, you have two OnPlayerConnect and OnPlayerCommandText.
Reply
#5

Quote:
Originally Posted by Don Correlli
Quote:
Originally Posted by michaeldevel
impossible this is my code:
Impossible..? You just did it, you have two OnPlayerConnect and OnPlayerCommandText.
which i need to delete?
Reply
#6

The first ones.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)