←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

HUD_Info

Zablokowany

Przyjmij wiadro - zdjęcie Przyjmij wiadro 06.10.2013

opis

Plugin wyświetla przez cały czas wiadomość HUD w której znajdziemy:

 

-nazwe forum

-ilość HP

-czas do zmiany mapy

-pozycje w rankingu

 

screenshot

ZQy.png

 

instalacja

standardowa: http://amxx.pl/topic...-pluginow-amxx/

 

konfiguracja

Nazwe forum zmieniamy w HUD_info.sma, dokładniej tutaj:

#define forum "XXX"

 

inne informacje

Dziękuję użytkownikowi: 28276 za lekką pomoc.

 

Załączone pliki

Odpowiedz

  • +
  • -
szelbi - zdjęcie szelbi 06.10.2013

Po co odświeżasz HUD co 0,1 sekundy?

Odpowiedz

Przyjmij wiadro - zdjęcie Przyjmij wiadro 06.10.2013

jesli odswieza HUD co 0.1 sekundy to tak samo odswieza HUD, prawda? 

Odpowiedz

  • +
  • -
Rodzyn - zdjęcie Rodzyn 06.10.2013

Ogólnie fajny plugin :D

Lecz zamiast aby podawać nazwy forum w #define mogłeś zrobić to na cvara wtedy inni użytkownicy twojego pluginu nie musieli by go na nowo kompilować :D

Odpowiedz

  • +
  • -
Misiaczek ;c - zdjęcie Misiaczek ;c 06.10.2013

Nie lepiej tak?:
#include <amxmodx>
#include <amxmisc>
#include <csx>
#include <fakemeta_util>

new Float: gfNextHUDRefresh[33]
new gSyncHUD, gForum, timeleft;
new szBuffer[1][512], szForum[1][32];
public plugin_init() {

	gForum	= register_cvar("hud_forum", "www.amxx.pl");
	
	register_forward(FM_PlayerPostThink, "fwPlayerPostThinkPost", 1);
	
	gSyncHUD = CreateHudSyncObj();
}

public fwPlayerPostThinkPost(id)
{
	if(is_user_bot(id) || gfNextHUDRefresh[id] >= get_gametime())
		return FMRES_IGNORED;
			
	gfNextHUDRefresh[id] = get_gametime() + 1.00;
	
	timeleft = get_timeleft()
	get_pcvar_string(gForum, szForum[0], 31);
	
	static stats[8], body[8], rankpos;
	rankpos = get_user_stats(id, stats, body);
	
	new iLen = 0;
	iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen,  "Forum: %s || Ranking: %d/%d || Koniec mapy: %d:%02d || Zdrowie: %i");
	iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen,  szForum[0], rankpos, get_statsnum(), timeleft / 60, timeleft % 60, get_user_health(id));	
	
	set_hudmessage(0, 255, 0, -1.0, 0.01, 0, 0.0, 0.3, 0.0, 0.0, 2);	
	ShowSyncHudMsg(id, gSyncHUD, szBuffer[0]);
	
	return FMRES_IGNORED;
}

sebul (06.10.2013 20:01):
Ja bym polemizował, czy lepiej. Oczywiście chodzi o samo używanie thinka.
Odpowiedz

Przyjmij wiadro - zdjęcie Przyjmij wiadro 06.10.2013

Ogólnie fajny plugin :D

Lecz zamiast aby podawać nazwy forum w #define mogłeś zrobić to na cvara wtedy inni użytkownicy twojego pluginu nie musieli by go na nowo kompilować :D

myslalem o tym ale kilka osob mi mowilo ze lepiej bedzie w define :)

 

 

Nie lepiej tak?:

#include <amxmodx>
#include <amxmisc>
#include <csx>
#include <fakemeta_util>

new Float: gfNextHUDRefresh[33]
new gSyncHUD, gForum, timeleft;
new szBuffer[1][512], szForum[1][32];
public plugin_init() {

	gForum	= register_cvar("hud_forum", "www.amxx.pl");
	
	register_forward(FM_PlayerPostThink, "fwPlayerPostThinkPost", 1);
	
	gSyncHUD = CreateHudSyncObj();
}

public fwPlayerPostThinkPost(id)
{
	if(is_user_bot(id) || gfNextHUDRefresh[id] >= get_gametime())
		return FMRES_IGNORED;
			
	gfNextHUDRefresh[id] = get_gametime() + 1.00;
	
	timeleft = get_timeleft()
	get_pcvar_string(gForum, szForum[0], 31);
	
	static stats[8], body[8], rankpos;
	rankpos = get_user_stats(id, stats, body);
	
	new iLen = 0;
	iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen,  "Forum: %s || Ranking: %d/%d || Koniec mapy: %d:%02d || Zdrowie: %i");
	iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen,  szForum[0], rankpos, get_statsnum(), timeleft / 60, timeleft % 60, get_user_health(id));	
	
	set_hudmessage(0, 255, 0, -1.0, 0.01, 0, 0.0, 0.3, 0.0, 0.0, 2);	
	ShowSyncHudMsg(id, gSyncHUD, szBuffer[0]);
	
	return FMRES_IGNORED;
}

jest to moj pierwszy plugin..

Odpowiedz

  • +
  • -
DarkGL - zdjęcie DarkGL 10.10.2013

new szBuffer[1][512], szForum[1][32];
new szBuffer[512], szForum[32];

i dalej używasz jednowymiarowych tablic ;)

iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen, "Forum: %s || Ranking: %d/%d || Koniec mapy: %d:%02d || Zdrowie: %i");
    iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen, szForum[0], rankpos, get_statsnum(), timeleft / 60, timeleft % 60, get_user_health(id));

jak już to

iLen += formatex(szBuffer[0][iLen], charsmax(szBuffer[]) - iLen, "Forum: %s || Ranking: %d/%d || Koniec mapy: %d:%02d || Zdrowie: %i" , szForum[0], rankpos, get_statsnum(), timeleft / 60, timeleft % 60, get_user_health(id));
Odpowiedz

  • +
  • -
Daniel`owsky - zdjęcie Daniel`owsky 15.04.2014

Da się jeszcze dodać do tego Godzinę ?


sharkowy (15.04.2014 10:30):
Da się, załóż osobny temat.
Odpowiedz
Zablokowany