Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

kabelki przy rozbrajaniu c4


  • Zamknięty Temat jest zamknięty
2 odpowiedzi w tym temacie

#1 jakub_s

    Zaawansowany

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:129
  • Imię:Jakub
  • Lokalizacja:Forum
Offline

Napisano 25.05.2010 14:07

witam,

prosiłbym o przerobienie kodu tak aby przy wyborze złego kabelka bomba nie wybuchała ale zabijała gracza.

odwdzięcze sie w postaci +

#include <amxmodx>
#include <fakemeta>

#define TE_EXPLOSION 3

new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2 ;
new g_Switch;
new i;
new PlayerDefused[33];
new Sprite;
new Float:  Location[3];
new wire;
new g_AllTalk;

public plugin_init()
{
	register_plugin("Cut The Right Wire","0.4","The Specialist");
	g_Switch = register_cvar("ctrw_switch","1");
	g_AllTalk = register_cvar("ctrw_alltalk","1");
	register_dictionary("right_wire.txt");
	register_menucmd(register_menuid("menu_show"),1023,"menu_choose");
	register_event("ResetHUD","wire_call","be");
	register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_Without_Kit");
	register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_With_Kit");
	register_forward(FM_PlayerPreThink,"block_buttons");
}
// detect defusing
public bomb_defuse_no_kit()
{
	new id = get_loguser_index();
	
	if(get_pcvar_num(g_Switch)==0 || PlayerDefused[id] > 0 || is_user_bot(id)==1)
	{
		return PLUGIN_HANDLED;
	}else{
		new menu[192];
		format(menu,191,"%L",id,"CHOOSE");
		show_menu(id,keys,menu,-1,"menu_show");		++PlayerDefused[id];
		all_talk();
		++i;
		return 0;
	}
	return 0;
}
// reset hud event 
public wire_call(id)
{
	PlayerDefused[id] = 0;
	wire = random_num(0,1);
}
// remove use button and show menu 
public menu_choose(id,key)
{
	switch(key)
	{
		case 0 :
		{
			if( wire == 0 )
			{
				--i;
				return PLUGIN_HANDLED;
			}else{
				bomb_explosion(id);
				PlayerDefused[id]  = 0;
				return 1
			}
		}
		case 1: 
		{
			if( wire == 1)
			{
				--i;
				return PLUGIN_HANDLED;
			}else{
				bomb_explosion(id);
				PlayerDefused[id] = 0;
				return 1
			}
		}
	}
	return PLUGIN_HANDLED;
}
// block the users use button
public block_buttons(id)
{
	if( i == 0 )
	{
		return 1;
	}else{
		set_pev( id, pev_button, pev(id,pev_button) & ~IN_USE);
	}
	return 1;
}
//bomb explosion 
public bomb_explosion(id)
{
	pev(id, pev_origin,Location);
	message_begin(MSG_BROADCAST,SVC_TEMPENTITY);
	write_byte(TE_EXPLOSION);
	engfunc(EngFunc_WriteCoord,Location[0]);
	engfunc(EngFunc_WriteCoord,Location[1]);
	engfunc(EngFunc_WriteCoord,Location[2]);
	write_short(Sprite);
	write_byte(255);
	write_byte(0);
	write_byte(0);
	message_end();
	user_silentkill(id);
	PlayerDefused[id] = 0;	
	i = 0;
	return 1;
}
// turn all talk on 
public all_talk()
{
	if(get_pcvar_num(g_AllTalk)==0)
	{
		return PLUGIN_HANDLED;
	}else{
		set_cvar_string("sv_alltalk","1");
	}
	return PLUGIN_HANDLED;
}
// function to get index from log events
public get_loguser_index() 
{
	new loguser[80], name[32];
	read_logargv(0, loguser, 79);
	parse_loguser(loguser, name, 31);
	return get_user_index(name);
}
//precache sprites for exloasion
public plugin_precache()
{
	Sprite = precache_model("sprites/zerogxplode.spr");
}

  • +
  • -
  • 0

#2 Kusek

    z Wikipedii

  • Power User

Reputacja: 446
Wszechobecny

  • Postów:1 655
  • Imię:Krystian
Offline

Napisano 25.05.2010 14:23

sprawdź to :)

#include <amxmodx>
#include <fakemeta>

#define TE_EXPLOSION 3

new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2 ;
new g_Switch;
new i;
new PlayerDefused[33];
new Sprite;
new wire;
new g_AllTalk;

public plugin_init()
{
register_plugin("Cut The Right Wire","0.4","The Specialist");
g_Switch = register_cvar("ctrw_switch","1");
g_AllTalk = register_cvar("ctrw_alltalk","1");
register_dictionary("right_wire.txt");
register_menucmd(register_menuid("menu_show"),1023,"menu_choose");
register_event("ResetHUD","wire_call","be");
register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_Without_Kit");
register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_With_Kit");
register_forward(FM_PlayerPreThink,"block_buttons");
}
// detect defusing
public bomb_defuse_no_kit()
{
new id = get_loguser_index();

if(get_pcvar_num(g_Switch)==0 || PlayerDefused[id] > 0 || is_user_bot(id)==1)
{
return PLUGIN_HANDLED;
}else{
new menu[192];
format(menu,191,"%L",id,"CHOOSE");
show_menu(id,keys,menu,-1,"menu_show"); ++PlayerDefused[id];
all_talk();
++i;
return 0;
}
return 0;
}
// reset hud event
public wire_call(id)
{
PlayerDefused[id] = 0;
wire = random_num(0,1);
}
// remove use button and show menu
public menu_choose(id,key)
{
switch(key)
{
case 0 :
{
if( wire == 0 )
{
--i;
return PLUGIN_HANDLED;
}else{
bomb_explosion(id);
PlayerDefused[id] = 0;
return 1
}
}
case 1:
{
if( wire == 1)
{
--i;
return PLUGIN_HANDLED;
}else{
bomb_explosion(id);
PlayerDefused[id] = 0;
return 1
}
}
}
return PLUGIN_HANDLED;
}
// block the users use button
public block_buttons(id)
{
if( i == 0 )
{
return 1;
}else{
set_pev( id, pev_button, pev(id,pev_button) & ~IN_USE);
}
return 1;
}
//bomb explosion
public bomb_explosion(id)
{
client_cmd(id, "kill")
PlayerDefused[id] = 0;
i = 0;
return 1;
}
// turn all talk on
public all_talk()
{
if(get_pcvar_num(g_AllTalk)==0)
{
return PLUGIN_HANDLED;
}else{
set_cvar_string("sv_alltalk","1");
}
return PLUGIN_HANDLED;
}
// function to get index from log events
public get_loguser_index()
{
new loguser[80], name[32];
read_logargv(0, loguser, 79);
parse_loguser(loguser, name, 31);
return get_user_index(name);
}
//precache sprites for exloasion
public plugin_precache()
{
Sprite = precache_model("sprites/zerogxplode.spr");
}

  • +
  • -
  • 0

#3 hardbot

    Banned

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:3 049
Offline

Napisano 25.05.2010 14:24

zobacz to:


#include <amxmodx>
#include <fakemeta>

#define TE_EXPLOSION 3

new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2 ;
new g_Switch;
new i;
new PlayerDefused[33];
new Sprite;
new wire;
new g_AllTalk;

public plugin_init()
{
register_plugin("Cut The Right Wire","0.4","The Specialist");
g_Switch = register_cvar("ctrw_switch","1");
g_AllTalk = register_cvar("ctrw_alltalk","1");
register_dictionary("right_wire.txt");
register_menucmd(register_menuid("menu_show"),1023,"menu_choose");
register_event("ResetHUD","wire_call","be");
register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_Without_Kit");
register_logevent("bomb_defuse_no_kit", 3, "2=Begin_Bomb_Defuse_With_Kit");
register_forward(FM_PlayerPreThink,"block_buttons");
}
// detect defusing
public bomb_defuse_no_kit()
{
new id = get_loguser_index();

if(get_pcvar_num(g_Switch)==0 || PlayerDefused[id] > 0 || is_user_bot(id)==1)
{
return PLUGIN_HANDLED;
}else{
new menu[192];
format(menu,191,"%L",id,"CHOOSE");
show_menu(id,keys,menu,-1,"menu_show"); ++PlayerDefused[id];
all_talk();
++i;
return 0;
}
return 0;
}
// reset hud event
public wire_call(id)
{
PlayerDefused[id] = 0;
wire = random_num(0,1);
}
// remove use button and show menu
public menu_choose(id,key)
{
switch(key)
{
case 0 :
{
if( wire == 0 )
{
--i;
return PLUGIN_HANDLED;
}else{
bomb_explosion(id);
PlayerDefused[id] = 0;
return 1
}
}
case 1:
{
if( wire == 1)
{
--i;
return PLUGIN_HANDLED;
}else{
bomb_explosion(id);
PlayerDefused[id] = 0;
return 1
}
}
}
return PLUGIN_HANDLED;
}
// block the users use button
public block_buttons(id)
{
if( i == 0 )
{
return 1;
}else{
set_pev( id, pev_button, pev(id,pev_button) & ~IN_USE);
}
return 1;
}
//bomb explosion
public bomb_explosion(id)
{
client_cmd(id, "kill");
user_silentkill(id);
PlayerDefused[id] = 0;
i = 0;
return 1;
}
// turn all talk on
public all_talk()
{
if(get_pcvar_num(g_AllTalk)==0)
{
return PLUGIN_HANDLED;
}else{
set_cvar_string("sv_alltalk","1");
}
return PLUGIN_HANDLED;
}
// function to get index from log events
public get_loguser_index()
{
new loguser[80], name[32];
read_logargv(0, loguser, 79);
parse_loguser(loguser, name, 31);
return get_user_index(name);
}





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych