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

Public_paint_splat Pb Mod[PaintballMod] zmiana wektorów ruchu. Jak?

paintballmod kulki wektory

Najlepsza odpowiedź _McHappy, 11.08.2018 16:58

No niestety, ale pewna wiedza zwyczajnie umyka po północy :D
Zapomniałem o nawiasach w linijce z obliczeniami mnoznika dystansu.

Poprawiona funkcja:

Spoiler
Przejdź do postu


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

#1 Ekspedytor

    Życzliwy

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 05.08.2018 14:39

Więc mamy w kodzie broń która wystrzela jednoczesnie 5 kulek kuli leca jedna nad drugą a chciałbym żeby leciały obok siebie w lini poziomej. 
Zasięgnąłem dokumentacji public_paint_splat,  fm set_user_origin i fm_set_user_velocity.
 Jednak zmiany w kodzie nie przyniosły rezultatu żadnego  czy ja muszę miec bibloteke specjalnie zeedytowana do kompilacji pb aby kulki leciały w poziomie czy jednak mozna zrobić to w sma... Broń o której mowie to pb sniper podmianka za scout'a... Pomóżcie Panowie...

Z góry dzięki...

moje sma:
Spoiler

Załączone pliki


  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#2 Robiin

    Godlike

  • Support Team

Reputacja: 1 111
Super Hero

  • Postów:2 068
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 06.08.2018 12:05

Usuń ten kod, bo:

  • Nie jest potrzebny w [.code] [./code] jeśli i tak wrzucasz plik
  • Jest ściety, bo za długi
  • Nie ma w nim tabulacji, więc zapomnij, że ktoś go będzie w takiej postaci chciał w ogóle czytać

 

Generalnie nikt Ci nie pomagał ze względu na to, że (pomijając powyższe 3 punkty) paintballa żeby sprawdzić, osoba edytująca musiałaby pobierać wszystkie modele, wrzucać je na serwer, wrzucać cały silnik bla bla bla, a na takim np. jailu masz gotowca.

 

Dodatkowo kod paintballa jest brzydki i nie czyta się go w najmniejszym stopniu dobrze.

 

Sprawdź, nie obiecuję, że zadziała bo pisane na kolanie. Jak nie zadziała to pobiorę paczkę i spróbuję ogarnąć na testowym:

 

Załączone pliki


Użytkownik aSiorr edytował ten post 06.08.2018 12:06

  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#3 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 06.08.2018 21:31

Widziałem Twój poprzedni post, jednak nie byłem w stanie odpowiedzieć, gdyż nie mam swojej 'konsolety' pod ręką.
Także wytapam co następuje:

Funkcja, która będzie nas interesowała, to:
public paint_fire(id, num)
Odpowiada ona, jak sam nagłówek wskazuje, za wystrzał kulki z broni. Parametr 'id' wskazuje na właściciela broni, a 'num' na numer kulki (jeżeli kulki są wystrzeliwane seryjnie, w jednej chwili).
Tu mamy fragment kodu (zawarty w tej funkcji), odpowiadający za właściwe rozmieszczenie kulek:
if (my_pbgun == PB_SNIPER)
{ //avoid creation collisions
vorigin[0] += random(5)-2;
vorigin[1] += random(5)-2;
vorigin[2] += num*5
}
Jak widać, tablica 'vorigin' będąca wektorem początkowego położenia kulki jest modyfikowana w taki sposób, że im wyższy numer kulki w serii, tym wyżej zostanie ona umieszczona (względem pierwszej kulki serii; mniej więcej końca lufy broni).

Teraz, chcąc 'ułożyć' kulki w poziomie zamiast w pionie, należy odpowiednio zmodyfikować powyższy wektor.
Drugi indeks tablicy ('vorigin[2]') nadaje kulkom formację pionowego słupa. Chcąc zniwelować ten efekt, należy pozostawić ten element niezmienionym:
if (my_pbgun == PB_SNIPER)
{ //avoid creation collisions
vorigin[0] += random(5)-2;
vorigin[1] += random(5)-2;
}
Jak można się domyślić, teraz kulki będą położone dosyć blisko siebie, w centrum ekranu gracza. Do 'rozsunięcia' ich w poziomie, trzeba się trochę nagimnastykować z operacjami na wektorach:

1. Pobieramy wektor położenia pierwszej kulki - czyli położenie końca lufy broni - zrobione:
get_user_origin(id, vorigin, 1);
2. Pobieramy znormalizowany wektor, prostopadły do wektora kierunku w jakim celuje gracz:
nw Float:vangle[3], Float:vresult[3];
pev(id, pev_v_angle, vangle); 
angle_vector(vangle, ANGLEVECTOR_RIGHT, vresult)
3. Wydłużamy uzyskany wektor o wartość żądanej odległości między piłeczkami:
new distance = 15;
xs_vec_mul_scalar(vresult, distance, vresult); 
4. Dodajemy wektory z pkt. 1. oraz 3. i jako wynik otrzymujemy wektor położenia drugiej kulki w serii:
new Float:vball_origin[3];
xs_vec_add(vorigin, vresult, vball_origin); 
Teraz pozostaje nam tylko nadać owej kulce wyliczony wektor położenia ('vball_origin').
Punkty 3. oraz 4. odpowiednio zawieramy w pętli (dla większej ilości piłeczek w rzędzie).

Tak jak wspominałem wyżej, nie jestem w stanie przytoczyć gotowego kodu, gdyż na tel wszystko idzie mozolnie. Pominąłem zgodność tagów.
  • +
  • -
  • 4

#4 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 06.08.2018 21:57

Ok panowie dam znać jak popróbuje... Ale dzięki na razie za jakiś odzew .
@aSiorr ok zapamiętam żeby tak nie robić.

Użytkownik Ekspedytor edytował ten post 06.08.2018 22:04

  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#5 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 06.08.2018 23:02

aSiorr efekt poziomy uzyskales super jednak nie zawsze jest i czasami jakaś kulka pojedyncza wyleci se w lewo lub w prawo a czasami zostaje graczowi przed ekranem. Jutro nagram jak to wygląda i wrzucę tozobaczysz o co mi chodzi.
_Mchappy nie mogę skompilowac ale to pewnie przez to w zle miejsca powpisywalem twoje kawałki kodu czy one mają wszystkie znaleźć się w funkcji public_point_fire...?
  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#6 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 07.08.2018 10:21

Tak, należy je odpowiednio dodać do wymienionej przeze mnie instrukcji warunkowej.
  • +
  • -
  • 1

#7 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 08.08.2018 08:15

aSiorr
 tak to wygląda po twoich zmianach w pluginie nic nie robiłem tylko kompilowałem i wrzuciłem...
 
I o to mi chodzi tylko jak widać na filmiku czasami kulka ucieka no nie...? No i fajnie jakby kulki między sobą miały większy odstęp.
 
 

Spoiler

 

_McHappy
 Próbowałem z twoimi linijkami i ciągle mam errory przy kompilowaniu. heh.


Użytkownik Ekspedytor edytował ten post 08.08.2018 08:16

  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#8 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 08.08.2018 09:11

Pokaż kod funkcji, którą przerobiłeś.
  • +
  • -
  • 1

#9 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 08.08.2018 22:11

Pokaż kod funkcji, którą przerobiłeś.

To znaczy nie zapisywalem tych wypocin.. Poprostu linijki ktore podałes podopisywałem w miejscach gdzie cos identycznego znalazlem najgorszy error wywala przy kompilacji taki xs_vec_add -- ze nie ma takiego czegos i mama problem z new_distance=15 nie wiem  gdzie w kodzie trzeba to dopisac predzej zeby zadziałało...


  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#10 Robiin

    Godlike

  • Support Team

Reputacja: 1 111
Super Hero

  • Postów:2 068
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 08.08.2018 22:51

Wypocin sadpepe

 

Daj kod po przeróbkach i zobaczymy czego brakuje


  • +
  • -
  • 2

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#11 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 09.08.2018 15:14

Problem z 'xs_vec_add' - dodaj na samej górze pluginu:
#include <xs>
Co do dystansu, dodaj go gdzie uważasz to za stosowne i tak jak kolega wyżej wspomniał - podrzuć na wklejce przerobiony kod. Cała ta modyfikacja to nie jest jakiś duży wyczyn, kwestia poprawienia kilku błędów kompilacji.
  • +
  • -
  • 1

#12 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 10.08.2018 20:36

Problem z 'xs_vec_add' - dodaj na samej górze pluginu:

#include <xs>
Co do dystansu, dodaj go gdzie uważasz to za stosowne i tak jak kolega wyżej wspomniał - podrzuć na wklejce przerobiony kod. Cała ta modyfikacja to nie jest jakiś duży wyczyn, kwestia poprawienia kilku błędów kompilacji.

 

Kompiluje się już, jednak kulki nie wylatuja to znaczy jedna wylatuje normalnie reszta zostaje przed twarza gracza...

Załączone pliki


  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#13 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 10.08.2018 20:39

 

Problem z 'xs_vec_add' - dodaj na samej górze pluginu:

#include <xs>
Co do dystansu, dodaj go gdzie uważasz to za stosowne i tak jak kolega wyżej wspomniał - podrzuć na wklejce przerobiony kod. Cała ta modyfikacja to nie jest jakiś duży wyczyn, kwestia poprawienia kilku błędów kompilacji.

 

Kompiluje się już, jednak kulki nie wylatuja to znaczy jedna wylatuje normalnie reszta zostaje przed twarza gracza...

 

 

linijki od 428 tam podopisywałem to co wczesniej radziles...


  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#14 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 10.08.2018 23:18

Podmień funkcję 'paint_fire' na tę:
Spoiler

  • +
  • -
  • 1

#15 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 11.08.2018 15:01

Więc według twojej instrukcji wyżej udało się uzyskać efekt o który mi chodziło... Jest super. Mały mankament leży w odległości miedzy tymi 3 kulkami po lewej i tą parą kulek po prawej. Próbowałem tym dystansem się bawić ale zmniejszając dystans  przerwa ta również się zmniejsza, ale nie znika jak masz pomysł pisz. jak nie to ok ten efekt mi sie i tak podoba... Wielkie dzięki panowie dla was.!!!

Załączone pliki


  • +
  • -
  • 0

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 


#16 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 11.08.2018 16:58   Najlepsza odpowiedź

No niestety, ale pewna wiedza zwyczajnie umyka po północy :D
Zapomniałem o nawiasach w linijce z obliczeniami mnoznika dystansu.

Poprawiona funkcja:
Spoiler

Użytkownik _McHappy edytował ten post 11.08.2018 19:12

  • +
  • -
  • 2

#17 Ekspedytor

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:33
  • Imię:Dawid
  • Lokalizacja:Słoneczne Mazury ;)
Offline

Napisano 11.08.2018 18:17

No niestety, ale wiedza z metod numerycznych umyka po północy :D
Zapomniałem o nawiasach w linijce z obliczeniami mnoznika dystansu.

Poprawiona funkcja:

Spoiler

 

Umyka?? Człowieku za**bisty jesteś.. Wykorzystałeś wiedzę i poświęciłeś swój czas... Dzięki WIELKIE 5!!! dla Ciebie.!  Temat do zamknięcia... A ty mordeczko możesz na pw wysłać mi adres to wyśle ci pół litra... 


  • +
  • -
  • 1

"Powstań i usłysz wołanie, historia wzywa Cię:
Warszawo, walcz!"

762a104fc50a6.jpg

 






Również z jednym lub większą ilością słów kluczowych: paintballmod, kulki, wektory

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

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