Jump to content

Recommended Posts

So I'm trying to decide if making a points system from scratch is better than using the default system.

 

I'm trying to track PvP kills, PvE kills, and an entity kill, all having different points values.

 

I'm just looking for some input as to which way you all think would be better.

Share this post


Link to post
Share on other sites

Considering that the default system does not separate player kills from AI kills the choice seems pretty clear. If you want to track pvp kills separately you have to build your own system. 

 

Edit: It struck me that you could use the default system for AI kills and separate player kills into it's GUI thing. The idea seemed intriguing at first but it could get messy. Still recommend writing your own thing. 

Share this post


Link to post
Share on other sites
6 hours ago, mrcurry said:

Considering that the default system does not separate player kills from AI kills the choice seems pretty clear. If you want to track pvp kills separately you have to build your own system. 

 

Edit: It struck me that you could use the default system for AI kills and separate player kills into it's GUI thing. The idea seemed intriguing at first but it could get messy. Still recommend writing your own thing. 

I was looking at it and the EH "HandleScore" Could make it very easy to make a score system using the default.

Seeing as how it returns the object that triggered the score change. Just need to mess around with it, something that could be useful in the future.

Share this post


Link to post
Share on other sites

follow the script i put in this thread 

 

 

and modify it a little bit so it has a simple check if the dead unit was a player or not like this

on the server

killLimit = 3;

"killCheck" addPublicVariableEventHandler
{
	private ["_data"];
	_data = (_this select 1);
	_unit = (_data select 0);
	_killer = (_data select 1);
	_CID = owner _killer;
	_addKill = false;
	
  	if (!(isPlayer _unit)) then
    {
         //call your publicVaribleClient for your ai kills
    };
        
	if (side _unit == side _killer) then
	{
		_addKill = false;
	};
	
	if (_addKill) then
	{
		setKills = 1;
		_CID publicVariableClient "setKills";
	};
};


"killLimitCheck" addPublicVariableEventHandler
{
	_kills = (_this select 1);
	
	if (_kills >= killLimit) then
	{
		"KILL LIMIT REACHED" remoteExec ["hint"];
	};
};

on the client

kills = 0;
AI_kills = 0;

player addEventHandler ["Killed",
{
	_unit = (_this select 0);
	_killer = (_this select 1);
	killCheck = [_unit, _killer];
	publicVariableServer "killCheck";
}];


"setKills" addPublicVariableEventHandler
{
	_add = (_this select 1);
	
	kills = kills + _add;
	
	killLimitCheck = kills;
	publicVariableServer "killLimitCheck";
};

//add your addPublicVariableEventHandler for the AI kills

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×