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

niewidzialnosc na klasie


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 Dropsu

    Zaawansowany

  • Użytkownik

Reputacja: 9
Nowy

  • Postów:91
  • Imię:Patryj
  • Lokalizacja:Białystok
Offline

Napisano 16.12.2016 19:51

Witam mam problem

 

otoz taki ze kiedy wgram bylej aki perk co daje niewidzialnosc

 

to moja klasa ktora jest niewidzialna na nozu staje sie widzialna zawsze 

 

 

co mam zrobic ???

 

 

zeby sie juz nic nie bugowalo??


  • +
  • -
  • 0

#2 Kmf!p

    Wszechwidzący

  • Użytkownik

Reputacja: 29
Życzliwy

  • Postów:274
  • Lokalizacja:knyszyn
Offline

Napisano 16.12.2016 19:56

podaj sma tej klasy co ma niewidzialnosc na nozu.

zakladam ze perki maja sprawdzenie if( ma_perk[id]) przed daniem/zabraniem nie widzialnosci


Użytkownik Kmf!p edytował ten post 16.12.2016 19:59

  • +
  • -
  • 1
b_350_20_FFAD41_E98100_000000_591F11.png

b_350_20_FFAD41_E98100_000000_591F11.png 

CodMod- 31.186.82.99:23510
Only Dust2- 31.186.82.99:23544

#3 Dropsu

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 9
Nowy

  • Postów:91
  • Imię:Patryj
  • Lokalizacja:Białystok
Offline

Napisano 16.12.2016 20:46

podaj sma tej klasy co ma niewidzialnosc na nozu.

zakladam ze perki maja sprawdzenie if( ma_perk[id]) przed daniem/zabraniem nie widzialnosci

ogolem problem powstal po wgraniu tej paczki perkow :

 

 

https://amxx.pl/topi...bulka-z-maslem/

 

 

a tutaj sma tej klasy :

 

 

Załączony plik  cichylekkisnajper.sma   2,79 KB  20 Ilość pobrań
  cichylekkisnajper.amxx


  • +
  • -
  • 0

#4 Kmf!p

    Wszechwidzący

  • Użytkownik

Reputacja: 29
Życzliwy

  • Postów:274
  • Lokalizacja:knyszyn
Offline

Napisano 16.12.2016 23:00

juz wiem dlaczego tak sie dzieje ;P

bo w perkach masz ustawianie niewidzialnosci w:

public client_PreThink(id)

a w klasie masz w evencie curweapon ktory daje niewidzialnosc tylko przy zmianie broni i nawet jesli masz na nozu to prethink wymusi ci widzialnosc jesli nie spelniasz warunkow z perku.

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <fun>
#include <codmod_frakcje>
        
new const nazwa[]   = "[PREMIUM]CichylekkiSnajper";
new const opis[]    = "[PREMIUM]Niewidzialny na nozu,ciche kroki";
new const bronie    = (1<<CSW_SCOUT);
new const zdrowie   = 5;
new const kondycja  = 25;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new const frakcja[] = "[PREMIUM]";
    
new ma_klase[33];

public plugin_init()
{
	register_plugin(nazwa, "1.0", "amxx.pl");

	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

	register_event("CurWeapon", "ModelBroni_CurWeapon", "be", "1=1");
	register_forward(FM_SetModel, "ModelBroni_fw_SetModel");
}

public plugin_precache()
{
	precache_model("models/cichysnajper/p_cichysnajper.mdl");
	precache_model("models/cichysnajper/v_cichysnajper.mdl");
	precache_model("models/cichysnajper/w_cichysnajper.mdl");
}

public cod_class_enabled(id)
{
	if(!(get_user_flags(id) & ADMIN_LEVEL_H))
	{
		client_print(id, print_chat, "[[PREMIUM]CichylekkiSnajper] Nie masz uprawnien, aby uzywac tej klasy.")
		return COD_STOP;
	}
	set_user_footsteps(id, 1);
	ma_klase[id] = true;
   
	return COD_CONTINUE;
}

public cod_class_disabled(id)
{
	set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	set_user_footsteps(id, 0);
    	ma_klase[id] = false;

}

public client_PreThink(id)
{
	if(!ma_klase[id])
		return;
		
	if(get_user_weapon(id) == CSW_KNIFE)
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1);
	}
	else
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	}
}

public ModelBroni_CurWeapon(id)
{
        new weapon = read_data(2);

        if(ma_klase[id])
        {
                if(weapon == CSW_SCOUT)
                {
                        set_pev(id, pev_viewmodel2, "models/cichysnajper/v_cichysnajper.mdl")
                        set_pev(id, pev_weaponmodel2, "models/cichysnajper/p_cichysnajper.mdl")
                }
        }
}

public ModelBroni_fw_SetModel(entity, model[])
{
        if(!pev_valid(entity))
                return FMRES_IGNORED

        if(!equali(model, "models/w_scout.mdl"))
                return FMRES_IGNORED;

        new entityowner = pev(entity, pev_owner);

        if(!ma_klase[entityowner])
                return FMRES_IGNORED;

        engfunc(EngFunc_SetModel, entity, "models/cichysnajper/w_cichysnajper.mdl")
        return FMRES_SUPERCEDE
}

tylko nie wiem czy to zadziala z perkiem czy np. nie bedzie mrygac ta nie widzialnosc.

swoja droga po co komu perk jak i tak ma niewidke ;)

 


Użytkownik Kmf!p edytował ten post 16.12.2016 23:02

  • +
  • -
  • 0
b_350_20_FFAD41_E98100_000000_591F11.png

b_350_20_FFAD41_E98100_000000_591F11.png 

CodMod- 31.186.82.99:23510
Only Dust2- 31.186.82.99:23544

#5 Dropsu

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 9
Nowy

  • Postów:91
  • Imię:Patryj
  • Lokalizacja:Białystok
Offline

Napisano 18.12.2016 20:11

juz wiem dlaczego tak sie dzieje ;P

bo w perkach masz ustawianie niewidzialnosci w:

public client_PreThink(id)

a w klasie masz w evencie curweapon ktory daje niewidzialnosc tylko przy zmianie broni i nawet jesli masz na nozu to prethink wymusi ci widzialnosc jesli nie spelniasz warunkow z perku.

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <fun>
#include <codmod_frakcje>
        
new const nazwa[]   = "[PREMIUM]CichylekkiSnajper";
new const opis[]    = "[PREMIUM]Niewidzialny na nozu,ciche kroki";
new const bronie    = (1<<CSW_SCOUT);
new const zdrowie   = 5;
new const kondycja  = 25;
new const inteligencja = 0;
new const wytrzymalosc = 0;

new const frakcja[] = "[PREMIUM]";
    
new ma_klase[33];

public plugin_init()
{
	register_plugin(nazwa, "1.0", "amxx.pl");

	cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);

	register_event("CurWeapon", "ModelBroni_CurWeapon", "be", "1=1");
	register_forward(FM_SetModel, "ModelBroni_fw_SetModel");
}

public plugin_precache()
{
	precache_model("models/cichysnajper/p_cichysnajper.mdl");
	precache_model("models/cichysnajper/v_cichysnajper.mdl");
	precache_model("models/cichysnajper/w_cichysnajper.mdl");
}

public cod_class_enabled(id)
{
	if(!(get_user_flags(id) & ADMIN_LEVEL_H))
	{
		client_print(id, print_chat, "[[PREMIUM]CichylekkiSnajper] Nie masz uprawnien, aby uzywac tej klasy.")
		return COD_STOP;
	}
	set_user_footsteps(id, 1);
	ma_klase[id] = true;
   
	return COD_CONTINUE;
}

public cod_class_disabled(id)
{
	set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	set_user_footsteps(id, 0);
    	ma_klase[id] = false;

}

public client_PreThink(id)
{
	if(!ma_klase[id])
		return;
		
	if(get_user_weapon(id) == CSW_KNIFE)
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1);
	}
	else
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	}
}

public ModelBroni_CurWeapon(id)
{
        new weapon = read_data(2);

        if(ma_klase[id])
        {
                if(weapon == CSW_SCOUT)
                {
                        set_pev(id, pev_viewmodel2, "models/cichysnajper/v_cichysnajper.mdl")
                        set_pev(id, pev_weaponmodel2, "models/cichysnajper/p_cichysnajper.mdl")
                }
        }
}

public ModelBroni_fw_SetModel(entity, model[])
{
        if(!pev_valid(entity))
                return FMRES_IGNORED

        if(!equali(model, "models/w_scout.mdl"))
                return FMRES_IGNORED;

        new entityowner = pev(entity, pev_owner);

        if(!ma_klase[entityowner])
                return FMRES_IGNORED;

        engfunc(EngFunc_SetModel, entity, "models/cichysnajper/w_cichysnajper.mdl")
        return FMRES_SUPERCEDE
}

tylko nie wiem czy to zadziala z perkiem czy np. nie bedzie mrygac ta nie widzialnosc.

swoja droga po co komu perk jak i tak ma niewidke ;)

ale mi chodzilo o to ze klasa ciagle jest zawsze widzalna a nie tylko wtedy kiedy ma perk

 

 

i nic nie pomoglo to co podales 


Użytkownik Dropsu edytował ten post 18.12.2016 20:13

  • +
  • -
  • 0

#6 Kmf!p

    Wszechwidzący

  • Użytkownik

Reputacja: 29
Życzliwy

  • Postów:274
  • Lokalizacja:knyszyn
Offline

Napisano 18.12.2016 20:49

ale mi chodzilo o to ze klasa ciagle jest zawsze widzalna a nie tylko wtedy kiedy ma perk

panie jasniej sie nie da, odszyfrowac to to trzeba sie natrudzic ;)

napisz co jest nie tak i kiedy i jak ma dzialac, bo juz sam nie wiem.

w kodzie podanym wyzej klasa ma niewidzialnosc na nozu, zaraz sprawdze perki z paczki ale wydaje mi sie ze powinny miec warunek if(ma_perk[id]) przed kazdym daniem niewidzialnosci.

 

problemem moze byc perk: wszechwidzacy

#include <amxmodx>
#include <codmod>
#include <fakemeta>

new bool:ma_perk[33];

new const perk_name[] = "Wszechwidzacy";
new const perk_desc[] = "Widzisz miny i niewidzialnych";

public plugin_init() 
{
	register_plugin(perk_name, "1.0", "bulka_z_maslem")
	
	cod_register_perk(perk_name, perk_desc);
	
	register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)
	
	register_forward(FM_AddToFullPack, "Miny", 1)
}

public cod_class_enabled(id)
{
	ma_perk[id] = true;
}
public cod_class_disabled(id)
{
	ma_perk[id] = false;
}

public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(!is_user_connected(host) || !is_user_connected(ent))
		return;
	
	if(!ma_perk[host])
		return;
	
	set_es(es_handle, ES_RenderAmt, 255.0);
}

public Miny(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(!pev_valid(ent))
		return;
	
	new classname[5];
	pev(ent, pev_classname, classname, 4);
	if(equal(classname, "mine"))
	{
		set_es(es_handle, ES_RenderMode, kRenderTransAdd);
		set_es(es_handle, ES_RenderAmt, 90.0);
	}
}

niby gosc ma widziec miny, ale brakuje warunku ma_perk i jesli gracz widzi mine moze widziec tez nie widzialnych


Użytkownik Kmf!p edytował ten post 18.12.2016 21:00

  • +
  • -
  • 0
b_350_20_FFAD41_E98100_000000_591F11.png

b_350_20_FFAD41_E98100_000000_591F11.png 

CodMod- 31.186.82.99:23510
Only Dust2- 31.186.82.99:23544

#7 Dropsu

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 9
Nowy

  • Postów:91
  • Imię:Patryj
  • Lokalizacja:Białystok
Offline

Napisano 19.12.2016 20:26

ale mi chodzilo o to ze klasa ciagle jest zawsze widzalna a nie tylko wtedy kiedy ma perk

panie jasniej sie nie da, odszyfrowac to to trzeba sie natrudzic ;)

napisz co jest nie tak i kiedy i jak ma dzialac, bo juz sam nie wiem.

w kodzie podanym wyzej klasa ma niewidzialnosc na nozu, zaraz sprawdze perki z paczki ale wydaje mi sie ze powinny miec warunek if(ma_perk[id]) przed kazdym daniem niewidzialnosci.

 

problemem moze byc perk: wszechwidzacy

#include <amxmodx>
#include <codmod>
#include <fakemeta>

new bool:ma_perk[33];

new const perk_name[] = "Wszechwidzacy";
new const perk_desc[] = "Widzisz miny i niewidzialnych";

public plugin_init() 
{
	register_plugin(perk_name, "1.0", "bulka_z_maslem")
	
	cod_register_perk(perk_name, perk_desc);
	
	register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)
	
	register_forward(FM_AddToFullPack, "Miny", 1)
}

public cod_class_enabled(id)
{
	ma_perk[id] = true;
}
public cod_class_disabled(id)
{
	ma_perk[id] = false;
}

public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(!is_user_connected(host) || !is_user_connected(ent))
		return;
	
	if(!ma_perk[host])
		return;
	
	set_es(es_handle, ES_RenderAmt, 255.0);
}

public Miny(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(!pev_valid(ent))
		return;
	
	new classname[5];
	pev(ent, pev_classname, classname, 4);
	if(equal(classname, "mine"))
	{
		set_es(es_handle, ES_RenderMode, kRenderTransAdd);
		set_es(es_handle, ES_RenderAmt, 90.0);
	}
}

niby gosc ma widziec miny, ale brakuje warunku ma_perk i jesli gracz widzi mine moze widziec tez nie widzialnych

 

 

 

usunąłem perk i nic nie pomoglo :(

 

 

dodam jeszcze ze niektore perki co daja niewidke nie dzialaja :(

(juz wczesniej tak bylo)


  • +
  • -
  • 0

#8 Kmf!p

    Wszechwidzący

  • Użytkownik

Reputacja: 29
Życzliwy

  • Postów:274
  • Lokalizacja:knyszyn
Offline

Napisano 19.12.2016 23:05

nie wiem co to ma byc ale to nie jest poprawne raczej dalem komentarze popraw se ale skoro ten perk ma takie wstawki to nie chce wiedziec co jest w innych ;) :

#include <amxmodx>
#include <codmod>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
        
#define DMG_BULLET (1<<1)
	
new const perk_name[] = "Tajemnica snajpera";
new const perk_desc[] = "Ma 1/1 z AWP i podczas kucania z nim jego widocznosc wynosi LW";
    
new bool:ma_perk[33], wartosc_perku[33]

public plugin_init()
{
	register_plugin(perk_name, "1.0", "bulka_z_maslem");

	cod_register_perk(perk_name, perk_desc, 50, 100);

	register_forward(FM_PlayerPreThink, "fwPrethink_Niewidzialnosc", 1);

	RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public cod_perk_enabled(id, wartosc)
{
	ma_perk[id] = true;
	cod_give_weapon(id, CSW_AWP)
	wartosc_perku[id] = wartosc;
}

public cod_perk_disabled(id)
{
	set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
    	ma_perk[id] = false;
	cod_take_weapon(id, CSW_AWP)
}

public fwPrethink_Niewidzialnosc(id, idattacker) // idattacker ? po co to ?
{
	if(!ma_perk[id])
		return;

	new button = get_user_button(id);
	if( button & IN_DUCK && get_user_weapon(id) == CSW_AWP)
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, wartosc_perku[idattacker]); // idattacker ? id lepsze by bylo
	}
	else
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	}
}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
        if(!is_user_connected(idattacker))
                return HAM_IGNORED;
        
        if(!ma_perk[idattacker])
                return HAM_IGNORED;
        
        if(!(damagebits & DMG_BULLET))
                return HAM_IGNORED;
                
        if(get_user_weapon(idattacker) == CSW_SCOUT && random_num(1,1) == 1) // to nie potrzebne skoro ma 1/1 ale to szczegol
                cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
        
        return HAM_IGNORED;
}

nastepny:

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

new const perk_name[] = "Peleryna Pottera";
new const perk_desc[] = "Gdy stoisz w miejscu jestes niewidzialny";

new ma_perk[33];

public plugin_init() 
{
	register_plugin(perk_name, "1.0", "bulka_z_maslem");
	
	cod_register_perk(perk_name, perk_desc);
}
public cod_perk_enabled(id)
{
	ma_perk[id] = true;
}

public cod_perk_disabled(id)
{
	ma_perk[id] = false;
}
public client_PreThink ( id ) 
{	
	new button2 = get_user_button(id);
	// za duzo warunkow w jednej linii, zalozmy ze gosc nie zyje i bedzie widzial wszystkich nawet nie widzialnych
	if (ma_perk[id] && get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)) && is_user_alive(id)))
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1);
	}
	else set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	
	return PLUGIN_CONTINUE		
}

poprawka

public client_PreThink ( id ) 
{	
        if(!is_user_alive(id))
                return PLUGIN_CONTINUE	

        if(!ma_perk[id])
                return PLUGIN_CONTINUE	

	new button2 = get_user_button(id);
	
	if (get_entity_flags(id) & FL_ONGROUND && (!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT))))
	{
		set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 1);
	}
	else set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
	
	return PLUGIN_CONTINUE		
}

co do tego nie jestem pewny moze tak tez da sie laczyc, ale ja pierwszy raz takie cos widze ;)

(!(button2 & (IN_FORWARD+IN_BACK+IN_MOVELEFT+IN_MOVERIGHT)))

jak to nie zadziala wyłącz te 2 perki, jak nie dziala wylancz peleryny, zostaw dla testu peleryne kucacza powinna dzialac i sprawdz czy jest nie widka wlanczaj po jednym perku i sprawdzaj czy nadal dziala peleryna kucacza jak nie to wiadomo bedziejaki perk buguje. wszech widzacego nie wlanczaj wcale bo trudniej bedzie dojsc a w dodatku brakuje mu warunku ma_perk.

 


Użytkownik Kmf!p edytował ten post 19.12.2016 23:35

  • +
  • -
  • 0
b_350_20_FFAD41_E98100_000000_591F11.png

b_350_20_FFAD41_E98100_000000_591F11.png 

CodMod- 31.186.82.99:23510
Only Dust2- 31.186.82.99:23544




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

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