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

Descriptive Fire in the hole - zmiana koloru nawiasów


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

#1 patryQ1997

    Profesjonalista

  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 02.09.2014 16:23

Siemka,

 

Prosiłbym o przerobienie pluginu, to znaczy zmiana koloru nawiasów "[,]" na zwykły żółty, przykład [HE]

/* AMX Mod X
*   Descriptive 'Fire in the hole!'
*
* (c) Copyright 2006 by VEN
*
* This file is provided as is (no warranties)
*
*     DESCRIPTION
*       Plugin provides additional colored text for "Fire in the hole!" radio chat message.
*       The color and the text is different for each grenade type and can be altered.
*       This will help teammates to get the throwed grenade type and act accordingly.
*       Search for "EDITABLE" mark in the plugin's source code to configure text and color.
*
*     CREDITS
*       Damaged Soul - colored chat text method
*       p3tsin - team color override method
*/

#include <amxmodx>

#define PLUGIN_NAME "Descriptive 'Fire in the hole!'"
#define PLUGIN_VERSION "0.1"
#define PLUGIN_AUTHOR "VEN"

enum grenade {
	GRENADE_HE,
	GRENADE_FLASH,
	GRENADE_SMOKE
}

// EDITABLE: grenade description
new const g_grenade_description[_:grenade][] = {
	" [HE]",
	" [FB]",
	" [SG]"
}

enum color {
	COLOR_NORMAL,
	COLOR_RED,
	COLOR_BLUE,
	COLOR_GRAY,
	COLOR_GREEN
}

// EDITABLE: grenade description text color
new const g_grenade_desccolor[_:grenade] = {
	COLOR_RED,
	COLOR_GRAY,
	COLOR_GREEN
}

new const g_grenade_weaponid[_:grenade] = {
	CSW_HEGRENADE,
	CSW_FLASHBANG,
	CSW_SMOKEGRENADE
}

#define COLORCODE_NORMAL 0x01
#define COLORCODE_TEAM 0x03
#define COLORCODE_LOCATION 0x04

new const g_color_code[_:color] = {
	COLORCODE_NORMAL,
	COLORCODE_TEAM,
	COLORCODE_TEAM,
	COLORCODE_TEAM,
	COLORCODE_LOCATION
}

new const g_color_teamname[_:color][] = {
	"",
	"TERRORIST",
	"CT",
	"SPECTATOR",
	""
}

#define RADIOTEXT_MSGARG_NUMBER 5

enum radiotext_msgarg {
	RADIOTEXT_MSGARG_PRINTDEST = 1,
	RADIOTEXT_MSGARG_CALLERID,
	RADIOTEXT_MSGARG_TEXTTYPE,
	RADIOTEXT_MSGARG_CALLERNAME,
	RADIOTEXT_MSGARG_RADIOTYPE,
}

new const g_required_radiotype[] = "#Fire_in_the_hole"
new const g_radiotext_template[] = "%s (RADIO): Fire in the hole!"

new g_msgid_saytext
new g_msgid_teaminfo

public plugin_init() {
	register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR)

	register_message(get_user_msgid("TextMsg"), "message_text")

	g_msgid_saytext = get_user_msgid("SayText")
	g_msgid_teaminfo = get_user_msgid("TeamInfo")
}

public message_text(msgid, dest, id) {
	if (get_msg_args() != RADIOTEXT_MSGARG_NUMBER || get_msg_argtype(RADIOTEXT_MSGARG_RADIOTYPE) != ARG_STRING)
		return PLUGIN_CONTINUE

	static arg[32]
	get_msg_arg_string(RADIOTEXT_MSGARG_RADIOTYPE, arg, sizeof arg - 1)
	if (!equal(arg, g_required_radiotype))
		return PLUGIN_CONTINUE

	get_msg_arg_string(RADIOTEXT_MSGARG_CALLERID, arg, sizeof arg - 1)
	new caller = str_to_num(arg)
	if (!is_user_alive(caller))
		return PLUGIN_CONTINUE

	new clip, ammo, weapon
	weapon = get_user_weapon(caller, clip, ammo)
	for (new i; i < sizeof g_grenade_weaponid; ++i) {
		if (g_grenade_weaponid[i] == weapon) {
			static text[192]
			new pos = 0
			text[pos++] = g_color_code[COLOR_NORMAL]

			get_msg_arg_string(RADIOTEXT_MSGARG_CALLERNAME, arg, sizeof arg - 1)
			pos += formatex(text[pos], sizeof text - pos - 1, g_radiotext_template, arg)
			copy(text[++pos], sizeof text - pos - 1, g_grenade_description[i])

			new desccolor = g_grenade_desccolor[i]
			if ((text[--pos] = g_color_code[desccolor]) == COLORCODE_TEAM) {
				static teamname[12]
				get_user_team(id, teamname, sizeof teamname - 1)

				if (!equal(teamname, g_color_teamname[desccolor])) {
					msg_teaminfo(id, g_color_teamname[desccolor])
					msg_saytext(id, text)
					msg_teaminfo(id, teamname)

					return PLUGIN_HANDLED
				}
			}

			msg_saytext(id, text)

			return PLUGIN_HANDLED
		}
	}

	return PLUGIN_CONTINUE
}

msg_teaminfo(id, teamname[]) {
	message_begin(MSG_ONE, g_msgid_teaminfo, _, id)
	write_byte(id)
	write_string(teamname)
	message_end()
}

msg_saytext(id, text[]) {
	message_begin(MSG_ONE, g_msgid_saytext, _, id)
	write_byte(id)
	write_string(text)
	message_end()
}

Daje +


  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6033
Godlike

  • Postów:10825
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 02.09.2014 16:48

http://amxx.pl/dokum...a/s11/colorchat


  • +
  • -
  • 1

#3 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 02.09.2014 16:55

No tak tylko powiedz mi jak w tym zastosować colorchat?

new const g_grenade_description[_:grenade][] = {
	" [HE]",
	" [FB]",
	" [SG]"

Ponieważ pamiętam, że się dodawało ColorChat (0, GREEN, "tekst") a tutaj jak to dodać?


  • +
  • -
  • 0

#4 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 625
Wszechmogący

  • Postów:1510
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 02.09.2014 19:13

" ^x01[^x04HE^x01]"
  • +
  • -
  • 0

#5 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 02.09.2014 19:29

" ^x01[^x04HE^x01]"

 

^x04 - kolor zielony.

HE ma być na czerwono, FB białe, SG zielone.


  • +
  • -
  • 0

#6 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 625
Wszechmogący

  • Postów:1510
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 02.09.2014 20:12

To patrz tam gdzie Darkowaty napisał
  • +
  • -
  • 0

#7 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 02.09.2014 20:52

Próbowałem tak:

dodać #include <ColorChat>

	ColorChat(id, RED, " HE^x01]",
	ColorChat(id, GREY, " FB^x01]",
	ColorChat(id, GREEN, " SG^x01]"

Takie mi się błędy pojawiają podczas kompilacji:

descriptive_fire_in_the_hole.sma(34) : error 017: undefined symbol "id"
descriptive_fire_in_the_hole.sma(166) : warning 203: symbol is never used: "ColorSelection"
descriptive_fire_in_the_hole.sma(166) : warning 203: symbol is never used: "FindPlayer"
descriptive_fire_in_the_hole.sma(166) : warning 203: symbol is never used: "ShowColorMessage"
descriptive_fire_in_the_hole.sma(166) : warning 203: symbol is never used: "Team_Info"

  • +
  • -
  • 0

#8 Puchate

    Wszechobecny

  • Użytkownik

Reputacja: 198
Profesjonalista

  • Postów:432
  • Lokalizacja:Polska
Offline

Napisano 03.09.2014 10:00

 

dodać #include <ColorChat>

    ColorChat(id, RED, " HE^x01]",
    ColorChat(id, GREY, " FB^x01]",
    ColorChat(id, GREEN, " SG^x01]"

Nie tak... nie uzywaj tamtego color chatu tylko definicje kolorow przeczytaj jakie sa, nic wiecej.


  • +
  • -
  • 0

#9 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 03.09.2014 13:54

 

 

dodać #include <ColorChat>

    ColorChat(id, RED, " HE^x01]",
    ColorChat(id, GREY, " FB^x01]",
    ColorChat(id, GREEN, " SG^x01]"

Nie tak... nie uzywaj tamtego color chatu tylko definicje kolorow przeczytaj jakie sa, nic wiecej.

 

Nie rozumiem chodzi Ci o to?:

^x01 - kolor żółty
 
^x03 - kolor drużyny
 
^x04 - kolor zielony

Tylko zauważ iż HE i FB ma być koloru czerwonego i białego którego tu nie ma jest tylko "kolor drużyny"


  • +
  • -
  • 0

#10 Puchate

    Wszechobecny

  • Użytkownik

Reputacja: 198
Profesjonalista

  • Postów:432
  • Lokalizacja:Polska
Offline

Napisano 03.09.2014 13:57

Bo nie ma koloru bialego w CS - jest tylko kolor druzyny ktory domyslnie jest zolty, ale kazdy gracz moze ten kolor zmienic sobie.


  • +
  • -
  • 0

#11 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 03.09.2014 14:08

Bo nie ma koloru bialego w CS - jest tylko kolor druzyny ktory domyslnie jest zolty, ale kazdy gracz moze ten kolor zmienic sobie.

 

Źle napisałem chodziło mi o szary kolor (widoczny jako spect)


  • +
  • -
  • 0

#12 Puchate

    Wszechobecny

  • Użytkownik

Reputacja: 198
Profesjonalista

  • Postów:432
  • Lokalizacja:Polska
Offline

Napisano 03.09.2014 14:17

 

Bo nie ma koloru bialego w CS - jest tylko kolor druzyny ktory domyslnie jest zolty, ale kazdy gracz moze ten kolor zmienic sobie.

 

Źle napisałem chodziło mi o szary kolor (widoczny jako spect)

 

To niestety wiaze sie juz z modyfikacja glebsza pluginu, bo kolor szary na spect to kolor druzyny i aby wyswietlic ten kolor dla gracza tt/ct to trzeba zmienic na chwile druzyne...

 

Trzeba zmodyfikowac plugin do uzycia biblioteki od kolorow.


  • +
  • -
  • 1

#13 patryQ1997

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 5
Nowy

  • Postów:204
  • GG:
  • Imię:Patryk
  • Lokalizacja:Czeladź
Offline

Napisano 03.09.2014 14:29

Dobra to nie na mój poziom bawić się w takie coś, temat do zamknięcia.


  • +
  • -
  • 0

#14 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 625
Wszechmogący

  • Postów:1510
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 03.09.2014 14:37

To nie powinno być trudne
Wystarczyłoby zrobić coś takiego:
static team;
team = cs_get_user_team(id);
cs_set_user_team(id, CS_TEAM_SPECTATOR);
Tutaj wyświetla się wiadomość Colorchat;
cs_set_user_team(id, team);

  • +
  • -
  • 0

#15 radim

    Godlike

  • Moderator

Reputacja: 932
Master

  • Postów:2725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 03.09.2014 17:06

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !





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

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