Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

Nadanie kazdemu pluginowi "unikatowego" id


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

#1 dram

    Wszechwidzący

  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 10.11.2010 16:22

Witam.

Zrobiłem taki plik.

plugins-bleble.ini

Jest to to samo co plugins tyle wiemy działają identycznie. Ale ja w moim pluginie każdemu pluginowi chcę nadać unikatowe id.
Wszystkie pluginy są to jakby dodatki do głównego pluginu (tak jak w zombie modzie Itemy typu kamizelka bazooka itd..)

I chcę każdemu pluginowi = tym dodatkom które są wpisane
plugins-bleble.ini
UNIKALNE ID. Tak abym w pluginie głównym mógł rozpoznać każdy plugin. Być może myślałem o czymś takim co. CZYTA plik każdą linijkę i każdej linijce ustawia unikalne id w jednej tabeli a w drugiej tabeli przypisuje im nazwę i odcina ostatnie 5 znaków (znaki to będą takie ".amxx" np.

tabela = {
"1",
"2",
"3"
}

tabela2 = {
"Bazooka", // Po ucietym .amxx
"Pistolet1", // Po ucietym .amxx
"Pistolet2" // Po ucietym .amxx 
}

Mógłby ktoś mi wykonać taką funkcję?

Będę dogodnie wdzięczny.

Pozdrawiam

Użytkownik dram edytował ten post 10.11.2010 16:23

  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2960
Godlike

  • Postów:4247
  • Lokalizacja:Nie
Offline

Napisano 10.11.2010 17:02

Unikatowe id wpisz za pluginem w plugins-bleble.ini

;komentarz do mojego pluginu
mojPlugin.amxx ;10


dodaj do parsowania swój plik
parsePluginsFile("plugins-bleble.ini");

i masz prosty interfejs
set_plugin_id(const szName[], pid);
get_plugin_id(const szName[]);

sma:
Spoiler

  • +
  • -
  • 0

#3 dram

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 10.11.2010 17:08

Zaraz Przetestuje r3x nie zawodny :>.

A co do poprzedniego problemu odnośnie tych obiektów chodziło zrobić przez forward...

1.A tak swoją drogą jeszcze, jak pobrać nazwę tego pluginu bez końcówki .amxx

2. Jak sprawdzić ile tablica ma elementów?
czyli jeżeli w kodzie dodaje do tablicy po jednym elemencie a tablica ma wpisane:

new tablica[][];

To jak sprawdzić ile ostatecznie ma tych elementów w tablicy?


// A dałoby rade przerobić to tak aby pobrać id wszystkich pluginów? z tego pliku? w naszym przypadku plugins-bleble.ini

przykładowa zawartość plugins-bleble

bomba.amxx;1
koox.amxx;2

I pobieramy nazwe pluginu wklepujemy do tabeli , następnie pobieramy id i wklepujemy do tabeli.

Powiedzmy wykonanie będzie zaczynało się w plugin_init czyli od razu na starcie pluginów.

Pozdrawiam.

Użytkownik dram edytował ten post 10.11.2010 17:37

  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#4 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1339
Godlike

  • Postów:3556
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 10.11.2010 17:53

wszystko musisz robic na tablicach dynamicznych pozatym nie wiem czy jest sens sie tak bawic skoro i tak musisz zarejestrowac w pluginie glownym dodatki wiec wystarczy natyw w ktorym przekazujesz nazwe a id to moze byc index pola tablicy w ktorym nazwa sie znajduje patrz w moj system ammo packow to nie jest jakis skomplikowany kod
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#5 R3X

    Godlike

  • Przyjaciel

Reputacja: 2960
Godlike

  • Postów:4247
  • Lokalizacja:Nie
Offline

Napisano 10.11.2010 19:02

zapis danych po id pluginu jest niewygodny, bo nie możesz nic usuwać ani przemieszczać, więc takie sztuczne ID nie jest bez sensu
  • +
  • -
  • 0

#6 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1339
Godlike

  • Postów:3556
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 10.11.2010 19:23

nom ale lepiej zapisywac po nazwie ktora mozesz przekazac natywem jest bezpieczniej i latwiej do odczytania bez zbednego komplikowania sobie zycia :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#7 R3X

    Godlike

  • Przyjaciel

Reputacja: 2960
Godlike

  • Postów:4247
  • Lokalizacja:Nie
Offline

Napisano 10.11.2010 19:48

klucz liczbowy jest pod wieloma względami lepszy niż tekstowy [i możemy tak w nieskończoność ] :P

Wracając do pytań:
1.
Sprawdź czy .amxx jest na końcu i zamień kropkę na znak ^0
new szFile[]//nazwa pliku

new Dlugosc = strlen(szFile) - 5;
if(Dlugosc <= 0) return 0;

if(containi(szFile, ".amxx") == Dlugosc) 
    szFile[Dlugosc] = '^0';


2.
tablica ma tyle elementów ile zadeklarujesz, wartość tę możesz pobrać
rozmiarTablicy = sizeof(Tablica)
ale ilość poprawnych elementów to co innego, najlepiej zrób licznik (new giLicznik = 0;) i rób++ przy każdym nowym elemencie

jak zauważył GoQ tablica dynamiczna byłaby tu o wiele lepsza, a to dlatego, że nie robi nadmiaru zajmowanej pamięci
  • +
  • -
  • 0

#8 dram

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 10.11.2010 20:31

Hmm ale potrzebne mi unikalne id dlatego ,że w bazie mogę tylko ten plugin zapisać pod id bo jest najkrócej i id będzie unikalne...(nie pytać dlaczego:D)

Dlatego potrzebuje np. jest 7 pluginów w tym pliku plugins-bleble

to daje powiedzmy zawsze 7 unikalnych id i takie same jeżeli liczy np od 0.

I pętla która na początku mapy sprawdza ilość lini.

Tylko gorzej jeżeli ktoś dopisze sobie w linijce coś po ;

Bo również bym chciał aby pętla pobierała wszystkie znaki od lewej strony danej lini do znaków .amxx (aby ich nie pobierała) Tak aby każdy plugin miał przypisane id i nazwę.

Rozumiecie?

I żebym łatwo mógł wywołać sobie.

Pozdrawiam.

Mógłby mi ktoś taką pętelke napisać? Będę dogodnie wdzięczny?:)
  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#9 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1339
Godlike

  • Postów:3556
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 10.11.2010 20:36

no i wlasnie dlatego natyw jest lepszym rozwiazaniem bo natywem tez mozna id przekazac i id moze byc w pluginie zapisane jako const wiec dla danego pluginu bedzie zawsze stale co sprawi ze plugin glowny bedzie idioto odporny bo jesli ktos ci cos zmieni w plugins-bleble.ini to nie zmieni to dzialania pluginu
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#10 dram

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 16
Początkujący

  • Postów:277
  • Lokalizacja:xxxx
Offline

Napisano 10.11.2010 20:42


bedzie idioto odporny


Boże nie przesadzaj^^ Dobrzę spróbuje.

Pozdrawiam.
  • +
  • -
  • 0
Co oferuje?

Pisanie pluginów amxx/modow itd
Skryptow php

Kontakt na PW LUB GG

#11 G[o]Q

    I'm G[o]Q

  • Przyjaciel

Reputacja: 1339
Godlike

  • Postów:3556
  • Steam:steam
  • Imię:Krzysiek
  • Lokalizacja:C: / program Files / Valve / Cstrike / G[o]Q.dem
Offline

Napisano 10.11.2010 21:00

idioto odporny to znaczy ze jak przyjdzie jakis noob i zacznie cos grzebac to ci nic nie zepsuje :D nie mialo to na celu obrazania ciebie :D
  • +
  • -
  • 0
Manual ponad wszystko, konsola ponad manual :D :&

Chcesz wysłać do mnie PW ? użyj nazwy GoQ zamiast G[o]Q
Chcesz Kupić moduł płatności via Pukawka,Tserwery, Gamesol, Zabijaka do mojego sklepu? napisz PW cena to tylko 10 zł/sztuka

GG:6022845 (nie pomagam za free osobom ponizej rangi MoD) :D

#12 R3X

    Godlike

  • Przyjaciel

Reputacja: 2960
Godlike

  • Postów:4247
  • Lokalizacja:Nie
Offline

Napisano 10.11.2010 22:03

ja sobie zmajstrowałem osobną tabele w MySQLu na itemy i jej klucz główny to unikatowy id itemu; problem z głowy
  • +
  • -
  • 0




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

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