Jump to content
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek

Recommended Posts

Cześć mam pytanko w którym miejscu mogę zmienić miejsce wyświetlania tekstu w sensie "koordynaty" jeśli tak to moge nazwać

 

Spoiler

#pragma semicolon 1
#pragma newdecls required

#include <sourcemod>
#include <cstrike> 
#include <sdktools>
#include <clientprefs>

public Plugin myinfo = 
{
	name = "HUDv2",
	author = "xSLOW",
	description = "Server Hud",
	version = "1.4"
};

enum {
	RED = 0,
	GREEN,
	BLUE
}

ConVar g_cvarMessage1;
ConVar g_cvarMessage2;
ConVar g_cvarMessage3;
ConVar g_cvarSlots;
ConVar g_cvarHUDColors;

Handle g_hHUDv2Cookie;
bool g_bIsHudEnabled[MAXPLAYERS + 1];
int g_iHUDColors[3];


public void OnPluginStart()
{
	g_hHUDv2Cookie = RegClientCookie("HudCookie_V2", "HudCookie_V2", CookieAccess_Protected);

	g_cvarMessage1 = CreateConVar("sm_hud_message1", "MESSAGE 1", "Top-Left first message", FCVAR_NOTIFY);
	g_cvarMessage2 = CreateConVar("sm_hud_message2", "MESSAGE 2", "Top-Left second message", FCVAR_NOTIFY);
	g_cvarMessage3 = CreateConVar("sm_hud_message3", "[ MESSAGE 3 ]", "Top-Mid third message", FCVAR_NOTIFY);
	g_cvarSlots = CreateConVar("sm_hud_slots", "32", "Number of server's slots", FCVAR_NOTIFY);
	g_cvarHUDColors = CreateConVar("sm_hud_rgb", "230,57,0", "RGB of the text. You can get more colors from https://www.hexcolortool.com/", FCVAR_NOTIFY);

	AutoExecConfig(true, "HUDv2");

	UpdateHUDColor();
	g_cvarHUDColors.AddChangeHook(cvarChanged_HUDColor);

	CreateTimer(1.0, TIMER, _, TIMER_REPEAT);

	RegConsoleCmd("hud", Command_hud);
}

public void OnClientPutInServer(int client)
{
	g_bIsHudEnabled[client] = true;
	char buffer[64];
	GetClientCookie(client, g_hHUDv2Cookie, buffer, sizeof(buffer));
	if(StrEqual(buffer,"0"))
		g_bIsHudEnabled[client] = false;
}

public void cvarChanged_HUDColor(ConVar convar, const char[] oldValue, const char[] newValue) {
	UpdateHUDColor();
}

public Action Command_hud(int client, int args) 
{
	if(g_bIsHudEnabled[client])
	{
		PrintToChat(client, " ★ \x02HUD is now off");
		g_bIsHudEnabled[client] = false;
		SetClientCookie(client, g_hHUDv2Cookie, "0");
	}
	else
	{
		PrintToChat(client, " ★ \x04HUD is now on");
		g_bIsHudEnabled[client] = true;
		SetClientCookie(client, g_hHUDv2Cookie, "1");
	}
}


public Action TIMER(Handle timer, any client)
{
	int clientCount = 0, iTimeleft;
	char sTime[64], szTime[30], iMessage1[32], iMessage2[32], iMessage3[32], MapTimeLeft[128];

	for (int i = 1; i <= MaxClients; i++)
	{
		if (IsClientInGame(i) && !IsFakeClient(i))
			++clientCount;
	}

	g_cvarMessage1.GetString(iMessage1, sizeof(iMessage1));
	g_cvarMessage2.GetString(iMessage2, sizeof(iMessage2));
	g_cvarMessage3.GetString(iMessage3, sizeof(iMessage3));

	GetMapTimeLeft(iTimeleft);
	FormatTime(szTime, sizeof(szTime), "%H:%M:%S", GetTime());
	FormatTime(sTime, sizeof(sTime), "%M:%S", iTimeleft);

	for(int i = 1; i <= MaxClients; i++)
	{
		if(g_bIsHudEnabled[i] && IsClientValid(i))
		{
			char iBuffer[1024];
			if(!(iTimeleft > 0))
				Format(MapTimeLeft,sizeof(MapTimeLeft), "Last Round");
			else
				Format(MapTimeLeft,sizeof(MapTimeLeft), "%s", sTime);

			Format(iBuffer, sizeof(iBuffer),"%s\n%s\nGraczy: %d/%d\nDo konca: %s\nZegar: %s",iMessage1, iMessage2, clientCount, g_cvarSlots.IntValue, MapTimeLeft, szTime);
			SetHudTextParams(0.0, 0.0, 1.02, g_iHUDColors[RED], g_iHUDColors[GREEN], g_iHUDColors[BLUE], 255, 0, 0.0, 0.0, 0.0);  
			ShowHudText(i, -1, iBuffer);  

			SetHudTextParams(-1.0, 0.075, 1.02, g_iHUDColors[RED], g_iHUDColors[GREEN], g_iHUDColors[BLUE], 255, 0, 0.0, 0.0, 0.0);  
			ShowHudText(i, -1, iMessage3);  
		}
	}
}

bool IsClientValid(int client)
{
    return (0 < client <= MaxClients) && IsClientInGame(client) && !IsFakeClient(client);
}

void UpdateHUDColor() {
	char buffer[16];
	g_cvarHUDColors.GetString(buffer, sizeof(buffer));

	char buffer2[3][4];
	ExplodeString(buffer, ",", buffer2, sizeof(buffer2), sizeof(buffer2[]));
	
	for (int i = 0; i < 3; i++) {
		g_iHUDColors[i] = StringToInt(buffer2[i]);
	}
}

 

 

Share this post


Link to post
Share on other sites

SetHudTextParams(0.0, 0.0, 1.02, g_iHUDColors[RED], g_iHUDColors[GREEN], g_iHUDColors[BLUE], 255, 0, 0.0, 0.0, 0.0);

SetHudTextParams(-1.0, 0.075, 1.02, g_iHUDColors[RED], g_iHUDColors[GREEN], g_iHUDColors[BLUE], 255, 0, 0.0, 0.0, 0.0);

 

Dwie pierwsze wartości odpowiadają za pozycję na ekranie. Pamiętaj, że musi to być wartość float, pomocny będzie również mój plugin do łatwego dostosowania pozycji hud'a 

 

  • Lubię to! 1

Share this post


Link to post
Share on other sites

prawy gorny róg zawsze nie działał? bo przy zmianie miejsca wyświetlania na prawą strone tekst znika

image.thumb.png.dfb050d4191a4863124d553fcd4e76d4.png

Share this post


Link to post
Share on other sites
1 godzinę temu, Shadow napisał:

prawy gorny róg zawsze nie działał? bo przy zmianie miejsca wyświetlania na prawą strone tekst znika

image.thumb.png.dfb050d4191a4863124d553fcd4e76d4.png

Pokaż kod pluginu... 

Mamy Ci z fusów wróżyć? 

  • Haha! 2
  • Przykro mi 1

Share this post


Link to post
Share on other sites

@VestSmart z fusów..... u góry kolega podał plugin do zarzadzania hudem wiec w obydwu pluginach to i tak nie działało więc mhmh no a jakbyś czytał temat to byś zobaczył kolego 😉 więc zajrzyj na samą góre 😉

 

EDIT: nie mogę zedytować więc @Vasto_Lorde jeśli możesz wsadzisz to tam? czy ma zostać jako drugi post?

hmm po prostu zmienialem to

 

SetHudTextParams(0.0, 0.0, 1.02, g_iHUDColors[RED], g_iHUDColors[GREEN], g_iHUDColors[BLUE], 255, 0, 0.0, 0.0, 0.0);

image.png.a8e0b7f52782a8c5e50692f8363a2597.png

  • Przykro mi 1
By Vasto_Lorde,

Myślę że chodziło mu o to jak poprawiłeś ten plugin

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

Nasza historia

Na początku byliśmy małą grupą internetowych znajomych, którzy stwierdzili, że potrzebne jest solidne forum, na którym znajdą się ludzie z dużą wiedzą programistyczną ukierunkowaną na CS:GO. Pomysł powstał na początku 2018 roku, a parę miesięcy później, 19 kwietnia, powstała ta strona internetowa. Jako alternatywna odpowiedź na inne tego typu miejsca, poważnie podeszliśmy do tematu, najpierw tłumacząc angielską dokumentację SourceMod'a na język polski, a potem pisząc rozległe poradniki i wypełniając forum najpotrzebniejszymi rzeczami dla właścicieli serwerów i programistów. Cała nasza Ekipa jest dumna z pracy jaką w to włożyliśmy i cieszymy się że zbierają się wokół nas zarówno ludzie znający tematy sourcepawn'a i konfiguracji, jak i również nowe twarze w tym "biznesie", którym z chęcią niesiemy wiedzę oraz pomoc w rozwiązywaniu problemów.

Największe modyfikacje serwerowe

×
×
  • Create New...