Adding filterscipt to Gamemode
#1

thsi filterscript dont have anti team kill. my gamemode does.

Код:
#include <a_samp>

new lasthit[MAX_PLAYERS];

public OnFilterScriptInit()
{
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
	    SetPlayerTeam(i, 0);
 	}
	return 1;
}

public OnFilterScriptExit()
{
    for(new i = 0; i < MAX_PLAYERS; i++)
	{
	    SetPlayerTeam(i, -1);
 	}
	return 1;
}

public OnPlayerConnect(playerid)
{
	SetPlayerTeam(playerid, 0);
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    lasthit[playerid] = -1;
	return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	if(lasthit[playerid] == -1)
	{
	    SendDeathMessage(INVALID_PLAYER_ID, playerid, reason);
	    return 1;
	}
	if(lasthit[playerid] != -1)
 	{
 	    SendDeathMessage(lasthit[playerid],playerid,GetPlayerWeapon(lasthit[playerid]));
 	    return 1;
 	}
 	lasthit[playerid] = -1;
	return 1;
}
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
	if(issuerid != INVALID_PLAYER_ID)
	{
	    //filterscript
		if(weaponid == 24 || weaponid == 25 || weaponid == 26 || weaponid == 27 || weaponid == 33 || weaponid == 34 || weaponid == 38)
  		{
   			new tmp; tmp=random(48); // 1/3 Change
			switch(tmp)
			{
 				case 0:  { ApplyAnimation(issuerid,"PED","DAM_armL_frmBK",4.0,0,0,0,1,1); }
		 		case 1:  { }
		 		case 2:  { }
		 		case 3:  { ApplyAnimation(issuerid,"PED","DAM_armR_frmBK",4.0,0,0,0,1,1); }
		 		case 4:  { }
		 		case 5:  { }
		 		case 6:  { ApplyAnimation(issuerid,"PED","DAM_LegL_frmBK",4.0,0,0,0,1,1); }
		 		case 7:  { }
		 		case 8:  { }
		 		case 9:  { ApplyAnimation(issuerid,"PED","DAM_LegR_frmBK",4.0,0,0,0,1,1); }
		 		case 10: { }
		 		case 11: { }
		 		case 12: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmBK",4.0,0,0,0,1,1); }
		 		case 13: { }
		 		case 14: { }
		 		case 15: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmRT",4.0,0,0,0,1,1); }
		 		case 16: { }
		 		case 17: { }
		 		case 18: { ApplyAnimation(issuerid,"PED","DAM_armL_frmFT",4.0,0,0,0,1,1); }
		 		case 19: { }
		 		case 20: { }
		 		case 21: { ApplyAnimation(issuerid,"PED","DAM_armL_frmLT",4.0,0,0,0,1,1); }
		 		case 22: { }
		 		case 23: { }
		 		case 24: { ApplyAnimation(issuerid,"PED","DAM_LegL_frmFT",4.0,0,0,0,1,1); }
		 		case 25: { }
		 		case 26: { }
		 		case 27: { ApplyAnimation(issuerid,"PED","DAM_LegR_frmFT",4.0,0,0,0,1,1); }
		 		case 28: { }
		 		case 29: { }
		 		case 30: { ApplyAnimation(issuerid,"PED","DAM_LegL_frmLT",4.0,0,0,0,1,1); }
		 		case 31: { }
		 		case 32: { }
		 		case 33: { ApplyAnimation(issuerid,"PED","DAM_LegR_frmRT",4.0,0,0,0,1,1); }
		 		case 34: { }
		 		case 35: { }
		 		case 36: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmFT",4.0,0,0,0,1,1); }
		 		case 37: { }
		 		case 38: { }
		 		case 39: { ApplyAnimation(issuerid,"PED","DAM_armR_frmFT",4.0,0,0,0,1,1); }
		 		case 40: { }
		 		case 41: { }
		 		case 42: { ApplyAnimation(issuerid,"PED","DAM_armR_frmRT",4.0,0,0,0,1,1); }
		 		case 43: { }
		 		case 44: { }
		 		case 45: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmLT",4.0,0,0,0,1,1); }
		 		case 46: { }
		 		case 47: { }
			}
			//return 1;
		}
		//hi

		
			}
			return 1;
			}
this si filterscript



Код:
public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
	// anti-team-attack
    if(gTeam[issuerid] == TEAM_USA && gTeam[playerid] == TEAM_USA)
	{
	     GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_EURASIA && gTeam[playerid] == TEAM_EURASIA)
	{
	     GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_ARAB && gTeam[playerid] == TEAM_ARAB)
	{
	     GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_SOVIET && gTeam[playerid] == TEAM_SOVIET)
	{
	     GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_AUS && gTeam[playerid] == TEAM_AUS)
	{
	     GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }

if(issuerid != INVALID_PLAYER_ID)
	{
	    //filterscript
		if(weaponid == 24 || weaponid == 25 || weaponid == 26 || weaponid == 27 || weaponid == 33 || weaponid == 34 || weaponid == 38)
  		{
   			new tmp; tmp=random(48); // 1/3 Change
			switch(tmp)
			{
 				case 0:  { ApplyAnimation(issuerid,"PED","DAM_armL_frmBK",4.0,0,0,0,1,1); }
		 		case 1:  { }
		 		case 2:  { }
		 		case 3:  { ApplyAnimation(issuerid,"PED","DAM_armR_frmBK",4.0,0,0,0,1,1); }
		 		case 4:  { }
		 		case 5:  { }
		 		case 6:  { ApplyAnimation(issuerid,"PED","DAM_LegL_frmBK",4.0,0,0,0,1,1); }
		 		case 7:  { }
		 		case 8:  { }
		 		case 9:  { ApplyAnimation(issuerid,"PED","DAM_LegR_frmBK",4.0,0,0,0,1,1); }
		 		case 10: { }
		 		case 11: { }
		 		case 12: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmBK",4.0,0,0,0,1,1); }
		 		case 13: { }
		 		case 14: { }
		 		case 15: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmRT",4.0,0,0,0,1,1); }
		 		case 16: { }
		 		case 17: { }
		 		case 18: { ApplyAnimation(issuerid,"PED","DAM_armL_frmFT",4.0,0,0,0,1,1); }
		 		case 19: { }
		 		case 20: { }
		 		case 21: { ApplyAnimation(issuerid,"PED","DAM_armL_frmLT",4.0,0,0,0,1,1); }
		 		case 22: { }
		 		case 23: { }
		 		case 24: { ApplyAnimation(issuerid,"PED","DAM_LegL_frmFT",4.0,0,0,0,1,1); }
		 		case 25: { }
		 		case 26: { }
		 		case 27: { ApplyAnimation(issuerid,"PED","DAM_LegR_frmFT",4.0,0,0,0,1,1); }
		 		case 28: { }
		 		case 29: { }
		 		case 30: { ApplyAnimation(issuerid,"PED","DAM_LegL_frmLT",4.0,0,0,0,1,1); }
		 		case 31: { }
		 		case 32: { }
		 		case 33: { ApplyAnimation(issuerid,"PED","DAM_LegR_frmRT",4.0,0,0,0,1,1); }
		 		case 34: { }
		 		case 35: { }
		 		case 36: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmFT",4.0,0,0,0,1,1); }
		 		case 37: { }
		 		case 38: { }
		 		case 39: { ApplyAnimation(issuerid,"PED","DAM_armR_frmFT",4.0,0,0,0,1,1); }
		 		case 40: { }
		 		case 41: { }
		 		case 42: { ApplyAnimation(issuerid,"PED","DAM_armR_frmRT",4.0,0,0,0,1,1); }
		 		case 43: { }
		 		case 44: { }
		 		case 45: { ApplyAnimation(issuerid,"PED","DAM_stomach_frmLT",4.0,0,0,0,1,1); }
		 		case 46: { }
		 		case 47: { }
			}
			//return 1;
		}
		//hi

		
			}
			return 1;
			}
				// admin anti-slap
    new Float:x, Float:y, Float:z;
	new Float:gX, Float:gY, Float:gZ;
	GetPlayerPos(issuerid, gX, gY, gZ);
	if(PlayerInfo[issuerid][OnDuty] == 0 && PlayerInfo[playerid][OnDuty] == 1 && IsPlayerInRangeOfPoint(playerid, 10.5, gX, gY, gZ))
	{
    SetPlayerHealth(playerid, 100000000.0);
	GameTextForPlayer(issuerid,"~p~warning!~n~~w~do not attack~n~~w~on duty admins~n~~p~stop that!", 3000, 3);
    GetPlayerPos(issuerid,x,y,z); SetPlayerPos(issuerid,x,y,z+10);
    }

   	if(PlayerInfo[playerid][OnDuty] == 1)
	{
    SetPlayerHealth(playerid, 100000000.0);
    }
			return 1;
			}
Reply
#2

pawn Код:
// anti-team-attack
    if(gTeam[issuerid] == TEAM_USA && gTeam[playerid] == TEAM_USA)
    {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_EURASIA && gTeam[playerid] == TEAM_EURASIA)
    {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_ARAB && gTeam[playerid] == TEAM_ARAB)
    {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_SOVIET && gTeam[playerid] == TEAM_SOVIET)
    {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
    if(gTeam[issuerid] == TEAM_AUS && gTeam[playerid] == TEAM_AUS)
    {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
can be simplified to

pawn Код:
// anti-team-attack
    if(gTeam[issuerid] == gTeam[playerid]) {
         GameTextForPlayer(issuerid,"~r~do not team attack!", 3000, 3);
    }
Reply
#3

The filterscipt dont work. it have no Effect when i put in the gamemode
Reply
#4

Well at your samp-server.exe does it tell you that filterscript is loaded or not?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)