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.
|
Guest Message by DevFuse
3rdParty
CSX
DoDX
Engine
ESF
Fakemeta
Fun
GeoIP
HamSandwich
JSON
NS
nVault
REAPI
Sockets
Sql
SQLx
TFCX
TSFUN
TSX
ammopacks
amxbans_core
amxbans_main
atac
basebuilder
celltrie
chr_engine
cod
codmod
colorchat
credits
csdm
dHUD
diablo_nowe
entlib
expmod_achievements
expmod_mission
expmod_shop
fvault
ggpro
gunxpmod
ncodmod
netdb
orpheu
orpheu_advanced
orpheu_const
orpheu_memory
orpheu_stocks
pokemod
roulette
StripWeapons
zmvip
zombie_plague_advance
zombieplague
zombieplaguenew1.3
Coreamxbans_core
amxbans_main
atac
basebuilder
celltrie
chr_engine
cod
codmod
colorchat
credits
csdm
dHUD
diablo_nowe
entlib
Ent_Add_AimingVec
Ent_Get_Grenade_Type
Ent_Grenade_Explode
Ent_HullFunc_Init
Ent_Pull_Entity
Ent_Set_Bouncing
expmodEnt_Get_Grenade_Type
Ent_Grenade_Explode
Ent_HullFunc_Init
Ent_Pull_Entity
Ent_Set_Bouncing
expmod_achievements
expmod_mission
expmod_shop
fvault
ggpro
gunxpmod
ncodmod
netdb
orpheu
orpheu_advanced
orpheu_const
orpheu_memory
orpheu_stocks
pokemod
roulette
StripWeapons
zmvip
zombie_plague_advance
zombieplague
zombieplaguenew1.3
amxconst
amxmisc
amxmodx
cellarray
chatcolor
core
datapack
file
float
hlsdk_const
lang
message_const
message_stocks
messages
newmenus
sorting
string
time
vault
vector
Cstrikeamxmisc
amxmodx
cellarray
chatcolor
core
datapack
file
float
hlsdk_const
lang
message_const
message_stocks
messages
newmenus
sorting
string
time
vault
vector
CSX
DoDX
Engine
ESF
Fakemeta
Fun
GeoIP
HamSandwich
JSON
NS
nVault
REAPI
cssdk_const
hlsdk_const
reapi
reapi_engine
reapi_engine_const
reapi_gamedll
reapi_rechecker
reapi_reunion
reapi_vtc
Regexhlsdk_const
reapi
reapi_engine
reapi_engine_const
reapi_gamedll
reapi_rechecker
reapi_reunion
reapi_vtc
Sockets
Sql
SQLx
TFCX
TSFUN
TSX
/* Ent lib (Fakemeta Way) by diablix */ #if defined _entlib_included #endinput #endif #define _entlib_included #if !defined _fakemeta_included #include#endif #if !defined _xs_included #include #endif //Ent_HullFunc_Init #define Ent_Vec_Blocked(%1) (get_tr2(%1, TR_AllSolid) && get_tr2(%1, TR_StartSolid)) #define Ent_Vec_NotBlocked(%1) (!Ent_Vec_Blocked(%1)) #define Ent_Vec_InWater(%1) get_tr2(%1, TR_InWater) #define Ent_Vec_OnOpenTerrain get_tr2(%1, TR_InOpen) //Ent_Get_Grenade_Type enum _:Ent_GrenadeTypes{ // MAX = 3 (ENT_C4) ENT_FLASHBANG, ENT_HEGRENADE, ENT_SMOKEGRENADE, ENT_C4 }; //Ent_Is_Aiming_At enum _:Ent_AimingTypes{ // MAX = 2 (ENT_LADDER) ENT_SKY = CONTENTS_SKY, ENT_WATER = CONTENTS_WATER, ENT_LADDER = CONTENTS_LADDER }; //Pobieranie pozycji wzroku stock Ent_Add_AimingVec(iEnt, Float:fAimStart[3], Float:fAimEnd[3], &iTr=0){ /* //PRZYKLAD new Float:fAimStart[3], Float:fAimEnd[3], iTr Ent_Add_AimingVec(id, fAimStart, fAimEnd, iTr); //Przy uwzglednionym iTr zostanie stworzone traceline (np aby operowa� na hitboxach) */ static Float:fViewOfs[3]; pev(iEnt, pev_origin, fAimStart); pev(iEnt, pev_view_ofs, fViewOfs); xs_vec_add(fAimStart, fViewOfs, fAimStart); pev(iEnt, pev_v_angle, fAimEnd); engfunc(EngFunc_MakeVectors, fAimEnd); global_get(glb_v_forward, fAimEnd); xs_vec_mul_scalar(fAimEnd, 999.0, fAimEnd); xs_vec_add(fAimStart, fAimEnd, fAimEnd); if(iTr){ iTr = create_tr2(); engfunc(EngFunc_TraceLine, fAimStart, fAimEnd, 0, iEnt, iTr); } } //Sprawdzanie pozycji bytu stock Ent_HullFunc_Init(iTrace, iEnt){ /* //PRZYKLAD new iTrace; Ent_HullFunc_Init(iTrace, id); if(Ent_Vec_Blocked(id)) client_print(id, 3, "Jestes zablokowany!"); */ static fOrigin[3]; pev(iEnt, pev_origin, fOrigin); engfunc(EngFunc_TraceHull, fOrigin, fOrigin, 0, (1 <= iEnt <= 32) ? (pev(iEnt, pev_flags) & FL_DUCKING ? HULL_HEAD : HULL_HUMAN) : 0, iEnt, iTrace); } //Sprawdzenie typu granatu stock Ent_Get_Grenade_Type(iEnt){ /* //PRZYKLAD if(Ent_Get_Grenade_Type(iEnt) == ENT_HEGRENADE) client_print(pev(iEnt, pev_owner), 3, "Wykryto Twoj granat wybuchowy!"); */ static sClass[32]; pev(iEnt, pev_classname, sClass, sizeof sClass - 1); if(!equal(sClass, "grenade", strlen(sClass))) return 0x539; return (get_pdata_int(iEnt, 96) & (1<<8)) ? ENT_C4 : get_pdata_int(iEnt, 114) & 3; } //Wymuszenie wybuchu granatu stock Ent_Grenade_Explode(iEnt){ static sClass[32]; pev(iEnt, pev_classname, sClass, sizeof sClass - 1); if(!equal(sClass, "grenade", strlen(sClass)) || Ent_Get_Grenade_Type(iEnt) == ENT_C4) return 0; if(Ent_Get_Grenade_Type(iEnt) == ENT_SMOKEGRENADE) set_pev(iEnt, pev_flags, pev(iEnt, pev_flags) | FL_ONGROUND); set_pev(iEnt, pev_dmgtime, 0.0); dllfunc(DLLFunc_Think, iEnt); return iEnt; } //Byt sie zacznie odbijac stock Ent_Set_Bouncing(iEnt, Float:fStartPower=500.0){ // NIE DZIALA NA GRACZA!!! if(1 <= iEnt <= 32) return 0; set_pev(iEnt, pev_movetype, MOVETYPE_BOUNCE); new Float:fVelo[3], Float:fRealVelo[3]; pev(iEnt, pev_velocity, fRealVelo); fVelo[2] = floatmax(fStartPower, fRealVelo[2]) set_pev(iEnt, pev_velocity, fVelo); return iEnt; } //Sprawdza czy byt jest solidny (nie przenika) stock bool:Ent_Is_Solid(iEnt) return (iEnt ? ((pev(iEnt, pev_solid) > SOLID_TRIGGER) ? true : false) : true); //Ent_Is_Aiming_At (Zwraca zawarto�� wzroku) stock Ent_Get_Aiming_Content(iEnt){ static Float:fOrigin[3], Float:fStart[3], Float:fViewOfs[3], Float:fDest[3]; pev(iEnt, pev_origin, fStart); pev(iEnt, pev_view_ofs, fViewOfs); xs_vec_add(fStart, fViewOfs, fStart); pev(iEnt, pev_v_angle, fDest); engfunc(EngFunc_MakeVectors, fDest); global_get(glb_v_forward, fDest); xs_vec_mul_scalar(fDest, 9999.0, fDest); xs_vec_add(fStart, fDest, fDest); engfunc(EngFunc_TraceLine, fStart, fDest, 0, iEnt, 0); get_tr2(0, TR_vecEndPos, fOrigin); return engfunc(EngFunc_PointContents, fOrigin); } //Sprawdza czy gracz na co� patrzy stock bool:Ent_Is_Aiming_At(iEnt, iWhat=ENT_SKY) return (Ent_Get_Aiming_Content(iEnt) == iWhat);
Pobierz plik entlib.inc