←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Jak zrobic podwojna komende?

Zablokowany

Freeway... - zdjęcie Freeway... 15.07.2012

Witam, mam takie proste pytanie. Mianowicie, jak zrobic to, zeby po wpisaniu zarowno /vips jak i /vipy mozna bylo widziec vip-ow online? Mam gotowy plugin, ale jak to edytuje to nie chce mi i tak dzialac. Komende mam tylko na /vipy. Jak dodac do tego jeszcze /vips?
Odpowiedz

  • +
  • -
MarWit - zdjęcie MarWit 15.07.2012

Zapewne wygląda to u Ciebie tak:
register_clcmd( "say /vipy", "__tu_nazwa_handle__" )


By dodać kolejną komendę wystarczy dopisać gdziekolwiek w plugin_init ( pomiędzy klamrami { i } ) kolejne wykonanie funkcji. Pierwszy argument ( czyli ten który cie interesuje ), to treść komendy. Wystarczy że skopiujesz całą funkcję i zmienisz "say /vipy" na "say /vips".

register_clcmd( "say /vips", "__tu_nazwa_handle__" )
Odpowiedz

Nenczoks - zdjęcie Nenczoks 15.07.2012

Bardzo proste.
Jak masz, np.

register_clcmd("say /vips", "funkcja") to robisz:

register_clcmd("say /vipy", "funkcja") - drugi parametr musi być taki sam jak w /vips. On odpowiada za to, do której funkcji przejdziesz, np.

public funkcja(id)
{
///
}
Odpowiedz

Freeway... - zdjęcie Freeway... 15.07.2012

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "Vip - PJR"
#define VERSION "1.0"
#define AUTHOR "PanJ. aka. Roxi"

#define FLAGA ADMIN_LEVEL_H

new maxplayers
new gmsgSayText

static const COLOR[] = "^x04" //green

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_clcmd("say /kupvipa","ShowMotd")
register_clcmd("say", "handle_say")

maxplayers = get_maxplayers()
gmsgSayText = get_user_msgid("SayText")
}

public ShowMotd(id) show_motd(id, "vip.txt")


public handle_say(id) {
new said[192]
read_args(said,192)
if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
set_task(0.1,"print_adminlist",id)
return PLUGIN_CONTINUE
}

public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new contactinfo[256], contact[112]
new id, count, x, len

for(id = 1 ; id <= maxplayers ; id++)
if(is_user_connected(id) && (get_user_flags(id) & FLAGA))
get_user_name(id, adminnames[count++], 31)

len = format(message, 255, "%s VIP'y ONLINE: ",COLOR)
if(count > 0)
{
for(x = 0 ; x < count ; x++)
{
len += format(message[len], 255-len, "%s%s%s ", COLOR, adminnames[x], x < (count-1) ? "^x01, ":"")
if(len > 96 ) {
print_message(user, message)
len = format(message, 255, "%s ",COLOR)
}
}
print_message(user, message)
}
else {
len += format(message[len], 255-len, "Brak VIP'ow Online")
print_message(user, message)
}

get_cvar_string("amx_contactinfo", contact, 63)
if(contact[0])  {
format(contactinfo, 111, "%s Kontakt z Adminem -- %s", COLOR, contact)
print_message(user, contactinfo)
}
return PLUGIN_HANDLED;
}

print_message(id, msg[]) {
message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Czy molgby ktos mi wyrejestrowac w plugin init say, a zamienic tu

public handle_say(id) {
new said[192]
read_args(said,192)
if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
set_task(0.1,"print_adminlist",id)

tak aby byla tylko zarejestrowana komenda, a nie caly say?
Mam dzis utrudnione warunki pracy, wiec sam nie moge tego zrobic ;)
Chodzi o to aby dodac do /vips komende /vipy ;)
Użytkownik Freeway... edytował ten post 15.07.2012 13:41
Odpowiedz

  • +
  • -
MarWit - zdjęcie MarWit 15.07.2012


if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 || contain(said, "/vipy") != -1 )
Odpowiedz

Freeway... - zdjęcie Freeway... 17.07.2012

Tzn?
Odpowiedz

Nenczoks - zdjęcie Nenczoks 17.07.2012

To, że masz podmienić:


if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1

Na to co podał MarWit...
Odpowiedz

Adminek AMXX.PL - zdjęcie Adminek AMXX.PL 17.07.2012

Wiadomość wygenerowana automatycznie

Ten temat został zamknięty przez moderatora.

Powód: Autor zbanowany

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

Z pozdrowieniami,
Zespół AMXX.PL

Odpowiedz
Zablokowany