Raised This Month: $ Target: $400
 0% 

Sistema de grupos para pug/yap u otro


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
Roccoxx
AlliedModders Donor
Join Date: Jan 2012
Location: Argentina
Old 09-28-2013 , 15:42   Sistema de grupos para pug/yap u otro
#1

Bueno he visto varios temas pidiendo lo mismo y comentarios pidiendo lo mismo y se me dio la gana de hacer uno y aportarlo, no encontre bugs pero tampoco pude probar bien la parte de .accept o .add, tenia pensado postearlo en la seccion ingles pero bueno, seguramente lo hare despues, el plugin lo hice hace mucho para uno de venezuela y me dio permiso de subirlo.

aca lo tienen disfrutenlo:

Code:
#include <amxmodx> #include <amxmisc>  /*.group <nombre> - Crear un grupo con el tag especificado .add <nombre> - Invitar a el jugador con el tag especifico del grupo .accept <nombre> - Unirse a un grupo .leavegroup - Dejar el grupo que se encuentra actualmente */ #define MAX_CHR 14 // max group name lenght new g_grupo[33], g_nombre[33][33], g_groupname[33][MAX_CHR] public plugin_init(){     register_plugin("Group", "1.0", "Roccoxx")     register_clcmd("say", "hook_say") } public hook_say(id){     if(!is_user_connected(id)) return PLUGIN_HANDLED;         new say[40]     read_args(say, charsmax(say))         if(equal(say, "")) return PLUGIN_HANDLED;         remove_quotes(say[0])         if(say[0] == '.'){          if(say[1] == 'g' && say[2] == 'r' && say[3] == 'o' && say[4] == 'u' && say[5] == 'p')         {             if(g_grupo[id]){                 client_print(id, print_center, "Ya tienes un grupo")                 return PLUGIN_HANDLED;             }                         replace_all(say, charsmax(say), ".group ", "")             replace_all(say, charsmax(say), ".group", "")                         if(strlen(say) > MAX_CHR) client_print(id, print_center, "Nombre muy largo")             else if(equal(say, "")) client_print(id, print_center, "No escribiste Nada")             else{                 ChatColor(id, "!gFelicitaciones !teamCreaste el grupo: !y%s",say)                 formatex(g_groupname[id], charsmax(g_groupname), say)                 format(say, charsmax(say), "[%s] ", say)                 add(say ,charsmax(say), g_nombre[id])                 set_user_info(id, "name", say);                 client_cmd(id, "name ^"%s^"", say)                                 set_task(3.0, "tiene_grupo", id)             }             return PLUGIN_HANDLED;         }         else if(say[1] == 'a' && say[2] == 'd' && say[3] == 'd'){             if(!g_grupo[id]){                 client_print(id, print_center, "No tienes un grupo")                 return PLUGIN_HANDLED;             }                         replace_all(say, charsmax(say), ".add ", "")             replace_all(say, charsmax(say), ".add", "")                         new player = cmd_target(id, say, 8);                         if(!player) client_print(id, print_center, "Jugador no encontrado")             else if(g_grupo[player]) client_print(id, print_center, "El Jugador Ya pertenece a un Grupo")             else{                 static name[33]; get_user_name(id, name, charsmax(name))                             ChatColor(id, "!teamInvitacion enviada a !y%s",say)                 ChatColor(player, "!g%s !yquiere invitarte a su grupo!",name)             }                         return PLUGIN_HANDLED         }         else if(say[1] == 'a' && say[2] == 'c' && say[3] == 'c' && say[4] == 'e' && say[5] == 'p' && say[6] == 't'){             replace_all(say, charsmax(say), ".accept ", "")             replace_all(say, charsmax(say), ".accept", "")                         new player = cmd_target(id, say, 8);                         if(!player) client_print(id, print_center, "Jugador no encontrado")               else if(!g_grupo[player]) client_print(id, print_center, "El Jugador no tiene un Grupo")             else{                 static name[33]; get_user_name(id, name, charsmax(name))                             ChatColor(id, "!teamFelicitaciones te uniste al grupo de !y%s",say)                 ChatColor(player, "!g%s !ySe ha unido a tu grupo!",name)                                 formatex(g_groupname[id], charsmax(g_groupname), g_groupname[player])                 format(say, charsmax(say), "[%s] ", g_groupname[player])                 add(say ,charsmax(say), g_nombre[id])                 set_user_info(id, "name", say);                 client_cmd(id, "name ^"%s^"", say)                                 set_task(3.0, "tiene_grupo", id)             }                         return PLUGIN_HANDLED         }         else if(say[1] == 'l' && say[2] == 'e' && say[3] == 'a' && say[4] == 'v' && say[5] == 'e' && say[6] == 'g'         && say[7] == 'r' && say[8] == 'o' && say[9] == 'u' && say[10] == 'p'){             if(!g_grupo[id]){                 client_print(id, print_center, "No perteneces a ningun grupo")                 return PLUGIN_HANDLED;             }                         g_grupo[id] = false             return PLUGIN_HANDLED;         }     }         return PLUGIN_CONTINUE } public tiene_grupo(id){     g_grupo[id] = true     get_user_name(id, g_nombre[id], charsmax(g_nombre)) } public client_putinserver(id){     g_grupo[id] = false     get_user_name(id, g_nombre[id], charsmax(g_nombre)) } public client_infochanged(id) {     new sNewName[33]     get_user_info(id, "name", sNewName, charsmax(sNewName));     if(!equali(sNewName, g_nombre[id]) && g_grupo[id])     {         set_user_info(id, "name", g_nombre[id]);         client_cmd(id, "name ^"%s^"", g_nombre[id]);         ChatColor(id, "!team Atencion: No podes cambiarte de nombre si perteneces a un !ggrupo!!!")     }     else if(!equali(sNewName, g_nombre[id])) formatex(g_nombre[id], charsmax(g_nombre), sNewName) } stock ChatColor(const id, const input[], any:...) {     new count = 1, players[32];     static msg[191];     vformat(msg, 190, input, 3);         replace_all(msg, 190, "!g", "^4");     replace_all(msg, 190, "!y", "^1");     replace_all(msg, 190, "!team", "^3");     replace_all(msg, 190, "!team2", "^0");         if (id) players[0] = id; else get_players(players, count, "ch");     {         for (new i = 0; i < count; i++)         {             if (is_user_connected(players[i]))             {                 message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);                 write_byte(players[i]);                 write_string(msg);                 message_end();             }         }     } }
__________________
Tutorials here (Spanish)

Like as another Pijudo said: "Tired and retired"

Last edited by Roccoxx; 09-28-2013 at 15:51.
Roccoxx is offline
Send a message via MSN to Roccoxx
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 08:50.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode