←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[ROZWIĄZANE] Sprawdzenie czy gracz trzyma...

Zablokowany

  • +
  • -
sebul - zdjęcie sebul 06.08.2013

Da się jakoś sprawdzić, czy gracz trzyma dany klawisz? Oczywiście nie chodzi mi tutaj o klawisz użycia (domyślnie e), itp. tylko czy gracz trzyma klawisz niezbindowany do niczego. Nie chodzi mi też o moment wciśnięcia klawisza, bo wtedy można zrobić jakiś bind i wtedy można to bez problemu wykryć.
Odpowiedz

  • +
  • -
BlackPerfum - zdjęcie BlackPerfum 06.08.2013

Bez ingerowania w pliki klienta jest to nie możliwe(bynajmniej patrząc z logicznego punktu widzenia)

Odpowiedz

Fail - zdjęcie Fail 06.08.2013

lub zamontuj temu graczowi kamerke w domu i patrz jaki klawisz trzyma

Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.08.2013

lub zamontuj temu graczowi kamerke w domu i patrz jaki klawisz trzyma

To chyba nie te pytanie i miejsce, żeby sobie offtopować.

Domyślam się i zresztą domyślałem się, że może to być niemożliwe, ale może jednak znalazł się jakiś sposób, aby jednak coś takiego wprowadzić w plugin.
Odpowiedz

  • +
  • -
BlackPerfum - zdjęcie BlackPerfum 06.08.2013

Bez bindowania się nie da (da się ale już nie łatwym sposobem) bo klient nie wysyła żadnych informacji do serwera o klawiszach które są naciśnięte tylko o bindach które się wykonują. Zawsze można dodać drugą komendę pod bind wtedy gracz tak szybko się nie zorientuje że mu mieszaliśmy w configu. Są też inne sposoby ale to już wykracza poza zakres amxx czy samego pawna albo można zawsze zrobić moduł, który będzie sprawdzał czy ktoś naciska jakiś przycisk i wysyłać z niego informacje do serwera. Bo przecież cs "wie" czy ktoś nacisną jakiś przycisk tylko nie wysyła tych informacji do serwera

Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.08.2013

Ale ja nie napisałem, że bindowanie w ogóle nie wchodzi w grę (a nawet bez tego pewnie się nie obędzie), tylko że nie chodzi mi o wykrycie momentu wciśnięcia klawisza, co da się zrobić przez bind.
 

tylko czy gracz trzyma klawisz niezbindowany do niczego

To mogło zabrzmieć trochę myląco, ale chodziło mi o to, żeby wykluczyć takie klawisze, jak e, który domyślnie jest klawiszem użycia, a tutaj wystarczy użyć "get_user_button", aby sprawdzić czy ten klawisz jest wciśnięty.
Odpowiedz

  • +
  • -
BlackPerfum - zdjęcie BlackPerfum 06.08.2013

Bindem także można sprawdzić czy ktoś trzyma dany przycisk. Po to są +/- ;D. Takim samym sposobem jak to jest robione np. z "use". Gdy gracz wciśnie przycisk pod którym ma zbindowaną komendę "+use" wysyła się wiadomość do serwera o użyciu komendy "use" dopiero gdy gracz puści przycisk pod którym ma zbindowaną komendę "+use" wywoła się komenda "-use" powiadamiająca serwer iż gracz nie używa już komendy "use". Mniej więcej na takiej zasadzie to dział (bynajmniej według mojej filozofii). Jeśli chcesz sprawdzać bindem czy gracz trzyma (nie przyciska i puszcza tylko trzyma) to wystarczy zwykła zbindowana komenda.


Użytkownik BlackPerfum edytował ten post 06.08.2013 15:20
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.08.2013

Bindem także można sprawdzić czy ktoś trzyma dany przycisk. Po to są +/- ;D. Takim samym sposobem jak to jest robione np. z "use". Gdy gracz wciśnie przycisk pod którym ma zbindowaną komendę "+use" wysyła się wiadomość do serwera o użyciu komendy "use" dopiero gdy gracz puści przycisk pod którym ma zbindowaną komendę "+use" wywoła się komenda "-use" powiadamiająca serwer iż gracz nie używa już komendy "use". Mniej więcej na takiej zasadzie to dział (bynajmniej według mojej filozofii). Jeśli chcesz sprawdzać bindem czy gracz trzyma (nie przyciska i puszcza tylko trzyma) to wystarczy zwykła zbindowana komenda.

W sumie tak, ale jakoś nie pomyślałem, że można samemu takie coś robić z niestandardowymi bindami. Może i to będzie działać z tym minusem, sprawdzę to później.
sebul (06.08.2013 17:32):
Wychodzi na to, że wszystko działa. Co prawda komenda z minusem wykonuje się po puszczeniu klawisza, ale wystarczy zwykła zmienna i mam to czego chciałem.
Odpowiedz

  • +
  • -
sebul - zdjęcie sebul 06.08.2013

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany