Jak dodać niewidzialność do klasy [Śmieszne]
^Grzyboo
22.05.2011
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ę
2. Dołączamy moduł engine, który jest do tego niezbędny. Robimy to dodając
3. Teraz wystarczy ustawić niewidzialność.
Robimy to tymi funkcjami:
4. Finałowe sma to:
**- 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
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
Goliath
23.05.2011
Zawsze można też fakemetą, używając tego stocka:Dołączamy moduł engine, który jest do tego niezbędny.
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
^Grzyboo
23.05.2011
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.
Dla kogoś kto zadaje pytania o niewidzalności gracza, czy dodatkowych obrażeniach z bronią engine jest jedynym rozwiązaniem.
JaVoR
23.06.2011
Takie coś znalazłem:
To jest z Diablo ale powinno działać.
Użytkownik JaVoR edytował ten post 23.06.2011 12:41
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
sharkowy
23.06.2011
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
Almer 11.08.2011
koledzy powiedział by mi ktoś jak zrobić aby klasa była tylko niewidzialna z nożem ?
Almer 11.08.2011
ten kod co ten kolega wyżej zrobił byście mogli przerobić aby klasa była niewidzialna z nożem
Dodano 12 sierpień 2011 - 08:53:
przerobił by mi ktoś 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); }
Dodano 12 sierpień 2011 - 08:53:
przerobił by mi ktoś to ??
radim
05.09.2011
Aby zrobić niewidzialność na nożu należy dodać na koniec pluginu klasy to:
i do tego dodać include engine czyli na samej górze pluginu pod:
@misiecki2
Nie trzeba edytować ma_klase
Użytkownik radim edytował ten post 05.09.2011 17:20
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
Użytkownik radim edytował ten post 05.09.2011 17:20
misiecki2
05.09.2011
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:
widzisz to znaczy że się powtarzają bo jest to już w premium zawarte
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
radim
05.09.2011
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:
Użytkownik radim edytował ten post 05.09.2011 19:54
#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
misiecki2
05.09.2011
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.
ChadaWGW2 04.05.2012
Thx radim i RPK.Shark +
Użytkownik ChadaWGW2 edytował ten post 04.05.2012 10:15
Użytkownik ChadaWGW2 edytował ten post 04.05.2012 10:15
Dragon1020
07.10.2014
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)