Добавяне на цветни съобщения в плъгин

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
Bareta21
Извън линия
Потребител
Потребител
Мнения: 15
Регистриран на: 04 Дек 2016, 14:24

Добавяне на цветни съобщения в плъгин

Мнение от Bareta21 » 06 Дек 2016, 19:51

Може ли да ми едитнете плъгина така че да го изкарва цветно, а не жълто както е сега.

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

#include <amxmodx> 
#include <fun>
#include <cstrike>
#include <colorchat>

#define TS 1
#define CTS 2

new roundcount = 0
new losingteam = 0
new losingraw = 0
new ct_score = 0 
new terro_score = 0 
new typaide = 0 
new cvar_losingraw
new cvar_typaide
new aide_dollar
new txt_team[3][] = {"no team","Terrorist","Counter-Terrorist"}

public plugin_init()
{ 
	register_plugin("TeamAdvantage","0.1","VinZ**")
	//register_event("ResetHUD", "new_round", "b")
	register_event("HLTV", "new_round", "a", "1=0", "2=0")
	register_event("TextMsg","game_restart","a","1=4","2&#Game_C","2&#Game_w")
	register_event("SendAudio","team_score","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")
	register_cvar("tadv_mode","1",0)
	register_cvar("tadv_losingraw","1",0)
	register_cvar("tadv_dollarraw","1000",0)
}

public team_score()
{ 
	new team[64], oldlosingteam = losingteam
	roundcount++
	typaide = 0
	cvar_typaide = get_cvar_num("tadv_mode")
	cvar_losingraw = get_cvar_num("tadv_losingraw")
	read_data(2,team,63) 
	if(containi(team,"ctwin")!=-1)
	{ 
		ct_score++
		losingteam = TS
	}
	else if(containi(team,"terwin")!=-1)
	{
		terro_score++ 
		losingteam = CTS
	}
	else if(containi(team,"draw")!=-1)
	{ 
		losingteam = oldlosingteam
	} 
	
	new teamwonbyscore = wonbyscore(ct_score,terro_score)
	if(teamwonbyscore==0 || teamwonbyscore==losingteam)
	{ 
		losingraw = 0
		losingteam = 0
	}
	
	if(oldlosingteam == losingteam) losingraw++
	else if(oldlosingteam != losingteam) losingraw = 0
		
	
	if((losingraw + 1) >= cvar_losingraw && cvar_typaide != 0 && losingteam != 0)
	{
		typaide = cvar_typaide
		if(typaide == 1)
		{
			aide_dollar = minval(get_cvar_num("tadv_dollarraw") * ((losingraw + 2) - cvar_losingraw),16000)   
			client_print(0,print_chat,"^1[^4Dark-Gaming^1] %s Lost and get ^3%d$^1.",txt_team[losingteam],aide_dollar)
		}
	}
	return PLUGIN_CONTINUE 
}


public game_restart()
{
	roundcount = 0
	losingteam = 0
	losingraw = 0
	ct_score = 0 
	terro_score = 0 
	typaide = 0
}


public new_round()
{
	if(typaide == 0) return PLUGIN_CONTINUE
	new playercount, Players[32]
	get_players(Players, playercount)
	for(new i=0;i<playercount;i++)
	{
		new id = Players[i]
		if(get_user_team(id) == losingteam)
		{
			new parm[2]
			parm[0] = id
			set_task(0.5,"donneaide",id+3213,parm,2)
		}
	}    
	return PLUGIN_CONTINUE
}


public donneaide(parm[])
{
	new id = parm[0]
	if(!is_user_connected(id)) return 
	
	if(typaide == 1)
	{
		cs_set_user_money(id,min(aide_dollar + cs_get_user_money(id),16000))
	}
}

public minval(a,b)
{
	if(a < b)
	{
		return a
	}
	else if (b < a)
	{
		return b
	}
	return PLUGIN_CONTINUE;
}

public wonbyscore(ct,terro)
{
	if(ct > terro)
	{
		return CTS
	}
	else if(terro > ct)
	{
		return TS
	}
	return PLUGIN_CONTINUE; 
	}
А може ли и slay losers , така да го едитнете, че да не излиза примерно [ark-Gaming], а да го изкарва цялото.

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

#include <amxmodx>

enum {
	TARGET_SAVED = 1,
	TARGET_BOMBED,
	DEFUSED_THE_BOMB
}

new g_what_team_kill, g_double_chat_bug

public plugin_init()
{
	register_plugin("Slay Losers","1.0","MHz")
	
	register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
	register_logevent("logevent_round_end", 2, "1=Round_End")

	register_logevent("logevent_no_wins", 6, "3=Target_Saved")
	register_logevent("logevent_bomb_explode", 6, "3=Target_Bombed")
	register_logevent("logevent_bomb_defused", 3, "2=Defused_The_Bomb")
	
	set_task(0.5, "event_round_start")
}

public event_round_start()
{
	g_what_team_kill = 0
	g_double_chat_bug = false
}

public logevent_round_end()
{
	if (g_double_chat_bug)
		return;
	
	g_double_chat_bug = true
	
	switch (g_what_team_kill)
	{
		case TARGET_SAVED:
		{
			ColorMessage(0, "^x01[^x04Dark-Gaming^x01]^x03 Terrorists ^x04will be slayed [^x01Bomb not planted^x04]^x01.")
			
			new juc[32], numjuc
			get_players(juc, numjuc, "ae", "TERRORIST") // get only alive ter's
			for(new n = 0; n < numjuc; n++)
			{
				user_kill(juc[n], 1)
			}
		}
		case TARGET_BOMBED:
		{
			ColorMessage(0, "^x01[^x04Dark-Gaming^x01]^x03 CT ^x04get slayed [^x01No defused a bomb!^x04]")
			
			new juc[32], numjuc
			get_players(juc, numjuc, "ae", "CT") // get only alive ct's
			for(new n = 0; n < numjuc; n++)
			{
				user_kill(juc[n], 1)
			}
		}
		case DEFUSED_THE_BOMB:
		{
			ColorMessage(0, "^x01[^x04Dark-Gaming^x01]^x03 Terrorists ^x04Loose [^x01CT's has Defused a bomb.^x04]")
			
			new juc[32], numjuc
			get_players(juc, numjuc, "ae", "TERRORIST") // get only alive ter's
			for(new n = 0; n < numjuc; n++)
			{
				user_kill(juc[n], 1)
			}
		}
	}
}

public logevent_no_wins()
{
	g_what_team_kill = TARGET_SAVED
}

public logevent_bomb_explode()
{
	g_what_team_kill = TARGET_BOMBED
}

public logevent_bomb_defused()
{
	g_what_team_kill = DEFUSED_THE_BOMB
}


    stock ColorMessage(const id, const input[], any:...){
        new count = 1, players[32];
        static msg[ 191 ];
        vformat(msg, 190, input, 3);
        if (id) players[0] = id; else get_players(players , count , "ch"); {
            for (new i = 0; i < count; i++){
                if (is_user_connected(players[i])){
                    message_begin(MSG_ONE_UNRELIABLE , get_user_msgid("SayText"), _, players[i]);
                    write_byte(players[i]);
                    write_string(msg);
                    message_end();}}}
    }
Последно промяна от OciXCrom на 06 Дек 2016, 21:49, променено общо 1 път.
Причина: Преместена тема и редактирано заглавие! Под-разделите не са създадени за украса!

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Преправка на плъгин

Мнение от OciXCrom » 06 Дек 2016, 21:48

1.

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

client_print(0,print_chat,"^1[^4Dark-Gaming^1] %s Lost and get ^3%d$^1.",txt_team[losingteam],aide_dollar)
=>

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

ColorChat(0,TEAM_COLOR,"^1[^4Dark-Gaming^1] %s Lost and get ^3%d$^1.",txt_team[losingteam],aide_dollar)
2.

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

#include <amxmodx>

enum {
   TARGET_SAVED = 1,
   TARGET_BOMBED,
   DEFUSED_THE_BOMB
}

new g_what_team_kill, g_double_chat_bug
new g_msgSayText
new const g_szPrefix[] = "^1[^4Dark-Gaming^1]"

public plugin_init()
{
   register_plugin("Slay Losers","1.0","MHz")
   
   register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
   register_logevent("logevent_round_end", 2, "1=Round_End")

   register_logevent("logevent_no_wins", 6, "3=Target_Saved")
   register_logevent("logevent_bomb_explode", 6, "3=Target_Bombed")
   register_logevent("logevent_bomb_defused", 3, "2=Defused_The_Bomb")
   
   g_msgSayText = get_user_msgid("SayText")
   
   set_task(0.5, "event_round_start")
}

