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

[ROZWIĄZANE] Detekcja broni hamem


Najlepsza odpowiedź Asiap, 24.06.2015 19:47

if(weapon == CSW_GLOCK18 || CSW_P228 || CSW_HEGRENADE || CSW_C4 || CSW_MAC10 || CSW_SMOKEGRENADE || CSW_ELITE || CSW_FIVESEVEN || CSW_UMP45 || CSW_USP || CSW_MP5NAVY || CSW_TMP || CSW_FLASHBANG || CSW_DEAGLE || CSW_KNIFE)

na

if(weapon == CSW_GLOCK18 || weapon == CSW_P228 || weapon == CSW_HEGRENADE || weapon == CSW_C4 || weapon == CSW_MAC10 || weapon == CSW_SMOKEGRENADE || weapon == CSW_ELITE || weapon == CSW_FIVESEVEN || weapon == CSW_UMP45 || weapon == CSW_USP || weapon == CSW_MP5NAVY || weapon == CSW_TMP || weapon == CSW_FLASHBANG || weapon == CSW_DEAGLE || weapon == CSW_KNIFE)
if(weapon == CSW_SCOUT || CSW_AWP)

na

else if(weapon == CSW_SCOUT || weapon == CSW_AWP)




Lub

new iBitWeapons = pev(id, pev_weapons);
if(iBitWeapons &= ~(1<<CSW_SCOUT|1<<CSW_AWP))
{
	ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 2");
}
else
{
	ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 1");
}
Przejdź do postu


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

#1 Jcr

    Pomocny

  • Użytkownik

Reputacja: -3
Nowy

  • Postów:69
  • Lokalizacja:Wroclaw
Offline

Napisano 24.06.2015 18:30

Witam, mam taki oto kodzik:

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

const m_pPlayer = 41
const m_iId = 43

public plugin_init()
{
    new classname[32]
    for(new i=1;i<31;++i)    if(i!=2)
    {
        get_weaponname(i,classname,31) //Pobieram classname danej broni 
        RegisterHam( Ham_CS_Item_GetMaxSpeed, classname, "GetItemMaxSpeed")
    }
}
public GetItemMaxSpeed(wid) // tutaj łapie event
{
    new weapon,id,Float:Speed 
    id = get_pdata_cbase(wid,m_pPlayer,4)
    weapon = get_pdata_int(wid,m_iId,4)
    
    if(weapon == CSW_GLOCK18 || CSW_P228 || CSW_HEGRENADE || CSW_C4 || CSW_MAC10 || CSW_SMOKEGRENADE || CSW_ELITE || CSW_FIVESEVEN || CSW_UMP45 || CSW_USP || CSW_MP5NAVY || CSW_TMP || CSW_FLASHBANG || CSW_DEAGLE || CSW_KNIFE)
    {
        ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 1");
    }

    if(weapon == CSW_SCOUT || CSW_AWP)
    {
        ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 2");
    }
    
    SetHamReturnFloat(Speed)
    return HAM_OVERRIDE
}

Niestety, przy wykonywaniu zmiany broni, wykonuje mi się każdy IF z kodu, czyli wyświetla mi się:

GRUPA BRONI 1
GRUPA BRONI 2

Kod wziąłem z: http://amxx.pl/topic...ędkości-gracza/

 

Czy wie ktoś w czym może być problem?

+
Czy znak || znaczy tyle, że:
Jeśli mam wyciągnietęgo GLOCKA18 lub P250 to moja grupa broni to 1 ?

 

Mały upik, zauważyłem jeszcze, że jednak, wykonują się wszystkie IFy ze znakiem: ||

a te pojedyńcze, np ze scoutem nie


Użytkownik Jcr edytował ten post 24.06.2015 18:59

  • +
  • -
  • 0

#2 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 24.06.2015 19:47   Najlepsza odpowiedź

if(weapon == CSW_GLOCK18 || CSW_P228 || CSW_HEGRENADE || CSW_C4 || CSW_MAC10 || CSW_SMOKEGRENADE || CSW_ELITE || CSW_FIVESEVEN || CSW_UMP45 || CSW_USP || CSW_MP5NAVY || CSW_TMP || CSW_FLASHBANG || CSW_DEAGLE || CSW_KNIFE)

na

if(weapon == CSW_GLOCK18 || weapon == CSW_P228 || weapon == CSW_HEGRENADE || weapon == CSW_C4 || weapon == CSW_MAC10 || weapon == CSW_SMOKEGRENADE || weapon == CSW_ELITE || weapon == CSW_FIVESEVEN || weapon == CSW_UMP45 || weapon == CSW_USP || weapon == CSW_MP5NAVY || weapon == CSW_TMP || weapon == CSW_FLASHBANG || weapon == CSW_DEAGLE || weapon == CSW_KNIFE)
if(weapon == CSW_SCOUT || CSW_AWP)

na

else if(weapon == CSW_SCOUT || weapon == CSW_AWP)




Lub

new iBitWeapons = pev(id, pev_weapons);
if(iBitWeapons &= ~(1<<CSW_SCOUT|1<<CSW_AWP))
{
	ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 2");
}
else
{
	ColorChat(id, RED, "[DEBUG]^x04 GRUPA BRONI 1");
}

Użytkownik Asiap edytował ten post 24.06.2015 19:55

  • +
  • -
  • 1

#3 Jcr

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: -3
Nowy

  • Postów:69
  • Lokalizacja:Wroclaw
Offline

Napisano 24.06.2015 20:29

Użyłem tego: if(weapon == CSW_GLOCK18 || weapon == CSW_P228 ||

 

Dziękuję ślicznie :)
Do zamknięcia

 


  • +
  • -
  • 0

#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.06.2015 21:22

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


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




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

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