Ver admins online + Contacto
#1
Nuevo Admin Check + Contacto Personalizado


Descripción del plugin:

Es un plugin similar al famoso Admin Check (más conocido como /admin), te muestra el número y los nombres de los administradores online al escribir "admin" o cualquiera de los comandos que se hayan especificado en la fuente (.sma). Además, muestra información de contacto del servidor, como nombre del dueño, steamid, facebook, etc (personalizable).

Caracteristicas:
  • 2 Tipos de administradores (Uno con mas rango que otro) editable segun ACCESS FLAGS.
  • Nombres de los tipos de administrador personalizables, puedes ponerle a uno "Moderador" y al otro "Administrador", o como quieras.
  • Puedes elegir los comandos que se pueden usar (en el chat) para mostrar los admins online o la informacion de contacto (o los 2)
  • Puedes editar los servicios de contacto a tu gusto, si quieres poner Twitter solo agregas "Twitter" , "@tutwitter".
  • Colores editables por cvar.
Cvars:
(Mas información de las CVARs dentro de la fuente)
  • ac_contacto <0|1> // Activa o desactiva el contacto.
  • ac_color_texto <0|1|2> // Color para textos (Texto "Admins conectados", medios de contacto).
  • ac_color_nombre <0|1|2> // Color para nombres (Nombres de admins conectados, datos de contacto).
  • ac_caracteres <#> // Cantidad maxima preferida de caracteres en una linea.
  • ac_mostrar_todos <0|1> // Mostrar los admins o el contacto a todos. 0 - No, solo al user que pidio. 1 - Si.
  • ac_mostrar_comandos <0|1> // Si se usa modo de reconocimiento 0, 0 - No mostrar comandos, 1 - Mostrar comandos
  • ac_modo_reconocimiento <0|1> // Modo de reconocimiento, 0 - Comando exacto, 1 - Contener el comando


Archivos adjuntos
.sma   Descargar AMXX / admincheck.sma (Tamaño: 9.34 KB / Descargas: 634)
Responder
#2
No lei mucho pero
Código PHP:
new const NOMBRE_ADMIN1[] =    "Moderador"    // Como sale el admin tipo 1 conectado (singular).

new const NOMBRE_ADMIN1S[] =    "Moderadores"    // Como salen los admins tipo 1 conectados (plural).

new const NOMBRE_ADMIN2[] =    "Admin"        // Como sale el admin tipo 2 conectado (singular).

new const NOMBRE_ADMIN2S[] =    "Admins"    // Como salen los admins tipo 2 conectados (plural). 
es al pedo crear una const q es igual y q solo agrega una s

Como sugerencia podrias agregar una cfg para q sea mas configurable sin necesidad de editar el plugin
PD:Lindo sistema antirobo xD
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#3
Moderador -> Moderadors ¿?
Administrador - > Administradors ¿?

Por eso Lengua

PD: Gracias! Sonrisa
Responder
#4
(14/04/2014, 09:55 PM)Mario AR. escribió: Moderador -> Moderadors ¿?
Administrador - > Administradors ¿?

Por eso Lengua

PD: Gracias! Sonrisa

No importa q sea "es" me parece q no entendiste
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#5
No tiene sentido hookear el say pudiendo usar register_clcmd.

Código:
#define USAR_CVARS
Esto no tiene ninguna utilidad, dejá las cvars directamente.

Los task para llamar a print_admins son innecesarios.

Código:
if(get_pcvar_num(cvar_chars) < 1) set_pcvar_num(cvar_chars, 100);
if(!(0 <= get_pcvar_num(cvar_tcolor) < 3)) set_pcvar_num(cvar_tcolor, 1);
if(!(0 <= get_pcvar_num(cvar_ncolor) < 3)) set_pcvar_num(cvar_ncolor, 2);
Borrá esto, si el usuario usa valores no permitidos, que se joda.

Código:
for(i = 1 ; i <= maxplayers ; i++)
Usá get_players.

Código:
stock registre_plugin(const PLUGIN[], const VERSION[], const AUTHOR[])
{
    static REAL_AUTHOR[10];
    if(equal(AUTHOR, "Mario AR.")) copy(REAL_AUTHOR, 9, AUTHOR);
    else formatex(REAL_AUTHOR, 9, "Mario AR.");
    register_plugin(PLUGIN, VERSION, REAL_AUTHOR);
}
Esto es irrelevante, borralo.
Responder
#6
(14/04/2014, 09:55 PM)Mario AR. escribió: Moderador -> Moderadors ¿?
Administrador - > Administradors ¿?

Por eso Lengua

PD: Gracias! Sonrisa

No puedo ver el plugin desde el cel pero si es un print o algo así
"Moderador%s", g_Moderadores > 1? "es" : "");
Responder
#7
(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió: No tiene sentido hookear el say pudiendo usar register_clcmd.
Es porque uso containi en la funcion, creo que eso no es posible con register_clcmd... (sin que tenga que hookear el say)

(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió: Los task para llamar a print_admins son innecesarios.

Los task son para que los admins aparezcan después del texto del chat, si pongo "quien es admin" saldrá asi
Mario AR : quien es admin
1 Admin conectado: Mario AR.

Pero si no estan los task, saldra asi
1 Admin conectado: Mario AR.
Mario AR : quien es admin

(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió:
Código:
#define USAR_CVARS
Esto no tiene ninguna utilidad, dejá las cvars directamente.
Listo.

(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió:
Código:
if(get_pcvar_num(cvar_chars) < 1) set_pcvar_num(cvar_chars, 100);
if(!(0 <= get_pcvar_num(cvar_tcolor) < 3)) set_pcvar_num(cvar_tcolor, 1);
if(!(0 <= get_pcvar_num(cvar_ncolor) < 3)) set_pcvar_num(cvar_ncolor, 2);
Borrá esto, si el usuario usa valores no permitidos, que se joda.

Listo.

(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió:
Código:
for(i = 1 ; i <= maxplayers ; i++)
Usá get_players.
Listo, pero me podrías explicar por qué es mejor get_players? No entiendo la ventaja...

(14/04/2014, 10:58 PM)Neeeeeeeeeel.- escribió:
Código:
stock registre_plugin(const PLUGIN[], const VERSION[], const AUTHOR[])
{
    static REAL_AUTHOR[10];
    if(equal(AUTHOR, "Mario AR.")) copy(REAL_AUTHOR, 9, AUTHOR);
    else formatex(REAL_AUTHOR, 9, "Mario AR.");
    register_plugin(PLUGIN, VERSION, REAL_AUTHOR);
}
Esto es irrelevante, borralo.
Ok, lo dejaré como comment, ese code me gusta Lengua

(15/04/2014, 02:19 AM)[Anti] escribió: No puedo ver el plugin desde el cel pero si es un print o algo así
"Moderador%s", g_Moderadores > 1? "es" : "");

Tu podes elegir si sale como Moderador, si queres le pones dios, cachero, father, lo que sea y no puedo adivinar si su plural será con S, ES o algun otro. Imagina que el usuario le pone de nombre Señor Dueño, el plural seria Señores Dueños, pero si le pongo agregar una s al final quedaria Señor Dueños. Mal, ¿no?
Responder
#8
(14/04/2014, 09:55 PM)Mario AR. escribió: Moderador -> Moderadors ¿?
Administrador - > Administradors ¿?

Por eso Lengua

PD: Gracias! Sonrisa

Administrador General

moderador

admin

asi estaria mejor ... creo yo'

esta bueno el plugins pero demasiado denso Confundido "mi opinion"

[Imagen: catface3.png]
Cargando...
Responder
#9
(15/04/2014, 04:03 AM)Mario AR. escribió: Los task son para que los admins aparezcan después del texto del chat, si pongo "quien es admin" saldrá asi
Mario AR : quien es admin
1 Admin conectado: Mario AR.

Pero si no estan los task, saldra asi
1 Admin conectado: Mario AR.
Mario AR : quien es admin
No pasaría si usaras register_clcmd.

(15/04/2014, 04:03 AM)Mario AR. escribió: Listo, pero me podrías explicar por qué es mejor get_players? No entiendo la ventaja...
Porque solo recorres lo necesario. En tu código hay una llamada a un módulo en cada iteración, con get_player hacés una sola y reduce la cantidad de iteraciones.

(15/04/2014, 04:03 AM)Mario AR. escribió: Ok, lo dejaré como comment, ese code me gusta Lengua
Es irrelevante el code.
Responder
#10
(15/04/2014, 10:51 AM)Neeeeeeeeeel.- escribió:
(15/04/2014, 04:03 AM)Mario AR. escribió: Los task son para que los admins aparezcan después del texto del chat, si pongo "quien es admin" saldrá asi
Mario AR : quien es admin
1 Admin conectado: Mario AR.

Pero si no estan los task, saldra asi
1 Admin conectado: Mario AR.
Mario AR : quien es admin
No pasaría si usaras register_clcmd.
Acabo de probar y sigue pasando :/ Podria eliminar el task creando una funcion que se registre en los comandos, luego esa funcion haga client_cmd y un comando que muestre los admins, aunque tampoco lo veo muy eficiente... Además, si uso register_clcmd se pierde la opcion de que si un player dice "quiero comprar admin" aparezca la información de contacto, tendria que poner el comando exacto. ¿Es tan malo hookear el say? Whatdone
Responder
#11
@Neel...
no sé porque, pero yo tenía un plugin que utilizaba get_players para obtener los jugadores vivos de los equipos y a veces me salía que habían 0 , no sé porque...
el sv estaba actualizado, el plugin era este:
https://forums.alliedmods.net/showthread...4?t=208594

y era raro la verdad, se ponía en 0 de vez en cuando, pero cuando se ponía se mantenía durante todo el mapa y el siguiente... hasta que reiniciaras el servidor.
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#12
(15/04/2014, 10:51 AM)Neeeeeeeeeel.- escribió: No pasaría si usaras register_clcmd.

Estaría mejor hacerlo de 2 formas? Con register_clcmd y hookeando el say, y el usuario elige qué método usar mediante cvar, claro, explico las ventajas y desventajas de cada uno.
Responder
#13
Lo probe y me anda buen plugin..
(10/10/2014, 06:38 PM)RauliTop escribió:
(10/10/2014, 04:40 PM)ivan escribió: no sabía que se podia poner los iconos gestuales cuando das reputacion negativa/positiva.
ui, peligro...
pronto habrán reputaciones de ivan:
hace muy muy muii DafuqYao mingGenius buenos Thats what she saidtutoriales Proud me encataan Whatever
Responder
#14
Estas usando is_user_connected cuando no es necesario.
Estas usando get_user_flags dos veces en lugar de uno.
Para ahorrar bucles: adminnames[32][33] -> adminnames[32 * 32]

Muy redundante el code :/
Hi [R]ak CrabCrab
Responder
#15
(18/04/2014, 10:30 AM)Milashkasiya escribió: Estas usando is_user_connected cuando no es necesario.
Estas usando get_user_flags dos veces en lugar de uno.
Para ahorrar bucles: adminnames[32][33] -> adminnames[32 * 32]

Muy redundante el code :/

Tienes razón, ya optimicé algo el plugin.
Lo que no entiendo es eso de ahorrar bucles, adminnames[32 * 32] ? Cómo lo haría de esa forma?
Responder
#16
1. Este plugin está pensado para gente que sabe re-compilar un plugin ya que tenés que modificar el SMA para adaptarlo a tus necesidades (completar las constantes de contacto). Definitivamente no es una buena orientación.

2. Esto mas que un plugin nuevo es un update del Admin Check original. Necesitamos ideas originales.
[Imagen: paypalqr.png]
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)