TerraByter

Wall HP

6 posts in this topic

cgJOT0YRNIg.jpg

Может у кого есть плагин на подобие этого? 
Не могли бы вы поделиться исходным кодом, пожалуйста.
Если не понятно, то речь идёт о жизнях стены(объекта), скажем так.

Share this post


Link to post
Share on other sites

В общем, порылся в гугле, нашёл что-то подобное, но...
Работает не так, как хотелось бы.
Показывает лишь 0.0000
Помогите исправить или подскажите, что здесь не так.

 
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <fakemeta_const>

new origin[3]
new Float: angles;

public plugin_init()
{
    RegisterHam(Ham_TakeDamage, "func_breakable", "FwdBreakableTakeDamage");
}

public FwdBreakableTakeDamage(this, attacker, inflictor, Float: damage)
{
    new centity = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"func_breakable"));
    new Float:myvalue;
    pev( centity, pev_health, myvalue );
    if(centity)
    {
        set_pev(centity,pev_origin,origin)
        set_pev(centity,pev_angles,angles)
        dllfunc(DLLFunc_Spawn, centity)
        set_pev(centity,pev_solid, SOLID_BBOX)
        set_pev(centity,pev_movetype,MOVETYPE_FLY)
        engfunc(EngFunc_SetSize, centity, float:{-2.15, -4.3, -2.15}, float:{2.15, 4.3, 2.15});
        set_pev(centity,pev_takedamage,DAMAGE_AIM)
        set_pev(centity,pev_health, 99.0)
        set_pev(centity,pev_max_health, 99.0)
        engfunc(EngFunc_DropToFloor,centity)
        set_pev(centity,pev_iuser1,attacker)
        client_print(attacker,print_center,"HP %f", myvalue)
    }
}

 

Share this post


Link to post
Share on other sites

Ладно, Ham_TakeDamage тут правильно. Но дальше :o

Все намного проще.

public plugin_init() 
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	RegisterHam(Ham_TakeDamage, "func_breakable", "Ham_TakeDamage_Post", 1);
}

public Ham_TakeDamage_Post(iEntity, iInflictor, iAttacker, Float:fDamage)
{
	if (!is_user_alive(iAttacker))
	{
		return;
	}
	
	client_print(iAttacker, print_center, "Wall HP: %i", pev(iEntity, pev_health));
}

 

Edited by Arwel

Share this post


Link to post
Share on other sites

Спасибо, помогло)

А ещё вопросы:

1.Можно ли как-то увеличивать хп всем объектам на карте?

2. Можно ли делать объект разрушаемым?

И всё это, не прибегая к редактированию самой карты.

Видел подобное на к-с.нет

Там, вроде карта не редактировалась.)

Share this post


Link to post
Share on other sites

С вышеперечисленным разобрался. Но, как всегда, возник ещё вопрос.

Как вывести в худ(который выскакивает при нажатии кнопки на карте) ник игрока, нажавшего кнопку? По идее, это надо уже через плагин делать, да?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now