hlmod.hu
https://hlmod.hu/

ExecuteHam
https://hlmod.hu/viewtopic.php?f=9&t=29017
Oldal: 1 / 1

Szerző:  Supra [ 2018.05.28. 00:19 ]
Hozzászólás témája:  ExecuteHam

Sziasztok, ezt mit csinal ? valaki elmagyarazna ? hogy mihez kell ez meg stb..

  1. ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))

Szerző:  Dooz [ 2018.05.28. 10:18 ]
Hozzászólás témája:  Re: ExecuteHam

Üdv. Utána néztem kicsit és találtam egy példát rá. (Lehetséges, hogy te is ezt találtad.)

Egy ilyen példát találtam rá (Ez nem a teljes kódrész):


  1. #define XO_PLAYER 5
  2. #define m_pActiveItem   373
  3.  
  4. public plugin_init(){
  5.     RegisterHam(Ham_Item_Deploy, "weapon_dualdeagle", "CDeagle_Deploy", true)
  6. }
  7.  
  8. public CDeagle_Deploy( iDeagle )
  9. {
  10.     new id = get_pdata_cbase(iDeagle, m_pPlayer, XO_WEAPON)
  11.  
  12.     if( HasUserDualDeagle(id) )
  13.     {
  14.         set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  15.     }
  16. }
  17.  
  18. public furien_buy_dualdeagle( id )
  19. {
  20.     new iTeam = furien_get_user_team(id)
  21.     if( iTeam == -1 )
  22.     {
  23.         return ShopCloseMenu
  24.     }
  25.  
  26.     new iItemCost = g_iCost[iTeam]
  27.     if( iItemCost <= 0 )
  28.     {
  29.         return ShopTeamNotAvail
  30.     }
  31.  
  32.     if( ~HasUserDualDeagle(id) )
  33.     {
  34.         if( furien_try_buy(id, iItemCost) )
  35.         {
  36.             SetUserDualDeagle(id)
  37.             if( get_user_weapon(id) == CSW_DEAGLE )
  38.             {
  39.                 ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))
  40.             }
  41.             return ShopBought
  42.         }
  43.         else
  44.         {
  45.             return ShopNotEnoughMoney
  46.         }
  47.     }
  48.     return ShopAlreadyHaveOne
  49. }



Amikor lefut a "furien_buy_dualdeagle" és az "if(get_user_weapon(id) == CSW_DEAGLE)" igaz (Vagyis a jelenlegi fegyvere az Deagle), akkor meghívódik az "ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))" által a "CDeagle_Deploy( iDeagle )" függvény és a Deage-nek lecseréli a kinézetét. Fontos, hogy a plugin_init-be benne legyen már a "RegisterHam(Ham_Item_Deploy..", hogy legyen mire hivatkozzon.

Egyszerübben így is megcsinálhatod:


  1. #define XO_PLAYER 5
  2. #define m_pActiveItem   373
  3.  
  4. public plugin_init(){
  5.     RegisterHam(Ham_Item_Deploy, "weapon_dualdeagle", "CDeagle_Deploy", true)
  6. }
  7.  
  8. public CDeagle_Deploy( iDeagle )
  9. {
  10.     new id = get_pdata_cbase(iDeagle, m_pPlayer, XO_WEAPON)
  11.  
  12.     if( HasUserDualDeagle(id) )
  13.     {
  14.         set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  15.     }
  16. }
  17.  
  18. public furien_buy_dualdeagle( id )
  19. {
  20.     new iTeam = furien_get_user_team(id)
  21.     if( iTeam == -1 )
  22.     {
  23.         return ShopCloseMenu
  24.     }
  25.  
  26.     new iItemCost = g_iCost[iTeam]
  27.     if( iItemCost <= 0 )
  28.     {
  29.         return ShopTeamNotAvail
  30.     }
  31.  
  32.     if( ~HasUserDualDeagle(id) )
  33.     {
  34.         if( furien_try_buy(id, iItemCost) )
  35.         {
  36.             SetUserDualDeagle(id)
  37.             if( get_user_weapon(id) == CSW_DEAGLE )
  38.             {
  39.                  if( HasUserDualDeagle(id) ){
  40.                   set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  41.                  }
  42.             }
  43.             return ShopBought
  44.         }
  45.         else
  46.         {
  47.             return ShopNotEnoughMoney
  48.         }
  49.     }
  50.     return ShopAlreadyHaveOne
  51. }


Tehát kicseréltem ezt:
  1. ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))


Erre:
  1. if( HasUserDualDeagle(id) ){
  2.                   set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  3. }


Úgyan az fog történni, szóval mindegy melyiket használod.

Remélem érthető volt. :D Ha mégsem akkor írsz és megpróbálom másképp elmagyarázni.

Szerző:  Supra [ 2018.08.03. 18:12 ]
Hozzászólás témája:  Re: ExecuteHam

Dooz írta:
Üdv. Utána néztem kicsit és találtam egy példát rá. (Lehetséges, hogy te is ezt találtad.)

Egy ilyen példát találtam rá (Ez nem a teljes kódrész):


  1. #define XO_PLAYER 5
  2. #define m_pActiveItem   373
  3.  
  4. public plugin_init(){
  5.     RegisterHam(Ham_Item_Deploy, "weapon_dualdeagle", "CDeagle_Deploy", true)
  6. }
  7.  
  8. public CDeagle_Deploy( iDeagle )
  9. {
  10.     new id = get_pdata_cbase(iDeagle, m_pPlayer, XO_WEAPON)
  11.  
  12.     if( HasUserDualDeagle(id) )
  13.     {
  14.         set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  15.     }
  16. }
  17.  
  18. public furien_buy_dualdeagle( id )
  19. {
  20.     new iTeam = furien_get_user_team(id)
  21.     if( iTeam == -1 )
  22.     {
  23.         return ShopCloseMenu
  24.     }
  25.  
  26.     new iItemCost = g_iCost[iTeam]
  27.     if( iItemCost <= 0 )
  28.     {
  29.         return ShopTeamNotAvail
  30.     }
  31.  
  32.     if( ~HasUserDualDeagle(id) )
  33.     {
  34.         if( furien_try_buy(id, iItemCost) )
  35.         {
  36.             SetUserDualDeagle(id)
  37.             if( get_user_weapon(id) == CSW_DEAGLE )
  38.             {
  39.                 ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))
  40.             }
  41.             return ShopBought
  42.         }
  43.         else
  44.         {
  45.             return ShopNotEnoughMoney
  46.         }
  47.     }
  48.     return ShopAlreadyHaveOne
  49. }



Amikor lefut a "furien_buy_dualdeagle" és az "if(get_user_weapon(id) == CSW_DEAGLE)" igaz (Vagyis a jelenlegi fegyvere az Deagle), akkor meghívódik az "ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))" által a "CDeagle_Deploy( iDeagle )" függvény és a Deage-nek lecseréli a kinézetét. Fontos, hogy a plugin_init-be benne legyen már a "RegisterHam(Ham_Item_Deploy..", hogy legyen mire hivatkozzon.

Egyszerübben így is megcsinálhatod:


  1. #define XO_PLAYER 5
  2. #define m_pActiveItem   373
  3.  
  4. public plugin_init(){
  5.     RegisterHam(Ham_Item_Deploy, "weapon_dualdeagle", "CDeagle_Deploy", true)
  6. }
  7.  
  8. public CDeagle_Deploy( iDeagle )
  9. {
  10.     new id = get_pdata_cbase(iDeagle, m_pPlayer, XO_WEAPON)
  11.  
  12.     if( HasUserDualDeagle(id) )
  13.     {
  14.         set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  15.     }
  16. }
  17.  
  18. public furien_buy_dualdeagle( id )
  19. {
  20.     new iTeam = furien_get_user_team(id)
  21.     if( iTeam == -1 )
  22.     {
  23.         return ShopCloseMenu
  24.     }
  25.  
  26.     new iItemCost = g_iCost[iTeam]
  27.     if( iItemCost <= 0 )
  28.     {
  29.         return ShopTeamNotAvail
  30.     }
  31.  
  32.     if( ~HasUserDualDeagle(id) )
  33.     {
  34.         if( furien_try_buy(id, iItemCost) )
  35.         {
  36.             SetUserDualDeagle(id)
  37.             if( get_user_weapon(id) == CSW_DEAGLE )
  38.             {
  39.                  if( HasUserDualDeagle(id) ){
  40.                   set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  41.                  }
  42.             }
  43.             return ShopBought
  44.         }
  45.         else
  46.         {
  47.             return ShopNotEnoughMoney
  48.         }
  49.     }
  50.     return ShopAlreadyHaveOne
  51. }


Tehát kicseréltem ezt:
  1. ExecuteHamB(Ham_Item_Deploy, get_pdata_cbase(id, m_pActiveItem, XO_PLAYER))


Erre:
  1. if( HasUserDualDeagle(id) ){
  2.                   set_pev(id, pev_viewmodel, g_iszDualDeagleModel)
  3. }


Úgyan az fog történni, szóval mindegy melyiket használod.

Remélem érthető volt. :D Ha mégsem akkor írsz és megpróbálom másképp elmagyarázni.

Am
reg volt de eltudnad kuldeni a teljes kodot ?

Oldal: 1 / 1 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/