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
 

Merciless - zdjęcie

Merciless

Rejestracja: 25.07.2013
Aktualnie: Nieaktywny
Poza forum Ostatnio: 08.08.2013 19:47
-----

Moje tematy

Oddzielny poziom dla klas

05.08.2013 00:46

Witam. Mój problem polega na tym, że nie bardzo wiem jak rozdzielić poziom na różne klasy, aktualnie mam wybieranie klasy, gdy wbije poziom to idzie on na wszystkie klasy, nie na klasę na której gram. Mógłby ktoś nakierować lub dać jakiś przykład z tym?

 

Tak wygląda kod

new const Klasy[MaxKlas][] = { "----", "Pomocnik", "Pancerny", "" } 

Niżej jest dodawanie poziomu dla gracza, domyślam się, że trzeba to zrobić na pare tablic aby każda klasa miała swój oddzielny lvl, lecz nie jestem pewien

    while(ExpGracza[atakujacy] >= Poziomy[PoziomGracza[atakujacy]])
    {
        
        PoziomGracza[atakujacy] += 1
    }

W taki sposob ustalam klase dla gracza

KlasaGracza[id] = 1

Z góry dziękuje i pozdrawiam

Tworzenie klas, poziomów i expa

01.08.2013 01:42

Witam. Chciałbym stworzyć pare klas, dodać do nich poziom, który wbija się po osiągnięciu określonej ilości expa, lecz nie bardzo wiem jak to zrobić, znalazłem w internecie taki skrypcik, lecz nie bardzo rozumiem sposobu odczytywania poziomu, klasy i expa

#define MAXCLASSES 5

new const CLASSES[MAXCLASSES][] = {
    "None",
    "Dog",
    "Cat",
    "Horse",
    "Cow"
}

new const LEVELS[6] = {
    100, 
    200, 
    400, 
    800,
    1600,
    3200
}

new PlayerXP[33],PlayerLevel[33],PlayerClass[33]

Jest coś takiego zrobione odnośnie klas, poziomów i expa natomiast autor odwołuje się do tych zmiennych w ten sposób

CLASSES[PlayerClass[id]] Czy to ma zwrócić klase, którą gracz wybrał?

Natomiast przy wybieraniu klasy zastosował takie coś

    new i = str_to_num(szCommand)
    if(PlayerClass[id] != i)
    {
        PlayerClass[id] = i
        client_print(id,print_chat,"You are now a %s",CLASSES[i])
    }
    else
    {
        client_print(id,print_chat,"You are alredy a %s",CLASSES[i])
    }

To jest kawałek kodu z menu, klasy są pod przyciskami 1,2,3,4. Dziwne jest te wybieranie klasy, nie ma jakichś łatwiejszych czy przejrzystszych sposobów do takich rzeczy?

 

Co musiałbym zapisać aby po wczytaniu, jeszcze przed wyborem klasy widniał lvl danej klasy jaki wbiłem przez całą swoją gre? Nie wiem czy coś takiego przejdzie CLASSES[PlayerLevel[id]], jak wspomniałem nie bardzo rozumiem te sposoby, te const itd. Mógłby mi ktoś wyjaśnić jak to robić i może jakieś prostsze lub przejrzystsze sposoby podać, tutorialem do wyjaśnienia tychże rzeczy nie pogardzę xD

Operacje na graczu

29.07.2013 12:31

Witam . Chciałbym się dowiedzieć jak po nacelowaniu na gracza mogę na nim operować np.pobrać jego pozycje/zmienić pozycje ale tylko wtedy gdy na niego celuje, nie na najbliższych graczy tak jak działa to find_sphere_class

 

@edit

 

Doszedłem już do tego, lecz mam następny problem, nie umiem dla gracza nadać swojej pozycji

    new target,body
    get_user_aiming(id, target, body); // tutaj chodzi o nacelowanego gracza
    
    new Poz[2][3]; // pozycje 
    new Float: wektorPoz[2][3]; // pozycje wektorów
                
    get_user_origin(id, Poz[0]); // tutaj pobiera moją pozycje x,y,z
    
    entity_get_vector(target, EV_VEC_origin, wektorPoz[1]); // tutaj pobiera wektor nacelowanego
    entity_get_vector(id, EV_VEC_origin, wektorPoz[0]); // tutaj pobiera mój wektor

    get_user_origin(target, Poz[1]); // tutaj pobiera pozycje nacelowanego x,y,z

    entity_set_vector(target, EV_VEC_velocity, wektorPoz[0]); // tutaj dla nacelowanego nadaje mój wektor

Nie wiem czy dobrze podpisałem ale piszę tak jak to rozumiem. Po nacelowaniu na gracza i wpisaniu odpowiedniej komendy gracz leci w kąt xD, próbowałem też bez pobierania wektorów, na samych pozycjach, lecz to w ogóle nie działa.

 

Znalazłem jeszcze funkcje entity_set_origin, lecz do tego trzeba mieć zmienną float a takiej zmiennej nie wsadzę do get_user_origin, nie wiem też czy da się float przekonwertować na zwykłą zmienną

Stworzenie jednego bota

28.07.2013 00:52

Witam. Chciałbym się zapytać jak i dowiedzieć czy mogę sobie postawić jednego bota w jakiejś drużynie, gdyż chciałbym testować pluginie na drugim graczu a takiego nie posiadam, więc chciałbym postawić takiego bota. Nie chodzi mi o takie boty, które są na full w teamach i biegają zabijają się. Z góry dziękuje

Koło dookoła gracza

25.07.2013 23:54

Witam. Chciałbym zapytać czy da się zrobić taki myk, w którym dookoła gracza po naciśnięciu jakiegoś guzika wyświetli się takie koło, ma to byc zasięg w którym może coś używać. Jeżeli drugi gracz będzie znajdować się poza tym kołem a mimo tego pierwszy gracz użyje czaru na drugiego to funkcja z czarem się nie spełni, wyskoczy błąd, który poinformuje o braku zasięgu. Jest możliwość coś takiego zrobić? Jeżeli tak to jak to jest trudne, czego miałbym użyć. Jak mogę zmieżyć odległość między mną a drugim graczem?