Перестает работать дамагер, если установить другой мапменеджер

Статус
В этой теме нельзя размещать новые ответы.

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
p/s: ещё заметил при падении, если падаешь без парашюта(то показывает урон).
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
 

steelzzz

Скриптер
Регистрация
9 Июн 2017
Сообщения
168
Симпатии
24
Пол
Мужской
ну так, вам же надо, что бы вам от взрыва показаывался дамаг? он должен по идеи показываться и так же показывать все типы уронов которые вы наносите себе[DOUBLEPOST=1564695746][/DOUBLEPOST]вы не правильно изменили, вот правильно:
Код:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(!is_user_connected(iAttacker))return;
    //if(iBitsDamageType & DMG_BLAST)return;
    static team;team = get_member(iVictim,m_iTeam);
    if(team == get_member(iAttacker, m_iTeam)) return;
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
  
    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);
  
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
ну так, вам же надо, что бы вам от взрыва показаывался дамаг? он должен по идеи показываться и так же показывать все типы уронов которые вы наносите себе[DOUBLEPOST=1564695746][/DOUBLEPOST]вы не правильно изменили, вот правильно:
Код:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(!is_user_connected(iAttacker))return;
    //if(iBitsDamageType & DMG_BLAST)return;
    static team;team = get_member(iVictim,m_iTeam);
    if(team == get_member(iAttacker, m_iTeam)) return;
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
 
    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);
 
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
я изменял как ты скинул выше, не показывало от гранат...[DOUBLEPOST=1564696872][/DOUBLEPOST]не показывало от гранат... может где-то ошибся. поставил щас твой вариант. урон от гранат не показывает, когда себя подрываю, но пропал показ урона, когда падаю (как выше на видео показывал, что было при падении).
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
вот где была в исходнике ошибка у меня:
C-like:
set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);

-if(!is_user_connected(iAttacker))return; не убрана была эта строка
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
C#:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(!is_user_connected(iAttacker))return;
    static team;team = get_member(iVictim,m_iTeam);
    if(team == get_member(iAttacker, m_iTeam))return;
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }

    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);

    if(!is_user_connected(iAttacker))return;
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
 

Molodoi

Команда форума
Модератор
Регистрация
14 Июн 2017
Сообщения
608
Симпатии
126
справились можно closed или дамаг для вас глобальная проблема)
 
K

kapangaIII

1564709739016.png


Это небезопасно, об этом было 100 раз написано на предыдущей странице. Где логика?[DOUBLEPOST=1564710076][/DOUBLEPOST]
C++:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(/* iVictim==iAttacker *//*  || flDamage <= 0.0 */|| !rg_is_player_can_takedamage(iVictim, iAttacker))return;
    if(iBitsDamageType & DMG_FALL)return;
    static team;team = get_member(iVictim,m_iTeam);
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }

    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);

    if(!is_user_connected(iAttacker))return;
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
[DOUBLEPOST=1564710105][/DOUBLEPOST]У тебя на сервере урон по своим что-ли включен или что?[DOUBLEPOST=1564710175][/DOUBLEPOST]rg_is_player_can_takedamage
кинет гранату игрок, выйдет, и не покажет тому кому урон нанесло сколько сняло

Убирай лучше всякие friendlyfire, смысл с них?
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
Посмотреть вложение 9449


Это небезопасно, об этом было 100 раз написано на предыдущей странице. Где логика?[DOUBLEPOST=1564710076][/DOUBLEPOST]
C++:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(/* iVictim==iAttacker *//*  || flDamage <= 0.0 */|| !rg_is_player_can_takedamage(iVictim, iAttacker))return;
    if(iBitsDamageType & DMG_FALL)return;
    static team;team = get_member(iVictim,m_iTeam);
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }

    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);

    if(!is_user_connected(iAttacker))return;
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
[DOUBLEPOST=1564710105][/DOUBLEPOST]У тебя на сервере урон по своим что-ли включен или что?[DOUBLEPOST=1564710175][/DOUBLEPOST]rg_is_player_can_takedamage
кинет гранату игрок, выйдет, и не покажет тому кому урон нанесло сколько сняло

Убирай лучше всякие friendlyfire, смысл с них?
нету никакого friendlyfire на сервере...[DOUBLEPOST=1564729695][/DOUBLEPOST]
Код:
//AMXXPC compile.exe
// by the AMX Mod X Dev Team

//// damager51.sma
//
// D:\hlds\cstrike\addons\amxmodx\scripting\damager51.sma(11) : error 029: inval
id expression, assumed zero
// D:\hlds\cstrike\addons\amxmodx\scripting\damager51.sma(11) : error 001: expec
ted token: ";", but found ")"
// D:\hlds\cstrike\addons\amxmodx\scripting\damager51.sma(11) : error 029: inval
id expression, assumed zero
// D:\hlds\cstrike\addons\amxmodx\scripting\damager51.sma(11) : fatal error 107:
 too many error messages on one line
//
// Compilation aborted.
// 4 Errors.
// Could not locate output file D:\hlds\cstrike\addons\amxmodx\scripting\compile
d\damager51.amx (compile failed).
//
// Compilation Time: 0,36 sec
// ----------------------------------------

Press enter to exit ...
 
K

kapangaIII

Ну а почему ты пишешь тогда что тебе показывает нанесенный игроку своей команды урон?
С чего бы функции вызываться если урон не был нанесен?

|| удали на 11, та что вне /* */ блока, либо занеси ее в блок.
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
Ну а почему ты пишешь тогда что тебе показывает нанесенный игроку своей команды урон?
С чего бы функции вызываться если урон не был нанесен?

|| удали на 11, та что вне /* */ блока, либо занеси ее в блок.
вот в этом варианте #25, когда стрелял по своему игроку, показывался нанесённый урон по игроку.[DOUBLEPOST=1564741503][/DOUBLEPOST]
C-like:
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(/* iVictim==iAttacker *//*  || flDamage <= 0.0 */ !rg_is_player_can_takedamage(iVictim, iAttacker))return;
[/ICODE]
 
K

kapangaIII

Ты попробуй новый вариант, который скинули.
Если у тебя ff выключен то урон по своим даже не должен проходить в эти функции по-моему, хотя это не точно.
 

Izmayl7

Пользователь
Регистрация
9 Июн 2017
Сообщения
530
Симпатии
105
Пол
Мужской
Ты попробуй новый вариант, который скинули.
Если у тебя ff выключен то урон по своим даже не должен проходить в эти функции по-моему, хотя это не точно.
C++:
#include <amxmodx>
#include <reapi>
new g_HudSyncMessage;
new g_HudSyncMessage2;
public plugin_init(){
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "CPlayer_TakeDamage_Post", .post = true);
    g_HudSyncMessage = CreateHudSyncObj();
    g_HudSyncMessage2 = CreateHudSyncObj();
}
public CPlayer_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:flDamage, iBitsDamageType){
    if(/* iVictim==iAttacker *//*  || flDamage <= 0.0 */ !rg_is_player_can_takedamage(iVictim, iAttacker))return;
    if(iBitsDamageType & DMG_FALL)return;
    static team;team = get_member(iVictim,m_iTeam);
    static rgb[3];
    if(team==1){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }

    set_hudmessage(rgb[0], rgb[1], rgb[2], 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1);
    ShowSyncHudMsg(iVictim, g_HudSyncMessage2, "%.0f", flDamage);

    if(!is_user_connected(iAttacker))return;
    team = get_member(iAttacker,m_iTeam);
    if(team==2){
        rgb[0]=255;rgb[1]=0;rgb[2]=0;
    }
    else{
        rgb[0]=0;rgb[1]=0;rgb[2]=255;
    }
    set_hudmessage(rgb[0], rgb[1], rgb[2], -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1);
    ShowSyncHudMsg(iAttacker, g_HudSyncMessage, "%.0f", flDamage);
}
проверил!) огонь по своим не был включен на сервере: mp_friendlyfire "0" // Возможность атаковать своих.
Видео попозже скину как работает. Хорошо
 
K

kapangaIII

Видео не нужно. Квары не так проверяют, напиши в консоль сервера mp_friendlyfire и посмотри результат.
 
K

kapangaIII

Удали тогда вообще строку if(/* iVictim==iAttacker *//* || flDamage <= 0.0 */ !rg_is_player_can_takedamage(iVictim, iAttacker))return;
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу