FM_Think за CS_TEAM_SPECTATOR

Ако имате затруднения при изработката/преработката на даден плъгин - пишете тук, ще се опитаме да ви помогнем!
Потребителски аватар

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

FM_Think за CS_TEAM_SPECTATOR

Мнение от kryder11 findBugs » 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 СОТА
Модератор
Модератор
Мнения: 649
Регистриран: 01 ное 2016, 09:46
Местоположение: София
Получена благодарност: 81 пъти
Години: 25
Контакти:

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 findBugs
AMXX Скриптър
AMXX Скриптър
Мнения: 29
Регистриран: 19 окт 2016, 05:58
Местоположение: BehindYou
Се отблагодари: 1 път
Получена благодарност: 11 пъти
Години: 24

FM_Think за CS_TEAM_SPECTATOR

Мнение от kryder11 findBugs » 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

Потребителски аватар

Автор на темата
LayerFort DJBosma
Потребител
Потребител
Мнения: 86
Регистриран: 25 дек 2018, 04:14
Местоположение: Alkmaar
Се отблагодари: 2 пъти
Получена благодарност: 3 пъти
Години: 25
Контакти:

FM_Think за CS_TEAM_SPECTATOR

Мнение от LayerFort DJBosma » 01 яну 2019, 04:51

Едит: Оправих се, благодаря на всички за съдействието. Заключвайте.
Прикачени файлове
zombieplague.inc
(11.46 KиБ) Свален 30 пъти
zombieplague.inc
(11.46 KиБ) Свален 30 пъти
WPMGPrintChatColor.inc
(8.17 KиБ) Свален 26 пъти
WPMGPrintChatColor.inc
(8.17 KиБ) Свален 26 пъти
stock_color_message.inc
(766 Байта) Свален 33 пъти
stock_color_message.inc
(766 Байта) Свален 33 пъти
dhudmessage.inc
(3.41 KиБ) Свален 32 пъти
dhudmessage.inc
(3.41 KиБ) Свален 32 пъти
bitsums.inc
(386 Байта) Свален 33 пъти
bitsums.inc
(386 Байта) Свален 33 пъти
Пиша от избата, защото горе имаме течове..

Заключена

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

Кой е на линия

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