hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2021.12.08. 17:32



Jelenlévő felhasználók

Jelenleg 43 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 42 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 11 hozzászólás ]  Oldal Előző 1 2
Szerző Üzenet
 Hozzászólás témája: Re: Lite Admin ESP
HozzászólásElküldve: 2021.11.18. 14:35 
Offline
Félisten
Avatar

Csatlakozott: 2016.03.06. 14:20
Hozzászólások: 937
Megköszönt másnak: 88 alkalommal
Megköszönték neki: 128 alkalommal
kajlakaki01 írta:
Szint hol lehet ezen változtatni ? :D


Szervusz próbáld csak meg.
  1. #include <amxmodx>
  2. #include <engine>
  3.  
  4. new g_iLaser;
  5. new bool:g_bAdmin[33];
  6. new bool:g_IsAlive[33];
  7.  
  8. new esp_colors[5][3]={{0,255,0},{100,60,60},{60,60,100},{255,0,255},{128,128,128}}
  9.  
  10. public plugin_precache()
  11.     g_iLaser = precache_model("sprites/laserbeam.spr");
  12.  
  13. public plugin_end()
  14. {
  15.     new pl[32], pnum; get_players(pl, pnum);
  16.     for(new i; i < pnum; i++)
  17.         remove_task(pl[i]);
  18. }  
  19.  
  20. public plugin_init()
  21. {
  22.     #define VERSION "1.0"
  23.     register_plugin("Lite Admin ESP", VERSION, "neygomon");
  24.     register_cvar("lite_aesp", VERSION, FCVAR_SERVER | FCVAR_SPONLY);
  25.    
  26.     register_event("DeathMsg", "eDeathMsg", "a", "1>0");
  27.     register_event("ResetHUD", "eResetHud", "be");
  28.     register_event("TextMsg", "eSpecMode", "b", "2&#Spec_M");
  29. }
  30.  
  31. public client_putinserver(id)
  32. {
  33.     g_bAdmin[id]  = (get_user_flags(id) & ADMIN_KICK) ? true : false;
  34.     g_IsAlive[id] = false;
  35. }
  36.  
  37. public client_disconnect(id)
  38. {
  39.     if(g_bAdmin[id])
  40.         remove_task(id);
  41. }
  42.  
  43. public eDeathMsg()
  44.     g_IsAlive[read_data(2)] = false;
  45.  
  46. public eResetHud(id)
  47.     g_IsAlive[id] = true;
  48.  
  49. public eSpecMode(id)
  50. {
  51.     if(!g_bAdmin[id]) return;
  52.    
  53.     if(entity_get_int(id, EV_INT_iuser1) == 4)
  54.         set_task(0.3, "EspTimer", id, .flags="b");
  55.     else
  56.         remove_task(id);
  57. }
  58.  
  59. public EspTimer(id)
  60. {
  61.     switch(g_IsAlive[id])
  62.     {
  63.         case false:
  64.         {
  65.             static iTarget; iTarget = entity_get_int(id, EV_INT_iuser2);
  66.            
  67.             if(iTarget && is_user_alive(iTarget) && is_valid_ent(iTarget))
  68.                 SendQuadro(id, iTarget);
  69.         }
  70.         case true: remove_task(id);
  71.            
  72.     }  
  73. }
  74.  
  75. SendQuadro(id, iTarget)
  76. {
  77. static pl[32], pnum, my_team;
  78. static Float:my_origin[3], Float:target_origin[3], Float:v_middle[3], Float:v_hitpoint[3];
  79. static Float:distance, Float:distance_to_hitpoint, Float:distance_target_hitpoint, Float:scaled_bone_len;
  80. static Float:v_bone_start[3], Float:v_bone_end[3], Float:offset_vector[3], Float:eye_level[3];
  81.  
  82. entity_get_vector(iTarget, EV_VEC_origin, my_origin);
  83. my_team = get_user_team(iTarget);
  84. get_players(pl, pnum, "ah");
  85. for(new i; i < pnum; i++)
  86. {
  87.     if(pl[i] == iTarget) continue;
  88.     if(my_team == get_user_team(pl[i])) continue;
  89.    
  90.     entity_get_vector(pl[i], EV_VEC_origin, target_origin);
  91.     distance = vector_distance(my_origin, target_origin);
  92.    
  93.     trace_line(-1, my_origin, target_origin, v_hitpoint);
  94.    
  95.     subVec(target_origin, my_origin, v_middle);
  96.     normalize(v_middle, offset_vector, (distance_to_hitpoint = vector_distance(my_origin, v_hitpoint)) - 10.0);
  97.    
  98.     copyVec(my_origin, eye_level);
  99.     eye_level[2] += 17.5;
  100.     addVec(offset_vector, eye_level);
  101.    
  102.     copyVec(offset_vector, v_bone_start);
  103.     copyVec(offset_vector, v_bone_end);
  104.     v_bone_end[2] -= (scaled_bone_len = distance_to_hitpoint / distance * 50.0);
  105.    
  106.     if(distance_to_hitpoint == distance)
  107.         continue;
  108.        
  109.         distance_target_hitpoint = (distance - distance_to_hitpoint) / 12;
  110.         MakeQuadrate(id, v_bone_start, v_bone_end, floatround(scaled_bone_len * 3.0), (distance_target_hitpoint < 170.0) ? (255 - floatround(distance_target_hitpoint)) : 85)
  111.     }
  112. }
  113.  
  114. stock normalize(Float:Vec[3], Float:Ret[3], Float:multiplier)
  115. {
  116.     static Float:len; len = vector_distance(Vec, Float:{ 0.0, 0.0, 0.0 });
  117.     copyVec(Vec, Ret);
  118.    
  119.     Ret[0] /= len;
  120.     Ret[1] /= len;
  121.     Ret[2] /= len;
  122.     Ret[0] *= multiplier;
  123.     Ret[1] *= multiplier;
  124.     Ret[2] *= multiplier;
  125. }
  126.  
  127. stock copyVec(Float:Vec[3], Float:Ret[3])
  128. {
  129.     Ret[0] = Vec[0];
  130.     Ret[1] = Vec[1];
  131.     Ret[2] = Vec[2];
  132. }
  133.  
  134. stock subVec(Float:Vec1[3], Float:Vec2[3], Float:Ret[3])
  135. {
  136.     Ret[0] = Vec1[0] - Vec2[0];
  137.     Ret[1] = Vec1[1] - Vec2[1];
  138.     Ret[2] = Vec1[2] - Vec2[2];
  139. }
  140.  
  141. stock addVec(Float:Vec1[3], Float:Vec2[3])
  142. {
  143.     Vec1[0] += Vec2[0];
  144.     Vec1[1] += Vec2[1];
  145.     Vec1[2] += Vec2[2];
  146. }
  147.  
  148. MakeQuadrate(id, Float:Vec1[3], Float:Vec2[3], width, brightness){
  149.     message_begin(MSG_ONE_UNRELIABLE, SVC_TEMPENTITY, { 0, 0, 0 }, id);
  150.     write_byte(0);
  151.     write_coord(floatround(Vec1[0]));
  152.     write_coord(floatround(Vec1[1]));
  153.     write_coord(floatround(Vec1[2]));
  154.     write_coord(floatround(Vec2[0]));
  155.     write_coord(floatround(Vec2[1]));
  156.     write_coord(floatround(Vec2[2]));
  157.     write_short(g_iLaser);
  158.     write_byte(3);
  159.     write_byte(0);
  160.     write_byte(3);
  161.     write_byte(width);
  162.     write_byte(0);
  163.     write_byte(esp_colors[color][0])
  164.     write_byte(esp_colors[color][1])
  165.     write_byte(esp_colors[color][2])
  166.     write_byte(brightness);
  167.     write_byte(0);
  168.     message_end();
  169. }

_________________
 ! Moderátori megjegyzés (kiki):
Kérlek csekkold az aláírásra vonatkozó szabályokat!


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 11 hozzászólás ]  Oldal Előző 1 2


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 7 vendég


Nem nyithatsz témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole