Поправить спрайт

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
37
Реакции
2
Предупреждения
100
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Ошибка
Как мне сделать хук синим за команду КТ и красным за команду ТТ ??
и при нажатии на хук звук был , путь как сделать ??
ОС
Linux
Билд
ReHLDS version: 3.4.0.633-dev
ReGamedll
ReGameDLL version: 5.3.0.284-dev
Список метамодулей
description      stat pend  file              vers      src   load  unlod
[ 1] Reunion RUN - reunion_mm_i386. v0.1.0.8 ini Start Never
[ 2] VoiceTranscoder RUN - VoiceTranscoder. v2017RC3 ini ANY ANY
[ 3] ReAuthCheck RUN - reauthcheck_mm_i v0.1.6 ini Start Never
[ 4] Rechecker RUN - rechecker_mm_i38 v2.5 ini Chlvl ANY
[ 5] ReSRDetector RUN - resrdetector_mm_ v0.1.0 ini Chlvl ANY
[ 6] AMX Mod X RUN - amxmodx_mm_i386. v1.8.2 ini Start ANY
[ 7] ReSemiclip RUN - resemiclip_mm_i3 v2.3.9 ini Chlvl ANY
[ 8] WHBlocker RUN - whblocker_mm_i38 v1.5.692 ini Chlvl ANY
[ 9] ReAPI RUN - reapi_amxx_i386. v5.2.0.1 pl6 ANY Never
[10] MySQL RUN - mysql_amxx_i386. v1.8.2 pl6 ANY ANY
[11] SQLite RUN - sqlite_amxx_i386 v1.8.2 pl6 ANY ANY
[12] Fun RUN - fun_amxx_i386.so v1.8.2 pl6 ANY ANY
[13] Engine RUN - engine_amxx_i386 v1.8.2 pl6 ANY ANY
[14] FakeMeta RUN - fakemeta_amxx_i3 v1.8.2 pl6 ANY ANY
[15] CStrike RUN - cstrike_amxx_i38 v1.8.2 pl6 ANY ANY
[16] CSX RUN - csx_amxx_i386.so v1.8.2 pl6 ANY ANY
[17] Ham Sandwich RUN - hamsandwich_amxx v1.8.2 pl6 ANY ANY
[18] ReAimDetector RUN - reaimdetector_am v0.2.1 pl6 ANY Never
[19] hackdetector RUN - hackdetector_amx v0.15.32 pl6 ANY ANY
19 plugins, 19 running
Список плагинов
Currently loaded plugins:
name version author file status
[ 1] fb_forwards 0.1.4 Kanagava & Realu fb_forwards.amx running
[ 2] FreshBans 1.3.7b kanagava fresh_bans.amxx running
[ 3] Admin Loader 2.9 neygomon admin_loader.am running
[ 4] Admin Commands 1.8.2 AMXX Dev Team admincmd.amxx running
[ 5] Slots Reservation 1.8.2 AMXX Dev Team adminslots.amxx running
[ 6] Menus Front-End 1.5 untest neugomon menufront_enda. running
[ 7] Commands Menu 1.8.2 AMXX Dev Team cmdmenu.amxx running
[ 8] Plugin Menu 1.8.2 AMXX Dev Team pluginmenu.amxx running
[ 9] Admin Chat 1.8.2 AMXX Dev Team adminchat.amxx running
[ 10] Anti Flood 1.8.2 AMXX Dev Team antiflood.amxx running
[ 11] Scrolling Message 1.8.2 AMXX Dev Team scrollmsg.amxx running
[ 12] Info. Messages 1.8.2 AMXX Dev Team imessage.amxx running
[ 13] Admin Votes 1.8.2 AMXX Dev Team adminvote.amxx running
[ 14] Pause Plugins 1.8.2 AMXX Dev Team pausecfg.amxx running
[ 15] Restrict Weapons 1.8.2 AMXX Dev Team restmenu.amxx running
[ 16] [182] Stats Configurat 17.10.30 SKAJIbnEJIb & AM statscfg_rbs.am running
[ 17] [182] StatsX RBS 17.10.31 SKAJIbnEJIb & AM statsx_rbs.amxx running
[ 18] ReAimDetector API 0.2.1 ReHLDS Team reaimdetector.a running
[ 19] Lite VoteBan 1.4 neygomon lite_voteban.am running
[ 20] [ReAPI] Lite TeamBalan 2.3 neugomon lite_balancer_2 running
[ 21] GagMenu 1.9.0 neygomon GagMenu.amxx running
[ 22] [182] Army Ranks Ultim 17.12.12 SKAJIbnEJIb army_ranks_ulti running
[ 23] Anti Reklama 1.1 MarcaD anti_reklama.am running
[ 24] [ReAPI] AdminFreeLook 1.0 ReHLDS Team adminfreelook.a running
[ 25] DemoRecoder 1.1 neygomon amx_demorec.amx running
[ 26] Advert Messages 1.22 neygomon adverts.amxx running
[ 27] [ReAPI] AWPoff 1.3 PAffAEJIkA :3 awp_off.amxx stopped
[ 28] [182] Chat RBS 17.12.18 SKAJIbnEJIb chat_rbs.amxx running
[ 29] Bomb HUD Timer 0.2 SAMURAI c4timer.amxx running
[ 30] [182] CsStats MySQL 17.12.12 SKAJIbnEJIb csstats_mysql.a running
[ 31] Christmas hat 0.3 AMXX.Shop christmas_hat_r running
[ 32] Custom Models 1.3.2 neugomon custom_models.a running
[ 33] unknown unknown unknown custom_m4a1.amx paused
[ 34] unknown unknown unknown custom_deagle.a paused
[ 35] unknown unknown unknown custom_awp.amxx paused
[ 36] unknown unknown unknown custom_ak47.amx paused
[ 37] Check Steam Players 1.0 Leo_[BH] steam_check.amx running
[ 38] unknown unknown unknown Steam_Bonus.amx running
[ 39] ScreenMaker 1.1 neygomon screen_maker.am running
[ 40] Stop the Bastards 1.6.6 F@nt0M stop_the_bastar running
[ 41] SpecList 1.4 pUzzlik spectlist.amxx running
[ 42] Silly C4 1.1 Cheap_Suit sillyc4.amxx running
[ 43] resetscore(ReAPI) 1.0 Phantom resetscore.amxx running
[ 44] CT Bomb Cracker 0.0.4 Vaqtincha re_ct_bomb_crac stopped
[ 45] Players Menu 1.7 neugomon players_menu.am running
[ 46] Ping Control 1.31 neygomon Ping_Control.am running
[ 47] Mode 2x2 2.5re s1lent mode.amxx running
[ 48] Money HUD Effect 1.15 Sh!nE / Safety1s money_hud_effec running
[ 49] Descriptive 'Fire in t 0.1 VEN GrenadeInfo.amx running
[ 50] unknown unknown unknown gamename_change running
[ 51] [182] Top Award RBS 17.10.30 SKAJIbnEJIb topaward_rbs.am running
[ 52] HUD Message 1.5 neygomon hud_message.amx running
[ 53] [ReAPI] No Team Flash 0.0.2 Vaqtincha no_team_flash.a running
[ 54] NameChangeTime 0.0.1 Vaqtincha block_change_ni running
[ 55] Weapon Icon 1.2 hoboman313/Zenix weapon_icon.amx running
[ 56] Win Messages 1.0 neygomon win_messages.am running
[ 57] Simple Respawn 0.6b Safety1st Deathmatch.amxx running
[ 58] Lite MapChooser 2.6 neygomon Mapmanager_CSDM running
[ 59] Maps Menu 1.4.1 neugomon Mapsmenu_CSDM.a running
[ 60] NoWEapon 2.6 Lev NoWeaponCSDM.am running
[ 61] Train Killer 1.0 Pastout! Anti_parovoz.am running
[ 62] MG Grab 1.0 Nickron Grab.amxx running
[ 63] Hook 1.1 AcE hook.amxx running
[ 64] [ReAPI] Parachute 1.1.1 ReHLDS Team Parachute.amxx running
[ 65] KnifeBot Detector 0.9.9 Mistrick knifebot_detect running
65 plugins, 59 running
Исходный код
#include <amxmodx>
#include <fakemeta_util>

#define VERSION "1.0" // Версия плагина
#define ACCESS ADMIN_LEVEL_H // Флаг доступа
#define TASK_INDEX_HOOK 1337 // Индекс задачи + ид игрока

static Float:aiming[33][3], sprite;

public plugin_precache() {
sprite = engfunc(EngFunc_PrecacheModel, "sprites/hook/hook.spr");
}

public plugin_init() {
register_plugin("Lite Hook", VERSION, "OverGame");

register_concmd("+hook", "hook_on", ACCESS);
register_concmd("-hook", "hook_off");
}

public hook_on(id, level) {
if(~get_user_flags(id) & level) {
client_print(id, print_chat, "Недостаточно прав!");
return PLUGIN_HANDLED;
}

if(!task_exists(TASK_INDEX_HOOK + id)) {
fm_get_aim_origin(id, aiming[id]);

set_task(0.1, "hook_think", TASK_INDEX_HOOK + id, _, _, "b");
hook_think(TASK_INDEX_HOOK + id);
}

return PLUGIN_HANDLED;
}

public hook_off(id) {
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(99);
write_short(id);
message_end();

remove_task(TASK_INDEX_HOOK + id);
return PLUGIN_HANDLED;
}

public hook_think(task) {
new id = task - TASK_INDEX_HOOK;

if(is_user_alive(id)) {
new Float:origin[3], Float:velocity[3];
pev(id, pev_origin, origin);

/* [Спрайт] */
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(1);
write_short(id);
write_coord(floatround(aiming[id][0])); // Координаты
write_coord(floatround(aiming[id][1])); // Координаты
write_coord(floatround(aiming[id][2])); // Координаты
write_short(sprite); // Спрайт
write_byte(7);
write_byte(7);
write_byte(100);
write_byte(25); // Размер
write_byte(7);
write_byte(100); // R
write_byte(178); // G
write_byte(255); // B
write_byte(250);
write_byte(7);
message_end();

/* [Дистанция] */
new Float:distance = get_distance_f(aiming[id], origin);

velocity[0] = (aiming[id][0] - origin[0]) * (5.0 * 200.0 / distance);
velocity[1] = (aiming[id][1] - origin[1]) * (5.0 * 200.0 / distance);
velocity[2] = (aiming[id][2] - origin[2]) * (5.0 * 200.0 / distance);

set_pev(id, pev_velocity, velocity);
}
else {
remove_task(task);
}
}
{
write_byte(255) // R // Цвет за TE (Красный)
write_byte(0) // G
write_byte(0) // B
}
else
{
write_byte(0) // R // Цвет за CT (Синий)
write_byte(100) // G
write_byte(200) // B
}
write_byte(255) // Прозрачность
write_byte(5) // Скорость
message_end()
}

Звук чё куда ,подскажите
public plugin_precache() {

precache_sound("MG_hook/mg_menu.wav")
 
В этой теме было размещено решение! Перейти к решению.
Сообщения
490
Реакции
89
Помог
5 раз(а)
Код:
if(cs_get_user_team(id) == CS_TEAM_T)
{
     write_byte и т.д.
}
else if(cs_get_user_team(id) == CS_TEAM_СT)
{
     write_byte и т.д.
}
29 Янв 2018
Чтобы подключить звук, в plugin_precache добавляете ваш звук, далее в функцию хук:
Код:
emit_sound(id, CHAN_STATIC, "misc/hook.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
29 Янв 2018
Соответственно, звук указываете свой!
29 Янв 2018
Проделайте немного работы и сами
 
Последнее редактирование:
Сообщения
37
Реакции
2
Предупреждения
100
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
WILL_BE, в какие строчки вставлять этот корпус , и что скрывается под словом бла бла , можно по русски ?
29 Янв 2018
Не понимаю в скриптенге ничего , подскажите по подробнее как и что ...
 
Сообщения
490
Реакции
89
Помог
5 раз(а)
Код:
#include <amxmodx>
#include <cstrike>
#include <fakemeta_util>

#define VERSION                    "1.0"                    // Версия плагина
#define ACCESS                    ADMIN_LEVEL_H            // Флаг доступа
#define TASK_INDEX_HOOK            1337                    // Индекс задачи + ид игрока

static Float:aiming[33][3], sprite;

public plugin_precache() {
    precache_sound("misc/hook.wav")

    sprite = engfunc(EngFunc_PrecacheModel, "sprites/hook/hook.spr");
}

public plugin_init() {
    register_plugin("Lite Hook", VERSION, "OverGame");
   
    register_concmd("+hook", "hook_on", ACCESS);
    register_concmd("-hook", "hook_off");
}

public hook_on(id, level) {
    if(~get_user_flags(id) & level) {
        client_print(id, print_chat, "Недостаточно прав!");
        return PLUGIN_HANDLED;
    }
   
    if(!task_exists(TASK_INDEX_HOOK + id)) {
        fm_get_aim_origin(id, aiming[id]);
       
        emit_sound(id, CHAN_STATIC, "misc/hook.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
        set_task(0.1, "hook_think", TASK_INDEX_HOOK + id, _, _, "b");
        hook_think(TASK_INDEX_HOOK + id);
    }
   
    return PLUGIN_HANDLED;
}

public hook_off(id) {
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
    write_byte(99);
    write_short(id);
    message_end();
   
    remove_task(TASK_INDEX_HOOK + id);
    return PLUGIN_HANDLED;
}

public hook_think(task) {
    new id = task - TASK_INDEX_HOOK;
   
    if(is_user_alive(id)) {
        new Float:origin[3], Float:velocity[3];
        pev(id, pev_origin, origin);
       
        /* [Спрайт] */
        message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
        write_byte(1);
        write_short(id);
        write_coord(floatround(aiming[id][0]));        // Координаты
        write_coord(floatround(aiming[id][1]));        // Координаты
        write_coord(floatround(aiming[id][2]));        // Координаты
        write_short(sprite);                        // Спрайт
        write_byte(7);
        write_byte(7);
        write_byte(100);
        write_byte(25);                                // Размер
        write_byte(7);
        if(cs_get_user_team(id) == CS_TEAM_T)
        {
            write_byte(255);                        // R
            write_byte(0);                            // G
            write_byte(0);                            // B
        }
        else if(cs_get_user_team(id) == CS_TEAM_СT)
        {
            write_byte(0);                            // R
            write_byte(0);                            // G
            write_byte(255);                        // B
        }
        write_byte(250);
        write_byte(7);
        message_end();
       
        /* [Дистанция] */
        new Float:distance = get_distance_f(aiming[id], origin);
       
        velocity[0] = (aiming[id][0] - origin[0]) * (5.0 * 200.0 / distance);
        velocity[1] = (aiming[id][1] - origin[1]) * (5.0 * 200.0 / distance);
        velocity[2] = (aiming[id][2] - origin[2]) * (5.0 * 200.0 / distance);
       
        set_pev(id, pev_velocity, velocity);
    }
    else {
        remove_task(task);
    }
}
 
Сообщения
37
Реакции
2
Предупреждения
100
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
WILL_BE, Ошибка компиляции (
 

Вложения

Сообщения
2,143
Реакции
1,225
Помог
44 раз(а)
Сейчас бы в 2018 году юзать модуль cstrike...
 
Сообщения
490
Реакции
89
Помог
5 раз(а)
Код:
#include <amxmodx>
#include <fakemeta_util>

#define VERSION                    "1.0"                    // Версия плагина
#define ACCESS                    ADMIN_LEVEL_H            // Флаг доступа
#define TASK_INDEX_HOOK            1337                    // Индекс задачи + ид игрока

static Float:aiming[33][3], sprite;

public plugin_precache() {
    precache_sound("misc/hook.wav")

    sprite = engfunc(EngFunc_PrecacheModel, "sprites/hook/hook.spr");
}

public plugin_init() {
    register_plugin("Lite Hook", VERSION, "OverGame");
  
    register_concmd("+hook", "hook_on", ACCESS);
    register_concmd("-hook", "hook_off");
}

public hook_on(id, level) {
    if(~get_user_flags(id) & level) {
        client_print(id, print_chat, "Недостаточно прав!");
        return PLUGIN_HANDLED;
    }
  
    if(!task_exists(TASK_INDEX_HOOK + id)) {
        fm_get_aim_origin(id, aiming[id]);
      
        emit_sound(id, CHAN_STATIC, "misc/hook.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
        set_task(0.1, "hook_think", TASK_INDEX_HOOK + id, _, _, "b");
        hook_think(TASK_INDEX_HOOK + id);
    }
  
    return PLUGIN_HANDLED;
}

public hook_off(id) {
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
    write_byte(99);
    write_short(id);
    message_end();
  
    remove_task(TASK_INDEX_HOOK + id);
    return PLUGIN_HANDLED;
}

public hook_think(task) {
    new id = task - TASK_INDEX_HOOK;
  
    if(is_user_alive(id)) {
        new Float:origin[3], Float:velocity[3];
        pev(id, pev_origin, origin);
      
        /* [Спрайт] */
        message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
        write_byte(1);
        write_short(id);
        write_coord(floatround(aiming[id][0]));        // Координаты
        write_coord(floatround(aiming[id][1]));        // Координаты
        write_coord(floatround(aiming[id][2]));        // Координаты
        write_short(sprite);                        // Спрайт
        write_byte(7);
        write_byte(7);
        write_byte(100);
        write_byte(25);                                // Размер
        write_byte(7);
        if(get_user_team(id) == 1)
        {
            write_byte(255);                         // R
            write_byte(0);                            // G
            write_byte(0);                            // B
        }
        else
        {
            write_byte(0);                            // R
            write_byte(0);                            // G
            write_byte(255);                        // B
        }
        write_byte(250);
        write_byte(7);
        message_end();
      
        /* [Дистанция] */
        new Float:distance = get_distance_f(aiming[id], origin);
      
        velocity[0] = (aiming[id][0] - origin[0]) * (5.0 * 200.0 / distance);
        velocity[1] = (aiming[id][1] - origin[1]) * (5.0 * 200.0 / distance);
        velocity[2] = (aiming[id][2] - origin[2]) * (5.0 * 200.0 / distance);
      
        set_pev(id, pev_velocity, velocity);
    }
    else {
        remove_task(task);
    }
}
30 Янв 2018
Minni, я скинул версию как вариант, вы прежде чем высказываться, будьте добры, или помогайте или же направляйте :good2:
 
Сообщения
37
Реакции
2
Предупреждения
100
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
WILL_BE, Большое спасибо, от души прям )
 
Сообщения
490
Реакции
89
Помог
5 раз(а)
wopox1337, ну я так понимаю, он ввел к тому, что можно и без употребления лишнего модуля :)
 
Сообщения
2,751
Реакции
3,017
Помог
61 раз(а)
WILL_BE, он сам в состоянии ответить за свои слова.
 
Сообщения
2,143
Реакции
1,225
Помог
44 раз(а)
wopox1337, WILL_BE за меня уже ответил.

У него в наличии есть AmxModX, FakeMeta и ReAPI, с помощью которых можно узнать команду игрока. Зачем подключать еще один модуль ради этой же информации?! Тем более, весь тот же функционал можно реализовать с помощью FM или ReAPI.

P.S. Не нужно выставлять меня каким-нибудь идиотом, который может лишь ляпнуть что-то без осведомления своих слов.
 
Сообщения
263
Реакции
335
Помог
4 раз(а)
Minni, Я не думаю что wopox1337 хотел выставить тебя как ты сам выразился "идиотом". Вероятней всего он намекает на то, что в будущем лучше сразу предоставлять развёрнутый ответ, ибо от таких высказываний, могут начаться темы с запросами: "Перепишите плагин без использования модуля cstrike, т.к. он устарел в 2018 году"
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу