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

[ROZWIĄZANE] Funkcja przyciągnięcia gracza do gracza


Najlepsza odpowiedź MarWit, 16.04.2013 15:24

id - gracz/byt przyciągający

iEnt - gracz/byt przyciągany

fSpeed - szybkość z jaką gracz/byt jest przyciągany

#include < amxmodx >
#include < fakemeta >
 
public plugin_init( )
    register_clcmd( "say /test", "cmdTest" );
 
public cmdTest( id )
    for( new i = 1; i < 33; i ++ ) if( is_user_alive( i ) && id != i ) pullIt( id, iEnt, random_float( 500.0, 900.0 ) )
 
stock pullIt( id, iEnt, Float: fSpeed )
{
    new Float: fOrigin[ 2 ][ 3 ];

    pev( id, pev_origin, fOrigin[ 0 ] );
    pev( iEnt, pev_origin, fOrigin[ 1 ] )

    new Float: fDistance = floatsqroot(
        floatpower( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ], 2.0 )
    );

    fOrigin[ 0 ][ 0 ] = ( ( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 1 ] = ( ( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 2 ] = ( ( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ] ) * fSpeed ) / fDistance;

    set_pev( iEnt, pev_velocity, fOrigin[ 0 ] );
}
Przejdź do postu


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

#1 Raen

    Wszechwiedzący

  • Power User

Reputacja: 160
Profesjonalista

  • Postów:536
  • GG:
  • Imię:Paweł
  • Lokalizacja:......
Offline

Napisano 14.04.2013 21:38

Witam.
Szukam funkcji która pozwoli przyciągnąć gracza A do gracza B czyli do mnie. Może być to plugin, perk, klasa obojętne mi to potrzebuję sam kod. Wydaje mi się że widziałem taki perk ale teraz za nic go znaleźć nie mogę. Liczę na Waszą pomoc i z góry dziękuję ;)


  • +
  • -
  • 0

angel-little.png


#2 GwynBleidD

    Godlike

  • Przyjaciel

Reputacja: 1 869
Godlike

  • Postów:3 066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 15.04.2013 03:59

Złap sobie plugin na hooka i odwróć działanie (zamiast gracz strzelać w ścianę, ściana będzie strzelać w gracza i go przyciągać). Następnie wymienić ścianę na drugiego gracza i gotowe


  • +
  • -
  • 1

NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark


#3 Raen

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 160
Profesjonalista

  • Postów:536
  • GG:
  • Imię:Paweł
  • Lokalizacja:......
Offline

Napisano 15.04.2013 21:17

Hmm.. nie wiem czy sobie z tym poradzę, ale cóż będę musiał spróbować. A nie ma gdzieś gotowego pluginu? Wydaje mi się że gdzieś widziałem taki perk ale nie jestem tego pewien.


  • +
  • -
  • 0

angel-little.png


#4 sNH.

    Czy MisieQ ukradł ciasteczko?

  • Power User

Reputacja: 299
Wszechwidzący

  • Postów:1 070
  • Steam:steam
  • Imię:Bartek
  • Lokalizacja:Ełk
Offline

Napisano 15.04.2013 21:35

Nie było czegoś podobnego na zombie? 1 mógł przyciągać 2? I dodać ten sam efekt? Dobrze nie pamiętam bo z zombie bawiłem się dawno temu, ale możesz poszukać.


  • +
  • -
  • 1

#5 Longlin

    Zaawansowany

  • Zbanowany

Reputacja: 12
Początkujący

  • Postów:133
  • GG:
  • Lokalizacja:Brzesko
Offline

Napisano 15.04.2013 21:54

jest taka klasa zombie na allienie , nazywała się faraon na polskich serwerach xD


Pomogę w napisaniu pluginu , edycjach moda -  za darmo na  forum jeśli praca nie przekracza 30-40 minut pracy ;) , większe prace tylko przez GG 4580341 , lub steam:  rezardd ewentualność !!! - skype przemek280597 , przyjmuje również zlecenia płatne.


#6 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 16.04.2013 14:41

*
Popularny

stock pullIt( id, iEnt, Float: fSpeed )
{
    new Float: fOrigin[ 2 ][ 3 ];

    pev( id, pev_origin, fOrigin[ 0 ] );
    pev( iEnt, pev_origin, fOrigin[ 1 ] )

    new Float: fDistance = floatsqroot(
        floatpower( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ], 2.0 )
    );

    fOrigin[ 0 ][ 0 ] = ( ( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 1 ] = ( ( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 2 ] = ( ( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ] ) * fSpeed ) / fDistance;

    set_pev( iEnt, pev_velocity, fOrigin[ 0 ] );
}

Użytkownik MarWit edytował ten post 16.04.2013 20:32
Błąd z typami zmiennych

  • +
  • -
  • 5

marwit-0.png


#7 Raen

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 160
Profesjonalista

  • Postów:536
  • GG:
  • Imię:Paweł
  • Lokalizacja:......
Offline

Napisano 16.04.2013 15:20

Mógłbyś podać przykładowe zastosowanie? Załóżmy że chcę przyciągnąć gracza do siebie tylko jak tego użyć? Id to ja, a iEnt to drugi gracz? No i po co to fSpeed? :)


  • +
  • -
  • 0

angel-little.png


#8 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 16.04.2013 15:24   Najlepsza odpowiedź

*
Popularny

id - gracz/byt przyciągający

iEnt - gracz/byt przyciągany

fSpeed - szybkość z jaką gracz/byt jest przyciągany

#include < amxmodx >
#include < fakemeta >
 
public plugin_init( )
    register_clcmd( "say /test", "cmdTest" );
 
public cmdTest( id )
    for( new i = 1; i < 33; i ++ ) if( is_user_alive( i ) && id != i ) pullIt( id, iEnt, random_float( 500.0, 900.0 ) )
 
stock pullIt( id, iEnt, Float: fSpeed )
{
    new Float: fOrigin[ 2 ][ 3 ];

    pev( id, pev_origin, fOrigin[ 0 ] );
    pev( iEnt, pev_origin, fOrigin[ 1 ] )

    new Float: fDistance = floatsqroot(
        floatpower( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ], 2.0 ) +
        floatpower( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ], 2.0 )
    );

    fOrigin[ 0 ][ 0 ] = ( ( fOrigin[ 0 ][ 0 ] - fOrigin[ 1 ][ 0 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 1 ] = ( ( fOrigin[ 0 ][ 1 ] - fOrigin[ 1 ][ 1 ] ) * fSpeed ) / fDistance;
    fOrigin[ 0 ][ 2 ] = ( ( fOrigin[ 0 ][ 2 ] - fOrigin[ 1 ][ 2 ] ) * fSpeed ) / fDistance;

    set_pev( iEnt, pev_velocity, fOrigin[ 0 ] );
}

Użytkownik MarWit edytował ten post 16.04.2013 20:33
Pop. bład z typami

  • +
  • -
  • 5

marwit-0.png


#9 Raen

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 160
Profesjonalista

  • Postów:536
  • GG:
  • Imię:Paweł
  • Lokalizacja:......
Offline

Napisano 16.04.2013 15:29

Dzięki bardzo, można zamknąć ;)


  • +
  • -
  • 0

angel-little.png





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

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