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
CoD Nowy

[ROZWIĄZANE] Blokowanie broni poprzez perk

cod nowy

Najlepsza odpowiedź (Kalifta) , 07.09.2013 16:32

#include <amxmodx>


#include <amxmisc>


#include <codmod>


#include <hamsandwich>


#include <cstrike>


#include <fakemeta>


#include <fun>



new ostatnio_prawym[33];



new ma_perk[33];



new const perk_name[] = "Predator"


new const perk_desc[] = "Masz tylko kose, 1/1 z niej, dodatkowe 600HP i widzisz niewidzialnych."



public plugin_init()

    

{


register_plugin(perk_name, "1.0", "Kalifta")


cod_register_perk(perk_name, perk_desc)


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");


RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");


RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");


RegisterHam(Ham_Spawn, "player", "Spawn",1);


register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)


}



public cod_perk_enabled(id)


{


ma_perk[id] = true


cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) +600)


}






public cod_perk_disabled(id)


{


ma_perk[id] = false;


cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) -600);


}






public Spawn(id)


{


if(ma_perk[id])

    

    strip_user_weapons(id)

    

    cod_give_weapon(id, CSW_KNIFE)

    

}


public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)

    


{



if(!is_user_connected(host) || !is_user_connected(ent))

    

    

    return;

    

    

    

    

    

    if(!ma_perk[host])

        

    

    return;

    

    

    

    

    

    set_es(es_handle, ES_RenderAmt, 255.0);

    

    

}

public fwTakeDamage_JedenCios(id, ent, attacker)
{
    if(is_user_alive(attacker) && ma_klase[attacker] && get_user_weapon(attacker) == CSW_KNIFE && !ostatnio_prawym[id])
    {
        cs_set_user_armor(id, 0, CS_ARMOR_NONE);
        SetHamParamFloat(4, float(get_user_health(id) + 1));
        return HAM_HANDLED;
    }
    return HAM_IGNORED;
}

public fwPrimaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 0;
}

public fwSecondaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 1;
}

Przejdź do postu


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

#1 QuatZo

    Pomocny

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 01.09.2013 15:01

Witajcie. Od dwóch dni nie potrafię poradzić sobie z dwoma perkami. Dokładniej chodzi mi o to, iż w opisie mają teksty typu: "Posiada TYLKO kosę" lub "Posiada USP", lecz perk nie wyrzuca (ani nie blokuje) broni, które ma klasa. Próbowałem już na wszelkie (znane mi) sposoby. Nie potrafię tego zrobić, dlatego mam pytanie do Was: Jak takie coś zrobić? Dodaję pliki *.sma w załączniku, gdyby ktoś był ciekaw kodu.

Załączone pliki


  • +
  • -
  • 0

#2 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 661
Wszechmogący

  • Postów:1 535
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 01.09.2013 15:17

Skorzystaj z fakamety_util lub:

http://amxx.pl/topic...a-ma-tylko-noz/


  • +
  • -
  • 1

#3 QuatZo

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 01.09.2013 15:21

