←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

Prywatna wiadomość! [ŁATWY] [WYSYŁANIE...

  • +
  • -
Droso's Photo Droso 13.11.2013

Opis


Autor: HubertTM

 

Plugin pozwala wysłać między graczami prywatne wiadomości! Plugin jest prosty - NIE wymaga wpisywania nicku gracza na say itd., do którego chcemy wysłać wiadomości, ponieważ tego gracza wybieramy z menu :)

Genialnie się spisuje, możesz gadać, plotkować na serwerze, obgadywać adminów xD

 

Na myśl przyjdzie, a co z reklamami? A no dodałem mini-filtr, który wychwyci ip i adresy stron bez problemu (nawet takie IP: 53x46x53x52/27015).

 

Dodałem także filtr najczęstszych wulgaryzmów - można usunąć sobie samemu wulgaryzmy poprzez edycję .sma ;)

 

Komendy + Działanie


Say /pw - otwiera menu z graczami do oznaczenia do wyslania wiadomosci :) 
Obok nickow mamy w nawiasie ID gracza, zeby wysylac wiadomosc do danego gracza bez otwierania menu! 
(Patrz nizej)
Say /pw NUMEREK, NUMEREK2, NUMEREK3
W wersju 2.0 pojawilo sie szybkie wysylanie wiadomosci z juz z chatu wpisz /pw i numerki gracza z menu 
z nawiasu np. /pw 4 otworzy pole do pisania do gracza o id 4, a /pw 4,5,6,7 - otworzy menu do pisania do graczy 4,5,6,7

Najpierw z menu wybieramy gracza, następnie wpisujemy wiadomość jak na chacie, klikamy enter i to tyle ;)

 

 

Inne informacje


Plugin został wyciągnięty z mojego VIP'a, ale powinno wszystko ładnie działać ;)

 

 

Instalacja


Standardowa.

 

Cvar


pw_msgtoalive 1  // Czy zezwalac na podpowiadanie? Czyli wysylanie wiadomosci do zywych bedąc niezywym?
// 1 - tak
// 0 - nie

Changelog


Wersja 1.0:

  • Podstawowa wersja - możliwość pisania tylko do jednej osoby.

Wersja 2.0c:

  • Możliwość pisania do wielu osób! Zaznaczanie w menu jak i w say! /pw numerkizmenu
  • Plugin porządkuje osoby w menu - osoby, do których pisaliśmy są na początku ;)
  • Graczy, których zaznaczyliśmy idą na początek menu.
  • Łatwe wysyłanie kilku wiadomości na raz! Po wysłaniu wiadomości nadal mamy pole do pisania, dopóty dopóki nie wyślemy pustej wiadomości!
  • Dodanie nowych wulgaryzmów.
  • W menu nie pojawią się boty oraz HLTV!
  • Wiadomość zawsze trafi do właściwej osoby - problemy były jak gracz w trakcie wybierania z menu - rozłączył się.
  • Dodanie cvara pw_msgtoalive - czy można wysyłać wiadomość do żywych będąc nieżywym? Czyli zakaz podpowiadania ;)
  • Wiele innych!

 

 

Download


 

Attached Files


Edited by HubertTM, 21.11.2013 21:51.
Quote

  • +
  • -
MAGNET's Photo MAGNET 13.11.2013

wysli wiadomosc PW.
:facepalm:
Ty chyba nie humanista xD

A pluginek na pewno wgram do siebie :)
Quote

  • +
  • -
TSUBA's Photo TSUBA 13.11.2013

xD nie powiem plugin dobry :P ode mnie +

Quote

  • +
  • -
Droso's Photo Droso 13.11.2013

Ja Mat-Fiz :D

Tak mi zostało z gier ;)

Zostawię już, bo każdy rozumie przecież, o co chodzi :D

Quote

  • +
  • -
MAGNET's Photo MAGNET 13.11.2013

Zdolny leń hę ;)
@EDIT

"wbij"
Jako BaseBuilder'owy maniak prosze, abys dodal stala zmienna BB + if defined przy tej czastce :D
Droso (13.11.2013 21:43):
xD
Usunę całkowicie to słowo.
Quote

Aemiksowy's Photo Aemiksowy 13.11.2013

Według mnie, rozpowszechnianie tego typu pluginów nie jest dobrym pomysłem, a podawanie argumentu: "można obgadywać adminów" jest niestety słaby i działa na niekorzyść nie tyle co serwera, a admina. Może to banalnie zabrzmi, ale ja nie lubię jak mnie ktoś za plecami obgaduje, nie wiem jak Wy. Mimo, że nie jestem za kontrolowaniem graczy do takiego stopnia, to jednak uważam, że powinny być logi z takich rozmów. Być może ten pomysł jest trochę sprzeczny z założeniami takiego pluginu, w końcu jest ona prywatna, jednak patrząc na to z drugiej strony, to też dla pewnego bezpieczeństwa.

 

Z całą pewnością wolę mieć wolność robienia czegoś, a nie gadania. Gadać sobie można, ale nic tym generalnie nie zrobisz.

Quote

  • +
  • -
Droso's Photo Droso 13.11.2013

Według mnie, rozpowszechnianie tego typu pluginów nie jest dobrym pomysłem, a podawanie argumentu: "można obgadywać adminów" jest niestety słaby i działa na niekorzyść nie tyle co serwera, a admina. Może to banalnie zabrzmi, ale ja nie lubię jak mnie ktoś za plecami obgaduje, nie wiem jak Wy. Mimo, że nie jestem za kontrolowaniem graczy do takiego stopnia, to jednak uważam, że powinny być logi z takich rozmów. Być może ten pomysł jest trochę sprzeczny z założeniami takiego pluginu, w końcu jest ona prywatna, jednak patrząc na to z drugiej strony, to też dla pewnego bezpieczeństwa.

 

Z całą pewnością wolę mieć wolność robienia czegoś, a nie gadania. Gadać sobie można, ale nic tym generalnie nie zrobisz.

Było to napisane w żarcie, nie traktuj tego serio (chyba tak to jest z żartami ;)).

Nie sądzę, że którykolwiek gracz będzie kogoś obgadywał, bo jest np. niżej w tabeli?

 

NIE dodam do głównego pluginu logowania rozmów - rób to na własną rękę, jak się wyda, że na twoim serwerze są rejestrowane prywatne rozmowy - to życzę powodzenia.

 

 

Argumenty za pluginem:

  • Mniejszy spam Chat.
  • Łatwo napisać tylko do danego admina w danej sprawie itd.
  • Wszelkie kłótnie mogą się przenieść na PW.

Przeciw:

  • Mniejsza kontrola (obgadywanie itd.)
  • Podpowiadanie - plugin nie ma blokowania wysyłania wiadomości na poziomie Martwy-Żywy - jeżeli plugin przypadnie większości do gustu - to dodam CVAR.
Quote

Aemiksowy's Photo Aemiksowy 13.11.2013

Wiem, że było to napisane w żartach, jednak ten żart ma pewien sens i odniesienie do rzeczywistości i faktu.

 

NIE dodam do głównego pluginu logowania rozmów - rób to na własną rękę, jak się wyda, że na twoim serwerze są rejestrowane prywatne rozmowy - to życzę powodzenia.

 

A to, że rozmowy adminów na u@ są logowane na serwerze, to idąc takim tokiem myślenia, nie powinny być, bo to też narusza prywatność... Po to został czat adminów utworzony, aby był on prywatny do rozmowy, a także możliwości zgłaszania do nich skarg.

 
  • Łatwo napisać tylko do danego admina w danej sprawie itd.

 

To jest żaden argument. 

 

@down

u@ jest prywatną wiadomością do adminów, ten plugin do jednego, konkretnie. Gracz wie, że przeczytają to admini, aczkolwiek nie wie, że to jest zapisywane.


Droso (13.11.2013 22:15):
Nie zgodzę się u@ to prywatne rozmowy - bo widzą je wszyscy admini obecni na serwerze.
Gracz pisząc na u@ - wie, że JEGO wiadomość zobaczą TYLKO admini.


Pisząc na PW - ma być pewien, że wiadomość jest adresowana do jednej osoby - a nie do administracji -,-
Droso (13.11.2013 22:26):
Skoro wiadomość jest wysłana do adminów - to może być logowana - bo i tak odczytają ją tylko admini (a nawet Head-Admini).

PW - to zupełnie, co innego :D

Edited by Aemiksowy, 13.11.2013 22:18.
Quote

Jackop95's Photo Jackop95 13.11.2013

Super :) 

 

Czekam na wersje z wiadomoscia grupowa xD 

Quote

  • +
  • -
sebul's Photo sebul 13.11.2013

Pomijając fakt podpowiadania, itp. to pisanie do kogoś poprzez menu, nie jest zbyt wygodne i praktyczne, powinieneś to zrobić na zasadzie wpisywania jakiegoś identyfikatora przed wiadomością, a za pomocą menu po prostu byś automatycznie taki identyfikator wpisywał przed wiadomością.
Quote

  • +
  • -
Droso's Photo Droso 14.11.2013

Pomijając fakt podpowiadania, itp. to pisanie do kogoś poprzez menu, nie jest zbyt wygodne i praktyczne, powinieneś to zrobić na zasadzie wpisywania jakiegoś identyfikatora przed wiadomością, a za pomocą menu po prostu byś automatycznie taki identyfikator wpisywał przed wiadomością.

Dobry pomysł, tylko trzeba wymyślić ten identyfikator ;) Jakieś pomysły? Chyba najlepsze będzie zastosowanie ID gracza według HLDS - ale może ktoś wpadnie na lepszy pomysł?

Quote

  • +
  • -
MAGNET's Photo MAGNET 14.11.2013

Dobrze by bylo gdyby plug wychwytywal czesc nicku, aby wystarczyla tylko czesc i plugin bylby w stanie gracza odnalezc.
Przyklad: gdy chcemy napisac do gracza Misiek1384974 to wystarczy napisac: @mis text...
Quote

  • +
  • -
Droso's Photo Droso 14.11.2013

Problemy zaczynają się gdy są dwa podobne nicki :D, trzeba wpisywać raczej cały nick :D, albo gracz jest w klanie KLAN | XXX

Można użyć containi, ale to też może wychwycić inny nick.

Quote

  • +
  • -
MAGNET's Photo MAGNET 14.11.2013

To wtedy wiadomosc na czacie: wykryto podobne nicki. Uzyj pelnego nicku lub skorzystaj z listy graczy pod komenda /pw
Quote

  • +
  • -
sebul's Photo sebul 14.11.2013

Problemy zaczynają się gdy są dwa podobne nicki :D, trzeba wpisywać raczej cały nick :D, albo gracz jest w klanie KLAN | XXX
Można użyć containi, ale to też może wychwycić inny nick.

Nie trzeba żadnych całych nicków.
(...)
register_clcmd("say", "ZglosCzita");
(...)
public ZglosCzita(id) {
new szTxt[128];
read_args(szTxt, 127);
remove_quotes(szTxt);

if(equali(szTxt, "/@", 2)) {
new szKto[48];
strbreak(szTxt[2], szKto, 47, szTxt, 127);
trim(szKto);
new target = cmd_target(id, szKto, CMDTARGET_NO_BOTS);

if(!target) {
ColorChat(id, GREEN, "Wystapil problem");
return PLUGIN_HANDLED;
}
}
(...)
Quote

  • +
  • -
GwynBleidD's Photo GwynBleidD 14.11.2013

Problemy przy cmd_target zaczynają się, gdy masz np na serwerze gracza paw i pawel, do paw nie napiszesz, bo będzie non stop wywalało, że jest to niejednoznaczne... Wtedy tylko pomoże sprawdzenie ID przez status i wpisanie go zamiast nicku...

 

Ogólnie plugin bez sensu... od takich rozmów jest steam, który jest do tego dużo wygodniejszy, niż czat na serwerze. A administracja posiada amx_psay, niektóre pluginy admin_colorchat wyciągają amx_psay do komendy say_team #, dzięki czemu wpisujemy szybko u#nick wiadomość i upominamy danego użytkownika lub odpowiadamy mu na coś, co na admin_chacie napisał.

Quote

  • +
  • -
sebul's Photo sebul 14.11.2013

Problemy przy cmd_target zaczynają się, gdy masz np na serwerze gracza paw i pawel, do paw nie napiszesz, bo będzie non stop wywalało, że jest to niejednoznaczne... Wtedy tylko pomoże sprawdzenie ID przez status i wpisanie go zamiast nicku...

Z tego co się orientuję, to cmd_target nie przyjmuje tylko nicku, można tam podać także index (nie te id > 0 i < 33), który łatwo można pobrać od każdego gracza w menu.
Quote

  • +
  • -
GwynBleidD's Photo GwynBleidD 16.11.2013


Wtedy tylko pomoże sprawdzenie ID przez status i wpisanie go zamiast nicku...

 

To właśnie miałem na myśli w tym fragmencie. Jednak nadal cmd_target jest mało wygodny, aczkolwiek wygodniejszy od menu. Można jednak to trochę ulepszyć... Gdy mamy 2 graczy pasujących do wzorca, wyświetlamy menu z wyborem o którego gracza chodzi. Jeśli ktoś nie wpisze gracza, wybieramy menu z wszystkimi. Rozwiązanie chyba najlepsze.

Quote

  • +
  • -
Droso's Photo Droso 17.11.2013

 


Wtedy tylko pomoże sprawdzenie ID przez status i wpisanie go zamiast nicku...

 

To właśnie miałem na myśli w tym fragmencie. Jednak nadal cmd_target jest mało wygodny, aczkolwiek wygodniejszy od menu. Można jednak to trochę ulepszyć... Gdy mamy 2 graczy pasujących do wzorca, wyświetlamy menu z wyborem o którego gracza chodzi. Jeśli ktoś nie wpisze gracza, wybieramy menu z wszystkimi. Rozwiązanie chyba najlepsze.

 

Używałem innego ID - jakby kolejność w menu, ale userid (status) będzie lepszy :D
+ Aby było wygodniej pisać wiadomości, gdy wpiszemy wiadomość, to nadal mamy messagemode, dopóty dopóki nie wpiszemy pustej wiadomości ;) (Aby nie wpisać ponownie ID itd.).
 
Oczywiście pojawi się możliwość wysyłania wiadomości do paru osób prawdopodobnie tak to będzie wyglądało:
- Wpisujemy /pw - otwiera menu i zaznaczamy graczy - wpisujemy wiadomość.
- Wpisujemy /pw 5,7,14 - wpisujemy od razu wiadomość. (ID gracza będzie widoczne w menu).
 
@edycja
-Dodatkowo gracza, do którego napisaliśmy wcześniej lub on do nas, będziemy mieli na początku w menu ;)
 
P.S Pozostały testy!

Edited by HubertTM, 17.11.2013 13:08.
Quote

  • +
  • -
GwynBleidD's Photo GwynBleidD 18.11.2013

Odnośnie tworzenia menu, robisz to źle! :)

 

Przeanalizujmy taką sytuację, są na serwerze 3 osoby: ja, Kawon i Benio. Nie mamy admina, więc gadamy sobie kogo by tu na amxx.pl zbanować (czysto hipotetycznie! zapewniam, że takie rozmowy nie są prowadzone... po prostu banujemy i tyle :P), nagle Kawona wyrzuca z serwera, ale wchodzisz Ty... Podczas tego precedensu miałem otwarte menu z wyborem do kogo PW napisać, Kawon dajmy na to miał id=7, ID się zwolniło zanim wszedłeś, więc serwer Ci je przydzielił, teraz Ty masz siódemkę. Ja sobie spokojnie z menu wybieram Kawona, przekonany o tym że dalej jest na serwerze, wysyłam wiadomość a tu zonk, właśnie się dowiedziałeś, że jutro tracisz rangę ST, bo zrobiłeś beznadziejny plugin na czat PW na serwerach... I co teraz?

 

Oczywiście domyślasz się co było przyczyną, prawda? A można temu łatwo zapobiec... Wpakuj do info prócz zwykłego ID gracza, również jego userid (to, ze statusu). Takie ID jest unikalne dla gracza w danej "sesji" serwera. Po wybraniu z menu użytkownika i wpisaniu wiadomości (najlepiej tuż po wybraniu, ale przed wpisaniem oraz tuż po wpisaniu, ale przed wysłaniem) weryfikujesz, czy gracz pod podanym ID ma to userid, które miał gracz wyświetlony w menu. Jeśli nie, bach komunikat: gracz opuścił serwer, wiadomość nie została dostarczona :)


Droso (19.11.2013 21:49):
Wiem wiem, dlatego właśnie z tego zrezygnowałem, przeszedłem na samo userid, które się nie powtarza? Tzn dodaje ciągle +1.

Jutro moze dodam nową wersję, tylko muszę kolegę zaprosić do testów.
GwynBleidD (19.11.2013 23:58):
Przechodzenie na samo userid też jest jakimś rozwiązaniem, ale ja zawsze wolę podać też id, jakoś się przyzwyczaiłem.
Quote