To fix the issue of shooting clan members I've added the following friendly fire's plugin method:
bool IsClanMember(BasePlayer player, BasePlayer possibleMember)
{
if (Clans == null || !Clans.IsLoaded)
return false;
var playerClan = Clans.Call<string>("GetClanOf", player);
var otherPlayerClan = Clans.Call<string>("GetClanOf", possibleMember);
if (String.IsNullOrEmpty(otherPlayerClan) || String.IsNullOrEmpty(playerClan))
{
return false;
}
return playerClan == otherPlayerClan;
}
and then added an "if" in onPlayerAttack:
if(IsClanMember(attacker, target)) {
return;
}
It worked for me, but when this plugin update, I'll lose the configuration and will have to add it manually again. Did anyone found a better way to fix that?
bool IsClanMember(BasePlayer player, BasePlayer possibleMember)
{
if (Clans == null || !Clans.IsLoaded)
return false;
var playerClan = Clans.Call<string>("GetClanOf", player);
var otherPlayerClan = Clans.Call<string>("GetClanOf", possibleMember);
if (String.IsNullOrEmpty(otherPlayerClan) || String.IsNullOrEmpty(playerClan))
{
return false;
}
return playerClan == otherPlayerClan;
}
and then added an "if" in onPlayerAttack:
if(IsClanMember(attacker, target)) {
return;
}
It worked for me, but when this plugin update, I'll lose the configuration and will have to add it manually again. Did anyone found a better way to fix that?