#define MEDAL_BRONZE 1
#define MEDAL_SILVER 2
#define MEDAL_GOLD 3
Następnie pod plugin_init dodaj:
]
public plugin_natives()
{
register_library("battlefield2");
register_native("bf2_get_user_badge", "_bf2_get_user_badge");
register_native("bf2_get_user_rank", "_bf2_get_user_rank");
register_native("bf2_get_user_medals", "_bf2_get_user_medals");
register_native("bf2_set_user_badge", "_bf2_set_user_badge");
register_native("bf2_set_user_rank", "_bf2_set_user_rank");
register_native("bf2_set_user_medals", "_bf2_set_user_medals");
}
public _bf2_get_user_badge(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
return g_PlayerBadges[get_param(1)][get_param(2)];
}
public _bf2_get_user_rank(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
return g_PlayerRank[get_param(1)];
}
public _bf2_get_user_medals(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
switch(get_param(2))
{
case MEDAL_BRONZE:
return bronze[get_param(1)];
case MEDAL_SILVER:
return silver[get_param(1)];
case MEDAL_GOLD:
return gold[get_param(1)];
}
return g_PlayerRank[get_param(1)];
}
public _bf2_set_user_badge(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
return g_PlayerBadges[get_param(1)][get_param(2)]=get_param(3);
}
public _bf2_set_user_rank(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
return g_PlayerRank[get_param(1)]=get_param(2);
}
public _bf2_set_user_medals(plugin, params)
{
if(!is_user_connected(get_param(1))) return 404;
switch(get_param(2))
{
case MEDAL_BRONZE:
return bronze[get_param(1)]=get_param(3);
case MEDAL_SILVER:
return silver[get_param(1)]=get_param(3);
case MEDAL_GOLD:
return gold[get_param(1)]=get_param(3);
}
return g_PlayerRank[get_param(1)];
}
Ponownie kompilujemy. Gdyby komuś nie działał załącznik to to jest plik battlefield2.inc:
#if defined _battlefield2_included
#endinput
#endif
#define _battlefield2_included
#pragma library "battlefield2"
#define BADGE_KNIFE 0
#define BADGE_PISTOL 1
#define BADGE_ASSAULT 2
#define BADGE_SNIPER 3
#define BADGE_SUPPORT 4
#define BADGE_EXPLOSIVES 5
#define BADGE_SHOTGUN 6
#define BADGE_SMG 7
#define LEVEL_NONE 0
#define LEVEL_BASIC 1
#define LEVEL_VETERAN 2
#define LEVEL_EXPERT 3
#define MEDAL_BRONZE 1
#define MEDAL_SILVER 2
#define MEDAL_GOLD 3
native bf2_get_user_badge(index, badge_id);
// index - id gracza
// badge_id - id odznaki od 0 do 7
// zwraca poziom odznaki u gracza ( int )
// zwroci 404 jezeli podanego gracza nie ma na serwerze
native bf2_get_user_rank(index);
// index - id gracza
// zwraca range gracza ( int )
// zwroci 404 jezeli podanego gracza nie ma na serwerze
native bf2_get_user_medals(index, medal_type);
// index - id gracza
// medal_type - typ medalu ( MEDAL -BRONZE, -SILVER lub -GOLD )
// zwraca ilosc konkretnych medali gracza ( int )
// zwroci 404 jezeli podanego gracza nie ma na serwerze
native bf2_set_user_badge(index, badge_id, level);
// index - id gracza
// badge_id - id odznaki od 0 do 7
// level - jaki poziom odznaki do ustawienia
// Ustawi poziom odznaki u gracza ( int ), w przypadku sukcesu zwroci ustawiona wartosc
// zwroci 404 jezeli podanego gracza nie ma na serwerze
native bf2_set_user_rank(index, rank);
// index - id gracza
// rank - numer rangi ktora zostanie ustawiona
// Ustawia range gracza ( int )
// zwroci 404 jezeli podanego gracza nie ma na serwerze
native bf2_set_user_medals(index, medal_type, ile);
// index - id gracza
// medal_type - typ medalu ( MEDAL -BRONZE, -SILVER lub -GOLD )
// Ustawia ilosc konkretnych medali gracza ( int )
// zwroci 404 jezeli podanego gracza nie ma na serwerze
![Załączony plik](https://amxx.pl/public/style_extra/mime_types/txt.gif)