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

Z nazwy broni do jej ID


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

#1 sebul

    Godlike

  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 20.05.2011 08:41

Witam. Czy da się z nazwy broni "wyciągnąć" jej ID? Czyli powiedzmy mam "weapon_usp" i otrzymam z tego 16... Tak się zastanawiam, czy można by to zrobić w taki sposób, żeby najpierw usunąć przedrostek "weapon_", a potem dodać "CSW_" i chyba jeszcze zamiany liter na duże, zadziałało by takie coś?
  • +
  • -
  • 0

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


#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

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

Napisano 20.05.2011 09:05

nie
weapon_usp to string , ciag znakow
CSW_USP to definicja a nie ciag znakow

AMX Mod X - Half-Life Scripting for Pros!
uzyj tego
  • +
  • -
  • 0

#3 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 20.05.2011 09:37

weapon_usp to string , ciag znakow
CSW_USP to definicja a nie ciag znakow

Znaczy o tym wiedziałem, ale myślałem, że z ciągu znaków można przejść do definicji.

A co do tej funkcji, to właśnie tak jakby sobie przypominałem, że coś takiego chyba było, ale nie znałem jej nazwy. Chyba można zamknąć.
  • +
  • -
  • 0

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


#4 diablix

    emeryt

  • Przyjaciel

Reputacja: 507
Wszechwiedzący

  • Postów:663
  • GG:
  • Steam:steam
  • Imię:Daniel
  • Lokalizacja:Warszawa
Offline

Napisano 20.05.2011 13:29

Witam. Czy da się z nazwy broni "wyciągnąć" jej ID? Czyli powiedzmy mam "weapon_usp" i otrzymam z tego 16... Tak się zastanawiam, czy można by to zrobić w taki sposób, żeby najpierw usunąć przedrostek "weapon_", a potem dodać "CSW_" i chyba jeszcze zamiany liter na duże, zadziałało by takie coś?


Można zmienić nazwe, naprzykład tak (o ile o to Ci chodziło)

new szWeapon[23];
get_weaponname(index, szWeapon, sizeof szWeapon - 1);
replace(szWeapon, sizeof szWeapon - 1, "weapon_", "CSW_");

  • +
  • -
  • 0

#5 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 20.05.2011 13:38

nie ma możliwości operowania na danych znając ich nazwę, a poza tym definicje są dostępne wyłącznie na etapie kompilacji, więc nie ma absolutnie żadnej wbudowanej opcji na zamianę napisu na adres stałej

możesz to zrobić w drzewie Trie:, ale jest gotowa funkcja więc po co?
  • +
  • -
  • 0

#6 sebul

    Godlike

  • Autor tematu
  • Przyjaciel

Reputacja: 2 035
Godlike

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

Napisano 20.05.2011 13:50

możesz to zrobić w drzewie Trie:, ale jest gotowa funkcja więc po co?

Jakaś czarna magia... :D Interesowało mnie tylko wyciągnięcie ID z nazwy broni, zrobiłem takie coś
public DeathMsg() {
new weaponname[32];
read_data(4, weaponname, 31);
funkcja(weaponname);
}
public funkcja(weapon[]) {
new weaponname[32];
formatex(weaponname, charsmax(weaponname), weapon);
if(!equal(weaponname, "weapon_", 7))
format(weaponname, charsmax(weaponname), "weapon_%s", weaponname);

new weaponid = get_weaponid(weaponname);
}

i chyba wszystko jest dobrze... Choć w sumie można by te id wyciągnąć już w funkcji pierwszej i chyba tak zrobię, bo te dane wysyłane są forwardem (jest ich trochę więcej niż w tym przykładzie).

Użytkownik sebul edytował ten post 20.05.2011 13:50

  • +
  • -
  • 0

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


#7 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 476
  • Lokalizacja:AMXX.PL
Offline

Napisano 20.05.2011 15:08

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: wyjasnione

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL




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

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