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

Pobieranie ID/nazwy broniget_user_weapon() & cs_get_weapon_id()


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
6 odpowiedzi w tym temacie

#1 Pierdolka

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Kamil
  • Lokalizacja:Ipswich
Offline

Napisano 20.01.2018 18:21

Witam,

czy ktos jest mi w stanie wytlumaczyc jak pobrac ID lub/i CSW broni ?

Mam taki kod:

#include <amxmodx>
#include <cstrike>
#include <amxmisc>
#include <colorchat>
#include <fakemeta>
#include <hamsandwich>
#include <csgo>

#define PLUGIN "My script"
#define VERSION "1.0"
#define AUTHOR "Pierdolka"
#define TAG "CS GO"

new const c_WeaponNames[ ][ ] = {
	"",                     // 0
	"P228",                 // 1
	"",                     // 2
	"Schmidt Scout",        // 3
	"HE Grenade",           // 4
	"XM1014",               // 5
	"C4",                   // 6
	"Mac-10",               // 7
	"Aug",                  // 8
	"Smoke Grenade",        // 9
	"Dual Elites",          // 10
	"Five-SeveN",           // 11
	"UMP45",                // 12
	"Sg550",                // 13
	"GALIL",                // 14
	"FAMAS",                // 15
	"USP",                  // 16
	"Glock-18",             // 17
	"AWP",                  // 18
	"MP5-Navy",             // 19
	"M249",                 // 20
	"M3",                   // 21
	"M4A1",                 // 22
	"TMP",                  // 23
	"G3SG1",                // 24
	"Flashbang",            // 25
	"Desert Eagle",         // 26
	"SG552",                // 27
	"AK-47",                // 28
	"Knife",                // 29
	"P90"                   // 30
}

new const c_LongWpnName[ ][ ] = {
	"", 
	"weapon_p228", 
	"", 
	"weapon_scout", 
	"weapon_hegrenade", 
	"weapon_xm1014", 
	"weapon_c4", 
	"weapon_mac10", 
	"weapon_aug", 
	"weapon_smokegrenade", 
	"weapon_elite", 
	"weapon_fiveseven", 
	"weapon_ump45", 
	"weapon_sg550", 
	"weapon_galil", 
	"weapon_famas", 
	"weapon_usp", 
	"weapon_glock18", 
	"weapon_awp", 
	"weapon_mp5navy", 
	"weapon_m249", 
	"weapon_m3", 
	"weapon_m4a1", 
	"weapon_tmp", 
	"weapon_g3sg1", 
	"weapon_flashbang", 
	"weapon_deagle", 
	"weapon_sg552", 
	"weapon_ak47", 
	"weapon_knife", 
	"weapon_p90" 
}

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	for(new i = 1; i < sizeof c_LongWpnName; i++) {
		if(c_LongWpnName[i][0]) {
			RegisterHam(Ham_Item_Deploy, c_LongWpnName[i], "OnItemDeployPost", 1)
			RegisterHam(Ham_CS_Item_CanDrop, c_LongWpnName[i], "OnItemDropPre", 0)
		}
	}
}

public OnItemDropPre(ent) {
	static owner;
	owner = fm_cs_get_weapon_ent_owner(ent);
	
	if(owner && !pev(ent, pev_iuser2))
		set_pev(ent, pev_iuser2, get_user_userid(owner))
}

public OnItemDeployPost(ent) {
	static holder;
	holder = fm_cs_get_weapon_ent_owner(ent);
	
	new iWeapon = cs_get_weapon_id(holder); // linia 105
	ColorChat(holder, NORMAL, "Index broni: %s", iWeapon);
}

fm_cs_get_weapon_ent_owner(ent) {
	return (pev_valid(ent) != 2) ? 0 : get_pdata_cbase(ent, 41, 4);
}

jednak konsola serwera wywala mi taki blad:

L 01/20/2018 - 17:55:20: [AMXX] Run time error 10: native error (native "cs_get_weapon_id")
L 01/20/2018 - 17:55:20: [AMXX]    [0] myscript.sma::OnItemDeployPost (line 105)

Probowalem juz chyba wszystkiego i nic ... Ciagle cos...

Plugin debuguje poprzez dodanie 'debug' w plugins.ini gdyz kiedy tego nie zrobie to konsola wywala mi blad.

 

Bardzo proszę o jakakolwiek pomoc za co będę niezmiernie wdzieczny bo siedzie juz nad tym wiele godzin...

 

Pozdrawiam

 


  • +
  • -
  • 0

#2 NiczegoWinien

    Wszechpomocny

  • Użytkownik

Reputacja: 64
Pomocny

  • Postów:334
  • Lokalizacja:No Disc
Offline

Napisano 20.01.2018 20:21

get_user_weapon(index)

  • +
  • -
  • 0

#3 Pierdolka

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Kamil
  • Lokalizacja:Ipswich
Offline

Napisano 20.01.2018 20:50

get_user_weapon(index)

Wyswietli mi to CSW broni gracza ?

 

___

Po sprawdzeniu, daje mi to Nick gracza....


Użytkownik Pierdolka edytował ten post 20.01.2018 20:53

  • +
  • -
  • 0

#4 Pierdolka

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Kamil
  • Lokalizacja:Ipswich
Offline

Napisano 20.01.2018 21:24

Sory ale nie moge juz edytowac ostatniego postu a chcialbym zapytac jak mam wyciagnac 'holder_id' w postaci takiej jak 'owner_id' jako ze chce miec informacje w get_user_weapon() od swojego id a nie gracza 'ktory wyrzucil bron'...

#include <amxmodx>
#include <cstrike>
#include <amxmisc>
#include <colorchat>
#include <fakemeta>
#include <hamsandwich>
#include <csgo>

#define PLUGIN "Pick up skin"
#define VERSION "1.0"
#define AUTHOR "Pierdolka"
#define TAG "CS GO"

new const c_WeaponNames[ ][ ] = {
	"",                     // 0
	"P228",                 // 1
	"",                     // 2
	"Schmidt Scout",        // 3
	"HE Grenade",           // 4
	"XM1014",               // 5
	"C4",                   // 6
	"Mac-10",               // 7
	"Aug",                  // 8
	"Smoke Grenade",        // 9
	"Dual Elites",          // 10
	"Five-SeveN",           // 11
	"UMP45",                // 12
	"Sg550",                // 13
	"GALIL",                // 14
	"FAMAS",                // 15
	"USP",                  // 16
	"Glock-18",             // 17
	"AWP",                  // 18
	"MP5-Navy",             // 19
	"M249",                 // 20
	"M3",                   // 21
	"M4A1",                 // 22
	"TMP",                  // 23
	"G3SG1",                // 24
	"Flashbang",            // 25
	"Desert Eagle",         // 26
	"SG552",                // 27
	"AK-47",                // 28
	"Knife",                // 29
	"P90"                   // 30
}

new const c_LongWpnName[ ][ ] = {
	"", 
	"weapon_p228", 
	"", 
	"weapon_scout", 
	"weapon_hegrenade", 
	"weapon_xm1014", 
	"weapon_c4", 
	"weapon_mac10", 
	"weapon_aug", 
	"weapon_smokegrenade", 
	"weapon_elite", 
	"weapon_fiveseven", 
	"weapon_ump45", 
	"weapon_sg550", 
	"weapon_galil", 
	"weapon_famas", 
	"weapon_usp", 
	"weapon_glock18", 
	"weapon_awp", 
	"weapon_mp5navy", 
	"weapon_m249", 
	"weapon_m3", 
	"weapon_m4a1", 
	"weapon_tmp", 
	"weapon_g3sg1", 
	"weapon_flashbang", 
	"weapon_deagle", 
	"weapon_sg552", 
	"weapon_ak47", 
	"weapon_knife", 
	"weapon_p90" 
}

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	
	for(new i = 1; i < sizeof c_LongWpnName; i++) {
		if(c_LongWpnName[i][0]) {
			RegisterHam(Ham_Item_Deploy, c_LongWpnName[i], "OnItemDeployPost", 1)
			RegisterHam(Ham_CS_Item_CanDrop, c_LongWpnName[i], "OnItemDropPre", 0)
		}
	}
	register_event("WeapPickup", "event_weapon_pickup", "be")
}


public OnItemDropPre(ent)
{
    static owner; owner = fm_cs_get_weapon_ent_owner(ent);
    
    if(owner && !pev(ent, pev_iuser2) )
        set_pev(ent, pev_iuser2, get_user_userid(owner))  
}

public OnItemDeployPost(ent)
{
    
    static holder; holder = fm_cs_get_weapon_ent_owner(ent);
    
    if(holder) 
    {
        new owner = pev(ent, pev_iuser2);
        
        if(owner)
        {
            new owner_id = find_player("k", owner)
        
            if(owner_id)
            {
              new szName[32]
              get_user_name(owner_id, szName, charsmax(szName))
           
              //client_print(holder, print_center, "[AMXX] You got the gun from %s !", szName)
							
							
							
    //new wid = read_data(1)
    new wid = get_user_weapon(owner_id)
		client_print(holder, print_center, "[AMXX] CSW: %s !", wid)

		new iWeapon = csgo_get_user_default_skin(owner_id, wid)
		new szNazwa[32]
		csgo_get_skin_name(wid, iWeapon, szNazwa, 31);
		ColorChat(0, NORMAL, "Skin %s", szNazwa);
		ColorChat(0, NORMAL, "My id: %d", holder);
		ColorChat(0, NORMAL, "His id: %d", owner_id);
    if (wid == CSW_DEAGLE) {
			ColorChat(0, NORMAL, "Masz deaglea");
    }
		
		
		
		
		
		
            }
            else
          {
            set_pev(ent, pev_iuser2, 0)
          } 
        } 
    }
}    

fm_cs_get_weapon_ent_owner(ent)
{
    return (pev_valid(ent) != 2) ? 0 : get_pdata_cbase(ent, 41, 4);
}  

  • +
  • -
  • 0

#5 AwIlL^^

    Magiczny Gość

  • Użytkownik

Reputacja: 135
Zaawansowany

  • Postów:263
  • Steam:steam
  • Imię:Eryk
  • Lokalizacja:Gdańsk
Offline

Napisano 21.01.2018 07:55

https://amxx.pl/topi...zanie-broniami/
Tutaj na pewno znajdziesz to co ci się przyda
  • +
  • -
  • 1

Potrzebujesz porad do amxx?? Pisz na [PW]


#6 Pierdolka

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Kamil
  • Lokalizacja:Ipswich
Offline

Napisano 21.01.2018 15:27

https://amxx.pl/topi...zanie-broniami/
Tutaj na pewno znajdziesz to co ci się przyda

Z pewnoscia sie przyda ! dzięki :)

 

Pisze plugin, ktory ma m.in. za zadanie zapisac:

- kto dropnal bron (ID/Index gracza)

- jaka bron dropnal (CSW_* broni)

- domyslny skin dropnietej broni

 

Plugin tez ma podac od kogo inny gracz podniosl bron i jej CSW_*

Wszystko dziala fajnie ale kiedy dwoch graczy dropnie bron to poprawne wartosci wyswietlane sa tylko dla gracza, ktory pierwszy podniosl bron. Pozniej wartosci juz sa chyba nadpisywane...

Myslalem by umiescic te dane w tablicy wielowymiarowej ale cos nie pyklo...

Czy ma ktos jakis pomysl jak mozna to rozwiazac ?

 

- jaka bron dropnal (CSW_* broni)

 

___

EDIT: przepraszam za zdublowany post ale cos sie zwiesilo i wyslalo 2 razy... :-/


Użytkownik Pierdolka edytował ten post 21.01.2018 15:30

  • +
  • -
  • 0

#7 Pierdolka

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
Nowy

  • Postów:5
  • Imię:Kamil
  • Lokalizacja:Ipswich
Offline

Napisano 21.01.2018 15:28

https://amxx.pl/topi...zanie-broniami/
Tutaj na pewno znajdziesz to co ci się przyda

Z pewnoscia sie przyda ! dzięki :)

 

Pisze plugin, ktory ma m.in. za zadanie zapisac:

- kto dropnal bron (ID/Index gracza)

- jaka bron dropnal (CSW_* broni)

- domyslny skin dropnietej broni

 

Plugin tez ma podac od kogo inny gracz podniosl bron i jej CSW_*

Wszystko dziala fajnie ale kiedy dwoch graczy dropnie bron to poprawne wartosci wyswietlane sa tylko dla gracza, ktory pierwszy podniosl bron. Pozniej wartosci juz sa chyba nadpisywane...

Myslalem by umiescic te dane w tablicy wielowymiarowej ale cos nie pyklo...

Czy ma ktos jakis pomysl jak mozna to rozwiazac ?

 

- jaka bron dropnal (CSW_* broni)


  • +
  • -
  • 0




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

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