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

Remove WeaponsBroń znika po 35 sek.


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

#1 Ircu

    Profesjonalista

  • Użytkownik

Reputacja: 9
Nowy

  • Postów:172
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:Sieradz
Offline

Napisano 17.08.2011 12:23

Witam. Prosiłbym was o modyfikację, która polega na tym, iż broń znika dopiero po 35 sek. od upuszczenia jej przez gracza.
Link do pluginu: Remove Weapons - AMXX.pl: Support AMX Mod X
  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 984
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 17.08.2011 15:20


#include <amxmodx>

#include <fakemeta>



#define PLUGIN "RemoveWeapons"

#define VERSION "1.0.1"

#define AUTHOR "R3X"



new gcvarDef,gcvarDrop;



public plugin_init() {

	register_plugin(PLUGIN, VERSION, AUTHOR);

	register_forward(FM_SetModel,"fwSetModel",1);

	

	gcvarDrop=register_cvar("amx_remove_dropped","1");

	gcvarDef=register_cvar("amx_remove_default","1");

	

	register_event("HLTV", "eventRoundInit", "a", "1=0", "2=0");

}

public eventRoundInit(){

	new bool:enabled=(get_pcvar_num(gcvarDef)==0)

	new ent=-1;

	do{

		ent=engfunc(EngFunc_FindEntityByString, ent,"classname", "armoury_entity");

		if(pev_valid ( ent )) {

			set_pev(ent, pev_solid, enabled?SOLID_TRIGGER:SOLID_NOT);

			fm_set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,enabled?255:0);

		}

	}

	while(ent);

}

public fwSetModel(ent, model[]){

	if(get_pcvar_num(gcvarDrop)==0) return FMRES_IGNORED;

	new szClass[32];

	pev(ent, pev_classname,szClass, 31);

	if(equal(szClass,"weaponbox")){

		if(!equal(model, "models/w_backpack.mdl"))

		{

			

			remove_task(ent)

			set_task(35.0,"removeEnt",ent)

			

			dllfunc(DLLFunc_Think, ent);

			return FMRES_IGNORED

		}

	}else if(equal(szClass,"weapon_shield")){

		remove_task(ent)

		set_task(35.0,"removeEnt",ent)

		

		return FMRES_IGNORED;

	}

	return FMRES_IGNORED;

}

stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) {

	new Float:RenderColor[3]

	RenderColor[0] = float(r)

	RenderColor[1] = float(g)

	RenderColor[2] = float(b)



	set_pev(entity, pev_renderfx, fx)

	set_pev(entity, pev_rendercolor, RenderColor)

	set_pev(entity, pev_rendermode, render)

	set_pev(entity, pev_renderamt, float(amount))



	return 1

}



public removeEnt(iEnt){

	if(!pev_valid(iEnt))	return ;

	

	new szClass[64];

	pev(iEnt, pev_classname,szClass, charsmax(szClass));

	

	if(!equal(szClass,"weaponbox") && !equal(szClass,"weapon_shield"))	return ;

	

	engfunc(EngFunc_RemoveEntity, iEnt);

}

  • +
  • -
  • 1

#3 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 18.08.2011 00:20

Prościej, poprawnie [ dllfunc(DLLFunc_Think, ent); usuwa "weaponbox" ] i bez tasków
#include <amxmodx>
#include <fakemeta>

#define PLUGIN "RemoveWeapons"
#define VERSION "1.0.2"
#define AUTHOR "R3X"


new gcvarDef,gcvarDrop;

new gcvarDelay;

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR);
	register_forward(FM_SetModel,"fwSetModel",1);
	
	gcvarDrop=register_cvar("amx_remove_dropped","1");
	gcvarDef=register_cvar("amx_remove_default","1");
	
	gcvarDelay = register_cvar("amx_remove_delay", "35.0");
	
	register_event("HLTV", "eventRoundInit", "a", "1=0", "2=0");
}
public eventRoundInit(){
	new bool:enabled=(get_pcvar_num(gcvarDef)==0)
	new ent=-1;
	do{
		ent=engfunc(EngFunc_FindEntityByString, ent,"classname", "armoury_entity");
		if(pev_valid ( ent )) {
			set_pev(ent, pev_solid, enabled?SOLID_TRIGGER:SOLID_NOT);
			fm_set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,enabled?255:0);
		}
	}
	while(ent);
}
public fwSetModel(ent, model[]){
	if(get_pcvar_num(gcvarDrop)==0) return FMRES_IGNORED;
	new szClass[32];
	pev(ent, pev_classname,szClass, 31);
	if(equal(szClass,"weaponbox") || equal(szClass,"weapon_shield")){
		if(!equal(model, "models/w_backpack.mdl")){
			set_pev(ent, pev_ltime, 0.0);
			set_pev(ent, pev_nextthink, get_gametime()+get_pcvar_float(gcvarDelay));
			return FMRES_HANDLED;
		}
	}
	return FMRES_IGNORED;
}
stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16) {
	new Float:RenderColor[3]
	RenderColor[0] = float(r)
	RenderColor[1] = float(g)
	RenderColor[2] = float(b)

	set_pev(entity, pev_renderfx, fx)
	set_pev(entity, pev_rendercolor, RenderColor)
	set_pev(entity, pev_rendermode, render)
	set_pev(entity, pev_renderamt, float(amount))

	return 1
}

  • +
  • -
  • 3

#4 Ircu

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 9
Nowy

  • Postów:172
  • GG:
  • Steam:steam
  • Imię:Damian
  • Lokalizacja:Sieradz
Offline

Napisano 18.08.2011 17:19

Dzięki! Plusiki dla panów i można zamknąć. O:)
  • +
  • -
  • 0

#5 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 492
  • Lokalizacja:AMXX.PL
Offline

Napisano 18.08.2011 17:23

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Rozwiązane

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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