Add +1
#1

How to I add +1 in my code below, If I do /rep to a player? I'm using Luxadmin and it save as using #include <ldudb>

This is what I converted.
pawn Код:
dcmd_rep(playerid,params[])
{
        new repID, repName[MAX_PLAYER_NAME],name[24],str[128],str1[128];
        if(reptimer[playerid] > 0) return SendClientMessage(playerid, white,"{FF0000}You have already gave someone a rep. Please wait before using it again");
        if(sscanf(params,"u",repID)) return SendClientMessage(playerid, white,"{FFFF00}USAGE: /rep [PlayerID]");
        if(!IsPlayerConnected(repID)) return SendClientMessage(playerid, white,"{FF0000}>>Player is not online");
        if(repID == playerid) return SendClientMessage(playerid, white,"{FF0000}>> You can't give yourself a reputation");
        reptimer[playerid] = SetTimerEx("reptimer1",1200000,true,"i",playerid);
        GetPlayerName(playerid,name,24);
        GetPlayerName(repID,repName,sizeof(repName));
        format(str,sizeof(str),"%s(%d) has gave 1 reputation point to you.",name,playerid);
        SendClientMessage(repID,green,str);
        format(str1,sizeof(str1),"You have gave %s(%d) 1 reputation point.",repName,repID);
        SendClientMessage(playerid,green,str1);
        return 1;
}
Newbienoob code. using Y_INI
pawn Код:
CMD:rep(playerid,params[])
{
        new repID, repName[MAX_PLAYER_NAME],name[24],str[128],str1[128];
        if(reptimer[playerid] > 0) return SendClientMessage(playerid,red,"You have already gave someone a rep. Please wait before using it again.");
        if(sscanf(params,"u",repID)) return SendClientMessage(playerid,red,"USAGE: /rep [playerid]");
        if(!IsPlayerConnected(repID)) return SendClientMessage(playerid,red,"Player is not online!");
        if(repID == playerid) return SendClientMessage(playerid,red,"You can't give yourself a rep!");
        new INI:file = INI_Open(repPath(repID));
        INI_SetTag(file,"Reps");
        INI_WriteInt(file,"Reputations",pInfo[repID][Reps]+1);
        INI_Close(file);
        pInfo[repID][Reps]++;
        reptimer[playerid] = SetTimerEx("reptimer1",900000,true,"i",playerid);
        GetPlayerName(playerid,name,24);
        GetPlayerName(repID,repName,sizeof(repName));
        format(str,sizeof(str),"%s(%d) has gave 1 reputation point to you.",name,playerid);
        SendClientMessage(repID,green,str);
        format(str1,sizeof(str1),"You have gave %s(%d) 1 reputation point.",repName,repID);
        SendClientMessage(playerid,green,str1);
        return 1;
}
Reply
#2

pawn Код:
dcmd_rep(playerid,params[])
{
        new repID, repName[MAX_PLAYER_NAME],name[24],str[128],str1[128];
        if(reptimer[playerid] > 0) return SendClientMessage(playerid, white,"{FF0000}You have already gave someone a rep. Please wait before using it again");
        if(sscanf(params,"u",repID)) return SendClientMessage(playerid, white,"{FFFF00}USAGE: /rep [PlayerID]");
        if(!IsPlayerConnected(repID)) return SendClientMessage(playerid, white,"{FF0000}>>Player is not online");
        if(repID == playerid) return SendClientMessage(playerid, white,"{FF0000}>> You can't give yourself a reputation");
        pInfo[repID][Reps]++;
        reptimer[playerid] = SetTimerEx("reptimer1",1200000,true,"i",playerid);
        GetPlayerName(playerid,name,24);
        GetPlayerName(repID,repName,sizeof(repName));
        format(str,sizeof(str),"%s(%d) has gave 1 reputation point to you.",name,playerid);
        SendClientMessage(repID,green,str);
        format(str1,sizeof(str1),"You have gave %s(%d) 1 reputation point.",repName,repID);
        SendClientMessage(playerid,green,str1);
        return 1;
}
Reply
#3

