Skocz do zawartości

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

Poprawienie kodu


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

#1 emblaze

    Koniec z cs/amxx

  • Użytkownik

Reputacja: 167
Profesjonalista

  • Postów:973
  • Lokalizacja:Mój steam: emblaze_95
Offline

Napisano 27.09.2009 10:31

Witam.
Pisze taki krótki plugin i oczywiście mam problem...
SMA:
#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Admin Nicks"
#define VERSION "1.0"
#define AUTHOR "emblaze"

#define check get_user_flags(id)
#define HA ADMIN_IMMUNITY
#define A ADMIN_KICK
#define S ADMIN_RESERVATION
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
}
public client_authorized (id) {
	new name[32]
	get_user_name(id, name, 31)
	if(check & HA) {
		client_cmd(id, "name ^"[HeadAdmin] %s^"", name)
	} else if(check & A ) {
		client_cmd(id, "name ^"[Admin] %s^"", name)
	} else if(check & S) {
		client_cmd(id, "name ^"[Slot] %s^"", name)
	}
	return PLUGIN_CONTINUE
}
Plugin ma dodawać adminom, Headadminom, i tym co mają slota dodać przed nick taką jakby range, tylko problem w tym, że po zmianie mapy znowu dodaje to przed nick i wtedy np. jest [Admin] [Admin] emblaze :/ Dałby ktoś rade poprawić, tak aby jak nick bedzie juz zmieniony, to żeby nie zmieniało :/
  • +
  • -
  • 0

#2 wizu

    Godlike

  • Przyjaciel

Reputacja: 224
Profesjonalista

  • Postów:1 217
  • GG:
  • Lokalizacja:Sanok
Offline

Napisano 27.09.2009 11:12

Możesz użyć funkcji contain i sprawdzać, czy dany ciąg znaków jest już w nicku.
  • +
  • -
  • 0

#3 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 27.09.2009 11:55

A jak ci sie podoba cos takiego:
#include <amxmodx>

#define PLUGIN "Admin Nicks"
#define VERSION "1.0"
#define AUTHOR "emblaze"

new flagi[] = {
	ADMIN_IMMUNITY,
	ADMIN_KICK,
	ADMIN_RESERVATION
}
new tagi[][] = {
	"[HeadAdmin]",
	"[Admin]",
	"[Slot]"
}

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
}
public client_authorized (id) {
	new username[32]
	get_user_name(id, username, 31)
	
	new user_flags = get_user_flags(id)
	for (new i; i<sizeof(flagi); i++)
		if (user_flags & flagi[i])
		{
			if (contain(username, tagi[i])==-1)
				client_cmd(id, "name ^"%s %s^"", tagi[i], username)
			break
		}
}

  • +
  • -
  • 0

#4 emblaze

    Koniec z cs/amxx

  • Autor tematu
  • Użytkownik

Reputacja: 167
Profesjonalista

  • Postów:973
  • Lokalizacja:Mój steam: emblaze_95
Offline

Napisano 27.09.2009 11:56

wizu, mógłbyś pokazać w praktyce ? O:)
@edit: Pravulon, sprawdze jak bedę w domu :D
Dobra, dzięki, działa ;D Lecą pomógł :)
  • +
  • -
  • 0




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

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