Day of Defeat Plugins Community
This site is an archive — everything is readable and downloadable, nothing can be posted. Admin
Archive › Old Forum Threads › Help › Scripting Help › Camping sniper punish - Plz help
5 posts, 3 people · 898 views Thread Rating: ★★★★★
closedCamping sniper punish - Plz help
Started by Dr.G on 03-23-2008, 05:24 PM
Dr.G
started this thread
Posts: 776
Threads: 75
Joined: Nov 2007
03-23-2008, 05:24 PM #1

hey guys i found this plugin http://forums.alliedmods.net/showthread.php?p=13072 and liked the idea, so i made some small changes a got it working for dod, almost. I can get the client to drop the weapon but not to get the melee.rnrnThe thing with the melee i got from the eviladmin plugin and tryed to fit it in and it almost looks like its working i get these error when i try to complie it:rnrn

Your plugin failed to compile! Read the errors below:rnrnWelcome to the AMX Mod X 1.76-300 Compiler.rnCopyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Teamrnrn/home/groups/amxmodx/tmp3/phpIbXZxN.sma(44) : warning 217: loose indentationrn/home/groups/amxmodx/tmp3/phpIbXZxN.sma(44) : error 076: syntax error in the expression, or invalid function callrn/home/groups/amxmodx/tmp3/phpIbXZxN.sma(49) : warning 217: loose indentationrn/home/groups/amxmodx/tmp3/phpIbXZxN.sma(52) : error 076: syntax error in the expression, or invalid function callrn/home/groups/amxmodx/tmp3/phpIbXZxN.sma(56) : warning 217: loose indentationrnrn2 Errors.rnCould not locate output file /home/groups/amxmodx/public_html/websc3/phpIbXZxN.amx (compile failed).rnrn
rnrnThis is the original code:rn
/* AMX Mod X script. rn* rn* (c) Copyright 2002, OLOrn* (c) Copyright 2002-2003, Mike Cao (mike@mikecao.com)rn* (c) Copyright 2003, NitrX (nitrx@djeyl.net)rn* Ported By KingPin(www.kingpinservers.com). I take no responsibilityrn* for this file in any way. Use at your own risk. No warranties of any kind.rn* rn* Thx to Camper Detector from OLO & Admin Disarm from Mike Cao.rn* This file is provided as is (no warranties).rn* rn*/rnrn#include <amxmodx>rn#include <amxmisc>rn#include <fun>rnrnnew bool:camp_checkme[33]rnnew camp_pos[33][3]rnrnpublic checksniper(param[]){rn	new origin[3], id = param[0]rn	camp_checkme[id] = truern	get_user_origin(id,origin)rn	if ( get_distance(origin,camp_pos[id]) > 300 ) returnrn	new clip, ammo, wpnid =	get_user_weapon(id,clip,ammo)rn	new wpnname[32], name[32]rn	get_user_name(id,name,31)rn	get_weaponname(wpnid,wpnname,31)rn	set_hudmessage(200, 100, 0, 0.05, 0.55, 0, 6.0, 7.0, 0.5, 0.15, 1)rn	show_hudmessage(0,"%s camps with %s,^nlet's disarm him !",name,wpnname[7])rn	rn	get_user_origin(id,origin)rn	origin[2] -= 2000rn	set_user_origin(id,origin)rn	new iweapons[32], wpname[32], inumrn	get_user_weapons(id,iweapons,inum)rn	for(new a=0;a<inum;++a){rn		get_weaponname(iweapons[a],wpname,31)rn		engclient_cmd(id,"drop",wpname)rn	}rn	engclient_cmd(id,"weapon_knife")rn	origin[2] += 2005rn	set_user_origin(id,origin)rn	rn}rnrnpublic startchecking(id){rn	if ( !camp_checkme[id] ) returnrn	camp_checkme[id] = falsern	new param[2]rn	param[0] = idrn	get_user_origin(id,camp_pos[id])rn	set_task(8.0,"checksniper",id,param,1)rn}rnrnpublic removechecking(id){rn	camp_checkme[id] = truern	remove_task(id)rn}rnrnpublic client_connect(id){rn	camp_checkme[id] = truern	return PLUGIN_CONTINUErn}rnrnpublic plugin_init() {rn	register_plugin("Camp Disarm","0.1","NitrX")rn	register_event("SetFOV","startchecking","be","1<50")rn	register_event("SetFOV","removechecking","be","1=90")rn	return PLUGIN_CONTINUErn}rn
rnrnAnd this is what i tryed to get working:rnrn
/* AMX Mod X script. rn* rn* (c) Copyright 2002, OLOrn* (c) Copyright 2002-2003, Mike Cao (mike@mikecao.com)rn* (c) Copyright 2003, NitrX (nitrx@djeyl.net)rn* Ported By KingPin(www.kingpinservers.com). I take no responsibilityrn* for this file in any way. Use at your own risk. No warranties of any kind.rn* rn* Thx to Camper Detector from OLO & Admin Disarm from Mike Cao.rn* This file is provided as is (no warranties).rn* rn*/rnrn#include <amxmodx>rn#include <amxmisc>rn#include <fun>rn#include <engine>rn#include <dodx>rn#include <dodfun>rnrnnew bool:camp_checkme[33]rnnew camp_pos[33][3]rnrnpublic checksniper(param[]){rn	new origin[3], id = param[0]rn	camp_checkme[id] = truern	get_user_origin(id,origin)rn	if ( get_distance(origin,camp_pos[id]) > 300 ) returnrn	new clip, ammo, wpnid =	get_user_weapon(id,clip,ammo)rn	new wpnname[32], name[32]rn	get_user_name(id,name,31)rn	get_weaponname(wpnid,wpnname,31)rn	client_print(id, print_chat, "You have been camping with a sniper rifle... /nHave fun with a melee sissy.. ",name,wpnname[7])rn	rn	get_user_origin(id,origin)rn	origin[2] -= 2000rn	set_user_origin(id,origin)rn	new iweapons[32], wpname[32], inumrn	get_user_weapons(id,iweapons,inum)rn	for(new a=0;a<inum;++a){rn		get_weaponname(iweapons[a],wpname,31)rn		client_cmd(id,"drop",wpname)rn			}rn			if(get_user_team == AXIS){rn				if(dod_get_map_info(MI_AXIS_PARAS) == 1){rn				client_cmd(id,"weapon_gerknife")rn				set_user_origin(id,origin)rn			}rn			else if(dod_get_map_info(MI_AXIS_PARAS) == 0){rn				client_cmd(id,"weapon_spade")rn			}rn			else if(get_user_team == ALLIES){rn				if(dod_get_map_info(MI_ALLIES_TEAM) == 1){rn				client_cmd(id,"weapon_gerknife")rn			}rn			else if(dod_get_map_info(MI_ALLIES_TEAM) == 0){rn				client_cmd(id,"weapon_amerknife")rn			}rn		}rn	}rn}rnpublic startchecking(id){rn	if ( !camp_checkme[id] ) returnrn	camp_checkme[id] = falsern	new param[2]rn	param[0] = idrn	get_user_origin(id,camp_pos[id])rn	set_task(45.0,"checksniper",id,param,1)rn}rnrnpublic removechecking(id){rn	camp_checkme[id] = truern	remove_task(id)rn}rnrnpublic client_connect(id){rn	camp_checkme[id] = truern	return PLUGIN_CONTINUErn}rnrnpublic plugin_init() {rn	register_plugin("Camp Disarm","0.1","NitrX")rn	register_event("SetFOV","startchecking","be","1<50")rn	register_event("SetFOV","removechecking","be","1=90")rn	return PLUGIN_CONTINUErn}rn
rnrnHope its a small problem that can be fixed.. Iam a complet n00b at this..rnrnCheers..

diamond-optic
posted here
Posts: 2,068
Threads: 103
Joined: May 2005
03-23-2008, 05:27 PM #2

the syntax errors...nnget_user_teamnnyou need to use like get_user_team(id)nnnloose indentation warnings can be ignored.. just do to inconsistence indents.. ctrl-i in amxx studio should fix those

Dr.G
started this thread
Posts: 776
Threads: 75
Joined: Nov 2007
03-23-2008, 06:09 PM #3

Thx alot now it compiles with no error, but it frezzes u and u get the pistol...rnrnrnrnAny idea what causes that?rnrnThe code looks like this now:rnrn

//* AMX Mod X script. rnrn#include <amxmodx>rn#include <amxmisc>rn#include <fun>rn#include <engine>rn#include <dodx>rn#include <dodfun>rnrnnew bool:camp_checkme[33]rnnew camp_pos[33][3]rnrnpublic checksniper(param[]){rn	new origin[3], id = param[0]rn	camp_checkme[id] = truern	get_user_origin(id,origin)rn	if ( get_distance(origin,camp_pos[id]) > 300 ) returnrn	new clip, ammo, wpnid =	get_user_weapon(id,clip,ammo)rn	new wpnname[32], name[32]rn	get_user_name(id,name,31)rn	get_weaponname(wpnid,wpnname,31)rn	client_print(id, print_chat, "You have been camping with a sniper rifle... Have fun with a melee sissy.. ",name,wpnname[7])rn	rn	get_user_origin(id,origin)rn	origin[2] -= 2000rn	set_user_origin(id,origin)rn	new iweapons[32], wpname[32], inumrn	get_user_weapons(id,iweapons,inum)rn	for(new a=0;a<inum;++a){rn		get_weaponname(iweapons[a],wpname,31)rn		client_cmd(id,"drop",wpname)rn	}rn	if(get_user_team(id) == AXIS){rn		if(dod_get_map_info(MI_AXIS_PARAS) == 1){rn			client_cmd(id,"weapon_gerknife")rn			set_user_origin(id,origin)rn		}rn		else if(dod_get_map_info(MI_AXIS_PARAS) == 0){rn			client_cmd(id,"weapon_spade")rn		}rn		else if(get_user_team(id) == ALLIES){rn			if(dod_get_map_info(MI_ALLIES_TEAM) == 1){rn				client_cmd(id,"weapon_gerknife")rn			}rn			else if(dod_get_map_info(MI_ALLIES_TEAM) == 0){rn				client_cmd(id,"weapon_amerknife")rn			}rn		}rn	}rn}rnpublic startchecking(id){rn	if ( !camp_checkme[id] ) returnrn	camp_checkme[id] = falsern	new param[2]rn	param[0] = idrn	get_user_origin(id,camp_pos[id])rn	set_task(45.0,"checksniper",id,param,1)rn}rnrnpublic removechecking(id){rn	camp_checkme[id] = truern	remove_task(id)rn}rnrnpublic client_connect(id){rn	camp_checkme[id] = truern	return PLUGIN_CONTINUErn}rnrnpublic plugin_init() {rn	register_plugin("Camp Disarm","0.1","NitrX")rn	register_event("SetFOV","startchecking","be","1<50")rn	register_event("SetFOV","removechecking","be","1=90")rn	return PLUGIN_CONTINUErn}rn
rnrnThx in advance...