Quote:
Originally Posted by mobiliz
Посмотреть сообщение
pawn Код:
dcmd_rep(playerid,params[])
{
        new repID, repName[MAX_PLAYER_NAME],name[24],str[128],str1[128];
        if(reptimer[playerid] > 0) return SendClientMessage(playerid, white,"{FF0000}You have already gave someone a rep. Please wait before using it again");
        if(sscanf(params,"u",repID)) return SendClientMessage(playerid, white,"{FFFF00}USAGE: /rep [PlayerID]");
        if(!IsPlayerConnected(repID)) return SendClientMessage(playerid, white,"{FF0000}>>Player is not online");
        if(repID == playerid) return SendClientMessage(playerid, white,"{FF0000}>> You can't give yourself a reputation");
        pInfo[repID][Reps]++;
        reptimer[playerid] = SetTimerEx("reptimer1",1200000,true,"i",playerid);
        GetPlayerName(playerid,name,24);
        GetPlayerName(repID,repName,sizeof(repName));
        format(str,sizeof(str),"%s(%d) has gave 1 reputation point to you.",name,playerid);
        SendClientMessage(repID,green,str);
        format(str1,sizeof(str1),"You have gave %s(%d) 1 reputation point.",repName,repID);
        SendClientMessage(playerid,green,str1);
        return 1;
}
Warning. Hopefully to get this right. Thanks!!

pawn Код:
error 017: undefined symbol "pInfo"
warning 215: expression has no effect
error 001: expected token: ";", but found "]"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line
Reply
#4

try
pawn Код:
enum RepID
{
     Reps
}
then under:
new PlayerInfo[MAX_PLAYERS][RepID];
Reply
#5

Quote:
Originally Posted by mobiliz
Посмотреть сообщение
try
pawn Код:
enum RepID
{
     Reps
}
then under:
new PlayerInfo[MAX_PLAYERS][RepID];
Thanks man no warning, but I haven't tested it yet. But for making sure. Is this will give me +1 ?
Coz it didn't see
Код:
,"Reputations",pInfo[repID][Reps]+1);
+1?
Reply
#6

Well you can do like
pInfo[repID][Reps]++; (it will +1 to your rep)

then when you disconnect you can use the saving system to save the ammount of reps you got on pInfo[repID][Reps].

But I think the thing you said should work aswell.
Reply
#7

Quote:
Originally Posted by kbalor
Посмотреть сообщение
Thanks man no warning, but I haven't tested it yet. But for making sure. Is this will give me +1 ?
Coz it didn't see
Код:
INI_WriteInt(file,"Reputations",pInfo[repID][Reps]+1);
+1?
You can do that, But you can also do...

Код:
INI_WriteInt(file,"Reputations",pInfo[repID][Reps]++);
Then to add a specific number such as 4

Код:
INI_WriteInt(file,"Reputations",pInfo[repID][Reps]+= 4);
From Samp.Wiki

Код:
+, -, *, /, %, ++, --, ==, !=, <, >, <=, >=, ! and =
Reply
#8

Quote:
Originally Posted by mobiliz
Посмотреть сообщение
Well you can do like
pInfo[repID][Reps]++; (it will +1 to your rep)

then when you disconnect you can use the saving system to save the ammount of reps you got on pInfo[repID][Reps].

But I think the thing you said should work aswell.
Thanks man I have already define Rep under my SavePlayerStats(playerid) in my Luxadmin, something like this
Код:
   	dUserSetINT(PlayerName2(playerid)).("Reputation",AccInfo[playerid][Reps]);
. It should save my reputations after I do leave/exit or quit Anyway, thanks! +rep
Reply
#9

I'm glad to help, if you need anything else ask me and I will see if I can help you more.
Reply
#10

Quote:
Originally Posted by Never Forgive
Посмотреть сообщение
You can do that, But you can also do...

Код:
INI_WriteInt(file,"Reputations",pInfo[repID][Reps]++);
Then to add a specific number such as 4

Код:
INI_WriteInt(file,"Reputations",pInfo[repID][Reps]+= 4);
From Samp.Wiki

Код:
+, -, *, /, %, ++, --, ==, !=, <, >, <=, >=, ! and =
Wow, thanks for the info. I could use this in future. If I want to change +1 to higher value +rep man!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)