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

resetscore z colorchatem - ukrycie komendy w sayu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 Ravenek

    Zaawansowany

  • Użytkownik

Reputacja: 2
Nowy

  • Postów:102
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Rzeszów
Offline

Napisano 21.11.2014 14:08

Witam.

Chodzi mi o to ze mam resetscore z kolorowym napisem "Zresetowales sobie statystyki"

Teraz jest tak jak gracz wpisze komende /rs to na czacie jest

 

"Zresetowales sobie statytyki (to widzi tylko gracz)

/rs (to widza wszyscy)"

 

Chcialbym zrobic ze po wpisaniu komendy /rs jest ona nie widzoczna czyli w czacie jest tylko:

 

"Zresetowales sobie statytyki (to widzi tylko gracz)"

 

Moj resetscore:

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

#define adtime	 600.0 //Default of 10 minuites

new pcvar_Advertise
new pcvar_Display

public plugin_init()
{
	register_plugin("Reset Score", "1.0", "Silenttt")
	
	register_clcmd("say /rs", "reset_score")
	
	//This command by default will be set at 0
	//Change it to 1 in server.cfg if you want
	//A message to be shown to advertise this.
	pcvar_Advertise = register_cvar("sv_rsadvertise", "0")
	//This command by default is also 0
	//Change it to 1 in server.cfg if you want
	//It to show who reset their scores when they do it
	pcvar_Display = register_cvar("sv_rsdisplay", "0")
	
	if(get_cvar_num("sv_rsadvertise") == 1)
	{
		set_task(adtime, "advertise", _, _, _, "b")
	}
}

public reset_score(id)
{
	//These both NEED to be done twice, otherwise your frags wont
	//until the next round
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	
	if(get_pcvar_num(pcvar_Display) == 1)
	{
		new name[33]
		get_user_name(id, name, 32)
		client_print(0, print_chat, "", name)
	}
	else
	{
		ColorChat(id, GREEN,"Zresetowales sobie statystyki")
	}
}

public advertise()
{
	set_hudmessage(255, 0, 0, -1.0, 0.20, 0, 0.2, 12.0)
	show_hudmessage(0, "")
}

public client_putinserver(id)
{
	if(get_pcvar_num(pcvar_Advertise) == 1)
	{
		set_task(10.0, "connectmessage", id, _, _, "a", 1)
	}
}

public connectmessage(id)
{
	if(is_user_connected(id))
	{
	client_print(id, print_chat, "")
	}
}


Użytkownik Ravenek edytował ten post 21.11.2014 14:09

  • +
  • -
  • 0

b_350_20_FFAD41_E98100_000000_591F11.png

IP: 80.72.37.10:27073


#2 Ravenek

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:102
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Rzeszów
Offline

Napisano 21.11.2014 14:45

EDIT (proszę o doklejenie tego posta do tematu)!

 

Juz sobie poradzilem.

Teraz chcialbym zeby mi ktos usunal jedna rzecz, mienowicie w pierwotnej wersji pokazuje tez komunikat dla wszystkich jak ktos sobie wpisze /rs

Ja tylko ukrylem to usuwajac tresc komunikatu, czy ktos by mi go usunal zeby dzialalo prawidlowo?

Zaznaczylem w kodzie o co mi chodzi.

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

#define adtime	 600.0 //Default of 10 minuites

new pcvar_Display

public plugin_init()
{
	register_plugin("Reset Score", "1.0", "Silenttt")
	
	register_clcmd("say /rs", "reset_score")
	
	pcvar_Display = register_cvar("sv_rsdisplay", "0")
}

public reset_score(id)
{
	//These both NEED to be done twice, otherwise your frags wont
	//until the next round
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	
	if(get_pcvar_num(pcvar_Display) == 1)
	{
		new name[33]
		get_user_name(id, name, 32)
		client_print(0, print_chat, "TEN KOMUNIKAT CALKOWICIE USUNAC", name)
	}
	else
	{
		ColorChat(id, GREEN,"Zresetowales sobie statystyki")
	}
	return PLUGIN_HANDLED
}

Użytkownik Ravenek edytował ten post 21.11.2014 15:12

  • +
  • -
  • 0

b_350_20_FFAD41_E98100_000000_591F11.png

IP: 80.72.37.10:27073


#3 Oddaj Wiertarke

    Profesjonalista

  • Użytkownik

Reputacja: 74
Pomocny

  • Postów:164
  • Imię:Matico
  • Lokalizacja:Wieś
Offline

Napisano 21.11.2014 15:16

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

#define adtime	 600.0 //Default of 10 minuites

new pcvar_Display

public plugin_init()
{
	register_plugin("Reset Score", "1.0", "Silenttt")
	
	register_clcmd("say /rs", "reset_score")
	
	pcvar_Display = register_cvar("sv_rsdisplay", "0")
}

public reset_score(id)
{
	//These both NEED to be done twice, otherwise your frags wont
	//until the next round
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	
	if(get_pcvar_num(pcvar_Display) == 1)
	{
		new name[33]
		get_user_name(id, name, 32)
		client_print(0, print_chat, "", name)
	}
	else
	{
		ColorChat(id, GREEN,"Zresetowales sobie statystyki")
	}
	return PLUGIN_HANDLED_MAIN;
}

Łapaj, powinno wszystko działać, jak miodzio :)

Następnym razem gdy będziesz potrzebował taka rzecz, dopisz tylko to na końcu funkcji od komendy.

return PLUGIN_HANDLED_MAIN;

Użytkownik ZbychuX edytował ten post 21.11.2014 15:19

  • +
  • -
  • 1

#4 Ravenek

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:102
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Rzeszów
Offline

Napisano 21.11.2014 16:15

Dziala dziala tylko przeczytaj moj 2 edytowany post, sam do tego doszedlem.

Dodalem  return PLUGIN_HANDLED  i tez dziala, to twoje jakos inaczej dziala?

Przeczytaj moj 2 post okej?

Leci + i tak


  • +
  • -
  • 0

b_350_20_FFAD41_E98100_000000_591F11.png

IP: 80.72.37.10:27073


#5 Oddaj Wiertarke

    Profesjonalista

  • Użytkownik

Reputacja: 74
Pomocny

  • Postów:164
  • Imię:Matico
  • Lokalizacja:Wieś
Offline

Napisano 21.11.2014 16:39

  • PLUGIN_HANDLED przerywa dalsze działanie i dla silnika i dla innych pluginów
  • PLUGIN_HANDLED_MAIN przerywa działanie tylko dla silnika, nie dla innych pluginów

Przykład np.. zarejestrowanie dwóch komend o takiej same nazwie "komenda1" i "komenda1" i PLUGIN_HANDLED zablokuje ten który jest poniżej w plugins i jedno z nich się nie wykona, lecz w plugin_handled_main wykonają się oba, raczej to taki szczegół :).


  • +
  • -
  • 1

#6 Ravenek

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:102
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Rzeszów
Offline

Napisano 21.11.2014 17:23

Czyli dobrze zrobilem?

Pomoz mi tez z tym co napisalem w 2 poscie.


  • +
  • -
  • 0

b_350_20_FFAD41_E98100_000000_591F11.png

IP: 80.72.37.10:27073


#7 Oddaj Wiertarke

    Profesjonalista

  • Użytkownik

Reputacja: 74
Pomocny

  • Postów:164
  • Imię:Matico
  • Lokalizacja:Wieś
Offline

Napisano 21.11.2014 18:00

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <ColorChat>

public plugin_init()
{
	register_plugin("Reset Score", "1.0", "Silenttt")
	register_clcmd("say /rs", "reset_score")
}

public reset_score(id)
{
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	cs_set_user_deaths(id, 0)
	set_user_frags(id, 0)
	ColorChat(id, GREEN,"Zresetowales sobie statystyki")
	return PLUGIN_HANDLED_MAIN;
}

Dobrze, lecz jak już zmieniłeś treść komunikatu na "" to lepiej było usunąć to, tak samo cvar itd..


  • +
  • -
  • 1

#8 Ravenek

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 2
Nowy

  • Postów:102
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Rzeszów
Offline

Napisano 21.11.2014 21:15

O to mi chodzilo dzięki WIELKIE!

Nie umialem tego zrobic.

Wytlumacz mi jeszcze raz prostym jezykiem ta roznice miedzy:return PLUGIN_HANDLED_MAIN;  a return PLUGIN_HANDLED;

I kiedy moge ich uzywac w pluginie.

 


  • +
  • -
  • 0

b_350_20_FFAD41_E98100_000000_591F11.png

IP: 80.72.37.10:27073





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

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