Z tego korzystałem i nadal nie działało :(


  • +
  • -
  • 0

#4 QuatZo

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 05.09.2013 21:38

Dałby ktoś radę pomóc?
  • +
  • -
  • 0

#5 (Kalifta)

    Banned

  • Zbanowany

Reputacja: 25
Życzliwy

  • Postów:83
  • GG:
  • Imię:Damian
  • Lokalizacja:30km od Grudziądza
Offline

Napisano 06.09.2013 13:13

Prosty, a za razem skuteczny sposób, może niezbyt optymalny ale działa:

Edytujesz klasę.

Do includów:

#include <hamsandwich>
#include <fun>

Do plugin_init:

    RegisterHam(Ham_Spawn, "player", "Spawn", 1);

I na koniec sma

public Spawn(id)
{
    if(ma_klase[id])
    {
        strip_user_weapons(id);
        give_item(id,"weapon_knife");
    }
}

Tylko sprawdź czy nie zabiera ci paki.


Użytkownik (Kalifta) edytował ten post 06.09.2013 13:16

CoD Unikat - 99%

CoD + Paint Ball - 10%

CoD + Spolszczony DM - 5%

W planach:

CoD Pro (Odpicowany silnik, unikatowe klasy, perki i pluginy, awanse i wysokiej jakości modele broni)   

CoD MW Edition (Nazwy klas odpowiadające bohaterom serii Call of Duty MW, modele broni i całkowicie przerobiony silnik)


#6 QuatZo

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 06.09.2013 14:18

@(Kalifta):

Dzięki, działa. Teraz, gdy dodałem to, nie dodaje HP, gdy ktoś ma perk Predator, a powinno dodawać :(


  • +
  • -
  • 0

#7 (Kalifta)

    Banned

  • Zbanowany

Reputacja: 25
Życzliwy

  • Postów:83
  • GG:
  • Imię:Damian
  • Lokalizacja:30km od Grudziądza
Offline

Napisano 06.09.2013 15:49

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <hamsandwich>
#include <cstrike>
#include <fakemeta>
#include <fun>

new ostatnio_prawym[33];

new ma_perk[33];

new const perk_name[] = "Predator"
new const perk_desc[] = "Masz tylko kose, 1/1 z niej, dodatkowe 600HP i widzisz niewidzialnych."

public plugin_init()
{
    register_plugin(perk_name, "1.0", "Kalifta")
    cod_register_perk(perk_name, perk_desc)
    RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");
    RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");
    RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");
    RegisterHam(Ham_Spawn, "player", "Spawn",1);
    register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)
}

public cod_perk_enabled(id)
{
    ma_perk[id] = true
    cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) +600)
}
              


public cod_perk_disabled(id)
{
    ma_perk[id] = false;
    cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) -600);
}

public fwTakeDamage_JedenCios(id, ent, attacker)
{
    if(is_user_alive(attacker) && ma_perk[attacker] && get_user_weapon(attacker) == CSW_KNIFE && ostatnio_prawym[id])
    {
        cs_set_user_armor(id, 0, CS_ARMOR_NONE);
        SetHamParamFloat(4, float(get_user_health(id) + 1));
        return HAM_HANDLED;
    }
    return HAM_IGNORED;
}

public fwPrimaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 1;
}

public fwSecondaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 0;
}

public Spawn(id)
{
    if(ma_perk[id])
    strip_user_weapons(id)
    cod_give_weapon(id, CSW_KNIFE)
}
public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)

{

    if(!is_user_connected(host) || !is_user_connected(ent))

        return;

        

    if(!ma_perk[host])

        return;

        

    set_es(es_handle, ES_RenderAmt, 255.0);

}

 

Dołączam poprawioną wersję.

Mała rada, dla perków stosujemy cod_set_user_bonus_health.

 

 


CoD Unikat - 99%

CoD + Paint Ball - 10%

CoD + Spolszczony DM - 5%

W planach:

CoD Pro (Odpicowany silnik, unikatowe klasy, perki i pluginy, awanse i wysokiej jakości modele broni)   

CoD MW Edition (Nazwy klas odpowiadające bohaterom serii Call of Duty MW, modele broni i całkowicie przerobiony silnik)


#8 QuatZo

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 07.09.2013 10:24

Nie działa 1/1 z PPM w tym pluginie (biję po 30 w 1-szy lvl), a klasy z 1/1 z PPM działają. Dałbyś radę to naprawić?


  • +
  • -
  • 0

#9 (Kalifta)

    Banned

  • Zbanowany

Reputacja: 25
Życzliwy

  • Postów:83
  • GG:
  • Imię:Damian
  • Lokalizacja:30km od Grudziądza
Offline

Napisano 07.09.2013 12:11

Spoiler

 

Zobacz to.


CoD Unikat - 99%

CoD + Paint Ball - 10%

CoD + Spolszczony DM - 5%

W planach:

CoD Pro (Odpicowany silnik, unikatowe klasy, perki i pluginy, awanse i wysokiej jakości modele broni)   

CoD MW Edition (Nazwy klas odpowiadające bohaterom serii Call of Duty MW, modele broni i całkowicie przerobiony silnik)


#10 QuatZo

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 7
Nowy

  • Postów:71
  • Lokalizacja:Btm
Offline

Napisano 07.09.2013 13:22

Działa 1/1 z PPM, tak jak z LPM, a ja chciałbym tylko PPM.


  • +
  • -
  • 0

#11 (Kalifta)

    Banned

  • Zbanowany

Reputacja: 25
Życzliwy

  • Postów:83
  • GG:
  • Imię:Damian
  • Lokalizacja:30km od Grudziądza
Offline

Napisano 07.09.2013 16:32   Najlepsza odpowiedź

#include <amxmodx>


#include <amxmisc>


#include <codmod>


#include <hamsandwich>


#include <cstrike>


#include <fakemeta>


#include <fun>



new ostatnio_prawym[33];



new ma_perk[33];



new const perk_name[] = "Predator"


new const perk_desc[] = "Masz tylko kose, 1/1 z niej, dodatkowe 600HP i widzisz niewidzialnych."



public plugin_init()

    

{


register_plugin(perk_name, "1.0", "Kalifta")


cod_register_perk(perk_name, perk_desc)


RegisterHam(Ham_TakeDamage, "player", "fwTakeDamage_JedenCios");


RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "fwPrimaryAttack_JedenCios");


RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "fwSecondaryAttack_JedenCios");


RegisterHam(Ham_Spawn, "player", "Spawn",1);


register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)


}



public cod_perk_enabled(id)


{


ma_perk[id] = true


cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) +600)


}






public cod_perk_disabled(id)


{


ma_perk[id] = false;


cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0) -600);


}






public Spawn(id)


{


if(ma_perk[id])

    

    strip_user_weapons(id)

    

    cod_give_weapon(id, CSW_KNIFE)

    

}


public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)

    


{



if(!is_user_connected(host) || !is_user_connected(ent))

    

    

    return;

    

    

    

    

    

    if(!ma_perk[host])

        

    

    return;

    

    

    

    

    

    set_es(es_handle, ES_RenderAmt, 255.0);

    

    

}

public fwTakeDamage_JedenCios(id, ent, attacker)
{
    if(is_user_alive(attacker) && ma_klase[attacker] && get_user_weapon(attacker) == CSW_KNIFE && !ostatnio_prawym[id])
    {
        cs_set_user_armor(id, 0, CS_ARMOR_NONE);
        SetHamParamFloat(4, float(get_user_health(id) + 1));
        return HAM_HANDLED;
    }
    return HAM_IGNORED;
}

public fwPrimaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 0;
}

public fwSecondaryAttack_JedenCios(ent)
{
    new id = pev(ent, pev_owner);
    ostatnio_prawym[id] = 1;
}


CoD Unikat - 99%

CoD + Paint Ball - 10%

CoD + Spolszczony DM - 5%

W planach:

CoD Pro (Odpicowany silnik, unikatowe klasy, perki i pluginy, awanse i wysokiej jakości modele broni)   

CoD MW Edition (Nazwy klas odpowiadające bohaterom serii Call of Duty MW, modele broni i całkowicie przerobiony silnik)


#12 mastah7991

    Wszechpomocny

  • Użytkownik

Reputacja: 154
Profesjonalista

  • Postów:388
  • Lokalizacja:Polska
Offline

Napisano 07.09.2013 16:39

strip user weapons

zuy pomysl
powody:
jesli jestes w tt i masz pake to ja tracisz
gdy jestes ostatnim tt i zlapiesz pakke to ci ja zabiera ;x
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: cod nowy

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

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