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

Tag przed nickiem


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

#1 PROstyCzlowiek

    Życzliwy

  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 23.07.2011 15:10

Witam Serdecznie !

Prosiłbym o plugin który dodaje tag przed nickiem - nie ma zmieniać nicku. Szukałem, ale to co znalazłem nie sprawdziło się. :'(

Miały by być cztery rodzaje tagów przed nickiem:
1. [Head-Admin]
2. [Admin]
3. [Vip]
4. [Premium]

Na flagę:
1. ADMIN_IMMUNITY
2. ADMIN_KICK
3. ADMIN_LEVEL_G
4. ADMIN_LEVEL_H

Flagi nie są bardzo ważne - jak będzie kod sma to go edytuję.

Znalazłem Tag Przed Nickiem - AMXX.pl: Support AMX Mod X , gdy kod sma który dodał AmD w pierwszym poście edytowałem, żeby dawał tag dla [Head-Admin] działał dobrze. Gdy zrobiłem drugi plugin (ten sam kod), żeby dodawał adminowi [Admin] działał, ale jak admin pisał to wychodził oto dwa razy.

Pozdrawiam serdecznie PROstyCzlowiek!

Dodano 23 lipiec 2011 - 17:00:
Mój drugi problem:

Na serwerze mam cod mod [CoD Nowy] Call of Duty: MW Mod [UPDATE] - AMXX.pl: Support AMX Mod X , zainstalowałem [CoD Nowy] Admin Menu - v 1.5 - AMXX.pl: Support AMX Mod X W cvarach mam ustawiony max lvl - 16.000. Gdy daje lvl przez /codadmin wybieram gracza - wpisuje lvl 15999 to gracz dostaje lvl: -3783 (lvl na minusie). Co zrobić?
  • +
  • -
  • 0

#2 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 840
Czempion

  • Postów:1485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 23.07.2011 17:43

Kiedyś napisałem sobie coś podobnego, ale nie wiem czy ci będzie odpowiadało ( pozmieniałem pod ciebie ) :P

Załączone pliki


  • +
  • -
  • 1

marwit-0.png


#3 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 23.07.2011 19:29

Dziękuję Tobie bardzo :rolleyes:

Użytkownik PROstyCzlowiek edytował ten post 24.07.2011 17:32

  • +
  • -
  • 0

#4 WazzaP

    Super Hero

  • Użytkownik

Reputacja: 129
Zaawansowany

  • Postów:1161
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Łęczna
Offline

Napisano 24.07.2011 10:35

A co jeżeli head admin ma te wszystkie flagi?
  • +
  • -
  • 1

#5 naXe

    Banned

  • Zbanowany

Reputacja: 269
Wszechwidzący

  • Postów:1489
  • GG:
  • Steam:steam
  • Lokalizacja:Kwidzyn
Offline

Napisano 24.07.2011 10:40

Piszę H@ bo ma flagę A

#6 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 17:27

Po do głębszym przetestowaniu coś mi szwankuje ;/ Każdy kto ma jedną z tych flag ma napisane Head-Admin. Co zrobić?
  • +
  • -
  • 0

#7 exexe

    Pomocny

  • Użytkownik

Reputacja: 22
Życzliwy

  • Postów:63
  • Lokalizacja::)
Offline

Napisano 24.07.2011 17:57

Zoptymalizowana wersja w kodzie, sprawdź:
#include <amxmodx>
#include <ColorChat>

new flaga[33];

public plugin_init()
{
register_plugin("Admin Tag", "1.0", "abc")
register_clcmd("say", "handle_say")
}

public client_connect(id) sprawdz(id);
public client_disconnect(id) flaga[id] = 0;

public handle_say(id)
{
if(flaga[id] == 0) return PLUGIN_CONTINUE

flaga[id] = 4
new message[192]
read_args(message, 191)
remove_quotes(message)
trim(message)
if(message[0] == '/' || message[0] == '@' || message[0] == '!' || equal(message, ""))
return PLUGIN_CONTINUE

Wyslij_Wiadomosc(id, message)
return PLUGIN_HANDLED
}

public Wyslij_Wiadomosc(id, message[192])
{
new bool:zyje, dead[9], nick[32], druzyna = 0;
if ( is_user_alive(id) ) zyje = true;
formatex(dead, 8, "* DEAD *");
get_user_name(id, nick, 31)
switch ( get_user_team(id) )
{
case 1: druzyna = 1;
case 2: druzyna = 2;
}

switch ( flaga[id] )
{
case 4: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Head-Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 3: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 2: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Vip] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 1: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Premium] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
}
}

public sprawdz(id)
{
switch ( get_user_flags(id) )
{
case ADMIN_IMMUNITY: flaga[id] = 4;
case ADMIN_KICK: flaga[id] = 3;
case ADMIN_LEVEL_G: flaga[id] = 2;
case ADMIN_LEVEL_H: flaga[id] = 1;
default: flaga[id] = 0;
}
}

Użytkownik abcus edytował ten post 24.07.2011 18:01

  • +
  • -
  • 1

#8 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 840
Czempion

  • Postów:1485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 24.07.2011 18:03

Ups bład Dołączona grafika usuń flaga[id] = 4 nad new message[192]

@abcus, nie może tak byc gdyż znak "?" obsługuje tylko 2 argumenty wiec co będzie sie wysietlalo na specu :P do reszta jest dobrze (napisałbym podobnie gdybym mial wczoraj czas :D)
  • +
  • -
  • 1

marwit-0.png


#9 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:06

Niestety nie działa :confused:
  • +
  • -
  • 0

#10 A może sma?

    Godlike

  • Power User

Reputacja: 539
Wszechwiedzący

  • Postów:1464
  • GG:
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:11

Łap bez buga wersje (testowana - musi działać :D)

PS. MarWit fajny kod^^ Tylko na !@#$ sobie życie utrudniać? :D
Kod nie uwzględnia jednej ważnej rzeczy: specta :]

Załączone pliki


Użytkownik kisiel96 edytował ten post 24.07.2011 18:13

  • +
  • -
  • 1

#11 exexe

    Pomocny

  • Użytkownik

Reputacja: 22
Życzliwy

  • Postów:63
  • Lokalizacja::)
Offline

Napisano 24.07.2011 18:14

@MarWit
Ja też zbyt dużo nie miałem czasu, ale coś tam naskrobałem ;d
To nie ma znaczenia "?" obsługuje więcej niż 2 znaki :)
Na specu, właśnie lipa, bo nie określiłeś, że spec = 3, a mi się tego już nie chciało robić.

@Temat

#include <amxmodx>
#include <ColorChat>

new flaga[33];

public plugin_init()
{
register_plugin("Admin Tag", "1.0", "abc")
register_clcmd("say", "handle_say")
}

public client_connect(id) sprawdz(id);
public client_disconnect(id) flaga[id] = 0;

public handle_say(id)
{
if(flaga[id] == 0) return PLUGIN_HANDLED;

new message[192]
read_args(message, 191)
remove_quotes(message)
trim(message)
if(message[0] == '/' || message[0] == '@' || message[0] == '!' || equal(message, "")) return PLUGIN_HANDLED;

Wyslij_Wiadomosc(id, message)
return PLUGIN_HANDLED
}

public Wyslij_Wiadomosc(id, message[192])
{
new bool:zyje, dead[9], nick[32], druzyna = 0;
if ( is_user_alive(id) ) zyje = true;
formatex(dead, 8, "* DEAD *");
get_user_name(id, nick, 31)
switch ( get_user_team(id) )
{
case 1: druzyna = 1;
case 2: druzyna = 2;
case 3: druzyna = 0
}

switch ( flaga[id] )
{
case 4: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Head-Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 3: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 2: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Vip] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 1: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Premium] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
}
}

public sprawdz(id)
{
switch ( get_user_flags(id) )
{
case ADMIN_IMMUNITY: flaga[id] = 4;
case ADMIN_KICK: flaga[id] = 3;
case ADMIN_LEVEL_G: flaga[id] = 2;
case ADMIN_LEVEL_H: flaga[id] = 1;
default: flaga[id] = 0;
}
}


Teraz powinno hulać, daj znać czy działa.

Użytkownik abcus edytował ten post 24.07.2011 18:16

  • +
  • -
  • 1

#12 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 840
Czempion

  • Postów:1485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 24.07.2011 18:19

Jak dalej nie będzie działać, to jutro napisze to od początku jak najoptymalniej i dodam do działu "Pluginy" (dzisiaj juz nie mam czasu :P).

@kisiel96, uwzględnia speca, myślisz ze czemu stworzyłem zmienna druzyna od razu ustawiana na 0 :P

Użytkownik MarWit edytował ten post 24.07.2011 18:28

  • +
  • -
  • 1

marwit-0.png


#13 A może sma?

    Godlike

  • Power User

Reputacja: 539
Wszechwiedzący

  • Postów:1464
  • GG:
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:47

To napisz coś na spec... Wyświetli się: * DEAD * zamiast spec
Po 2. nie do końca... Dokumentacja AMXX.pl: Core >> amxmodx > get_user_team

Zwracane wartości to:
0 - brak wybranej drużyny
1 - terrorysci
2 - antyterrorysci
3 - obserwator


Plugin uwzględniający speca: Załączony plik  AdminTag.sma   3,16 KB  35 Ilość pobrań
  AdminTag.amxx
(usunąłem uwzględaninie braku wybranej drużyny - admin wtedy i tak nie może pisać :P (no dobra, może ale na cholerę?))

Próbowałem przerobić ten wyżej, ale nie ogarnąłem go :D

Użytkownik kisiel96 edytował ten post 24.07.2011 18:49

  • +
  • -
  • 1

#14 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:50

@MarWit
Ja też zbyt dużo nie miałem czasu, ale coś tam naskrobałem ;d
To nie ma znaczenia "?" obsługuje więcej niż 2 znaki :)
Na specu, właśnie lipa, bo nie określiłeś, że spec = 3, a mi się tego już nie chciało robić.

@Temat


#include <amxmodx>
#include <ColorChat>

new flaga[33];

public plugin_init()
{
register_plugin("Admin Tag", "1.0", "abc")
register_clcmd("say", "handle_say")
}

public client_connect(id) sprawdz(id);
public client_disconnect(id) flaga[id] = 0;

public handle_say(id)
{
if(flaga[id] == 0) return PLUGIN_HANDLED;

new message[192]
read_args(message, 191)
remove_quotes(message)
trim(message)
if(message[0] == '/' || message[0] == '@' || message[0] == '!' || equal(message, "")) return PLUGIN_HANDLED;

Wyslij_Wiadomosc(id, message)
return PLUGIN_HANDLED
}

public Wyslij_Wiadomosc(id, message[192])
{
new bool:zyje, dead[9], nick[32], druzyna = 0;
if ( is_user_alive(id) ) zyje = true;
formatex(dead, 8, "* DEAD *");
get_user_name(id, nick, 31)
switch ( get_user_team(id) )
{
case 1: druzyna = 1;
case 2: druzyna = 2;
case 3: druzyna = 0
}

switch ( flaga[id] )
{
case 4: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Head-Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 3: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Admin] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 2: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Vip] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
case 1: ColorChat(0, druzyna == 0 ? GREY : druzyna ? RED : BLUE, "%s [Premium] ^x04%s : ^x01%s", zyje ? "" : dead, nick, message)
}
}

public sprawdz(id)
{
switch ( get_user_flags(id) )
{
case ADMIN_IMMUNITY: flaga[id] = 4;
case ADMIN_KICK: flaga[id] = 3;
case ADMIN_LEVEL_G: flaga[id] = 2;
case ADMIN_LEVEL_H: flaga[id] = 1;
default: flaga[id] = 0;
}
}


Teraz powinno hulać, daj znać czy działa.


Prawdę mówiąc : to chat nie działa (dla tych z tagiem) :blink:
  • +
  • -
  • 0

#15 A może sma?

    Godlike

  • Power User

Reputacja: 539
Wszechwiedzący

  • Postów:1464
  • GG:
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:53

Skorzystaj ze sprawdzonych rozwiązań :D
Post nr 13: Tag przed nickiem - AMXX.pl: Support AMX Mod X - tutaj nie jest uwzględniany spec :]
Post nr 10: Tag przed nickiem - AMXX.pl: Support AMX Mod X
Zalecam drugą wersję (w sumie to jej nie testowałem, ale powinna działać)

PS. MarWin: na !@#$ sprawdzasz w swoim pluginie, w przypadku gdy gracz nie ma drużyny czy przypadkiem żyje? :D Widziałeś kiedyś gracza, bez drużyny, który biega po planszy? :D

BTW: BARDZO fajny plugin :D

Użytkownik kisiel96 edytował ten post 24.07.2011 18:54

  • +
  • -
  • 1

#16 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 18:58

To napisz coś na spec... Wyświetli się: * DEAD * zamiast spec
Po 2. nie do końca... Dokumentacja AMXX.pl: Core >> amxmodx > get_user_team

Zwracane wartości to:
0 - brak wybranej drużyny
1 - terrorysci
2 - antyterrorysci
3 - obserwator


Plugin uwzględniający speca: Załączony plik  AdminTag.sma   3,16 KB  35 Ilość pobrań
  AdminTag.amxx
(usunąłem uwzględaninie braku wybranej drużyny - admin wtedy i tak nie może pisać :P (no dobra, może ale na cholerę?))

Próbowałem przerobić ten wyżej, ale nie ogarnąłem go :D


Dzięki Ci bardzo !!! :)) Działa :D

Temat do zamknięcia :)


Jednak działa, ale.

Ktoś kto ma taga moze pisac normalnie.

A zwykly uzytkownik (bez taga i bez flagi) musi pisac z "/" np. /witam

Czemu? :angry:

Mam tez pare innych problemów:
http://amxx.pl/topic...-i-lvl-cod-mod/

Użytkownik PROstyCzlowiek edytował ten post 24.07.2011 19:11

  • +
  • -
  • 0

#17 A może sma?

    Godlike

  • Power User

Reputacja: 539
Wszechwiedzący

  • Postów:1464
  • GG:
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 19:17

Ale d*py teraz dałem :D Łap działające (znowu^^): Załączony plik  AdminTag.sma   3,49 KB  63 Ilość pobrań
  AdminTag.amxx

Tak na marginesie to żaden plugin prócz tego nie miał prawa przepuścić wiadomości od zwykłego usera, która nie zaczynała się @ albo / bądź też ! :D
Tylko tego w sma nie rozumiem:
equal(message, ""

Po co sprawdzać czy wiadomość zaczyna się od... No właśnie, od czego? xD

Użytkownik kisiel96 edytował ten post 24.07.2011 19:21

  • +
  • -
  • 2

#18 PROstyCzlowiek

    Życzliwy

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:26
  • Imię:Robert
  • Lokalizacja:Polska
Offline

Napisano 24.07.2011 19:46

Dobra, działa :) >D

Temat do zamknięcia.


  • +
  • -
  • 0

#19 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 840
Czempion

  • Postów:1485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 25.07.2011 14:13

equal(message, ""
To sprawdza czy wiadomosc jest pusta :P

P.S. Jak skończę pisać plugin to wrzuce na forum i dam tu linka.

Użytkownik MarWit edytował ten post 25.07.2011 14:14

  • +
  • -
  • 2

marwit-0.png


#20 byCZUS

    Listonosz

  • Support Team

Reputacja: 743
Guru

  • Postów:459
  • GG:
  • Steam:steam
  • Lokalizacja:GW
Offline

Napisano 25.07.2011 18:31

Krótsza ver. sprawdź sobie:
 /* Script generated by Pawn Studio */

#include <amxmodx>
#include <ColorChat>

new const tagi[][] = {
{ ADMIN_IMMUNITY, "[Head Admin] " },
{ ADMIN_KICK, "[Admin] " },
{ ADMIN_LEVEL_G, "[VIP] " },
{ ADMIN_LEVEL_H, "[Premium] " }
}

public plugin_init() {
register_plugin("TAG", "1.0", "byCZEK");

register_clcmd("say", "handle_say");
}

public handle_say(id) {
new msg[256]; read_args(msg, 191);
new team = get_user_team(id);
new nick[33]; get_user_name(id, nick, 32);
new bool: b = false;

remove_quotes(msg);

for(new i = 0; i < sizeof(tagi); i++) {
if(get_user_flags(id) & tagi[i][0]) {
ColorChat(0, !team ? GREY : team ? RED : BLUE, "%s%s^x04%s: ^x01%s", tagi[i][1], is_user_alive(id) ? "" : "* DEAD * ", nick, msg);
b = true;

break;
}
}
return b ? PLUGIN_HANDLED : PLUGIN_CONTINUE;
}

  • +
  • -
  • 3

Dziękuje, dobranoc.





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

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