[SOLVED]Kills/Deaths Value Not Increasing
#1

I'm trying to make the value of both Kills/Deaths increase +1. (Kills +1 For killer, Deaths +1 for the person that died.) Why won't the value go up? (I'm using DINI btw) Help would be much appreciated.

Код:
enum pInfo
{
 	Kills,
 	Deaths,
	Logged
}
new PlayerInfo[MAX_PLAYERS][pInfo];

public OnPlayerDeath( playerid, killerid, reason )
{
	new name[MAX_PLAYER_NAME];
	if(IsPlayerConnected(playerid))
	{
		GetPlayerName(playerid, name, sizeof(name));
		format(file, sizeof(file), "/Users/%s.ini", name);
		if(PlayerInfo[playerid][Logged] == 1) dini_IntSet(file, "Deaths", dini_Int(file, "Deaths")+1);
	}
	if(IsPlayerConnected(killerid))
	{
		GetPlayerName(killerid, name, sizeof(name));
		format(file, sizeof(file), "/Users/%s.ini", name);
		if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "Kills", dini_Int(file, "Kills")+1);
		if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "WantedLvl", dini_Int(file, "WantedLvl")+1);
	}
	return 1;
}

Reply
#2

try this:
pawn Код:
enum pInfo
{
    Kills,
    Deaths,
    Logged
}
new PlayerInfo[MAX_PLAYERS][pInfo];

public OnPlayerDeath( playerid, killerid, reason )
{
  SendDeathMessage(killerid,playerid,reason);
 
    //Death
    SetPlayerWantedLevel(playerid, 0);

    if(IsPlayerConnected(killerid) && killerid != INVALID_PLAYER_ID)
    {
        SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid)++);
        SetPlayerScore(killerid, GetPlayerScore(killerid)++);
    }

    new name[MAX_PLAYER_NAME];
    if(IsPlayerConnected(playerid))
    {
        GetPlayerName(playerid, name, sizeof(name));
        format(file, sizeof(file), "/Users/%s.ini", name);
        if(PlayerInfo[playerid][Logged] == 1) dini_IntSet(file, "Deaths", dini_Int(file, "Deaths")++);
    }
    if(IsPlayerConnected(killerid))
    {
        GetPlayerName(killerid, name, sizeof(name));
        format(file, sizeof(file), "/Users/%s.ini", name);
        if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "Kills", dini_Int(file, "Kills")++);
        if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "WantedLvl", dini_Int(file, "WantedLvl")++);
    }
    return 1;
}
Reply
#3

Quote:
Originally Posted by the_chaoz
try this:
pawn Код:
enum pInfo
{
    Kills,
    Deaths,
    Logged
}
new PlayerInfo[MAX_PLAYERS][pInfo];

public OnPlayerDeath( playerid, killerid, reason )
{
  SendDeathMessage(killerid,playerid,reason);
 
    //Death
    SetPlayerWantedLevel(playerid, 0);

    if(IsPlayerConnected(killerid) && killerid != INVALID_PLAYER_ID)
    {
        SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid)++);
        SetPlayerScore(killerid, GetPlayerScore(killerid)++);
    }

    new name[MAX_PLAYER_NAME];
    if(IsPlayerConnected(playerid))
    {
        GetPlayerName(playerid, name, sizeof(name));
        format(file, sizeof(file), "/Users/%s.ini", name);
        if(PlayerInfo[playerid][Logged] == 1) dini_IntSet(file, "Deaths", dini_Int(file, "Deaths")++);
    }
    if(IsPlayerConnected(killerid))
    {
        GetPlayerName(killerid, name, sizeof(name));
        format(file, sizeof(file), "/Users/%s.ini", name);
        if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "Kills", dini_Int(file, "Kills")++);
        if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "WantedLvl", dini_Int(file, "WantedLvl")++);
    }
    return 1;
}
Код:
C:\Program Files\Rockstar Games\GTA San Andreas\SAMP 0.3a\gamemodes\KickBack.pwn(639) : error 022: must be lvalue (non-constant)
C:\Program Files\Rockstar Games\GTA San Andreas\SAMP 0.3a\gamemodes\KickBack.pwn(640) : error 022: must be lvalue (non-constant)
C:\Program Files\Rockstar Games\GTA San Andreas\SAMP 0.3a\gamemodes\KickBack.pwn(648) : error 022: must be lvalue (non-constant)
C:\Program Files\Rockstar Games\GTA San Andreas\SAMP 0.3a\gamemodes\KickBack.pwn(654) : error 022: must be lvalue (non-constant)
C:\Program Files\Rockstar Games\GTA San Andreas\SAMP 0.3a\gamemodes\KickBack.pwn(655) : error 022: must be lvalue (non-constant)
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


5 Errors.
Reply
#4

Quote:
Originally Posted by Seif_
Use his script but replace the ++ with +1.
Also, you don't need to check if the player is INVALID_PLAYER_ID if you're already checking if he's connected.
I was asking for help on this part of the code:

Код:
new name[MAX_PLAYER_NAME];
	if(IsPlayerConnected(playerid))
	{
		GetPlayerName(playerid, name, sizeof(name));
		format(file, sizeof(file), "/Users/%s.ini", name);
		if(PlayerInfo[playerid][Logged] == 1) dini_IntSet(file, "Deaths", dini_Int(file, "Deaths")+1);
	}
	if(IsPlayerConnected(killerid))
	{
		GetPlayerName(killerid, name, sizeof(name));
		format(file, sizeof(file), "/Users/%s.ini", name);
		if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "Kills", dini_Int(file, "Kills")+1);
		if(PlayerInfo[killerid][Logged] == 1) dini_IntSet(file, "WantedLvl", dini_Int(file, "WantedLvl")+1);
	}
	return 1;
}
Reply
#5

ammm lol? they told u all just paste the maded code replace ++ with +1 and try if it work
Reply
#6

Quote:
Originally Posted by Lajko1
ammm lol? they told u all just paste the maded code replace ++ with +1 and try if it work
I already tried it like that... It still doesn't work...

EDIT: Thanks for the help, I fixed it a different way..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)