Пополнение до 100 XP

Тема в разделе "Запросы", создана пользователем mihaput, 3 авг 2013.

  1. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    Ребят, кому не трудно, может кто напишет или покажет на плагин где он есть, если таковой имеется.
    Суть такова, что при установке игроком бомбы ему пополняются жизни до 100 XP. Не дополняются, а пополняются :)
    Заранее благодарю :)
     
  2. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    PHP:
    #pragma semicolon 1

    #include <sourcemod>
    #include <sdktools>

    public OnPluginStart()
        
    HookEvent("bomb_planted"EventBombPlanted);
        
    public 
    EventBombPlanted(Handle:event, const String:name[],bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
            
        
    SetEntityHealth(client100);
    }
     
    максимка27 и mihaput нравится это.
  3. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    R1KO, Я извиняюсь, а можно все тоже самое только еще и с пополнением брони до 100 ? И с каким нибудь не большим текстовым сопровождением игроку в чате, типа:
    "Пополнение XP за установку бомбы" если конечно не трудно :)
     
  4. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    PHP:
    #pragma semicolon 1

    #include <sourcemod>
    #include <sdktools_functions>

    public OnPluginStart()
        
    HookEvent("bomb_planted"EventBombPlanted);
        
    public 
    EventBombPlanted(Handle:event, const String:name[],bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
            
        
    SetEntityHealth(client100);
        
    SetEntProp(clientProp_Send"m_ArmorValue"1001);
    }
     
    максимка27 и mihaput нравится это.
  5. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    R1KO, А текст не получается добавить ?

     
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    mihaput, какой тебе текст нужен ?

    Пиши сразу всё ТЗ, а то по 1 действию добавлять....
     
  7. September

    September

    Сообщения:
    1.187
    Симпатии:
    164
    Он написал)
     
  8. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    September, или он потом добавил или я слепой))

    mihaput, будет выводится только тому, кто заложил
    PHP:
    #pragma semicolon 1

    #include <sourcemod>
    #include <sdktools_functions>

    public OnPluginStart()
        
    HookEvent("bomb_planted"EventBombPlanted);
        
    public 
    EventBombPlanted(Handle:event, const String:name[],bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
            
        
    SetEntityHealth(client100);
        
    SetEntProp(clientProp_Send"m_ArmorValue"1001);
        
    PrintToChat(client"Вам пополнено XP за установку бомбы");
    }
     
    mihaput нравится это.
  9. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    R1KO, Благодарствую, все как надо.
    Единственное подскажи что нужно тут добавить чтобы текст цветным был.
    Делаю так
    Код:
    PrintToChat(client, "x07\  Вам пополнено XP за установку бомбы");
    Текст почему то не полный становится :(
     
  10. KorDen

    KorDen Atra esterní ono thelduin! Ньюсмейкер

    Сообщения:
    2.194
    Симпатии:
    1.398
    mihaput, какой цвет нужен?
    \x01 - стандартный
    \x04 - зеленый
    \x05 - темно-зеленый
    \x07RRGGBB - вместо RRGGBB шестнадцатеричный код цвета (FF0000 для красного например)
     
    mihaput и R1KO нравится это.
  11. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    mihaput,
    PHP:
    PrintToChat(client"\x07цвет  Вам пополнено XP за установку бомбы");
     
    mihaput нравится это.
  12. djeck993

    djeck993

    Сообщения:
    40
    Симпатии:
    8
    Объясните пожалуйста куда этот код вставлять?
     
  13. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.994
    Симпатии:
    2.990
    djeck993, создаешь текстовый документ, назваешь как угодно и расширение .sp
    Вставляешь это в него и компилируешь.

    P.S. Кодировку UTF 8 без BOM не забудь
     
    djeck993 нравится это.
  14. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    893
    Симпатии:
    659
    Пробуй
    PHP:
    #include <sourcemod>

    #define HEALTH 100
    #define ARMOR 100

    new hHealth = -1,
        
    hArmor = -1;

    public 
    OnPluginStart()
    {
        
    hHealth FindSendPropOffs("CSSPlayer""m_iHealth");
        
    hArmor FindSendPropOffs("CSSPlayer""m_ArmorValue");

        
    HookEvent("bomb_planted"Event_OnBombPlanted);
    }

    public 
    Event_OnBombPlanted(Handle:event, const String:name[], bool:silent)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));

        if (
    client 0)
        {
            
    decl String:message[100];

            new 
    bool:check false;

            new 
    hp GetEntData(clienthHealth4);

            if (
    hp HEALTH)
            {
                
    SetEntData(clienthHealthHEALTH4true);

                
    Format(messagesizeof(message), "%d Здоровья. "HEALTH hp);

                
    check true;
            }

            new 
    am GetEntData(clienthArmor4);

            if (
    am ARMOR)
            {
                
    SetEntData(clienthArmorARMOR4true);

                
    Format(messagesizeof(message), "%s%d Брони"messageARMOR am);

                if (!
    check)
                {
                    
    check true;
                }
            }

            if (
    check)
            {
                
    PrintToChat(client"За установку бомбы вам добавлен бонус. Добавлено: %s"message);
            }        
        }
    }
     
    Последнее редактирование: 3 авг 2013
    mihaput нравится это.
  15. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    The End Is Near..., Плагин показывает что работает, но не пополняет + в чате ничего не пишет.
    За старания спасибо, но предыдущего более чем достаточно :)
     
    The End Is Near... нравится это.
  16. The End Is Near...

    The End Is Near... Russian Roulette

    Сообщения:
    893
    Симпатии:
    659
    Хм, странно, позже проверю
     
  17. Reiko1231

    Reiko1231 AlexTheRegent

    Сообщения:
    237
    Симпатии:
    569
    Попробуй так:
    Код:
    #include <sourcemod>
    
    public OnPluginStart()
    {
        HookEvent("bomb_planted", Event_BombPlanted);
    }
    
    public Event_BombPlanted(Handle:event, const String:name[], bool:silent)
    {
    	new iClient = GetClientOfUserId(GetEventInt(event, "userid"));
    
    	decl String:szMessage[128];
    
    	new bool:bHealth = false, bool:bArmor = false;
    
    	new iHealth = GetClientHealth(iClient);
    	if ( iHealth < 100 )
    	{
    		SetEntProp(iClient, Prop_Send, "m_iHealth", 100);
    		bHealth = true;
    		
    		Format(szMessage, sizeof(szMessage) - 1, "%d здоровья", 100 - iHealth);
    	}
    
    	new iArmor = GetClientArmor(iClient);
    	if ( iArmor < 100 )
    	{
    		SetEntProp(iClient, Prop_Send, "m_ArmorValue", 100);
    		bArmor = true;
    		
    		if ( bHealth )
    		{
    			Format(szMessage, sizeof(szMessage) - 1, "%s, %d брони", szMessage, 100 - iArmor);
    		}
    		else
    		{
    			Format(szMessage, sizeof(szMessage) - 1, "%d брони", 100 - iArmor);
    		}
    	}
    
    	if ( bHealth || bArmor )
    	{
    		PrintToChat(iClient, "\x03За установку бомбы \x04добавлено\x03: %s", szMessage);
    	}
    }
     
    R1KO, Leckter Hannibal, CTe6eJIeK_vRn и ещё 1-му нравится это.
  18. mihaput

    mihaput

    Сообщения:
    698
    Симпатии:
    175
    Reiko1231, Этот пободрее будет :)
    Как то так разукрасил:

    [​IMG]

    P/S Еще раз всем спасибо кто откликнулся и помог :)