[Shop] CS:GO Knife v1.2

Тема в разделе "Shop", создана пользователем L1GHT, 5 мар 2015.

  1. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    [Shop] Knife

    Требование:
    SDKHooks или Sourcemod 1.5 или выше
    [Shop] Core

    Версия: 1.2

    Описание:
    Добавляет возможность покупать "Ножи" в магазине(Только для CS:GO).

    Установка:
    Файл shop_knife.smx поместить в sourcemod/plugins/
    Файл shop_knife.sp поместить в sourcemod/scripting/

    Настройки:
    Настройки производятся в файле cfg/shop/shop_knife.cfg

    Авто-генерация конфига (cfg/shop/shop_knife.cfg)

    HTML:
    // This file was auto-generated by SourceMod (v1.6.3)
    // ConVars for plugin "shop_knife.smx"
    
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_bayonet_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "4000"
    sm_shop_bayonet_price "4000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_bayonet_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_butterfly_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "25000"
    sm_shop_butterfly_price "25000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_butterfly_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_flip_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "8000"
    sm_shop_flip_price "8000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_flip_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_gut_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "5000"
    sm_shop_gut_price "5000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_gut_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_karambit_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "15000"
    sm_shop_karambit_price "15000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_karambit_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_m9_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "10000"
    sm_shop_m9_price "10000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_m9_sellprice "-1"
    
    // Длительность ножа. 0 - Навсегда
    // -
    // Default: "86400"
    // Minimum: "0.000000"
    sm_shop_tactical_duration "86400"
    
    // Цена покупки.
    // -
    // Default: "20000"
    sm_shop_tactical_price "20000"
    
    // Цена продажи. -1 чтобы не продавать
    // -
    // Default: "-1"
    sm_shop_tactical_sellprice "-1"

    Скриншоты:

    [​IMG][​IMG]

    ChangeLog:
    PHP:
    Версия 1.0 Релиз
    Версия 1.1 
    Добавлена Авто-генерация AutoExecConfig
    Версия 1.2 
    Добавлена возможность изменять Длительность покупки ножа в shop_knife.cfg
    ____________________________
    Кнопка [​IMG] снизу! :)
     

    Вложения:

    • shop_knife.smx
      Размер файла:
      10,4 КБ
      Просмотров:
      667
    • shop_knife.sp
      Размер файла:
      24,1 КБ
      Просмотров:
      642
    Последнее редактирование: 6 мар 2015
    skolobes, Илья Елисеев, san911 и 8 другим нравится это.
  2. R1KO

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

    Сообщения:
    5.972
    Симпатии:
    2.978
    Re: [Shop] CS:GO Knife v1.1

    artem12397, кроме цен покупки и продажи сделай еще длительность.
     
  3. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Re: [Shop] CS:GO Knife v1.1

    Сделал.
    ----------------------------------------------------------------------------------------------------------------
    [​IMG]
     
    Последнее редактирование: 6 мар 2015
  4. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    artem12397, можешь мне сделать версию где нельзя было купить охотничий нож

    Добавлено через 6 минут
    PHP:
    L 03/06/2015 12:12:37Info (map "jb_jail_gate_v1") (file "errors_20150306.log")
    L 03/06/2015 12:12:37: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:12:37: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:12:37: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:14:53: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:14:53: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:14:53: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:22:02: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:22:02: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:22:02: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:34:37: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:34:37: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:34:37: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:44:00: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:44:00: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:44:00: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:44:05: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:44:05: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:44:05: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
    L 03/06/2015 12:47:02: [SMNative "EquipPlayerWeapon" reportedWorld not allowed
    L 03
    /06/2015 12:47:02: [SMDisplaying call stack trace for plugin "shop_knife.smx":
    L 03/06/2015 12:47:02: [SM]   [0]  Line 810C:\Users\azas\Desktop\vaxa\scripting\shop_knife.sp::PlayerSpawn()
     
    Последнее редактирование: 6 мар 2015
  5. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Пробуй
     

    Вложения:

    • shop_knife.smx
      Размер файла:
      9,7 КБ
      Просмотров:
      12
  6. R1KO

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

    Сообщения:
    5.972
    Симпатии:
    2.978
    artem12397, лови
    PHP:
    g_hPrice1 CreateConVar("sm_shop_bayonet_price""4000""Цена покупки."0false0.0false0.0);
        
    g_iPrice1 GetConVarInt(g_hPrice1);
        
    HookConVarChange(g_hPrice1OnConVarChange);
        
    g_hSellPrice1 CreateConVar("sm_shop_bayonet_sellprice""-1""Цена продажи. -1 чтобы не продавать"0false0.0false0.0);
        
    g_iSellPrice1 GetConVarInt(g_hSellPrice1);
        
    HookConVarChange(g_hSellPrice1OnConVarChange);
        
    g_hDuration1 CreateConVar("sm_shop_bayonet_duration""86400""Длительность ножа. 0 - Навсегда"FCVAR_PLUGINtrue0.0);
        
    g_iDuration1 GetConVarInt(g_hDuration1);
        
    HookConVarChange(g_hDuration1OnConVarChange);
    Это всё лучше сделать через массив и просто циклом пройтись по всем.


    PHP:
    if (Shop_IsStarted())
        {
            
    Shop_Started();
        }
    Это нужно делать в конце OnPluginStart(), а не в начале.

    PHP:
    if (Shop_StartItem(category_id"bayonet"))
        {
            
    Shop_SetInfo("Штык-нож"""g_iPrice1g_iSellPrice1ItemType:2g_iDuration1);
            
    Shop_SetCallbacks(ItemRegister:11ItemUseToggleCallback:1ItemShouldDisplayCallback:-1ItemDisplayCallback:-1ItemDescriptionCallback:-1ItemCommon:-1ItemBuyCallback:-1ItemSellCallback:-1ItemCommon:-1);
            
    Shop_EndItem();
        }
    Точно так же циклом и сделать 1 каллбек ItemUseToggleCallback

    PHP:
    switch (weapon_choose[client])
        {
            case 
    1:
            {
                if (
    IsValidEntity(iWeapon) && iWeapon != -1)
                {
                    
    RemovePlayerItem(clientiWeapon);
                    
    RemoveEdict(iWeapon);
                    
    iItem GivePlayerItem(client"weapon_knife"0);
                }
            }
    Тоже через индексы было бы удобнее.

    PHP:
    if (weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == || weapon_choose[client] == 8)
        {
    Это вообще что?

    PHP:
    if (<= weapon_choose[client] <= 8)
        {

    Код можно сократить в 2-3 раза.
     
    rasal нравится это.
  7. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    R1KO, Воо:-D,ждал критику местного политика:-XD
     
  8. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Я новичок, особо не знаю как это сделать.Может какие то примеры есть?
     
  9. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    artem12397, и еще почему то ножи надо выставлять при каждом новом раунде
     
  10. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Нет, не надо
     
  11. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    artem12397, не понял тебя,просто сделай чтобы я выбрал и все =)
     
  12. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Вот.
     

    Вложения:

    • shop_knife.smx
      Размер файла:
      9,7 КБ
      Просмотров:
      23
  13. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    artem12397, сервер крашнулся когда поставил
     
  14. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    У меня все норм
     
  15. vaxa

    vaxa Rock Rulet!

    Сообщения:
    859
    Симпатии:
    102
    artem12397, Понятно,хотя я знаю в чем косяк конфликт мода с твоим плагином,а именно в sm_hoties есть квар который отвечает за выдачу оружия,мод выдает нож и следом выдает твой плагин нож и краш =)
     
  16. Тема Белый

    Тема Белый Rabid-Games.ru

    Сообщения:
    93
    Симпатии:
    9
    Ножи выдаются другим игрокам,рандомно если кто то купил хоть 1 нож как поправить ?
     
  17. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    исправлю, позже.
     
  18. Тема Белый

    Тема Белый Rabid-Games.ru

    Сообщения:
    93
    Симпатии:
    9
    artem12397, Хорошо,ждем :victory:
     
  19. Тема Белый

    Тема Белый Rabid-Games.ru

    Сообщения:
    93
    Симпатии:
    9
    artem12397, Скоро фикс будет ?)
    Просто игроки ноют,почему мы покупали а им просто так :D
     
  20. L1GHT

    L1GHT

    Сообщения:
    121
    Симпатии:
    51
    Нет времени, не знаю когда сделаю.