Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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.

  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Komendy w sayu


  • Zamknięty Temat jest zamknięty
4 odpowiedzi w tym temacie

#1 axexis

    Nowy

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:2
Offline

Napisano 01.11.2008 17:04

Jak wiecie, aby kogoś zbanować/kicknąć (itp) trzeba wejść albo w konsole wpisać amx_komenda albo w amxx menu.
W jednym pluginie jest, ze admin moze wydawac komendy w sayu.

Chciałbym aby po wpisaniu na sayu '/kick afker' została wykonana komenda amx_kick afker i po wpisaniu '/ban cziter 60' wykonal komende 'amx_ban cziter 60'


Pozdro
  • +
  • -
  • 0

#2 MafiaDL

    Naj-Najstarszy Moderator

  • Przyjaciel

Reputacja: 554
Wszechwiedzący

  • Postów:3492
  • GG:
  • Imię:Łukasz
  • Lokalizacja:Warsaw
Offline

Napisano 01.11.2008 17:11

ja uzywam commandmenu :P to coś pod H

przykład wpisywania rcona w say

"1" "Login" "messagemode rcon_password"

kick

"2" "kick" "messagemode amx_kick"

moze to cos ci pomoże ;P
  • +
  • -
  • 0

#3 AcD

    Początkujący

  • Użytkownik

Reputacja: 0
zer0.

  • Postów:13
Offline

Napisano 01.11.2008 18:43

Da się :]

Aby wiedzieć na przyszłość to powiem ci tak.

Wpisujesz w konsoli komendę
rcon amxx cmds

Szukasz komendę którą chcesz zmodyfikować (w twoim wypadku jest amx_kick)
[ 21] amx_kick                 c                console  admincmd.amxx
Czyli już wiemy że komenda amx_kick przynależy do pluginu admincmd.amxx
No więc musimy mieć źródło (ze względu że jest to plugin autorski, mamy go w folderze scripting).
Szukamy admincmd.sma, otwieramy notatnikiem, wciskamy klawisze [Ctrl + F], wpisujemy szukaną frazę jako amx_kick.
Powinniśmy znaleźć

register_concmd("amx_kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")

Zostawiamy ją i pod nią dopisujemy
register_concmd("say /kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
register_concmd("say_team /kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")

Powinno wyglądać to mniejwięcej tak.
register_concmd("amx_kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
register_concmd("say /kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
register_concmd("say_team /kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
register_concmd("amx_ban", "cmdBan", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
(poniżej inne komendy)

Zapisujemy, kompilujemy, kopiujemy z compiled do plugins, restartujemy serwer i działa.


  • +
  • -
  • 0

#4 axexis

    Nowy

  • Autor tematu
  • Użytkownik

Reputacja: 0
zer0.

  • Postów:2
Offline

Napisano 02.11.2008 14:37

Szczerze? Na to też wpadłem.
I co z tego? Skoro jak zarejestrujesz "say /kick" to po wpisaniu "say /kick somebody" tego już nie wychwyci?

Poradziłem sobie w inny sposob.:

#include <amxmodx>
#include <amxmisc>
#define Namelength 32
#define Textlength 192
#pragma tabsize 0
public plugin_init()
{
	register_plugin("Komendy na sayu", "1.0", "GaW")
	register_clcmd("say", "AdminCmd", ADMIN_KICK, " Say !<cmd> <client> or @ng <Color> <Text> or @center <text>")
	return PLUGIN_CONTINUE
}

public AdminCmd(id, level, cid)
{
	new Arg[Namelength+1]
	new Cmd[Textlength+1]
	new Msg[Textlength+1]
	
	read_argv(1, Arg, Namelength)
	read_args(Msg, Textlength)
	
	if (cmd_access(id, level, cid, 2)) {
		if ( Arg[0] == '/' ) {
			remove_quotes(Msg)
			replace(Msg, Textlength, "/", "")
			format(Cmd, Textlength, "amx_%s", Msg)
			client_cmd(id, Cmd)
			return PLUGIN_HANDLED
			}
		  }
	return PLUGIN_CONTINUE
}

Pozdro :)
  • +
  • -
  • 0

#5 R3X

    Godlike

  • Przyjaciel

Reputacja: 2960
Godlike

  • Postów:4247
  • Lokalizacja:Nie
Offline

Napisano 15.12.2008 15:18

Jeśli ktoś potrzebuje czegoś takiego udostępniam mój silnik komend w say`u.
Przystosowany do użycia podczas meczów, ale w prostu sposób można dodawać/usuwać/zmieniać listę komend.

new const g_cmds[][]= {
	"kick",
	"ban",
	"banip",
	"ff",
	"demo",
	"start",
	"restart",
	"stop",
	"map",
	"tag",
	"cancel",
	"warmup",
	"pause",
	"unpause"
};
Każdej komendy z listy używa się w sposób:
say .<komenda>

Załączone pliki


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych