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
CoD Nowy

Dziala odrazu perk

CoD Nowy

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

#1 xyz?

    Profesjonalista

  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:223
  • Imię:lukasz
  • Lokalizacja:polska
Offline

Napisano 10.07.2011 23:25

SIema, mam problem z perkiem.
on mi działa nawet jak go nie mam;d
a ja chce żeby działał dopiero jak go dostane


co jest źle?

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <engine>
#include <codmod>
#include <fakemeta>
#include <posmv>

new const nazwa[] = "Detektor";
new const opis[] = "Uzyj, aby oslepic wrogow w promieniu 250(+inteligencja)";


new spriteBeacon;
new  const g_sSound[] = "radar/detector.wav";
new bool:ma_perk[33];

public plugin_init()
{
	register_plugin(nazwa, "1.0", "xyz?");
	
	register_forward(FM_PlayerPreThink, "fwPreThink");
	
	set_task(2.75, "taskCheck4Beacon", 0, _, _, "b");
	
}

public plugin_precache(){
	spriteBeacon = engfunc(EngFunc_PrecacheModel, "sprites/beacon.spr");
	engfunc(EngFunc_PrecacheSound, g_sSound);
}

public cod_perk_enabled(id)
{
	ma_perk[id] = true;
}
	
public cod_perk_disabled(id)
	ma_perk[id] = false

public fwPreThink(id){ 
	if(!ma_perk[id])	return 1;
	if(!is_user_alive(id)) 	return 1;
		
	new iClosestPlayer = getClosestPlayer(id, IGNORUJ_SWOICH);
	if(is_user_connected(iClosestPlayer) && is_user_alive(iClosestPlayer)){
		new Float:flRange = fm_entity_range(id, iClosestPlayer);
		
		if(flRange > 2000.0) return 1;
		
		new iColor[3], sMetry[7];
		add(sMetry, sizeof sMetry - 1, "metr");
		dodajOw(flRange, sMetry, sizeof sMetry - 1);
		getHudColorsByRange(flRange, iColor);
		
		set_hudmessage(iColor[0], iColor[1], iColor[2], 0.40, 0.02, 0, 0.1, 0.01, 0.1, 0.1, 2);
		show_hudmessage(id, "Wrog jest w poblizu %.1f %s", flRange / 100.0, sMetry);
	}
	
	return 0;
}

public taskCheck4Beacon(){
	new iPlayers[32], iNum;
	get_players(iPlayers, iNum, "ae", "TERRORIST");
	
	if(iNum == 1){
		for(new i = 0 ; i < iNum; i++){
			createBeacon(iPlayers[i]);
		}
	}
}

stock createBeacon(index){
	new Float:flOrigin[3];
	pev(index, pev_origin, flOrigin);
	
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_BEAMCYLINDER);
	engfunc(EngFunc_WriteCoord, flOrigin[0]);
	engfunc(EngFunc_WriteCoord, flOrigin[1]);
	engfunc(EngFunc_WriteCoord, flOrigin[2] - 20.0);
	engfunc(EngFunc_WriteCoord, flOrigin[0]);   
	engfunc(EngFunc_WriteCoord, flOrigin[1]);
	engfunc(EngFunc_WriteCoord, flOrigin[2] + 200.0);
	write_short(spriteBeacon);
	write_byte(0);
	write_byte(1);
	write_byte(6);
	write_byte(2);       
	write_byte(1);      
	write_byte(255);     
	write_byte(40);    
	write_byte(10);
	write_byte(200);
	write_byte(6);
	message_end();
	
	emit_sound(index, CHAN_ITEM, g_sSound, 1.0, ATTN_NORM, 0, PITCH_NORM);
}

stock getHudColorsByRange(Float:flRange, iColor[3]){
	switch(floatround(flRange)){
		case 0..400: 		iColor = { 255, 0, 0 };
		case 401..1000: 	iColor = { 255, 255, 0 };
		case 1001..2000: 	iColor = { 0, 255, 0 };
		default: 		iColor = { 0, 255, 0 };
	}
	return 1;
}

stock Float:fm_entity_range(ent1, ent2) {
	new Float:origin1[3], Float:origin2[3];
	pev(ent1, pev_origin, origin1);
	pev(ent2, pev_origin, origin2);
	
	return get_distance_f(origin1, origin2);
}

stock dodajOw(Float:flRange, sTablica[], iLen){
	new iRange = floatround(flRange);
	new sToAdd[3];
	
	formatex(sToAdd, sizeof sToAdd - 1, "%s", iRange <= 199 ? "a" : "ow");
	
	add(sTablica, iLen, sToAdd);
}

addSayCommand(const s_Command[], const s_Handle[])
{
	new s_TempCommand[64];
	formatex(s_TempCommand, sizeof s_TempCommand - 1, "say %s", s_Command);
	register_clcmd(s_TempCommand, s_Handle);
	formatex(s_TempCommand, sizeof s_TempCommand - 1, "say_team %s", s_Command);
	register_clcmd(s_TempCommand, s_Handle);
}

  • +
  • -
  • 0

#2 BliBs_Pl

    Wszechpomocny

  • Użytkownik

Reputacja: 91
Zaawansowany

  • Postów:365
  • GG:
  • Steam:steam
  • Imię:Piotrek
  • Lokalizacja:Pisz
Offline

Napisano 11.07.2011 09:50

Skąd go ściągnąłeś?
Może zrób w każdym publicu warunek if(ma_perk[id]).
  • +
  • -
  • 0

#3 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 11.07.2011 15:23

Hmmm...
To
if(!ma_perk[id])	return 1;
if(!is_user_alive(id)) return 1;

na to:
if(!ma_perk[id])
return PLUGIN_CONTINUE;
if(!is_user_alive(id))
return PLUGIN_CONTINUE;

Może to coś da

Użytkownik kisiel96 edytował ten post 11.07.2011 15:24

  • +
  • -
  • 0

#4 xyz?

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:223
  • Imię:lukasz
  • Lokalizacja:polska
Offline

Napisano 11.07.2011 20:03

przetestuję zaraz.

Dodano 11 lipiec 2011 - 20:18:
nadal działa nawet jak go niemam;/
  • +
  • -
  • 0

#5 sharkowy

    Lokalna anomalia sejsmiczna o nieustalonej genezie.

  • Przyjaciel

Reputacja: 113
Zaawansowany

  • Postów:1 981
Offline

Napisano 11.07.2011 20:27

W standardowym nowym cod modzie jest perk Rozbłysk - działanie takie same jak Twój.

Ewentualnie dodaj klamry do cod_perk_disabled.

Użytkownik RPK. Shark edytował ten post 11.07.2011 20:29

  • +
  • -
  • 0

#6 xyz?

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 14
Początkujący

  • Postów:223
  • Imię:lukasz
  • Lokalizacja:polska
Offline

Napisano 11.07.2011 21:52

to nie rozblysk ;d
kod jest z pluginu detektor
ale coś pomyślę ;)

Dodano 11 lipiec 2011 - 23:20:
zrobiłem sobie perk błyskawica i działa, a to nie chce...;d
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: CoD Nowy

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

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