Dr.G
started this thread
Posts: 776
Threads: 75
Joined: Nov 2007
03-27-2008, 02:23 PM #4

Anyone? Cmon i dont think iam the only one that will use this when its running without errors... ;)

H Hood [10th MD]
posted here
Posts: 84
Threads: 7
Joined: Nov 2006
03-27-2008, 06:04 PM #5

Haha,nI think the way you're forcing weapon drops is a problem, because users cannot drop the pistol.nThe function you want is strip_user_weapons(id)nYou'll need to include fun (which you already have) for it to work. More info on the function here:nhttp://www.amxmodx.org/funcwiki.php?go=func&id=577nnThat will remove all weapons, including knife, so if you want them the option of a pistol or anything else, you will need to re-give that (i'm assuming you don't).nnAlso in your first team check, for axis, you set the user origin, but not in any other of your if/else statements - I'm not sure that this is an error, but revisit that and make sure it makes sense for what you want - from what i can tell, it's not necessary since stripping and giving weapons would mean they no longer have a sniper, and it's not important to change their origin, but I may have misunderstood!

Archive › Old Forum Threads › Help › Scripting Help › Camping sniper punish - Plz help
DoD Plugins Archive · Repository · Old Forum Threads · Maps · Admin · built 14 Sep 2026 00:34 UTC