admin spec. esp, стабильная версия |
Здравствуйте, гость Вход | Регистрация
Наши новости:
|
|
|
admin spec. esp, стабильная версия |
Bambuc
|
6.5.2014, 17:24
Сообщение
|
![]() |
admin_spec_esp_mini
|
Поблагодарили 1 раз
|
|
ozmosis
|
6.5.2014, 17:24
Сообщение
|
![]() |
|
Поблагодарили 1 раз
|
|
strelok93
|
6.5.2014, 17:26
Сообщение
|
![]() |
umbserver,
admin_spec_esp_mini ! и жалоб нет |
Поблагодарили 1 раз
|
|
zhen9
|
6.5.2014, 17:28
Сообщение
|
![]() |
admin_spec_esp_mini
Скиньте кто нибудь ) |
Поблагодарили 1 раз
|
|
ozmosis
|
6.5.2014, 17:34
Сообщение
|
![]() |
admin_spec_esp_mini Скиньте кто нибудь ) https://c-s.net.ua/forum/index.php?showtopi...mp;hl=Admin+ESP с таким стажем пора и поиском научиться пользоваться
Отредактировал: ozmosis, - 6.5.2014, 17:37
|
Поблагодарили 1 раз
|
|
Bloo
|
6.5.2014, 18:05
Сообщение
|
![]() |
Есть еще версия со спрайтами...
|
Поблагодарили 1 раз
|
|
umbserver
|
7.5.2014, 7:03
Сообщение
|
|
|
https://c-s.net.ua/forum/index.php?showtopi...mp;hl=Admin+ESP с таким стажем пора и поиском научиться пользоваться Из этой темы взял 1.6 версию , мини как я понял Ошибки при компиляции,что локально,что на вэб компиляторах Исходник : Скрытый текст Код #include <amxmodx> #include <fakemeta> #define PLUGIN "<span class="searchlite">Admin</span> Spectator <span class="searchlite">ESP</span>" #define VERSION "1.6" #define AUTHOR "KoST" #define OFFSET_TEAM 114 enum { ESP_ON = 0, ESP_LINE, ESP_BOX } new bool:admin[33], bool:first_person[33], bool:ducking[33], bool:admin_options[33][10], bool:is_in_menu[33] new team_colors[4][3]={{0,0,0},{150,0,0},{0,0,150},{0,150,0}} new esp_colors[5][3]={{0,255,0},{100,60,60},{60,60,100},{255,0,255},{128,128,128}} new view_target[33], damage_done_to[33], spec[33], pcvar_esp_default_keys, laser, max_players public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) pcvar_esp_default_keys = register_cvar("esp_disable_default_keys","0") register_clcmd("esp_menu", "cmd_esp_menu", ADMIN_KICK, "Shows <span class="searchlite">ESP</span> Menu") register_clcmd("esp_toggle", "cmd_esp_toggle", ADMIN_KICK, "Toggle <span class="searchlite">ESP</span> on/off") register_clcmd("esp_setting", "cmd_esp_settings", ADMIN_KICK, "<span class="searchlite">ESP</span> adasdsassdasd") register_event("StatusValue", "spec_target", "bd", "1=2") register_event("SpecHealth2", "spec_target", "bd") register_event("TextMsg", "spec_mode", "b", "2&#Spec_Mode") register_event("Damage", "event_Damage", "b", "2!0", "3=0", "4!0") register_event("ResetHUD", "reset_hud_alive", "be") register_forward(FM_PlayerPreThink, "fwdPlayerPreThink") new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2 register_menucmd(register_menuid("<span class="searchlite">Admin</span> Specator <span class="searchlite">ESP</span>"), keys, "menu_esp") max_players = get_maxplayers() set_task(1.0, "esp_timer") } public plugin_precache() laser=precache_model("sprites/laserbeam.spr") public client_putinserver(id) { first_person[id]=false if (get_user_flags(id) & ADMIN_KICK) { admin[id]=true init_admin_options(id) } else admin[id]=false } public client_disconnect(id) { save2vault(id) admin[id] = false spec[id] = 0 } public reset_hud_alive(id) spec[id] = 0 public cmd_esp_settings(id) { if (admin[id]) { new out[11], len = strlen(out) read_argv(1, out, 4) for (new i=0;i<len;i++) { if (out[i]=='1') admin_options[id][i]=true else admin_options[id][i]=false } } } public cmd_esp_menu(id) { if (admin[id]) { show_esp_menu(id) } } public cmd_esp_toggle(id) { if (admin[id]) { change_esp_status(id, !admin_options[id][0]) } } show_esp_menu(id) { is_in_menu[id] = true new menu[501] new keys = MENU_KEY_0|MENU_KEY_1|MENU_KEY_2 new onoff[2][] = {{"\roff\w"},{"\yon\w"}} new text[2][] = {{"(use move forward/backward to switch on/off)"},{"(use esp_toggle command to toggle)"}} new text_index = get_pcvar_num(pcvar_esp_default_keys) if (text_index!=1) text_index=0 formatex(menu, 500, "<span class="searchlite">Admin</span> Specator ESP^n %s %s^n^n1. Линии %s^n2. Квадраты %s^n^n0. Выход", onoff[admin_options[id][ESP_ON]], text[text_index], onoff[admin_options[id][ESP_LINE]], onoff[admin_options[id][ESP_BOX]]) show_menu(id, keys,menu) return PLUGIN_HANDLED } public menu_esp(id, key) { if (key==9) { is_in_menu[id]=false return PLUGIN_HANDLED } if (admin_options[id][key+1]) admin_options[id][key+1]=false else admin_options[id][key+1]=true show_esp_menu(id) return PLUGIN_HANDLED } public event_Damage(id) { if (id>0) { new attacker=get_user_attacker(id) if (attacker>0 && attacker<=max_players) { if (view_target[attacker]==id) damage_done_to[attacker]=id } } return PLUGIN_CONTINUE } public spec_mode(id) { new specMode[12] read_data(2, specMode, 11) if(equal(specMode,"#Spec_Mode4")) first_person[id]=true else first_person[id]=false return PLUGIN_CONTINUE } public spec_target(id) { if (id>0) { new target=read_data(2) if (target!=0) spec[id]=target } return PLUGIN_CONTINUE } init_admin_options(id) { for (new i=0;i<4;i++) { admin_options[id][i] = true } load_vault_data(id) } save2vault(id) { if (admin[id]) { new authid[35], tmp[11], key[41] get_user_authid(id, authid, charsmax(authid)) for (new s=0;s<4;s++) { if (admin_options[id][s]) tmp[s]='1' else tmp[s]='0' } tmp[4]=0 formatex(key, charsmax(key), "ESP_%s", authid) set_vaultdata(key, tmp) } } load_vault_data(id) { if (admin[id]) { new data[11], authid[35], key[41] get_user_authid (id, authid, charsmax(authid)) formatex(key, 40, "ESP_%s", authid) get_vaultdata(key, data, 4) if (strlen(data) > 0) { for (new s=0;s<4;s++) { if (data[s]=='1') admin_options[id][s]=true else admin_options[id][s]=false } } } } change_esp_status(id, bool:on) { if (on) { admin_options[id][0] = true if (!is_in_menu[id]) client_print(id, print_chat, "[%s] ON", PLUGIN) if (is_in_menu[id]) show_esp_menu(id) } else { admin_options[id][0] = false if (!is_in_menu[id]) client_print(id, print_chat, "[%s] OFF", PLUGIN) if (is_in_menu[id]) show_esp_menu(id) } } public fwdPlayerPreThink(id) { if (!is_user_connected(id)) return FMRES_IGNORED static button, oldbutton button=pev(id, pev_button) if (button==0) return FMRES_IGNORED oldbutton=pev(id, pev_oldbuttons) if (button & IN_DUCK) ducking[id]=true else ducking[id]=false if (get_pcvar_num(pcvar_esp_default_keys) !=1) { if (admin[id]) { if (first_person[id] && !is_user_alive(id)) { if ((button & IN_FORWARD) && !(oldbutton & IN_FORWARD) && !admin_options[id][0]) { change_esp_status(id, true) } if ((button & IN_BACK) && !(oldbutton & IN_BACK) && admin_options[id][0]) { change_esp_status(id, false) } } } } return FMRES_HANDLED } public esp_timer() { static spec_id, Float:my_origin[3], my_team, target_team, Float:target_origin[3], Float:distance, width, Float:v_middle[3], Float:v_hitpoint[3], Float:distance_to_hitpoint, Float:scaled_bone_len, Float:scaled_bone_width, Float:v_bone_start[3], Float:v_bone_end[3], Float:offset_vector[3], Float:eye_level[3], Float:distance_target_hitpoint, actual_bright, color for (new i=1;i<=max_players;i++) { if (admin_options[i][ESP_ON] && first_person[i] && is_user_connected(i) && admin[i] && (!is_user_alive(i)) && (spec[i]>0) && is_user_alive(spec[i])) { spec_id=spec[i] pev(i, pev_origin, my_origin) my_team = get_pdata_int(spec_id, OFFSET_TEAM) for (new s=1;s<=max_players;s++) { if (is_user_alive(s)) { target_team = get_pdata_int(s, OFFSET_TEAM) if (!(target_team ==3)) { if (spec_id !=s) { if (((my_team != target_team && (target_team ==1 || target_team ==2)))) { pev(s, pev_origin, target_origin) distance=vector_distance(my_origin, target_origin) if (admin_options[i][ESP_LINE]) { if (distance<2040.0) width=(255-floatround(distance/8.0))/3 else width=1 make_TE_BEAMENTPOINT(i, target_origin, width,target_team) } subVec(target_origin,my_origin,v_middle) engfunc(EngFunc_TraceLine, my_origin, target_origin, 1, -1, 0) get_tr2(0, TR_vecEndPos, v_hitpoint) distance_to_hitpoint = vector_distance(my_origin, v_hitpoint) if (ducking[spec_id]) scaled_bone_len=distance_to_hitpoint/distance*(50.0-18.0) else scaled_bone_len=distance_to_hitpoint/distance*50.0 scaled_bone_len=distance_to_hitpoint/distance*50.0 scaled_bone_width=distance_to_hitpoint/distance*150.0 normalize(v_middle,offset_vector,distance_to_hitpoint-10.0) copyVec(my_origin,eye_level) if (ducking[spec_id]) eye_level[2]+=12.3 else eye_level[2]+=17.5 addVec(offset_vector,eye_level) copyVec(offset_vector,v_bone_start) copyVec(offset_vector,v_bone_end) v_bone_end[2]-=scaled_bone_len distance_target_hitpoint=distance-distance_to_hitpoint actual_bright=255 if (admin_options[i][ESP_BOX]) { if (distance_target_hitpoint<2040.0) actual_bright=(255-floatround(distance_target_hitpoint/12.0)) else actual_bright=85 if (distance_to_hitpoint!=distance) color=0 else color=target_team if (damage_done_to[spec_id]==s) { color=3 damage_done_to[spec_id]=0 } make_TE_BEAMPOINTS(i,color,v_bone_start,v_bone_end,floatround(scaled_bone_width) ,actual_bright) } } } } } } } } set_task(0.3, "esp_timer") return PLUGIN_CONTINUE } Float:getVecLen(Float:Vec[3]) { new Float:VecNull[3]={0.0,0.0,0.0} new Float:len=vector_distance(Vec,VecNull) return len } normalize(Float:Vec[3],Float:Ret[3],Float:multiplier) { new Float:len=getVecLen(Vec) copyVec(Vec,Ret) Ret[0]/=len Ret[1]/=len Ret[2]/=len Ret[0]*=multiplier Ret[1]*=multiplier Ret[2]*=multiplier } copyVec(Float:Vec[3],Float:Ret[3]) { Ret[0]=Vec[0] Ret[1]=Vec[1] Ret[2]=Vec[2] } subVec(Float:Vec1[3],Float:Vec2[3],Float:Ret[3]) { Ret[0]=Vec1[0]-Vec2[0] Ret[1]=Vec1[1]-Vec2[1] Ret[2]=Vec1[2]-Vec2[2] } addVec(Float:Vec1[3],Float:Vec2[3]) { Vec1[0]+=Vec2[0] Vec1[1]+=Vec2[1] Vec1[2]+=Vec2[2] } make_TE_BEAMPOINTS(id,color,Float:Vec1[3],Float:Vec2[3],width,brightness) { message_begin(MSG_ONE_UNRELIABLE ,SVC_TEMPENTITY,{0,0,0},id) write_byte(0) write_coord(floatround(Vec1[0])) write_coord(floatround(Vec1[1])) write_coord(floatround(Vec1[2])) write_coord(floatround(Vec2[0])) write_coord(floatround(Vec2[1])) write_coord(floatround(Vec2[2])) write_short(laser) write_byte(3) write_byte(0) write_byte(3) write_byte(width) write_byte(0) write_byte(esp_colors[color][0]) write_byte(esp_colors[color][1]) write_byte(esp_colors[color][2]) write_byte(brightness) write_byte(0) message_end() } make_TE_BEAMENTPOINT(id,Float:target_origin[3],width,target_team) { message_begin(MSG_ONE_UNRELIABLE,SVC_TEMPENTITY,{0,0,0},id) write_byte(1) write_short(id) write_coord(floatround(target_origin[0])) write_coord(floatround(target_origin[1])) write_coord(floatround(target_origin[2])) write_short(laser) write_byte(1) write_byte(1) write_byte(3) write_byte(width) write_byte(0) write_byte(team_colors[target_team][0]) write_byte(team_colors[target_team][1]) write_byte(team_colors[target_team][2]) write_byte(255) write_byte(0) message_end() } Ошибки : Скрытый текст ![]() |
|
|
|
XyLiGaN
|
7.5.2014, 9:42
Сообщение
|
|
|
|
|
|
|
XyLiGaN
|
7.5.2014, 9:52
Сообщение
|
|
|
|
|
|
|
umbserver
|
12.5.2014, 18:42
Сообщение
|
|
|
|
|
|
|
urpok
|
12.5.2014, 18:47
Сообщение
|
|
|
Нажимаешь "R" = вылазит меню, и выставляешь всё, что тебе нужно. (если версия с меню)
|
|
|
|
urpok
|
12.5.2014, 19:00
Сообщение
|
|
|
Короче, вот тебе плаг, только скомпиль его. Я пользуюсь, всё работает. Нареканий нет.
И не забудь в amxx.cfg прописать квары. В самом плагине, я их подписал. Думаю разберёшься. Квары в amxx.cfg esp "1" // Плагин вкл/выкл (0 = выкл)(1 = вкл) esp_timer "0.3" // Время обновления линий/квадратов (0.3 - 0.5 = оптимально) esp_allow_all "1" // WH доступно: (0 = для админов)(1 = для всех игроков) esp_disable_default_keys "0" // Управление кнопками R ; W ; S (0 = кнопки вкл.) (1 = кнопки выкл.)
Admin_Spectator_Esp.sma ( 20,27 килобайт )
Кол-во скачиваний: 23 |
Поблагодарили 1 раз
|
|
umbserver
|
12.5.2014, 20:15
Сообщение
|
|
|
Короче, вот тебе плаг, только скомпиль его. Я пользуюсь, всё работает. Нареканий нет. И не забудь в amxx.cfg прописать квары. В самом плагине, я их подписал. Думаю разберёшься. Квары в amxx.cfg esp "1" // Плагин вкл/выкл (0 = выкл)(1 = вкл) esp_timer "0.3" // Время обновления линий/квадратов (0.3 - 0.5 = оптимально) esp_allow_all "1" // WH доступно: (0 = для админов)(1 = для всех игроков) esp_disable_default_keys "0" // Управление кнопками R ; W ; S (0 = кнопки вкл.) (1 = кнопки выкл.)
Admin_Spectator_Esp.sma ( 20,27 килобайт )
Кол-во скачиваний: 23Спасибо большое , но хотелось бы минимальную версию , только с квадратиками и возможность отключения esp |
|
|
|
DiCkoHi
|
12.5.2014, 21:04
Сообщение
|
|
|
ddd
Поставил себе на серв этот плагин) |
|
|
|
![]() ![]() |