public event_round_start()
{
   g_what_team_kill = 0
   g_double_chat_bug = false
}

public logevent_round_end()
{
   if (g_double_chat_bug)
      return;
   
   g_double_chat_bug = true
   
   switch (g_what_team_kill)
   {
      case TARGET_SAVED:
      {
         ColorChat(0, "^3Terrorists ^4will be slayed [^1Bomb not planted^4]^1.")
         
         new juc[32], numjuc
         get_players(juc, numjuc, "ae", "TERRORIST") // get only alive ter's
         for(new n = 0; n < numjuc; n++)
         {
            user_kill(juc[n], 1)
         }
      }
      case TARGET_BOMBED:
      {
         ColorChat(0, "^3CT ^4get slayed [^1No defused a bomb!^4]")
         
         new juc[32], numjuc
         get_players(juc, numjuc, "ae", "CT") // get only alive ct's
         for(new n = 0; n < numjuc; n++)
         {
            user_kill(juc[n], 1)
         }
      }
      case DEFUSED_THE_BOMB:
      {
         ColorChat(0, "^3Terrorists ^4Loose [^1CT's has Defused a bomb.^4]")
         
         new juc[32], numjuc
         get_players(juc, numjuc, "ae", "TERRORIST") // get only alive ter's
         for(new n = 0; n < numjuc; n++)
         {
            user_kill(juc[n], 1)
         }
      }
   }
}

public logevent_no_wins()
{
   g_what_team_kill = TARGET_SAVED
}

public logevent_bomb_explode()
{
   g_what_team_kill = TARGET_BOMBED
}

public logevent_bomb_defused()
{
   g_what_team_kill = DEFUSED_THE_BOMB
}

ColorChat(const id, const szInput[], any:...)
{
    new iPlayers[32], iCount = 1
    static szMessage[191]
    vformat(szMessage, charsmax(szMessage), szInput, 3)
    format(szMessage[0], charsmax(szMessage), "%s %s", g_szPrefix, szMessage)
    
    replace_all(szMessage, charsmax(szMessage), "!g", "^4")
    replace_all(szMessage, charsmax(szMessage), "!n", "^1")
    replace_all(szMessage, charsmax(szMessage), "!t", "^3")
    
    if(id)
        iPlayers[0] = id
    else
        get_players(iPlayers, iCount, "ch")
    
    for(new i; i < iCount; i++)
    {
        if(is_user_connected(iPlayers[i]))
        {
            message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
            write_byte(iPlayers[i])
            write_string(szMessage)
            message_end()
        }
    }
}

Аватар
Irie
Извън линия
Мнения: 49
Регистриран на: 05 Ное 2016, 20:01
Получена благодарност: 2 пъти

Re: Добавяне на цветни съобщения в плъгин

Мнение от Irie » 07 Дек 2016, 22:53

Дава грешка при компилиране на slay losers плъгина.

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Re: Добавяне на цветни съобщения в плъгин

Мнение от OciXCrom » 08 Дек 2016, 00:12

Би било прекрасно да споделиш каква грешка дава. При мен няма такава.

Аватар
Irie
Извън линия
Мнения: 49
Регистриран на: 05 Ное 2016, 20:01
Получена благодарност: 2 пъти

Re: Добавяне на цветни съобщения в плъгин

Мнение от Irie » 08 Дек 2016, 10:56

Ja Crom, не знам, но вчера ми излизаше грешка, vse се оправи.

Аватар
Petrowch0
Извън линия
Потребител
Потребител
Мнения: 220
Регистриран на: 14 Окт 2016, 19:23
Местоположение: de_dust2
Получена благодарност: 3 пъти
Обратна връзка:

Re: Добавяне на цветни съобщения в плъгин

Мнение от Petrowch0 » 08 Дек 2016, 11:17

Явно не си направил нещо както трябва. Предполагам всичко е наред и мога да заключвам темата?
Изображение

Аватар
Bareta21
Извън линия
Потребител
Потребител
Мнения: 15
Регистриран на: 04 Дек 2016, 14:24

Re: Добавяне на цветни съобщения в плъгин

Мнение от Bareta21 » 08 Дек 2016, 15:49

:lock:

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

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: Google [Bot] и 9 госта