FM_Think за CS_TEAM_SPECTATOR

Ако имате затруднения при изработката/преработката на даден плъгин - пишете тук, ще се опитаме да ви помогнем!
Аватар
kryder11
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 29
Регистриран на: 19 Окт 2016, 05:58
Местоположение: BehindYou
Се отблагодари: 1 път
Получена благодарност: 11 пъти

FM_Think за CS_TEAM_SPECTATOR

Мнение от kryder11 » 31 Дек 2018, 17:09

Окей ти си го прави както искаш аз ти казвам как е добре да се прави и на това му се казва оптимизация. Глобал таск е когато се слощи флаг "b" и винаги се ползва със HUD съобщения. И мисля че тука е форум за помощ а не форум за спорене. Да мине @OciXCrom и да си каже мнението.

И съобщенията никога не са били и няма да бъдад ентити....

Ако не ти върви така качи ми плъгина и ще ти го оправя веднага.

Код за потвърждение: Избери целия код

public client_putinserver(id)
{
	set_task(1.0, "fw_screenthink", id, _, _, "b")
}

public fw_screenthink(id)
{
	if (!is_user_alive(id))
	{
		id = pev(id, pev_iuser2)
		
		if (!is_user_alive(id)) return;
	}
	
	energy = 100.0
	
	if (cl_nn_has[id] == NANO_YES && ((cl_nn_lowres[id] && cl_nn_counter[id] == 0) || !cl_nn_lowres[id]))
	{
		// Current Mode
		static hud[200]
		
		formatex(hud, 199, "Current Mode:")
		
		switch (cl_nn_mode[id])
		{
			case NANO_STREN: formatex(hud, 199, "%s Strength",hud)
			case NANO_ARMOR: formatex(hud, 199, "%s Armor",hud)
			case NANO_SPEED: formatex(hud, 199, "%s Speed",hud)
			case NANO_CLOAK: formatex(hud, 199, "%s Cloac",hud)
		}
		
		formatex(hud, 199, "%s^nEnergy: (%d%%)", hud, floatround(cl_nn_energy[id] / energy * 100))
		
		for (new x = 0; x < floatround(cl_nn_energy[id] / energy * 20); x++)
			formatex(hud, 199, "%s|", hud)
		
		formatex(hud, 199, "%s^n", hud)
		
		// Health, Armor
		//formatex(hud, 199, "%sHealth: %d Armor: %d", hud, get_user_health(id), get_user_armor(id))
		
		switch (cl_nn_scr_speed[id])
		{
			case SPD_SCR_STILL:  formatex(hud, 199, "%sSpeed: Standing",hud)
			case SPD_SCR_VSLOW:  formatex(hud, 199, "%sSpeed: Very Slow",hud)
			case SPD_SCR_SLOW:   formatex(hud, 199, "%sSpeed: Slow",hud)
			case SPD_SCR_NORMAL: formatex(hud, 199, "%sSpeed: Normal",hud)
			case SPD_SCR_FAST:   formatex(hud, 199, "%sSpeed: Fast",hud)
		}
		
		if (cl_nn_mode[id] == NANO_STREN)
		{
			formatex(hud, 199, "%s^nController:(%d%%)", hud, floatround(cl_nn_controlling[id] / energy * 100))
			
			for (new x = 0; x < floatround(cl_nn_controlling[id] / energy * 20); x++)
			formatex(hud, 199, "%s|", hud)
		}
		
		if (!cl_nn_lowres[id])
		{
			set_hudmessage(NanoScreenColor[cl_nn_mode[id]][0], NanoScreenColor[cl_nn_mode[id]][1], NanoScreenColor[cl_nn_mode[id]][2], 0.025, 0.6, 0, 0.0, 0.2, 0.01)
			ShowSyncHudMsg(id, nd_hud_sync, "%s", hud)
		}
		else
		{
			set_hudmessage(NanoScreenColor[cl_nn_mode[id]][0], NanoScreenColor[cl_nn_mode[id]][1], NanoScreenColor[cl_nn_mode[id]][2], -0.6, 0.5, 0, 0.0, (0.2 + (0.1 * float(NANO_LOW_RES))), 0.0, 0.0)
			ShowSyncHudMsg(id, nd_hud_sync, "%s", hud)
		}
	}
		
	if (cl_nn_counter[id] > 0)
		cl_nn_counter[id] -= 1
	else
		cl_nn_counter[id] = NANO_LOW_RES
	
	set_pev(ent, pev_nextthink, get_gametime() + 0.1)
}
Site: http://www.olympiagaming.es/serversboard.php
Zombie Apocalypse: 54.37.14.249:27015
4Fun: 54.37.14.249:27016

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

FM_Think за CS_TEAM_SPECTATOR

Мнение от hackera457 » 31 Дек 2018, 18:37

kryder11 написа: 31 Дек 2018, 15:25 Никакви щуротии Huehue... За каквоти е register_think ако може да ми обясниш като think се ползва само при entities. За нещо са тези глобални set_task().

FW_Think праща до мотора (engine) горе доло 1000 петиции в секунда на 32 играча ако сървъра е пълен... И да не споменавам че е fakemeta. Това иска да каже: fakemeta -> engine -> преработка -> engine -> fakemeta.
Преди да корегираш, питай. :rolle:
Защото мислещото entity е в пъти по-добре от колкото тасковете, а за това, което иска автора на темата мислещото ентити е най-подходящо. Ти като сетнеш тоя таск момко в client_putinserver(id) какво ще спечелиш? Отговора е нищо. В случая за автора на темата е най-подходящо мислещо ентити, което се постига чрез register_think функцията
Моите плъгини

Код за потвърждение: Избери целия код

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


Аватар
kryder11
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 29
Регистриран на: 19 Окт 2016, 05:58
Местоположение: BehindYou
Се отблагодари: 1 път
Получена благодарност: 11 пъти

FM_Think за CS_TEAM_SPECTATOR

Мнение от kryder11 » 31 Дек 2018, 20:34

Пробвай, немога да тествам защото има 2 includeta който не ги намирам... и само мога да кажа че този код който си добавил е :surrender:
Последно промяна от Huehue на 01 Яну 2019, 19:50, променено общо 1 път.
Причина: Изтрит код, по желание на автора.
Site: http://www.olympiagaming.es/serversboard.php
Zombie Apocalypse: 54.37.14.249:27015
4Fun: 54.37.14.249:27016

Аватар
Dennis
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 177
Регистриран на: 25 Дек 2018, 04:14
Се отблагодари: 4 пъти
Получена благодарност: 10 пъти

FM_Think за CS_TEAM_SPECTATOR

Мнение от Dennis » 01 Яну 2019, 04:51

Едит: Оправих се, благодаря на всички за съдействието. Заключвайте.
Прикачени файлове
zombieplague.inc
(11.46 KiB) Свалено 122 пъти
zombieplague.inc
(11.46 KiB) Свалено 122 пъти
WPMGPrintChatColor.inc
(8.17 KiB) Свалено 121 пъти
WPMGPrintChatColor.inc
(8.17 KiB) Свалено 121 пъти
stock_color_message.inc
(766 Байта) Свалено 120 пъти
stock_color_message.inc
(766 Байта) Свалено 120 пъти
dhudmessage.inc
(3.41 KiB) Свалено 125 пъти
dhudmessage.inc
(3.41 KiB) Свалено 125 пъти
bitsums.inc
(386 Байта) Свалено 130 пъти
bitsums.inc
(386 Байта) Свалено 130 пъти

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Помощ в скриптирането”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта