Добро пожаловать на форум, Гость, это ваша панель
  • Страница 1 из 1
  • 1
Работа с War3ft через другие плагины
KinD
Дата: Суббота, 04.08.2012, 00:32 | Сообщение # 1
офлайн

  • Сообщения: 1148
  • Награды: 22
  • Замечания:
 
Пару дней отсутствовал дома.Решил сделать мини include ,чтобы работать с war3ft через внешние плагины,include простой(остальное оставлю при себе)

Сам include

Code
//Нативы для war3ft
//
//Нативы рас
native is_user_war3ft_undead(id)
native is_user_war3ft_human(id)
native is_user_war3ft_orc(id)
native is_user_war3ft_elf(id)
native is_user_war3ft_blood(id)
native is_user_war3ft_shadow(id)
native is_user_war3ft_warden(id)
native is_user_war3ft_crypt(id)
native is_user_war3ft_chameleon(id)
//Нативы LVL
native is_user_war3ft_level(id)
//Удаление из слота
native war3ft_remove_items(id)


Пример работы с плагином:

Code
#include <amxmodx>    
#include <war3ft_native>    

public plugin_init()    
{
    register_clcmd( "native","menu" );
}

public menu(id)
{
        
     new msg[222]
     formatex(msg, 255, "RACE NATIVE")
     new menu = menu_create(msg,"war3ft_handler")
     formatex(msg, charsmax(msg), "TEST NATIVE")
     menu_additem(menu, msg, "1")
        
     menu_setprop(menu, MPROP_NEXTNAME, "Дальше")
     menu_setprop(menu, MPROP_BACKNAME, "Назад")
     menu_setprop(menu, MPROP_EXITNAME, "Выход")
     menu_display(id,menu, 0)
}

public war3ft_handler( id, menu, item )    
{    
       if( item == MENU_EXIT )    
       {    
           menu_destroy( menu );    
           return PLUGIN_HANDLED;    
       }    
       new data[6], iName[64];    
       new access, callback;    
           
       menu_item_getinfo( menu, item, access, data,5, iName, 63, callback );    
       new key = str_to_num( data );    
       switch( key )     
    {     
     case 1:    
           {
      if(is_user_war3ft_undead(id))
      {
       client_print(id,print_chat,"You Race:Undead")
      }
      else
      {
       client_print(id,print_chat,"You not Undead")
      }
     }
    }
}


в plugins_native добавляем

Code
register_native( "is_user_war3ft_undead", "native_is_user_war3ft_undead", 1 )


ниже

Code
public native_is_user_war3ft_undead(id)       
{    
    return p_data[id][P_RACE] == RACE_UNDEAD;     
}


Ура,теперь вы умеете работать с war3ft.........


Skype:daywerok

Сообщение отредактировал KinD - Суббота, 04.08.2012, 00:36
 
Pomaska
Дата: Суббота, 12.07.2014, 23:43 | Сообщение # 2
офлайн

  • Сообщения: 5
  • Награды: 0
  • Замечания:
 
А как узнать уровень? Покажите пример.

 
Kilimanjaro
Дата: Четверг, 17.07.2014, 10:41 | Сообщение # 3
офлайн

  • Сообщения: 17
  • Награды: 0
  • Замечания:
 
Код
#include <amxmodx>
#include <war3ft_native>
#include <colorchat>

public plugin_init()      
{       
      register_clcmd( "my_lvl","race_lvl" );   
}    
public race_lvl(id)   
{       
      ColorChat (id, GREEN, "[Race_lvl] ^x01Уровень вашей рассы ^x04 - %d", is_user_war3ft_level(id))
}

В варкрафт мод добавляем следующее:
Код
public plugins_native()
{
       register_native( "is_user_war3ft_level", "native_is_user_war3ft_level", 1 )

}

public native_is_user_war3ft_level(idUser)
{
       return p_data[idUser][P_LEVEL];
}


Сообщение отредактировал Kilimanjaro - Четверг, 17.07.2014, 10:43
 
Pomaska
Дата: Четверг, 17.07.2014, 13:41 | Сообщение # 4
офлайн

  • Сообщения: 5
  • Награды: 0
  • Замечания:
 
Цитата Kilimanjaro ()
12
3
4
5
6
7
8
9
10
11
12
#include <amxmodx>
 #include <war3ft_native>
 #include <colorchat>
 
 public plugin_init()      
 {       
      register_clcmd( "my_lvl","race_lvl" );   
 }    
 public race_lvl(id)   
 {       
      ColorChat (id, GREEN, "[Race_lvl] ^x01Уровень вашей рассы ^x04 - %d", is_user_war3ft_level(id))
 }

В варкрафт мод добавляем следующее:
?
1
2
3
4
5
6
7
8
9
10
public plugins_native()
 {
       register_native( "is_user_war3ft_level", "native_is_user_war3ft_level", 1 )
 
 }
 
 public native_is_user_war3ft_level(idUser)
 {
       return p_data[idUser][P_LEVEL];
 }
Спасибо, вот теперь понятно всё:)


 
NaSok
Дата: Пятница, 20.03.2015, 16:02 | Сообщение # 5
офлайн

  • Сообщения: 80
  • Награды: 1
  • Замечания:
 
/del.



Сообщение отредактировал NaSok - Суббота, 21.03.2015, 10:40
 
  • Страница 1 из 1
  • 1
Поиск: