Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Problem friendly fire na swoją drużyne


  • Zamknięty Temat jest zamknięty
5 odpowiedzi w tym temacie

#1 Andrzejek

    Ucze się :]

  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 08.12.2013 02:18

Witam, mam taki problem a dokładnie z tym modem: http://amxx.pl/topic...ntball-gun-mod/ a poniżej wam załączę kod który odpowiada za dotknięcie enta i zadanie mu obrażeń

public fw_touch(bullet, ent)

{

    new class[20];

    pev(bullet, pev_classname, class, 19);

    if (!equali(class, "pbBullet"))

        return FMRES_IGNORED;



    new Float:origin[3], class2[20], owner = pev(bullet, pev_owner), is_ent_alive = is_user_alive(ent);

    pev(ent, pev_classname, class2, 19);

    pev(bullet, pev_origin, origin);



    if (is_ent_alive)

    {

        if (owner == ent || pev(ent, pev_takedamage) == DAMAGE_NO)

            return FMRES_IGNORED;

        if (get_user_team(owner) == get_user_team(ent))

            if (!get_pcvar_num(friendlyfire))

                return FMRES_IGNORED;



        ExecuteHam(Ham_TakeDamage, ent, owner, owner, float(get_pcvar_num(damge)), 4098);

    }



    if (!equali(class, class2))

    {    

        set_pev(bullet, pev_velocity, Float:{0.0, 0.0, 0.0});

        set_pev(bullet, pev_classname, "pbPaint");

        set_pev(bullet, pev_solid, 0);

        set_pev(bullet, pev_movetype, 0);

        engfunc(EngFunc_SetModel, bullet, "sprites/paintball.spr");



        new a, findpb = 0;

        while (a++ < g_pbcount && !findpb)

            if (g_paintballs[a] == bullet)

                findpb = g_pbstatus[a] = 2;



        remove_task(bullet);

        remove_task(bullet+TASK_PB_RESET);



        if (get_pcvar_num(sound))

        {

            static wav[20];

            formatex(wav, 20, is_ent_alive ? "player/pl_pain%d.wav" : "misc/pb%d.wav", is_ent_alive ? random_num(4,7) : random_num(1,4));

            emit_sound(bullet, CHAN_AUTO, wav, 1.0, ATTN_NORM, 0, PITCH_NORM);

        }



        new bool:valid_surface = (is_ent_alive || containi(class2, "door") != -1) ? false : true;

        if (pev(ent, pev_health) && !is_ent_alive && pev(ent,pev_takedamage))

        {

            ExecuteHam(Ham_TakeDamage, ent, owner, owner, float(pev(ent, pev_health)), 0);

            valid_surface = false;

        }

        if (valid_surface)

        {

            paint_splat(bullet);

            set_task(float(get_pcvar_num(blife)), "paint_reset", bullet+TASK_PB_RESET);

        }

        else

            paint_reset(bullet+TASK_PB_RESET);



        return FMRES_HANDLED;

    }



    return FMRES_IGNORED;

}

Usunąłem też to z kodu:

if (get_user_team(owner) == get_user_team(ent))

            if (!get_pcvar_num(friendlyfire))

                return FMRES_IGNORED;

Ale to i tak nic nie daje, bo nie mogę zadać obrażeń, słyszę dźwięk jak zadaje obrażenia ale gracz nadal ma tyle samo HP, a dokładnie gracza z mojej drużyny. Nie wiem może ja coś ominąłem w kodzie?

Załączone pliki


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#2 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 08.12.2013 11:48

moze przestaw cvar w server.cfg mp_friendlyfire 0
  • +
  • -
  • 0

#3 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 08.12.2013 14:35

No ale co to zmieni? robiłem tak i tak i nie działa :(


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#4 Zapalka

    Wszechwidzący

  • Użytkownik

Reputacja: 194
Profesjonalista

  • Postów:283
  • GG:
  • Steam:steam
  • Imię:Dawid
  • Lokalizacja:Janów Lubelski
Offline

Napisano 08.12.2013 14:59

Ciekawi mnie ten warunek:

if (pev(ent, pev_health) && !is_ent_alive && pev(ent,pev_takedamage))

        {

            ExecuteHam(Ham_TakeDamage, ent, owner, owner, float(pev(ent, pev_health)), 0);

            valid_surface = false;

        }

Dlaczego tutaj jest !is_ent_alive ? Spróbuj bez zaprzeczenia.


  • +
  • -
  • 0
Zapraszam na http://zapalka.net.pl

#5 Andrzejek

    Ucze się :]

  • Autor tematu
  • Power User

Reputacja: 136
Zaawansowany

  • Postów:1 300
  • Imię:Andrzej
Offline

Napisano 08.12.2013 23:11

To też nic nie dało, można zamknąć.


  • +
  • -
  • 0

Mam do sprzedania pluginy AMXX pod serwery typu, JB, ONLY DD2, ZOMBIE, COD MOD, DR i inne...

 

Jeżeli jesteś zainteresowany(a), napisz na PW lub GG 42384104


#6 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

  • Postów:5 411
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:Ostrołęka
Offline

Napisano 09.12.2013 16:32

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Posiadam TBM (inaczej PTB), które działa dużo lepiej niż zwykłe PTB, nawet na modach z lvlami. Zainteresowany? Proszę bardzo





Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych