Shop show credits

smoke96

Участник
Сообщения
1,134
Реакции
175
Помогите пожалуйста , хочу сделать так чтобы когда игрок писал в чат !credits ему писало его кол-во кредитов , но что то не получается , помогите пожалуйста :(
PHP:
#pragma semicolon 1;
#include <sourcemod>
#include <shop>

public Plugin:myinfo = 
{
	name = "[Shop] Shop You Credits",
	author = "Smoke",
	version = "1.0",
	url = ""
}

public OnPluginStart()
{
    RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе");

}

public Action:Command_credits(сlient, args)
{
        decl String:Text[65];
        for (new i = 1; i <= MaxClients; i++)
		if (IsClientInGame(i) && Shop_IsAuthorized(i))
		{
			PrintToChat(Text, 65, "У вас %s кредитов", client, i, Shop_GetClientCredits(i));
		}
}
 

Arthur Don

Участник
Сообщения
1,696
Реакции
256
B1g, такой плагин есть у R1KO, но он приватный
 

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
B1g, у тебя не верно, надо так

PHP:
if (IsClientInGame(client) && Shop_IsAuthorized(client))         
{  
     PrintToChat(client, "У вас %i кредитов", Shop_GetClientCredits(client));
}

 
Последнее редактирование:

smoke96

Участник
Сообщения
1,134
Реакции
175
B1g, у тебя не верно, надо так

PHP:
if (IsClientInGame(client) && Shop_IsAuthorized(client))         
{  
     PrintToChat(client, "У вас %i кредитов", Shop_GetClientCredits(client));
}

AlmazON, нафиг цикл. Чё курим? Оффтоп

Подскажи как сделать , компилирую такой код , вылазиет куча ошибок :(
PHP:
#pragma semicolon 1;
#include <sourcemod>
#include <shop>

public Plugin:myinfo = 
{
	name = "[Shop] Shop You Credits",
	author = "Smoke",
	version = "1.0",
	url = ""
}

public OnPluginStart()
{
    RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе");

}

public Action:Command_credits(сlient, args)
{
        for (new i = 1; i <= MaxClients; i++)
		if (IsClientInGame(client) && Shop_IsAuthorized(client))         
        {  
           PrintToChat(client, "У вас %i кредитов", Shop_GetClientCredits(client));
        }  
}
 

SenatoR

Участник
Сообщения
773
Реакции
344
PHP:
public Action:Command_credits(сlient, args)
{
	if (IsClientInGame(client) && Shop_IsAuthorized(client))         
        {  
           PrintToChat(client, "У вас %d кредитов", Shop_GetClientCredits(client));
        } 
        return Plugin_Handled;
}
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Подскажите еще как сюда
PHP:
PrintToChatAll(client, "\x04[Магазин] У вас \x03%d \x01кредитов !", Shop_GetClientCredits(client));
Вставить ник игрока? И как добавить разные команды на вывод этого сообщения?
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
На самом деле, так не совсем верно, а так:
PHP:
#include <shop> 

public Plugin:myinfo =  
{ 
    name = "[Shop] Shop You Credits", 
    author = "Smoke", 
    version = "1.0", 
    url = "" 
} 

public OnPluginStart() RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе");

public Action:Command_credits(сlient, args)
{
	if (client && Shop_IsAuthorized(client)) PrintToChat(client, "У вас %i кредитов.", Shop_GetClientCredits(client));
	return Plugin_Handled;
}
Для команды движка не надо проверять, в игре игрок или нет - сам же говорил) А вот консоли - всё же стоит, иначе в логе появится ошибка.
как добавить разные команды на вывод этого сообщения?
Добавлять новые RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе"); рядом с предыдущим, с новой строчки. Где sm_credits - любая твоя новая команда, например, sm_dengi
Вставить ник игрока?
PrintToChat(client, "%N, у вас %i кредитов.", client, Shop_GetClientCredits(client));, где %N - это и будет ник игрока.
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Помогите с эти ребят :( http://hlmod.ru/forum/showpost.php?p=178330&postcount=6

Добавлено через 11 минут
Вот с добавлением новой команды не очень понял и как русскую команду добавить? Можно пример?
 
Последнее редактирование модератором:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #10
B1g, такой плагин есть у R1KO, но он приватный

Нет у меня такого.

PHP:
#include <shop> 


public OnPluginStart()
{
	RegConsoleCmd("sm_credits", Command_credits, "Показывает кол-во кредитов в шопе");
	RegConsoleCmd("кредиты", Command_credits, "Показывает кол-во кредитов в шопе");
}

public Action:Command_credits(сlient, args)
{
	if (client && Shop_IsAuthorized(client))
	{
		PrintToChat(client, "\x04[Магазин] Привет %N, У вас \x03%i \x01кредитов !", сlient, Shop_GetClientCredits(client)); 
	}
	return Plugin_Handled;
}
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Прошу помощи Shop Show Credits

Привет помогите пожалуйста
Компилирую этот код , мне пишет то что должно писать игрокам , а игрокам то что должно писать мне , и когда пишешь команду в чат то сообщение появляется не после ее написания а перед . Как исправить?

PHP:
#pragma semicolon 1;    
#include <sourcemod>      
#include <shop>      

public Plugin:myinfo =       
{      
    name = "[Shop] Show You Credits",      
    author = "Smoke",      
    version = "1.0"    
}      

public OnPluginStart()      
{      
    AddCommandListener(Command_ShowYouCredits, "say");     
    AddCommandListener(Command_ShowYouCredits, "say_team");     
}      

public Action:Command_ShowYouCredits(iClient, const String:sCommand[], args)       
{       
    if(iClient && IsClientInGame(iClient))     
    {     
        decl String:Said[ 128 ];      
        GetCmdArgString( Said, sizeof( Said ));      
        StripQuotes( Said );      
        TrimString( Said );      
           
        if(StrEqual( Said, "!credits" ) ||   
                StrEqual( Said, "!кредиты" ) ||   
                StrEqual( Said, "!cred" ) ||   
                StrEqual( Said, "!креды" ) ||   
                StrEqual( Said, "!cr" ) ||   
                StrEqual( Said, "!кр" ) ||   
                StrEqual( Said, "!credit" ) ||   
                StrEqual( Said, "!кред" ) ||   
                StrEqual( Said, "!mycredits" ) ||   
                StrEqual( Said, "!кредит" ) ||   
                StrEqual( Said, "!крд" ) ||   
                StrEqual( Said, "/credits" ) ||   
                StrEqual( Said, "/кредиты" ) ||   
                StrEqual( Said, "/cred" ) ||   
                StrEqual( Said, "/креды" ) ||   
                StrEqual( Said, "/cr" ) ||   
                StrEqual( Said, "/кр" ) ||   
                StrEqual( Said, "/credit" ) ||   
                StrEqual( Said, "/кред" ) ||   
                StrEqual( Said, "/mycredits" ) ||   
                StrEqual( Said, "/кредит" ) ||   
                StrEqual( Said, "/крд" ) ||   
                StrEqual( Said, "credits" ) ||   
                StrEqual( Said, "кредиты" ) ||   
                StrEqual( Said, "cred" ) ||   
                StrEqual( Said, "креды" ) ||   
                StrEqual( Said, "cr" ) ||   
                StrEqual( Said, "кр" ) ||   
                StrEqual( Said, "credit" ) ||   
                StrEqual( Said, "кред" ) ||   
                StrEqual( Said, "mycredits" ) ||   
                StrEqual( Said, "кредит" ) ||   
                StrEqual( Said, "крд" ))    
        {      
            if (Shop_IsAuthorized(iClient))                
            {   
                new iCredits = Shop_GetClientCredits(iClient);   
                for (new i = 1; i <= MaxClients; i++)    
                {    
                    if (IsClientInGame(i) && !IsFakeClient(i))   
                    {   
                        if(i != iClient) PrintToChat(i, "\x04[Магазин] \x01У вас \x03%i \x01кредитов !", iCredits);   
                        else PrintToChat(i, "\x04[Магазин] \x01У \x03%N \x04%i \x01кредитов !", iClient, iCredits);   
                    }   
                }   
            }   
            else    
            PrintToChat(iClient, "\x04[Магазин] \x01Произошла ошибка!");      
            return Plugin_Handled;     
        }     
    }     
    return Plugin_Continue;     
}
 

diller110

Добрая душа
Сообщения
353
Реакции
278
Re: Прошу помощи Shop Show Credits

if(i != iClient) условие: если это не тот человек который ввел комманду.
Значит так: if(i = iClient)
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Re: Прошу помощи Shop Show Credits

if(i != iClient) условие: если это не тот человек который ввел комманду.
Значит так: if(i = iClient)

Можешь сделать готовый код чтобы исправились мои проблемы описанные выше? Я просто мало шарю в скриптинге :(
 

diller110

Добрая душа
Сообщения
353
Реакции
278
Re: Прошу помощи Shop Show Credits

Оффтоп
Проверить нечем. Вывод перед командой решил таймером на 0.1 сек, не знаю будет ли работать, и правильное ли это решение.
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Re: Прошу помощи Shop Show Credits

Оффтоп
Проверить нечем. Вывод перед командой решил таймером на 0.1 сек, не знаю будет ли работать, и правильное ли это решение.

Вообще не работает.
 

diller110

Добрая душа
Сообщения
353
Реакции
278
Re: Прошу помощи Shop Show Credits

Напиши хоть что именно. При компиляции ошибки, или ошибки в логах?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #18
PHP:
#pragma semicolon 1
#include <sourcemod>
#include <shop>

public Plugin:myinfo = 
{
	name = "[Shop] Show You Credits",
	author = "Smoke",
	version = "1.0" 
}

public OnPluginStart()
{
	AddCommandListener(Command_ShowYouCredits, "say");  
	AddCommandListener(Command_ShowYouCredits, "say_team");  
}

public Action:Command_ShowYouCredits(iClient, const String:sCommand[], args) 
{ 
	if(iClient && IsClientInGame(iClient))  
	{
		decl String:Said[ 128 ];
		GetCmdArgString( Said, sizeof( Said ));
		StripQuotes( Said );
		TrimString( Said );
		
		if(StrEqual( Said, "!credits" ) ||
				StrEqual( Said, "!кредиты" ) ||
				StrEqual( Said, "!cred" ) ||
				StrEqual( Said, "!креды" ) ||
				StrEqual( Said, "!cr" ) ||
				StrEqual( Said, "!кр" ) ||
				StrEqual( Said, "!credit" ) ||
				StrEqual( Said, "!кред" ) ||
				StrEqual( Said, "!mycredits" ) ||
				StrEqual( Said, "!кредит" ) ||
				StrEqual( Said, "!крд" ) ||
				StrEqual( Said, "/credits" ) ||
				StrEqual( Said, "/кредиты" ) ||
				StrEqual( Said, "/cred" ) ||
				StrEqual( Said, "/креды" ) ||
				StrEqual( Said, "/cr" ) ||
				StrEqual( Said, "/кр" ) ||
				StrEqual( Said, "/credit" ) ||
				StrEqual( Said, "/кред" ) ||
				StrEqual( Said, "/mycredits" ) ||
				StrEqual( Said, "/кредит" ) ||
				StrEqual( Said, "/крд" ) ||
				StrEqual( Said, "credits" ) ||
				StrEqual( Said, "кредиты" ) ||
				StrEqual( Said, "cred" ) ||
				StrEqual( Said, "креды" ) ||
				StrEqual( Said, "cr" ) ||
				StrEqual( Said, "кр" ) ||
				StrEqual( Said, "credit" ) ||
				StrEqual( Said, "кред" ) ||
				StrEqual( Said, "mycredits" ) ||
				StrEqual( Said, "кредит" ) ||
				StrEqual( Said, "крд" )) 
		{
			if (Shop_IsAuthorized(iClient))
			{
				CreateTimer(0.1, Timer, iClient);
			}
			else PrintToChat(iClient, "\x04[Магазин] \x01Произошла ошибка!");
			return Plugin_Handled;  
		}  
		
	}  
	return Plugin_Continue;  
}

public Action:Timer(Handle:timer, any:iClient) 
{
	new iCredits = Shop_GetClientCredits(iClient);
	PrintToChat(iClient, "\x04[Магазин] \x01У вас \x03%i \x01кредитов !", iCredits);
	for (new i = 1; i <= MaxClients; i++) 
	{
		if (i != iClient && IsClientInGame(i) && !IsFakeClient(i))
		{
			PrintToChat(i, "\x04[Магазин] \x01У \x03%N \x04%i \x01кредитов !", iClient, iCredits);
		}
	}
}
 

smoke96

Участник
Сообщения
1,134
Реакции
175
Всем спасибо ! РИКО помог в очередной раз! Закрывайте тему :)
 
Сверху Снизу