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
 

Kr3t@ - zdjęcie

Kr3t@

Rejestracja: 01.08.2010
Aktualnie: Nieaktywny
Poza forum Ostatnio: 20.02.2014 17:12
-----

Moje tematy

BF2 Rank Mod PL v1.5.5 Zmiana wyswietlanej informacji

16.02.2014 11:49

Witam jak zmienić aby informacja która wyświetla sie przy celowniku o randze itp była wyświetlana na say?

Odgłosy co x sec

31.01.2014 16:42

Cześć. Szukam plugiu który odtwarza co x czasu jakiś odgłos na serwerze.

 

Zacinanie broni

24.01.2014 15:22

Witam

Mam problem na serwerze tzn pewne bronie gdy się strzela full auto się zacinają, 

Problem wystepuje i sporej liczby osob dlatego myślę że to nie wina ich konfiguracji lecz jakiegoś pluginu 

 

proszę o pomoc

 

 

plugins.ini

; AMX Mod X plugins

; Admin Base - Always one has to be activated
amxbans_core.amxx
amxbans_main.amxx
;admin.amxx		; admin base (required for any admin-related)
;admin_sql.amxx		; admin base - SQL version (comment admin.amxx)

; Basic
admincmd.amxx		; basic admin console commands
adminhelp.amxx		; help command for admin console commands
adminslots.amxx		; slot reservation
multilingual.amxx	; Multi-Lingual management

; Menus
menufront.amxx		; front-end for admin menus
cmdmenu.amxx		; command menu (speech, settings)
ReasonKicker.amxx
plmenu.amxx		; players menu (kick, ban, client cmds.)
;telemenu.amxx		; teleport menu (Fun Module required!)
mapsmenu.amxx		; maps menu (vote, changelevel)
pluginmenu.amxx		; Menus for commands/cvars organized by plugin

; Chat / Messages
adminchat.amxx		; console chat commands
antiflood.amxx		; prevent clients from chat-flooding the server
scrollmsg.amxx		; displays a scrolling message
imessage.amxx		; displays information messages
adminvote.amxx		; vote commands

; Map related
;nextmap.amxx		; displays next map in mapcycle
;mapchooser.amxx		; allows to vote for next map
timeleft.amxx		; displays time left on map

; Configuration
pausecfg.amxx		; allows to pause and unpause some plugins
statscfg.amxx		; allows to manage stats plugins via menu and commands

; Counter-Strike
;restmenu.amxx		; restrict weapons menu
statsx.amxx		; stats on death or round end (CSX Module required!)
;miscstats.amxx		; bunch of events announcement for Counter-Strike
;stats_logging.amxx	; weapons stats logging (CSX Module required!)

; Enable to use AMX Mod plugins
;amxmod_compat.amxx	; AMX Mod backwards compatibility layer

; Custom - Add 3rd party plugins here
alt_end_round_sounds.amxx
bomba_explode_sound.amxx
galileo.amxx
kup_premium.amxx
reklamy.amxx
pokazywanie_obrazen.amxx

nekromanta DiabloMod Core

21.12.2013 15:02

Witam ,w  DiabloMod Core nekromanta nie działa poprawnie tzn nie wskrzesza.  Pomoże ktoś to naprawić?

 

 

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <cstrike>
#include <fun>
#include <engine>

#include <diablo_nowe.inc>

#define pev_zorigin	pev_fuser4
#define seconds(%1) ((1<<12) * (%1))

#define TASKID_RESPAWN 666
#define TASKID_CHECKRE 1231
#define TASKID_ORIGIN 12312
#define TASKID_CHECKST 125435
#define TASKID_SETUSER 988

new NEKRO_VIEW[]       = "models/diablomod/v_nekromanta.mdl"

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "DarkGL"

new SOUND_START[] 	= "items/medshot4.wav"
new SOUND_FINISHED[] 	= "items/smallmedkit2.wav"
new SOUND_FAILED[] 	= "items/medshotno1.wav"

new pCvarRevival,pCvarDistance,pCvarRevivalHealth;
new Float:g_revive_delay[33]
new Float:g_body_origin[33][3]

new bool:bKlasa[33];

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	diablo_register_class("Nekromanta",90,"<br>Atakujac zabierasz 10hp wiecej<br>i moze wskrzeszac umarlych.<br>" , FLAG_ALL , "Klasy Standardowe" )
	
	pCvarRevival 		=	register_cvar("diablo_revival_time","3");
	pCvarRevivalHealth	=	register_cvar("diablo_revival_health","25");
	pCvarDistance		=	register_cvar("diablo_revival_distance", "70.0")
}

public diablo_class_disabled(id){
	bKlasa[id]	=	false;
}

public diablo_class_enabled(id){
	bKlasa[id]	=	true;
}

public plugin_precache(){
	precache_sound(SOUND_START);
	precache_sound(SOUND_FINISHED);
	precache_sound(SOUND_FAILED);
	
	precache_model(NEKRO_VIEW);
}

public diablo_weapon_deploy(id,wpnID,weaponEnt){
	if(bKlasa[id] && wpnID == CSW_KNIFE){
		entity_set_string(id, EV_SZ_viewmodel, NEKRO_VIEW) 
	}
}

public diablo_clean_data(id){
	g_revive_delay[id] 	= 0.0
	g_body_origin[id] 	= Float:{0.0, 0.0, 0.0}
}

public diablo_set_data(id){
	g_revive_delay[id] 	= 0.0
	g_body_origin[id] 	= Float:{0.0, 0.0, 0.0}
}

public diablo_damage_class_do(iVictim,iAttacker,&Float:fDamage,damageBits){
	fDamage += 10.0;
}

public diablo_class_skill_used(id){
	if(task_exists(id))
		return PLUGIN_CONTINUE
	
	if(!(fm_get_user_button(id) & IN_USE))
		return PLUGIN_CONTINUE
	
	new body = find_dead_body(id)
	if(!fm_is_valid_ent(body))
		return PLUGIN_CONTINUE
	
	new lucky_bastard = pev(body, pev_owner)
	new lb_team = get_user_team(lucky_bastard)
	if(lb_team != 1 && lb_team != 2)
		return PLUGIN_CONTINUE
	
	static szName[64]
	get_user_name(lucky_bastard, szName,charsmax( szName ) )
	client_print(id, print_chat, "Odradzanie %s", szName)
	
	new revivaltime = get_pcvar_num(pCvarRevival)
	msg_bartime(id, revivaltime)
	
	
	
	new Float:gametime = get_gametime()
	g_revive_delay[id] = gametime + float(revivaltime) - 0.01
	
	emit_sound(id, CHAN_AUTO, SOUND_START, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
	set_task(0.0, "task_revive", id)
	
	return PLUGIN_CONTINUE
}

public Float:diablo_cast_time(id,Float:standardTime){
	return 0.0;
}

public task_revive(id)
{
	if(!is_user_alive(id))
	{
		failed_revive(id)
		return FMRES_IGNORED
	}
	
	if(!(fm_get_user_button(id) & IN_USE))
	{
		failed_revive(id)
		return FMRES_IGNORED
	}
	
	new body = find_dead_body(id)
	if(!fm_is_valid_ent(body))
	{
		failed_revive(id)
		return FMRES_IGNORED
	}
	
	new lucky_bastard = pev(body, pev_owner)
	if(!is_user_connected(lucky_bastard))
	{
		failed_revive(id)
		return FMRES_IGNORED
	}
	
	new lb_team = get_user_team(lucky_bastard)
	if(lb_team != 1 && lb_team != 2)
	{
		failed_revive(id)
		return FMRES_IGNORED
	}
	
	static Float:velocity[3]
	pev(id, pev_velocity, velocity)
	velocity[0] = 0.0
	velocity[1] = 0.0
	set_pev(id, pev_velocity, velocity)
	
	new Float:gametime = get_gametime()
	if(g_revive_delay[id] < gametime)
	{
		if(findemptyloc(body, 10.0))
		{
			fm_remove_entity(body)
			emit_sound(id, CHAN_AUTO, SOUND_FINISHED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
			
			new args[3]
			args[0]=lucky_bastard
			args[2]=id
			
			if(get_user_team(id)!=get_user_team(lucky_bastard))
			{
				diablo_damage(id,0,30.0,diabloDamageKnife);
				args[1]=1
				diablo_add_xp(id,diablo_get_xpbonus());
			}
			else
			{
				args[1]=0
				diablo_add_xp(id,diablo_get_xpbonus());
				set_task(0.1, "task_respawn", TASKID_RESPAWN + lucky_bastard,args,3)
			}
			
		}
		else
		failed_revive(id)
	}
	else
	set_task(0.1, "task_revive", id)
	
	return FMRES_IGNORED
}

public task_respawn(args[]) 
{
	new id = args[0]
	
	if (!is_user_connected(id) || is_user_alive(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR) return
	
	set_pev(id, pev_deadflag, DEAD_RESPAWNABLE) 
	dllfunc(DLLFunc_Think, id) 
	dllfunc(DLLFunc_Spawn, id) 
	set_pev(id, pev_iuser1, 0)
	
	set_task(0.1, "task_check_respawn", TASKID_CHECKRE + id,args,3)

}

public task_check_respawn(args[])
{
	new id = args[0]
	
	if(pev(id, pev_iuser1))
	set_task(0.1, "task_respawn", TASKID_RESPAWN + id,args,3)
	else
	set_task(0.1, "task_origin", TASKID_ORIGIN + id,args,3)

}

public task_origin(args[])
{
	new id = args[0]
	engfunc(EngFunc_SetOrigin, id, g_body_origin[id])
	
	static  Float:origin[3]
	pev(id, pev_origin, origin)
	set_pev(id, pev_zorigin, origin[2])
	
	set_task(0.1, "task_stuck_check", TASKID_CHECKST + id,args,3)
	
}
public task_stuck_check(args[])
{
	new id = args[0]

	static Float:origin[3]
	pev(id, pev_origin, origin)
	
	if(origin[2] == pev(id, pev_zorigin))
	set_task(0.1, "task_respawn", TASKID_RESPAWN + id,args,3)
	else
	set_task(0.1, "task_setplayer", TASKID_SETUSER + id,args,3)
}

public task_setplayer(args[])
{
	new id = args[0]
	
	fm_give_item(id, "weapon_knife")
	
	if(args[1]==1)
	{
		fm_give_item(id, "weapon_mp5navy")
		diablo_add_hp(id,999);		
		set_user_godmode(id, 1)
		
		new newarg[1]
		newarg[0]=id
		
		set_task(3.0,"god_off",id+95123,newarg,1)
	}
	else
	{
		diablo_add_hp(id,get_pcvar_num(pCvarRevivalHealth) + diablo_get_user_int(args[2]));	
		
		Display_Fade(id,seconds(2),seconds(2),0,0,0,0,255)
	}
}

public god_off(args[])
{
	set_user_godmode(args[0], 0)
}


public failed_revive(id)
{
	msg_bartime(id, 0)
	emit_sound(id, CHAN_AUTO, SOUND_FAILED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}

stock find_dead_body(id)
{
	static Float:origin[3]
	pev(id, pev_origin, origin)
	
	new ent
	static classname[32]	
	while((ent = fm_find_ent_in_sphere(ent, origin, get_pcvar_float(pCvarDistance))) != 0) 
	{
		pev(ent, pev_classname, classname, 31)
		if(equali(classname, "fakeCorpse") && fm_is_ent_visible(id, ent) && is_user_connected( pev( ent , pev_owner ) ) && !is_user_alive( pev( ent , pev_owner ) ))
		return ent
	}
	return 0
}

stock msg_bartime(id, seconds) 
{
	if(is_user_bot(id)||!is_user_alive(id)||!is_user_connected(id))	return
	
	if((fm_get_user_button(id) & IN_USE))	diablo_damage(id,0,10.0,diabloDamageKnife);
	
	static g_msg_bartime;
	
	if(!g_msg_bartime)	g_msg_bartime	=	get_user_msgid("BarTime")
	
	message_begin(MSG_ONE, g_msg_bartime, _, id)
	write_byte(seconds)
	write_byte(0)
	message_end()
}

stock bool:findemptyloc(ent, Float:radius)
{
	if(!fm_is_valid_ent(ent))
	return false

	static Float:origin[3]
	pev(ent, pev_origin, origin)
	origin[2] += 2.0
	
	new owner = pev(ent, pev_owner)
	new num = 0, bool:found = false
	
	while(num <= 100)
	{
		if(is_hull_vacant(origin))
		{
			g_body_origin[owner][0] = origin[0]
			g_body_origin[owner][1] = origin[1]
			g_body_origin[owner][2] = origin[2]
			
			found = true
			break
		}
		else
		{
			origin[0] += random_float(-radius, radius)
			origin[1] += random_float(-radius, radius)
			origin[2] += random_float(-radius, radius)
			
			num++
		}
	}
	return found
}

stock bool:is_hull_vacant(const Float:origin[3])
{
	new tr = 0
	engfunc(EngFunc_TraceHull, origin, origin, 0, HULL_HUMAN, 0, tr)
	if(!get_tr2(tr, TR_StartSolid) && !get_tr2(tr, TR_AllSolid) && get_tr2(tr, TR_InOpen))
	return true
	
	return false
}

stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)
{
	static g_msg_screenfade;
	
	if(!g_msg_screenfade)	g_msg_screenfade	=	get_user_msgid("ScreenFade");
	
	message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id )
	write_short( duration )	// Duration of fadeout
	write_short( holdtime )	// Hold time of color
	write_short( fadetype )	// Fade type
	write_byte ( red )		// Red
	write_byte ( green )		// Green
	write_byte ( blue )		// Blue
	write_byte ( alpha )	// Alpha
	message_end()
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/

dodanie paska ładowania kuszy

19.12.2013 20:30

Witam tak jak w temacie chciałbym dodać ładowanie kuszy łowcy lecz nie wiem za bardzo co gdzie dodać. Niżej zamieszczam .sma

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <hamsandwich>
#include <fakemeta_util>
#include <fakemeta>
#include <csx>

#include <diablo_nowe.inc>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "DarkGL"

#define write_coord_f(%1) engfunc(EngFunc_WriteCoord,%1);

new bool:bKlasa[33],trace_bool[33],sprite_line;

new hunter_he[33]

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	diablo_register_class("Lowca",120,"<br>Posiada Kusze (wybierz noz a potem reload by wyjac<br>Moze zastawiac pulapki z granatow (zmiana trybow PPM)<br>Gdy postrzeli przeciwnika pistoletem, zostawia on za soba slad<br><br>");
}

public plugin_precache(){
	sprite_line		= 	precache_model("sprites/dot.spr")
}

public diablo_class_spawned(id){
	diablo_give_user_trap(id);
	diablo_give_user_bow(id);
}

public Float:diablo_cast_time(id,Float:standardTime){	
	return standardTime;
}

public diablo_call_cast(id){
	set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2)
	if(hunter_he[id]>2)
	{
		show_hudmessage(id, "Wyczarowales juz %i granaty. Nie mozesz wiecej w tej rundzie",hunter_he[id])
	}
	else
	{
		fm_give_item(id, "weapon_hegrenade")
		hunter_he[id]++
	}
}

public diablo_clean_data(id){
	trace_bool[id]		=	0;
	diablo_give_user_trap(id,false);
	diablo_give_user_bow(id,false);
	hunter_he[id]		=	0;
}

public diablo_set_data(id){
	trace_bool[id]		=	0;
	diablo_give_user_trap(id);
	diablo_give_user_bow(id);
	hunter_he[id]		=	0;
}

public diablo_class_disabled(id){
	bKlasa[id]	=	false;
}

public diablo_class_enabled(id){
	bKlasa[id]	=	true;
}

public diablo_damage_taken_post(iKiller,iVictim,iDamage){
	static iWpn = CSW_GLOCK18 | CSW_USP | CSW_P228 | CSW_DEAGLE | CSW_ELITE | CSW_FIVESEVEN;
	
	if(bKlasa[iKiller] && is_user_connected(iVictim) && iVictim != iKiller && get_user_weapon(iKiller) & iWpn){
		new ori[3]
		trace_bool[iKiller] = iVictim
		get_user_origin(iVictim,ori)
		
		new parms[5];
		
		for(new i=0;i<3;i++)
		{
			parms[i] = ori[i] 
		}
		parms[3]= iKiller
		parms[4]= iVictim
		set_task(0.5,"charge_hunter",iKiller,parms,5)
	}
}

public hunter_Line(id,vid,end[3])
{
	if(is_user_alive(id) && is_user_alive(vid) && trace_bool[id])
	{
		new start[3]
		get_user_origin(vid,start)
		
		message_begin(MSG_ONE,SVC_TEMPENTITY,{0,0,0},id)
		write_byte(0)
		write_coord(start[0])	// starting pos
		write_coord(start[1])
		write_coord(start[2])
		write_coord(end[0])	// ending pos
		write_coord(end[1])
		write_coord(end[2])
		write_short(sprite_line)	// sprite index
		write_byte(1)		// starting frame
		write_byte(5)		// frame rate
		write_byte(100)		// life
		write_byte(1)		// line width
		write_byte(0)		// noise
		write_byte(200)	// RED
		write_byte(100)	// GREEN
		write_byte(100)	// BLUE					
		write_byte(75)		// brightness
		write_byte(5)		// scroll speed
		message_end()
		
		new parms[5];
		
		for(new i=0;i<3;i++)
		{
			parms[i] = start[i] 
		}
		parms[3]=id
		parms[4]=vid
		
		set_task(0.20,"charge_hunter",id+vid*100,parms,5)
	}
}

public charge_hunter(parms[])
{
	new stop[3]
	
	for(new i=0;i<3;i++)
	{
		stop[i] =parms[i]
	}
	hunter_Line(parms[3],parms[4],stop)
}