01.04.2012, 01:51
Hello!
I am having a problem with the includes.I am using SATDM.
The problem is in the house icons and biz icons.Its not apprearing when i add #include <JunkBuster> ( JunkBuster 11 )
But when i add older version of JunkBuster.inc then the icons are coming but JunkBuster is not working properly its kicking and banning innocent players.Please give me a solution
JunkBuster 11 include
JunkBuster Older version include
I am having a problem with the includes.I am using SATDM.
The problem is in the house icons and biz icons.Its not apprearing when i add #include <JunkBuster> ( JunkBuster 11 )
But when i add older version of JunkBuster.inc then the icons are coming but JunkBuster is not working properly its kicking and banning innocent players.Please give me a solution
JunkBuster 11 include
pawn Код:
/*
+---------------------------------------------------------------------------+
¦ JunkBuster Anti-Cheat ¦
¦ by ¦
¦ Double-O-Seven ¦
¦ ¦
¦ This is the JunkBuster Client include. Use it in all of your scripts! ¦
¦ IMPORTANT: ¦
¦ JunkBuster filterscripts must get loaded before all other scripts! ¦
¦ Be careful: You must run the JunkBuster filterscript or none of the ¦
¦ functions below will work! ¦
+---------------------------------------------------------------------------+
*/
#if defined _JB_included
#endinput
#endif
#define _JB_included
#include <a_samp>
//==============================================================================
// For better compatibility for example with LuxAdmin.
#if !defined USE_NEW_JB_FUNCTIONS
#define USE_NEW_JB_FUNCTIONS true // Set to false if you don't want to use them or if you are using LuxAdmin
#endif
//==============================================================================
#define PUBLIC:%0(%1) forward %0(%1); \
public %0(%1)
// Doesn't work for functions with arrays as arguments or no arguments, also doesn't work for functions with default arguments.
// But it make some things easier.
#define EXTERN:%0<%1>(%2) \
stock JBC_%0 (%2) \
return CallRemoteFunction ("JB_"#%0, #%1, %2)
// Make the whole sh*t consistent.
#define EXTERN2:%0(%1) \
stock JBC_%0(%1)
#if !defined isnull
#define isnull(%1) \
((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
#endif
/*
native GetPlayerFPS(playerid);
native GetPlayerSpeed(playerid,get3d=false);
native AntiBugKill(playerid);
native CheckText(playerid,text[]);
native GodModeCheck(playerid);
native AllowWeaponForPlayer(playerid,weaponid);
native ForbidWeaponForPlayer(playerid,weaponid,antibugkill);
native ResetForbiddenWeaponsForPlayer(playerid,antibugkill);
native IsForbiddenWeapon(weaponid);
native IsForbiddenWeaponForPlayer(playerid,weaponid);
native AddWeaponPickup(Float:x,Float:y,Float:z,weaponid,ammo,worldid);
native PlayerReportPlayer(playerid,reporterid,report[]);
native SetPlayerSpawnKillProtected(playerid,set);
native JunkBusterChrome(playerid,comment[]="No comment");
native SetPlayerMoney(playerid,money);
native IpBanCheck(playerid);
native BanIp(ipstring[]);
native UnbanIp(ipstring[]);
native AddNameToBlacklist(name[]);
native RemoveNameFromBlacklist(name[]);
native AddPlayerToBlacklist(playerid);
native IsPlayerOnBlacklist(playerid);
native AddNameToWhitelist(name[]);
native RemoveNameFromWhitelist(name[]);
native AddPlayerToWhitelist(playerid);
native IsPlayerOnWhitelist(playerid);
native TempBanCheck(playerid);
native TempBan(playerid,days,reason[]);
native DeleteTempBan(name[]);
native SetJBVar(var[],value);
native GetJBVar(var[]);
*/
//==============================================================================
/*
You have to add these callbacks yourself and you can do with what you want:
BUT: You don't have to use these callbacks at all... I just thought they can be helpful for whatever, I don't know.
*/
forward OnJunkBusterBan (playerid, reason []);
forward OnJunkBusterKick (playerid, reason []);
forward OnJunkBusterReport (playerid, reason [], details []);
//You SHOULD add this function to your adminscript etc. to guarantee admin immunity and correct working reports!
forward IsPlayerAdminCall (playerid);
/*
Put for example this into your gamemode (example for Godfather):
public IsPlayerAdminCall (playerid)
return (PlayerInfo [playerid] [pAdmin] >= 1);
AGAIN: This is an example and may only work for the Godfather script.
You have to create a function which fits to your OWN gamemode!
*/
//==============================================================================
//Don't let noobs crash your server by abusing the % symbol in inputtext.
public OnDialogResponse (playerid, dialogid, response, listitem, inputtext [])
{
new len = strlen (inputtext);
for (new i = 0; i < len; ++i)
if (inputtext [i] == '%')
inputtext [i] = '#';
if (!len)
return CallLocalFunction ("JBC_OnDialogResponse", "iiiis", playerid, dialogid, response, listitem, "\1");
return CallLocalFunction ("JBC_OnDialogResponse", "iiiis", playerid, dialogid, response, listitem, inputtext);
}
//OnDialogResponse
#if defined _ALS_OnDialogResponse
#undef OnDialogResponse
#else
#define _ALS_OnDialogResponse
#endif
#define OnDialogResponse JBC_OnDialogResponse
forward JBC_OnDialogResponse (playerid, dialogid, response, listitem, inputtext []);
//==============================================================================
// EXISTING functions which JunkBuster MUST overwrite!
EXTERN:PutPlayerInVehicle <iii>(playerid, vehicleid, seatid);
EXTERN:GivePlayerMoney <ii>(playerid, amount);
EXTERN:ResetPlayerMoney <i>(playerid);
EXTERN:GetPlayerMoney <i>(playerid);
EXTERN:SetPlayerPos <ifff>(playerid, Float: x, Float: y, Float: z);
EXTERN:SetPlayerPosFindZ <ifff>(playerid, Float: x, Float: y, Float: z);
EXTERN:SetVehiclePos <ifff>(vehicleid, Float: x, Float: y, Float: z);
EXTERN:SetVehicleVelocity <ifff>(vehicleid, Float: x, Float: y, Float: z);
EXTERN:GivePlayerWeapon <iii>(playerid, weaponid, ammo);
EXTERN:ResetPlayerWeapons <i>(playerid);
EXTERN:SetPlayerHealth <df>(playerid, Float: health);
EXTERN:SetPlayerArmour <df>(playerid, Float: armour);
EXTERN:SetVehicleHealth <df>(vehicleid, Float: health);
EXTERN:TogglePlayerControllable <ii>(playerid, toggle);
EXTERN:TogglePlayerSpectating <ii>(playerid, toggle);
EXTERN:SetPlayerSpecialAction <ii>(playerid, actionid);
EXTERN:SetPlayerRaceCheckpoint <iifffffff>(playerid, type, Float: x, Float: y, Float: z, Float: nextx, Float: nexty, Float: nextz, Float: size);
EXTERN:AddPlayerClass <iffffiiiiii>(modelid, Float: spawn_x, Float: spawn_y, Float: spawn_z, Float: z_angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
EXTERN:AddPlayerClassEx <iiffffiiiiii>(teamid, modelid, Float: spawn_x, Float: spawn_y, Float: spawn_z, Float: z_angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
EXTERN:SetSpawnInfo <iiiffffiiiiii>(playerid, team, skin, Float: x, Float: y, Float: z, Float: rotation, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
EXTERN:DestroyPickup <i>(pickupid);
EXTERN:RepairVehicle <i>(vehicleid);
EXTERN:CreateVehicle <iffffiii>(vehicletype, Float:x, Float: y, Float: z, Float: rotation, color1, color2, respawn_delay);
EXTERN:AddStaticVehicle <iffffii>(modelid, Float: spawn_x, Float: spawn_y, Float: spawn_z, Float: z_angle, color1, color2);
EXTERN:AddStaticVehicleEx <iffffiii>(modelid, Float: spawn_x, Float: spawn_y, Float: spawn_z, Float: z_angle, color1, color2, respawn_delay);
EXTERN:AddVehicleComponent <ii>(vehicleid, componentid);
EXTERN:RemoveVehicleComponent <ii>(vehicleid, componentid);
EXTERN2:AddStaticPickup (model, type, Float: x, Float: y, Float: z, virtualworld = 0)
return CallRemoteFunction ("JB_AddStaticPickup", "iifffi", model, type, x, y, z, virtualworld);
EXTERN2:CreatePickup (model, type, Float: x, Float: y, Float: z, virtualworld = 0)
return CallRemoteFunction ("JB_CreatePickup", "iifffi", model, type, x, y, z, virtualworld);
EXTERN2:UsePlayerPedAnims ()
{
CallRemoteFunction ("OnUsePlayerPedAnims", "");
return UsePlayerPedAnims ();
}
EXTERN2:SetPlayerName (playerid, name [])
{
if (SetPlayerName (playerid, name))
{
CallRemoteFunction ("OnSetPlayerName", "is", playerid, name);
return 1;
}
return 0;
}
//NEW functions given to you by JunkBuster!
#if USE_NEW_JB_FUNCTIONS == true
EXTERN:GetPlayerFPS <i>(playerid);
EXTERN:AntiBugKill <i>(playerid);//This basically respawns the player.
EXTERN:GodModeCheck <i>(playerid);
EXTERN:AllowWeaponForPlayer <ii>(playerid, weaponid);
EXTERN:ForbidWeaponForPlayer <iii>(playerid, weaponid, antibugkill);
EXTERN:IsForbiddenWeapon <i>(weaponid);
EXTERN:IsForbiddenWeaponForPlayer <ii>(playerid, weaponid);
EXTERN:SetPlayerSpawnKillProtected <ii>(playerid, set);
EXTERN:SetPlayerMoney <ii>(playerid, money);
EXTERN2:GetPlayerSpeed (playerid, get3d = false)
return CallRemoteFunction ("JB_GetPlayerSpeed", "ii", playerid, get3d);
EXTERN2:CheckText (playerid, text [])//return 1: something forbidden found, return 0: everything OK!
return (!isnull (text) ? CallRemoteFunction ("CheckText", "is", playerid, text) : 0);
EXTERN2:ResetFWeaponsForPlayer (playerid, antibugkill)
return CallRemoteFunction ("ResetForbiddenWeaponsForPlayer", "ii", playerid, antibugkill);
EXTERN2:AddWeaponPickup (Float: x, Float: y, Float: z, weaponid, ammo, worldid = 0)
return CallRemoteFunction ("AddWeaponPickup", "fffiii", x, y, z, weaponid, ammo, worldid);
EXTERN2:JunkBusterChrome (playerid, comment [] = "No comment")
return CallRemoteFunction ("JunkBusterChrome", "is", playerid, isnull (comment) ? ("No comment") : comment);
EXTERN2:SetJBVar (var [], value)
return (!isnull (var) ? CallRemoteFunction ("SetJBVar", "si", var, value) : 0);
EXTERN2:GetJBVar (var [])
return (!isnull (var) ? CallRemoteFunction ("GetJBVar", "s", var) : -1);
EXTERN2:IpBanCheck (playerid)
return CallRemoteFunction ("IpBanCheck", "i", playerid);
EXTERN2:BanIp (ipstring [])
return (!isnull (ipstring) ? CallRemoteFunction ("BanIp", "s", ipstring) : 0);
EXTERN2:UnbanIp (ipstring [])
return (!isnull (ipstring) ? CallRemoteFunction ("UnbanIp", "s", ipstring) : 0);
EXTERN2:AddNameToBlacklist (name [])
return (!isnull (name) ? CallRemoteFunction ("AddNameToBlacklist", "s", name) : 0);
EXTERN2:RemoveNameFromBlacklist (name [])
return (!isnull (name) ? CallRemoteFunction ("RemoveNameFromBlacklist", "s", name) : 0);
EXTERN2:AddPlayerToBlacklist (playerid)
return CallRemoteFunction ("AddPlayerToBlacklist", "i", playerid);
EXTERN2:IsPlayerOnBlacklist (playerid)
return CallRemoteFunction ("IsPlayerOnBlacklist", "i", playerid);
EXTERN2:AddNameToWhitelist (name [])
return (!isnull (name) ? CallRemoteFunction ("AddNameToWhitelist", "s", name) : 0);
EXTERN2:RemoveNameFromWhitelist (name [])
return (!isnull (name) ? CallRemoteFunction ("RemoveNameFromWhitelist", "s", name) : 0);
EXTERN2:AddPlayerToWhitelist (playerid)
return CallRemoteFunction ("AddPlayerToWhitelist", "i", playerid);
EXTERN2:IsPlayerOnWhitelist (playerid)
return CallRemoteFunction ("IsPlayerOnWhitelist", "i", playerid);
EXTERN2:TempBanCheck (playerid)
return CallRemoteFunction ("TempBanCheck", "i", playerid);
EXTERN2:TempBan (playerid, days, reason [])
return CallRemoteFunction ("TempBan", "iis", playerid, days, isnull (reason) ? ("No reason") : reason);
EXTERN2:DeleteTempBan (name [])
return (!isnull (name) ? CallRemoteFunction ("DeleteTempBan", "s", name) : 0);
/*
Use PlayerReportPlayer (playerid, reporterid, report []) to let JunkBuster know
that a player has reported another player.
DESCRIPTION:
- 'playerid' is the ID of the player who has been reported. Maybe a cheater? Let it JunkBuster know!
- 'reporterid' is the ID of the player who has reported the other player.
- 'report' is the report. If it contains 'god' or 'mod' JunkBuster will check the 'playerid' for godmode.
IMPORTANT:
JunkBuster searches for keywords "god" and "health". And if found the reported player will get checked for godmode.
However JunkBuster will not react on every report. A player can't get spammed with GodModeCheck.
Spamming GodModeCheck on a player can end up with a kick/ban even when the player is innoncent. (Tested)
*/
stock PlayerReportPlayer (playerid, reporterid, report [])
{
if (IsPlayerConnected (playerid) && IsPlayerConnected (reporterid) && !isnull (report))
return CallRemoteFunction ("OnPlayerReport", "iis", playerid, reporterid, report);
return 0;
}
#endif
//==============================================================================
#if defined _ALS_PutPlayerInVehicle
#undef PutPlayerInVehicle
#else
#define _ALS_PutPlayerInVehicle
#endif
#define PutPlayerInVehicle JBC_PutPlayerInVehicle
#if defined _ALS_GivePlayerMoney
#undef GivePlayerMoney
#else
#define _ALS_GivePlayerMoney
#endif
#define GivePlayerMoney JBC_GivePlayerMoney
#if defined _ALS_ResetPlayerMoney
#undef ResetPlayerMoney
#else
#define _ALS_ResetPlayerMoney
#endif
#define ResetPlayerMoney JBC_ResetPlayerMoney
#if defined _ALS_GetPlayerMoney
#undef GetPlayerMoney
#else
#define _ALS_GetPlayerMoney
#endif
#define GetPlayerMoney JBC_GetPlayerMoney
#if defined _ALS_SetPlayerPos
#undef SetPlayerPos
#else
#define _ALS_SetPlayerPos
#endif
#define SetPlayerPos JBC_SetPlayerPos
#if defined _ALS_SetPlayerPosFindZ
#undef SetPlayerPosFindZ
#else
#define _ALS_SetPlayerPosFindZ
#endif
#define SetPlayerPosFindZ JBC_SetPlayerPosFindZ
#if defined _ALS_SetVehiclePos
#undef SetVehiclePos
#else
#define _ALS_SetVehiclePos
#endif
#define SetVehiclePos JBC_SetVehiclePos
#if defined _ALS_GivePlayerWeapon
#undef GivePlayerWeapon
#else
#define _ALS_GivePlayerWeapon
#endif
#define GivePlayerWeapon JBC_GivePlayerWeapon
#if defined _ALS_ResetPlayerWeapons
#undef ResetPlayerWeapons
#else
#define _ALS_ResetPlayerWeapons
#endif
#define ResetPlayerWeapons JBC_ResetPlayerWeapons
#if defined _ALS_SetPlayerHealth
#undef SetPlayerHealth
#else
#define _ALS_SetPlayerHealth
#endif
#define SetPlayerHealth JBC_SetPlayerHealth
#if defined _ALS_SetPlayerArmour
#undef SetPlayerArmour
#else
#define _ALS_SetPlayerArmour
#endif
#define SetPlayerArmour JBC_SetPlayerArmour
#if defined _ALS_SetVehicleHealth
#undef SetVehicleHealth
#else
#define _ALS_SetVehicleHealth
#endif
#define SetVehicleHealth JBC_SetVehicleHealth
#if defined _ALS_TogglePlayerControllable
#undef TogglePlayerControllable
#else
#define _ALS_TogglePlayerControllable
#endif
#define TogglePlayerControllable JBC_TogglePlayerControllable
#if defined _ALS_TogglePlayerSpectating
#undef TogglePlayerSpectating
#else
#define _ALS_TogglePlayerSpectating
#endif
#define TogglePlayerSpectating JBC_TogglePlayerSpectating
#if defined _ALS_SetVehicleVelocity
#undef SetVehicleVelocity
#else
#define _ALS_SetVehicleVelocity
#endif
#define SetVehicleVelocity JBC_SetVehicleVelocity
#if defined _ALS_SetPlayerSpecialAction
#undef SetPlayerSpecialAction
#else
#define _ALS_SetPlayerSpecialAction
#endif
#define SetPlayerSpecialAction JBC_SetPlayerSpecialAction
#if defined _ALS_SetPlayerRaceCheckpoint
#undef SetPlayerRaceCheckpoint
#else
#define _ALS_SetPlayerRaceCheckpoint
#endif
#define SetPlayerRaceCheckpoint JBC_SetPlayerRaceCheckpoint
#if defined _ALS_AddStaticPickup
#undef AddStaticPickup
#else
#define _ALS_AddStaticPickup
#endif
#define AddStaticPickup JBC_AddStaticPickup
#if defined _ALS_CreatePickup
#undef CreatePickup
#else
#define _ALS_CreatePickup
#endif
#define CreatePickup JBC_CreatePickup
#if defined _ALS_DestroyPickup
#undef DestroyPickup
#else
#define _ALS_DestroyPickup
#endif
#define DestroyPickup JBC_DestroyPickup
#if defined _ALS_AddPlayerClass
#undef AddPlayerClass
#else
#define _ALS_AddPlayerClass
#endif
#define AddPlayerClass JBC_AddPlayerClass
#if defined _ALS_AddPlayerClassEx
#undef AddPlayerClassEx
#else
#define _ALS_AddPlayerClassEx
#endif
#define AddPlayerClassEx JBC_AddPlayerClassEx
#if defined _ALS_SetSpawnInfo
#undef SetSpawnInfo
#else
#define _ALS_SetSpawnInfo
#endif
#define SetSpawnInfo JBC_SetSpawnInfo
#if defined _ALS_UsePlayerPedAnims
#undef UsePlayerPedAnims
#else
#define _ALS_UsePlayerPedAnims
#endif
#define UsePlayerPedAnims JBC_UsePlayerPedAnims
#if defined _ALS_SetPlayerName
#undef SetPlayerName
#else
#define _ALS_SetPlayerName
#endif
#define SetPlayerName JBC_SetPlayerName
#if defined _ALS_RepairVehicle
#undef RepairVehicle
#else
#define _ALS_RepairVehicle
#endif
#define RepairVehicle JBC_RepairVehicle
#if defined _ALS_CreateVehicle
#undef CreateVehicle
#else
#define _ALS_CreateVehicle
#endif
#define CreateVehicle JBC_CreateVehicle
#if defined _ALS_AddStaticVehicle
#undef AddStaticVehicle
#else
#define _ALS_AddStaticVehicle
#endif
#define AddStaticVehicle JBC_AddStaticVehicle
#if defined _ALS_AddStaticVehicleEx
#undef AddStaticVehicleEx
#else
#define _ALS_AddStaticVehicleEx
#endif
#define AddStaticVehicleEx JBC_AddStaticVehicleEx
#if defined _ALS_AddVehicleComponent
#undef AddVehicleComponent
#else
#define _ALS_AddVehicleComponent
#endif
#define AddVehicleComponent JBC_AddVehicleComponent
#if defined _ALS_RemoveVehicleComponent
#undef RemoveVehicleComponent
#else
#define _ALS_RemoveVehicleComponent
#endif
#define RemoveVehicleComponent JBC_RemoveVehicleComponent
#if USE_NEW_JB_FUNCTIONS == true
#define GetPlayerFPS JBC_GetPlayerFPS
#define GetPlayerSpeed JBC_GetPlayerSpeed
#define AntiBugKill JBC_AntiBugKill
#define CheckText JBC_CheckText
#define GodModeCheck JBC_GodModeCheck
#define AllowWeaponForPlayer JBC_AllowWeaponForPlayer
#define ForbidWeaponForPlayer JBC_ForbidWeaponForPlayer
#define ResetForbiddenWeaponsForPlayer JBC_ResetFWeaponsForPlayer
#define IsForbiddenWeapon JBC_IsForbiddenWeapon
#define IsForbiddenWeaponForPlayer JBC_IsForbiddenWeaponForPlayer
#define AddWeaponPickup JBC_AddWeaponPickup
#define SetPlayerSpawnKillProtected JBC_SetPlayerSpawnKillProtected
#define JunkBusterChrome JBC_Chrome
#define SetJBVar JBC_SetJBVar
#define GetJBVar JBC_GetJBVar
#define IpBanCheck JBC_IpBanCheck
#define BanIp JBC_BanIp
#define UnbanIp JBC_UnbanIp
#define AddNameToBlacklist JBC_AddNameToBlacklist
#define RemoveNameFromBlacklist JBC_RemoteNameFromBlacklist
#define AddPlayerToBlacklist JBC_AddNameToBlacklist
#define IsPlayerOnBlacklist JBC_IsPlayerOnBlacklist
#define AddNameToWhitelist JBC_AddNameToWhitelist
#define RemoveNameFromWhitelist JBC_RemoteNameFromWhitelist
#define AddPlayerToWhitelist JBC_AddNameToWhitelist
#define IsPlayerOnWhitelist JBC_IsPlayerOnWhitelist
#define TempBanCheck JBC_TempBanCheck
#define TempBan JBC_TempBan
#define DeleteTempBan JBC_DeleteTempBan
#endif
JunkBuster Older version include
pawn Код:
/*
+---------------------------------------------------------------------------+
¦ JunkBuster Anti-Cheat ¦
¦ by ¦
¦ Double-O-Seven ¦
¦ ¦
¦ This is the JunkBuster Client include. Use it in all of your scripts! ¦
¦ Be careful: You must run the JunkBuster filterscript or none of the ¦
¦ functions below will work! ¦
+---------------------------------------------------------------------------+
*/
#if defined _JB_included
#endinput
#endif
#define _JB_included
#include <a_samp>
#define Public:%0(%1) forward %0(%1); \
public %0(%1)
#if !defined isnull
#define isnull(%1) \
((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
#endif
/*
native GetPlayerFPS(playerid);
native GetPlayerSpeed(playerid,get3d=false);
native AntiBugKill(playerid);
native CheckText(playerid,text[]);
native GodModeCheck(playerid);
native AllowWeaponForPlayer(playerid,weaponid);
native ForbidWeaponForPlayer(playerid,weaponid,antibugkill);
native ResetForbiddenWeaponsForPlayer(playerid,antibugkill);
native IsForbiddenWeapon(weaponid);
native IsWeaponForbiddenForPlayer(playerid,weaponid);
native AddWeaponPickup(Float:x,Float:y,Float:z,weaponid,ammo,worldid);
native PlayerReportPlayer(playerid,reporterid,report[]);
native SetPlayerSpawnKillProtected(playerid,set);
*/
//==============================================================================
/*
You have to add these callbacks yourself and you can do with what you want:
BUT: You don't have to use these callbacks at all... I just thought they can be helpful for whatever, I don't know.
*/
forward OnJunkBusterBan(playerid,reason[]);
forward OnJunkBusterKick(playerid,reason[]);
forward OnJunkBusterReport(playerid,reason[],details[]);
//You SHOULD add this function to your adminscript etc. to guarantee admin immunity and correct working reports!
forward IsPlayerAdminCall(playerid);
/*
Put for example this into your gamemode (example for Godfather):
public IsPlayerAdminCall(playerid)
return (PlayerInfo[playerid][pAdmin] >= 1);
AGAIN: This is an example and may only work for the Godfather script.HTTP
You have to create a function which fits to your OWN gamemode!
*/
//==============================================================================
//Don't let noobs crash your server by abusing the % symbol in inputtext.
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new len=strlen(inputtext);
for(new i=0;i<len;i++)
if(inputtext[i]=='%')
inputtext[i]='#';
if(!len)
return CallLocalFunction("JB_OnDialogResponse","iiiis",playerid, dialogid, response, listitem, "\1");
return CallLocalFunction("JB_OnDialogResponse","iiiis",playerid, dialogid, response, listitem, inputtext);
}
//OnDialogResponse
#if defined _ALS_OnDialogResponse
#undef OnDialogResponse
#else
#define _ALS_OnDialogResponse
#endif
#define OnDialogResponse JB_OnDialogResponse
forward JB_OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
//==============================================================================
//EXISTING functions which JunkBuster MUST overwrite!
stock JBC_PutPlayerInVehicle(playerid,vehicleid,seatid)
return CallRemoteFunction("JB_PutPlayerInVehicle","iii",playerid,vehicleid,seatid);
stock JBC_GivePlayerMoney(playerid,amount)
return CallRemoteFunction("JB_GivePlayerMoney","ii",playerid,amount);
stock JBC_ResetPlayerMoney(playerid)
return CallRemoteFunction("JB_ResetPlayerMoney","i",playerid);
stock JBC_GetPlayerMoney(playerid)
return CallRemoteFunction("JB_GetPlayerMoney","i",playerid);
stock JBC_SetPlayerPos(playerid,Float:x,Float:y,Float:z)
return CallRemoteFunction("JB_SetPlayerPos","ifff",playerid,x,y,z);
stock JBC_SetVehiclePos(vehicleid,Float:x,Float:y,Float:z)
return CallRemoteFunction("JB_SetVehiclePos","ifff",vehicleid,x,y,z);
stock JBC_SetVehicleVelocity(vehicleid,Float:x,Float:y,Float:z)
return CallRemoteFunction("JB_SetVehicleVelocity","ifff",vehicleid,x,y,z);
stock JBC_GivePlayerWeapon(playerid,weaponid,ammo)
return CallRemoteFunction("JB_GivePlayerWeapon","iii",playerid,weaponid,ammo);
stock JBC_ResetPlayerWeapons(playerid)
return CallRemoteFunction("JB_ResetPlayerWeapons","i",playerid);
stock JBC_SetPlayerHealth(playerid,Float:health)
return CallRemoteFunction("JB_SetPlayerHealth","if",playerid,health);
stock JBC_SetPlayerArmour(playerid,Float:armour)
return CallRemoteFunction("JB_SetPlayerArmour","if",playerid,armour);
stock JBC_SetVehicleHealth(vehicleid,Float:health)
return CallRemoteFunction("JB_SetVehicleHealth","if",vehicleid,health);
stock JBC_TogglePlayerControllable(playerid,toggle)
return CallRemoteFunction("JB_TogglePlayerControllable","ii",playerid,toggle);
stock JBC_SetPlayerSpecialAction(playerid,actionid)
return CallRemoteFunction("JB_SetPlayerSpecialAction","ii",playerid,actionid);
stock JBC_SetPlayerRaceCheckpoint(playerid,type,Float:x,Float:y,Float:z,Float:nextx,Float:nexty,Float:nextz,Float:size)
return CallRemoteFunction("JB_SetPlayerRaceCheckpoint","iifffffff",playerid,type,x,y,z,nextx,nexty,nextz,size);
stock JBC_AddStaticPickup(model,type,Float:X,Float:Y,Float:Z,virtualworld=0)
return CallRemoteFunction("JB_AddStaticPickup","iifffi",model,type,X,Y,Z,virtualworld);
stock JBC_CreatePickup(model,type,Float:X,Float:Y,Float:Z,virtualworld=0)
return CallRemoteFunction("JB_CreatePickup","iifffi",model,type,X,Y,Z,virtualworld);
stock JBC_DestroyPickup(pickupid)
return CallRemoteFunction("JB_DestroyPickup","i",pickupid);
stock JBC_AddPlayerClass(modelid,Float:spawn_x,Float:spawn_y,Float:spawn_z,Float:z_angle,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo)
return CallRemoteFunction("JB_AddPlayerClass","iffffiiiiii",modelid,spawn_x,spawn_y,spawn_z,z_angle,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo);
stock JBC_AddPlayerClassEx(teamid,modelid,Float:spawn_x,Float:spawn_y,Float:spawn_z,Float:z_angle,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo)
return CallRemoteFunction("JB_AddPlayerClassEx","iiffffiiiiii",teamid,modelid,spawn_x,spawn_y,spawn_z,z_angle,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo);
stock JBC_SetSpawnInfo(playerid,team,skin,Float:x,Float:y,Float:z,Float:rotation,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo)
return CallRemoteFunction("JB_SetSpawnInfo","iiiffffiiiiii",playerid,team,skin,x,y,z,rotation,weapon1,weapon1_ammo,weapon2,weapon2_ammo,weapon3,weapon3_ammo);
//NEW functions given to you by JunkBuster!
stock JBC_GetPlayerFPS(playerid)
return CallRemoteFunction("GetPlayerFPS","i",playerid);
stock JBC_GetPlayerSpeed(playerid,get3d=false)
return CallRemoteFunction("JB_GetPlayerSpeed","ii",playerid,get3d);
stock JBC_AntiBugKill(playerid)//This basically respawns the player.
return CallRemoteFunction("AntiBugKill","i",playerid);
stock JBC_CheckText(playerid,text[])//return 1: something forbidden found, return 0: everything OK!
return CallRemoteFunction("CheckText","is",playerid,text);
stock JBC_GodModeCheck(playerid)
return CallRemoteFunction("GodModeCheck","i",playerid);
stock JBC_AllowWeaponForPlayer(playerid,weaponid)
return CallRemoteFunction("AllowWeaponForPlayer","ii",playerid,weaponid);
stock JBC_ForbidWeaponForPlayer(playerid,weaponid,antibugkill)
return CallRemoteFunction("ForbidWeaponForPlayer","iii",playerid,weaponid,antibugkill);
stock JBC_ResetFWeaponsForPlayer(playerid,antibugkill)
return CallRemoteFunction("ResetForbiddenWeaponsForPlayer","ii",playerid,antibugkill);
stock JBC_IsForbiddenWeapon(weaponid)
return CallRemoteFunction("IsForbiddenWeapon","i",weaponid);
stock JBC_IsWeaponForbiddenForPlayer(playerid,weaponid)
return CallRemoteFunction("IsForbiddenWeaponForPlayer","ii",playerid,weaponid);
stock JBC_AddWeaponPickup(Float:x,Float:y,Float:z,weaponid,ammo,worldid=0)
return CallRemoteFunction("AddWeaponPickup","fffiii",x,y,z,weaponid,ammo,worldid);
stock JBC_SetPlayerSpawnKillProtected(playerid,set)
return CallRemoteFunction("SetPlayerSpawnKillProtected","ii",playerid,set);
/*
Use PlayerReportPlayer(playerid,reporterid,report[]) to let JunkBuster know
that a player has reported another player.
DESCRIPTION:
- 'playerid' is the ID of the player who has been reported. Maybe a cheater? Let it JunkBuster know!
- 'reporterid' is the ID of the player who has reported the other player.
- 'report' is the report. If it contains 'god' or 'mod' JunkBuster will check the 'playerid' for godmode.
IMPORTANT:
JunkBuster will not react on every report. A player can't get spammed with GodModeCheck.
Spamming GodModeCheck on a player can end up with a kick/ban even when the player is innoncent. (Tested)
*/
stock PlayerReportPlayer(playerid,reporterid,report[])
{
if(IsPlayerConnected(playerid) && IsPlayerConnected(reporterid) && !isnull(report))
return CallRemoteFunction("OnPlayerReport","iis",playerid,reporterid,report);
return 0;
}
//==============================================================================
#define PutPlayerInVehicle JBC_PutPlayerInVehicle
#define GivePlayerMoney JBC_GivePlayerMoney
#define ResetPlayerMoney JBC_ResetPlayerMoney
#define GetPlayerMoney JBC_GetPlayerMoney
#define SetPlayerPos JBC_SetPlayerPos
#define SetVehiclePos JBC_SetVehiclePos
#define GivePlayerWeapon JBC_GivePlayerWeapon
#define ResetPlayerWeapons JBC_ResetPlayerWeapons
#define SetPlayerHealth JBC_SetPlayerHealth
#define SetPlayerArmour JBC_SetPlayerArmour
#define SetVehicleHealth JBC_SetVehicleHealth
#define GetPlayerFPS JBC_GetPlayerFPS
#define GetPlayerSpeed JBC_GetPlayerSpeed
#define TogglePlayerControllable JBC_TogglePlayerControllable
#define SetVehicleVelocity JBC_SetVehicleVelocity
#define SetPlayerSpecialAction JBC_SetPlayerSpecialAction
#define SetPlayerRaceCheckpoint JBC_SetPlayerRaceCheckpoint
#define AddStaticPickup JBC_AddStaticPickup
#define CreatePickup JBC_CreatePickup
#define DestroyPickup JBC_DestroyPickup
#define AddPlayerClass JBC_AddPlayerClass
#define AddPlayerClassEx JBC_AddPlayerClassEx
#define SetSpawnInfo JBC_SetSpawnInfo
#define AntiBugKill JBC_AntiBugKill
#define CheckText JBC_CheckText
#define GodModeCheck JBC_GodModeCheck
#define AllowWeaponForPlayer JBC_AllowWeaponForPlayer
#define ForbidWeaponForPlayer JBC_ForbidWeaponForPlayer
#define ResetForbiddenWeaponsForPlayer JBC_ResetFWeaponsForPlayer
#define IsForbiddenWeapon JBC_IsForbiddenWeapon
#define IsForbiddenWeaponForPlayer JBC_IsForbiddenWeaponForPlayer
#define AddWeaponPickup JBC_AddWeaponPickup
#define SetPlayerSpawnKillProtected JBC_SetPlayerSpawnKillProtected