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

Jak dodać niewidzialność do klasy [Śmieszne]

CoD Nowy

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

#1 ^Grzyboo

    Wszechobecny

  • Użytkownik

Reputacja: 246
Wszechwidzący

  • Postów:461
  • Imię:Grzyboo
  • Lokalizacja:Tak
Offline

Napisano 22.05.2011 20:09

*
Popularny

Jak dodać niewidzialność do klasy, czyli coś komicznego, a jeszcze się ludzie o to pytają. W nowym codzie jest to naprawdę proste.

1. Mamy taką oto klasę

#include <amxmodx>
#include <codmod>

new const nazwa[] = "Niewidzialny";
new const opis[] = "Ledwo go widac";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = -20;
new const kondycja = -10;
new const inteligencja = 5;
new const wytrzymalosc = 10;


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


2. Dołączamy moduł engine, który jest do tego niezbędny. Robimy to dodając
#include <engine>
na początku pluginu


3. Teraz wystarczy ustawić niewidzialność.
Robimy to tymi funkcjami:

public cod_class_enabled(id)
{
ma_klase[id] = true;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 40); // Zamiast 40 dajemy dowolną wartość w granicach 1-255
}

public cod_class_disabled(id)
{
ma_klase[id] = false;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255); // Koniecznie 255, ustawia to pełną widzialność, jeżeli gracz zmieni klasę
}




4. Finałowe sma to:


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

new const nazwa[] = "Niewidzialny";
new const opis[] = "Ledwo go widac";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = -20;
new const kondycja = -10;
new const inteligencja = 5;
new const wytrzymalosc = 10;

new bool:ma_klase[33]; **

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


public cod_class_enabled(id)
{
ma_klase[id] = true; **
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 40);
}

public cod_class_disabled(id)
{
ma_klase[id] = false; **
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}


**- jeżeli klasa nie będzie miała żadnych dodatkowych funkcji, można darować sobie zmienną ma_klasę, gdyż jest niepotrzebna.


Dziękuje, to wszystko

Użytkownik ^Grzyboo edytował ten post 23.05.2011 13:22

  • +
  • -
  • 6

#2 Goliath

    Godlike

  • Przyjaciel

Reputacja: 1 237
Godlike

  • Postów:2 334
  • GG:
  • Steam:steam
  • Imię:Maciej
  • Lokalizacja:Mońki
Offline

Napisano 23.05.2011 16:31

Dołączamy moduł engine, który jest do tego niezbędny.

Zawsze można też fakemetą, używając tego stocka:
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;
}

Użytkownik Goliath edytował ten post 23.05.2011 16:37

  • +
  • -
  • 0

#3 ^Grzyboo

    Wszechobecny

  • Autor tematu
  • Użytkownik

Reputacja: 246
Wszechwidzący

  • Postów:461
  • Imię:Grzyboo
  • Lokalizacja:Tak
Offline

Napisano 23.05.2011 16:42

fakemetą można wszystko prawie ;D
Dla kogoś kto zadaje pytania o niewidzalności gracza, czy dodatkowych obrażeniach z bronią engine jest jedynym rozwiązaniem.
  • +
  • -
  • 0

#4 Na 5tyk

    Godlike

  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 23.06.2011 10:17

Sorry za odświeżenie, ale jak zrobić, żeby niewidka była na kosie?
  • +
  • -
  • 0

#5 JaVoR

    Pomocny

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:50
  • Imię:Bartek
  • Lokalizacja:InoWroCłaW
Offline

Napisano 23.06.2011 12:41

Takie coś znalazłem:

Witam. W tym temacie przedstawię Wam jak w łatwy sposób dodać danej klasie niewidzialność na nożu (bez żadnego ładowania). No to zaczynamy.
Szukamy
KodKod:
new invisible_cast[33]


dodajemy pod
KodKod:
new niewidka[33]


w funkcji RoundStart znajdź, np.
KodKod:
invisible_cast[i] = 0


dodaj pod
KodKod:
niewidka[i] = 0


w funkcji CurWeapon znajdź
KodKod:
invisible_cast[id] = 0


dodaj pod
KodKod:
niewidka[id] = 0


dalej w tej samej funkcji szukamy
KodKod:
if(weapon == CSW_KNIFE)
    on_knife[id] = 1


zamieniamy na
KodKod:
if(weapon == CSW_KNIFE) {
    on_knife[id] = 1
    if(player_class[id] == Twoja_Klasa)
        niewidka[id] = 1
}


szukamy
KodKod:
else if(invisible_cast[id]==1)
{
    if(player_b_inv[id]>0) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, floatround((10.0/255.0)*(255-player_b_inv[id])))
    else set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 10)
}


dodajemy pod
KodKod:
else if(niewidka[id]==1)
{
    if(player_b_inv[id]>242) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, floatround((10.0/255.0)*(255-player_b_inv[id])))
    else set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 12)
}

To jest z Diablo ale powinno działać.

Użytkownik JaVoR edytował ten post 23.06.2011 12:41

  • +
  • -
  • 0

#6 Na 5tyk

    Godlike

  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 23.06.2011 12:59

To nie zadziała, bo nie ma player_b_inv :)
  • +
  • -
  • 0

#7 sharkowy

    Lokalna anomalia sejsmiczna o nieustalonej genezie.

  • Przyjaciel

Reputacja: 113
Zaawansowany

  • Postów:1 981
Offline

Napisano 23.06.2011 13:04

public CurWeapon(id)
{
if(!ma_klase[id])
return;

if(get_user_weapon(id) == CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 10);
else
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}



Wcześniej oczywiście rejestrujesz event i includujesz engine.

Użytkownik RPK. Shark edytował ten post 23.06.2011 13:05

  • +
  • -
  • 0

#8 Almer

    Początkujący

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:14
  • Imię:Dawid
  • Lokalizacja:Gliwice
Offline

Napisano 11.08.2011 19:04

koledzy powiedział by mi ktoś jak zrobić aby klasa była tylko niewidzialna z nożem ?

#9 speedkill

    Godlike

  • Przyjaciel

Reputacja: 1 592
Godlike

  • Postów:2 733
  • GG:
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Prudnik
Offline

Napisano 11.08.2011 19:06

Daj kod to się przerobi ;]
  • +
  • -
  • 0

If you can dream it, you can do it.


#10 Almer

    Początkujący

  • Zbanowany

Reputacja: 0
Nowy

  • Postów:14
  • Imię:Dawid
  • Lokalizacja:Gliwice
Offline

Napisano 11.08.2011 19:09

ten kod co ten kolega wyżej zrobił byście mogli przerobić aby klasa była niewidzialna z nożem

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

new const nazwa[] = "Niewidzialny";
new const opis[] = "Ledwo go widac";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = -20;
new const kondycja = -10;
new const inteligencja = 5;
new const wytrzymalosc = 10;

new bool:ma_klase[33]; **

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


public cod_class_enabled(id)
{
        ma_klase[id] = true; **
        set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 40);
}
        
public cod_class_disabled(id)
{
        ma_klase[id] = false; **
        set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}

Dodano 12 sierpień 2011 - 08:53:
przerobił by mi ktoś to ??

#11 misiecki2

    Zaawansowany

  • Użytkownik

Reputacja: -1
Nowy

  • Postów:88
  • Lokalizacja:Polska
Offline

Napisano 05.09.2011 16:58

no tak ale jak edytować te ma_klase?
  • +
  • -
  • 0

Ahh te dzieci :). Dla was mogę być nawet 10 latkiem z neostrady ;)


#12 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 05.09.2011 17:14

Aby zrobić niewidzialność na nożu należy dodać na koniec pluginu klasy to:

public client_PreThink(id)
{
if(!ma_klase[id])
return;

if(get_user_weapon(id) == CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 10);
else
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}

i do tego dodać include engine czyli na samej górze pluginu pod:
#include <codmod>
wklej to:
#include <engine>
Czyli całość u Ciebie ma wyglądać tak:
#include <amxmodx>
#include <codmod>
#include <engine>

new const nazwa[] = "Niewidzialny";
new const opis[] = "Ledwo go widac";
new const bronie = 1<<CSW_M4A1 | 1<<CSW_DEAGLE;
new const zdrowie = -20;
new const kondycja = -10;
new const inteligencja = 5;
new const wytrzymalosc = 10;

new bool:ma_klase[33];

public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
}

public cod_class_enabled(id)
ma_klase[id] = true;

public cod_class_disabled(id)
ma_klase[id] = false;

public client_PreThink(id)
{
if(!ma_klase[id])
return;

if(get_user_weapon(id) == CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 10);
else
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}


@misiecki2
Nie trzeba edytować ma_klase xD

Użytkownik radim edytował ten post 05.09.2011 17:20

  • +
  • -
  • 1

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !


#13 misiecki2

    Zaawansowany

  • Użytkownik

Reputacja: -1
Nowy

  • Postów:88
  • Lokalizacja:Polska
Offline

Napisano 05.09.2011 19:34

no tak ale jak mam premium i dodam ten kod na niewidzialność to wtedy mi błąd wyskakuje podczas kompilacji.

dam ci nawet błąd z moim sma:

/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
#define DMG_BULLET (1<<1)
new const nazwa[] = "Cichy Komandos (Premium)";
new const opis[] = "Ma Deagle i Zabija z noza (PPM), jest prawie niewidzialny";
new const bronie = 1<<CSW_DEAGLE;
new const zdrowie = 10;
new const kondycja = 35;
new const inteligencja = 0;
new const wytrzymalosc = 10;
new bool:ma_klase[33];
public plugin_init()
{
register_plugin("Medyk", "1.0", "QTM_Peyote");

cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
register_forward(FM_CmdStart, "CmdStart");

}
public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_D))
{
client_print(id, print_chat, "[Cichy Komandos] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;
return COD_CONTINUE;
}
public cod_class_disabled(id)
ma_klase[id] = false;

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_klase[idattacker])
return HAM_IGNORED;

if(get_user_weapon(idattacker) == CSW_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}
public cod_class_enabled(id)
{
ma_klase[id] = true;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 40); // Zamiast 40 dajemy dowolną wartość w granicach 1-255
}

public cod_class_disabled(id)
{
ma_klase[id] = false;
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255); // Koniecznie 255, ustawia to pełną widzialność, jeżeli gracz zmieni klasę
}


Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
Error: Symbol already defined: "cod_class_enabled" on line 62
Warning: Function "cod_class_enabled" should return a value on line 65
Error: Symbol already defined: "cod_class_disabled" on line 68
2 Errors.
Could not locate output file C:\Users\NieJestemPRO\Pobrane\AMXX_Studio_1.4.3_final\compiled\codclass_cichykomandos.amx (compile failed).


widzisz to znaczy że się powtarzają bo jest to już w premium zawarte
  • +
  • -
  • 0

Ahh te dzieci :). Dla was mogę być nawet 10 latkiem z neostrady ;)


#14 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 05.09.2011 19:53

Człowieku, a po co Ci drugie cod_class_enabled i disabled ? Ja nic takiego nie pisałem, abyś tak zrobił ! Zastosuj poniższe sma:

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

new const nazwa[] = "Cichy Komandos (Premium)";
new const opis[] = "Ma Deagle i Zabija z noza (PPM), jest prawie niewidzialny";
new const bronie = 1<<CSW_DEAGLE;
new const zdrowie = 10;
new const kondycja = 35;
new const inteligencja = 0;
new const wytrzymalosc = 10;

new bool:ma_klase[33];

public plugin_init()
{
register_plugin(nazwa, "1.0", "QTM_Peyote");
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
}

public cod_class_enabled(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_D))
{
client_print(id, print_chat, "[Cichy Komandos] Nie masz uprawnien, aby uzywac tej klasy.")
return COD_STOP;
}
ma_klase[id] = true;
return COD_CONTINUE;
}
public cod_class_disabled(id)
{
ma_klase[id] = false;
}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
if(!is_user_connected(idattacker))
return HAM_IGNORED;

if(!ma_klase[idattacker])
return HAM_IGNORED;

if(get_user_weapon(idattacker) == CSW_KNIFE && damagebits & DMG_BULLET && damage > 20.0)
cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);

return HAM_IGNORED;
}
public client_PreThink(id)
{
if(!ma_klase[id])
return;

if(get_user_weapon(id) == CSW_KNIFE)
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 10);
else
set_rendering(id,kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255);
}

Użytkownik radim edytował ten post 05.09.2011 19:54

  • +
  • -
  • 1

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !


#15 misiecki2

    Zaawansowany

  • Użytkownik

Reputacja: -1
Nowy

  • Postów:88
  • Lokalizacja:Polska
Offline

Napisano 05.09.2011 20:04

no tak, ale to jest żeby on niewidzialny był z nożem a to potrafię, a zrobić go ze wszystkim niewidzialnego udaje mi się bez premium.
  • +
  • -
  • 0

Ahh te dzieci :). Dla was mogę być nawet 10 latkiem z neostrady ;)


#16 ChadaWGW2

    Wszechwidzący

  • Zbanowany

Reputacja: 18
Początkujący

  • Postów:232
  • Imię:Tomek
  • Lokalizacja:??
Offline

Napisano 04.05.2012 10:14

Thx radim i RPK.Shark +

Użytkownik ChadaWGW2 edytował ten post 04.05.2012 10:15


#17 Dragon1020

    Pomocny

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:50
  • Lokalizacja:Polska
Offline

Napisano 07.10.2014 15:47

Radim a jak zrobić żeby po wybraniu kosy pasek był i po np.5 sekundach dopiero postać znikała (w sensie tak słabo a nie od razu na widoczność 0)

albo na zasadzie że pasek leci i przez ten czas powoli postać znika aż do odpowiedniej wartości (po tych 5 sekudach)

 

I przy okazji, umie ktoś zrobić żeby widzialność była zależna od pkt int i opisał gdzie się to robi ? Bo kombinuje i kombinuje i nic z tego nie wychodzi aż odpuściłem, może tu ktoś to ogarnie (pod cod mod nowy)


  • +
  • -
  • 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