xmod shared natives
This commit is contained in:
@ -83,6 +83,7 @@ struct CPlayer {
|
||||
//
|
||||
int killingSpree;
|
||||
int is_specialist;
|
||||
int killFlags;
|
||||
int lastFrag; // oblicz ostatni frag, sprawdza czy poprawna jest detekcja broni i bonusow
|
||||
float lastKill; // kiedy ostatni , dla double kill
|
||||
//
|
||||
|
@ -186,6 +186,19 @@ static cell AMX_NATIVE_CALL get_lastFrag(AMX *amx, cell *params){
|
||||
return 0;
|
||||
}
|
||||
|
||||
static cell AMX_NATIVE_CALL get_killflags(AMX *amx, cell *params){
|
||||
int id = params[1];
|
||||
if ( id<1 || id>gpGlobals->maxClients ){
|
||||
MF_RaiseAmxError(amx,AMX_ERR_NATIVE);
|
||||
return 0;
|
||||
}
|
||||
CPlayer *pPlayer = GET_PLAYER_POINTER_I(id);
|
||||
if ( pPlayer->ingame ){
|
||||
return pPlayer->killFlags;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static cell AMX_NATIVE_CALL give_weapon(AMX *amx, cell *params){ // index,weapon,clips,extra
|
||||
int id = params[1];
|
||||
if ( id<1 || id>gpGlobals->maxClients ){
|
||||
@ -361,12 +374,26 @@ static cell AMX_NATIVE_CALL register_forward(AMX *amx, cell *params){ // forward
|
||||
return 1;
|
||||
}
|
||||
|
||||
static cell AMX_NATIVE_CALL get_maxweapons(AMX *amx, cell *params){
|
||||
return TSMAX_WEAPONS;
|
||||
}
|
||||
|
||||
static cell AMX_NATIVE_CALL get_stats_size(AMX *amx, cell *params){
|
||||
return 8;
|
||||
}
|
||||
|
||||
|
||||
AMX_NATIVE_INFO base_Natives[] = {
|
||||
{ "ts_getwpnname", get_weapon_name },
|
||||
{ "ts_getwpnlogname", get_weapon_logname },
|
||||
|
||||
{ "xmod_get_wpnname", get_weapon_name },
|
||||
{ "xmod_get_wpnlogname", get_weapon_logname },
|
||||
{ "xmod_is_melee_wpn", is_melee },
|
||||
{ "xmod_get_maxweapons", get_maxweapons },
|
||||
{ "xmod_get_stats_size", get_stats_size },
|
||||
|
||||
{ "ts_wpnlogtoname", wpnlog_to_name },
|
||||
{ "ts_wpnlogtoid", wpnlog_to_id },
|
||||
{ "ts_ismelee", is_melee },
|
||||
|
||||
{ "ts_getuserwpn", get_user_weapon },
|
||||
{ "ts_getusercash", get_user_cash },
|
||||
{ "ts_getuserspace", get_user_space },
|
||||
@ -374,6 +401,7 @@ AMX_NATIVE_INFO base_Natives[] = {
|
||||
{ "ts_getuseritems",get_user_items },
|
||||
{ "ts_getkillingstreak",get_killingStreak },
|
||||
{ "ts_getuserlastfrag",get_lastFrag },
|
||||
{ "ts_getuserkillflags",get_killflags },
|
||||
|
||||
{ "ts_giveweapon",give_weapon },
|
||||
{ "ts_createpwup",create_pwup },
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* TFCX
|
||||
* TSX
|
||||
* Copyright (c) 2004 Lukasz Wlasinski
|
||||
*
|
||||
*
|
||||
@ -363,7 +363,7 @@ AMX_NATIVE_INFO stats_Natives[] = {
|
||||
{ "reset_user_wstats", reset_user_wstats },
|
||||
|
||||
// Custom Weapon Support
|
||||
{ "reg_custom_weapon", register_cwpn },
|
||||
{ "custom_weapon_add", register_cwpn },
|
||||
{ "custom_weapon_dmg", cwpn_dmg },
|
||||
{ "custom_weapon_shot", cwpn_shot },
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* TFCX
|
||||
* TSX
|
||||
* Copyright (c) 2004 Lukasz Wlasinski
|
||||
*
|
||||
*
|
||||
|
@ -41,6 +41,7 @@ void Client_ResetHUD_End(void* mValue){
|
||||
mPlayer->items = 0;
|
||||
mPlayer->is_specialist = 0;
|
||||
mPlayer->killingSpree = 0;
|
||||
mPlayer->killFlags = 0;
|
||||
mPlayer->frags = (int)mPlayer->pEdict->v.frags;
|
||||
/*
|
||||
fix dla user_kill() z addfrag
|
||||
@ -216,8 +217,9 @@ void Client_TSHealth_End(void* mValue){
|
||||
}
|
||||
}
|
||||
|
||||
pAttacker->killFlags = killFlags;
|
||||
pAttacker->saveKill(mPlayer,weapon,( aim == 1 ) ? 1:0 ,TA);
|
||||
g_death_info.exec( pAttacker->index, mPlayer->index, weapon, aim, killFlags, TA );
|
||||
g_death_info.exec( pAttacker->index, mPlayer->index, weapon, aim, TA );
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user