#include <amxmodx> #include <amxmisc> #include <csstats> #define MAX_PLAYERS 32 enum CONNECT_TYPE { putinserver_admin, putinserver_player, disconnect_admin, disconnect_player, MAX_TYPE } new const CONNECT_MESSAGES[CONNECT_TYPE:MAX_TYPE][] = { /* {name} = user name {rankpos} = user rank {connecttime} = user connection time */ "Przyszedl {name}\nRank:{rankpos}\nCzas podlaczania:{connecttime} sec.", //admin "Przyszedl {name}\nRank:{rankpos}\nCzas podlaczania:{connecttime} sec.", //player /* {name} = user name {rankpos} = user rank {playtime} = user play time */ "{name} odchodzi. Do zobaczenia\nRank:{rankpos}\nGral przez:{playtime} min.", //admin "{name} odchodzi. Do zobaczenia\nRank:{rankpos}\nGral przez:{playtime} min." //player } new const MESSAGES_COLOR[CONNECT_TYPE:MAX_TYPE][3] = { {0, 255, 0}, //admin {0, 255, 0}, //player {0, 255, 0}, //admin {0, 255, 0} //player } new const CONNECT_SOUNDS[CONNECT_TYPE:MAX_TYPE][] = { "buttons/blip1.wav", //admin "buttons/blip1.wav", //player "buttons/blip1.wav", //admin "buttons/blip1.wav" //player } new g_hudsync new Float:g_connecttime[MAX_PLAYERS+1][2] static const PLUGIN_NAME[] = "Enter-Leave Notifications" static const PLUGIN_AUTHOR[] = "Cheap_Suit" static const PLUGIN_VERSION[] = "1.2" public plugin_init() { register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR) register_cvar(PLUGIN_NAME, PLUGIN_VERSION, FCVAR_SPONLY|FCVAR_SERVER) g_hudsync = CreateHudSyncObj() } public plugin_precache() { if(strlen(CONNECT_SOUNDS[putinserver_admin])) precache_sound(CONNECT_SOUNDS[putinserver_admin]) if(strlen(CONNECT_SOUNDS[putinserver_player])) precache_sound(CONNECT_SOUNDS[putinserver_player]) } public client_connect(id) g_connecttime[id][0] = get_gametime() public client_putinserver(id) { if(is_user_bot(id)) return g_connecttime[id][1] = get_gametime() set_task(2.0, "task_client_connected", id) } public client_disconnect(id) { if(is_user_bot(id)) return g_connecttime[id][0] = get_gametime() set_task(0.5, "task_client_disconnected", id) } public task_client_connected(id) { new admin = is_user_admin(id) static sound[32] format(sound, 31, CONNECT_SOUNDS[admin ? putinserver_admin : putinserver_player]) if(strlen(sound) > 0) client_cmd(0, "spk %s", sound) static putinserver_message[192] format(putinserver_message, 191, CONNECT_MESSAGES[admin ? putinserver_admin : putinserver_player]) if(strlen(putinserver_message) > 0) { new Float:connecttime = g_connecttime[id][1] - g_connecttime[id][0] static connecttime_str[4] float_to_str(connecttime, connecttime_str, 3) static temp[8] static rank[8] new position = get_user_stats(id, temp, temp) num_to_str(position, rank, 7) static name[32] get_user_name(id, name, 31) replace(putinserver_message, 191, "{name}", name) replace(putinserver_message, 191, "{rankpos}", rank) replace(putinserver_message, 191, "{connecttime}", connecttime_str) replace_all(putinserver_message, 191, "\n", "^n") static color[3] for(new i = 0; i < 3; ++i) color[i] = MESSAGES_COLOR[admin ? putinserver_admin : putinserver_player][i] set_hudmessage(color[0], color[1], color[2], 0.10, 0.55, 0, 6.0, 6.0, 0.5, 0.15, 3) ShowSyncHudMsg(0, g_hudsync, putinserver_message) } } public task_client_disconnected(id) { new admin = is_user_admin(id) static sound[32] format(sound, 31, CONNECT_SOUNDS[admin ? putinserver_admin : putinserver_player]) if(strlen(sound) > 0) client_cmd(0, "spk %s", sound) static disconnect_message[192] format(disconnect_message, 191, CONNECT_MESSAGES[admin ? disconnect_admin : disconnect_player]) if(strlen(disconnect_message) > 0) { new Float:playtime = (g_connecttime[id][0] - g_connecttime[id][1]) / 60.0 static playtime_str[5] float_to_str(playtime, playtime_str, 4) static temp[8] static rank[8] new position = get_user_stats(id, temp, temp) num_to_str(position, rank, 7) static name[32] get_user_name(id, name, 31) replace(disconnect_message, 191, "{name}", name) replace(disconnect_message, 191, "{rankpos}", rank) replace(disconnect_message, 191, "{playtime}", playtime_str) replace_all(disconnect_message, 191, "\n", "^n") static color[3] for(new i = 0; i < 3; ++i) color[i] = MESSAGES_COLOR[admin ? disconnect_admin : disconnect_player][i] set_hudmessage(color[0], color[1], color[2], 0.10, 0.55, 0, 6.0, 6.0, 0.5, 0.15, 3) ShowSyncHudMsg(0, g_hudsync, disconnect_message) } }
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.
|
Guest Message by DevFuse
Vanquish
Rejestracja: 18.04.2010Aktualnie: Nieaktywny
Poza forum Ostatnio: 16.06.2011 13:44





Statystyki
- Grupa: Użytkownik
- Całość postów: 58
- Odwiedzin: 4 313
- Tytuł: Pomocny
- Wiek: 30 lat
- Urodziny: Grudzień 20, 1994
-
Płeć
Mężczyzna
-
Lokalizacja
Polska
Kontakt
0
Nowy
Narzędzia użytkownika
Znajomi
Vanquish nie posiada znajomych
#232636 Przerobienie pluginu - enter-leave notifications
Napisane przez kasza
w 02.04.2011 21:39
Zobacz cz tak pasuje. Nie zrobilem jedynie cvary z hud'em
#231440 Logo nad listą banów
Napisane przez Aard
w 29.03.2011 19:54
#213181 Przerobienie klasy-niewidzialność z nożem
Napisane przez Goliath
w 05.02.2011 21:02
#145361 Problem z odtwarzeniem muzyki w roundsound
Napisane przez Abes Mapper
w 19.06.2010 14:49
- AMXX.pl: Support AMX Mod X i SourceMod
- → Przeglądanie profilu: Reputacja: Vanquish
- Regulamin