fixed null weapon problems in get_user_astats

This commit is contained in:
Lukasz Wlasinksi 2004-09-12 18:00:53 +00:00
parent 1a2ef38588
commit 8589f0bcf5
5 changed files with 17 additions and 26 deletions

View File

@ -130,7 +130,7 @@ void RankSystem::clear(){
bool RankSystem::loadCalc(const char* filename, char* error)
{
if ((MF_LoadAmxScript(&calc.amx,&calc.code,filename,error,0)!=AMX_ERR_NONE)||
if ((MF_LoadAmxScript(&calc.amx,&calc.code,filename,error)!=AMX_ERR_NONE)||
(MF_AmxAllot(&calc.amx, 8 , &calc.amxAddr1, &calc.physAddr1)!=AMX_ERR_NONE)||
(MF_AmxAllot(&calc.amx, 8 , &calc.amxAddr2, &calc.physAddr2)!=AMX_ERR_NONE)||
(MF_AmxFindPublic(&calc.amx,"get_score",&calc.func)!=AMX_ERR_NONE)){
@ -305,5 +305,4 @@ void RankSystem::saveRank( const char* filename )
fwrite( &i , 1, sizeof(short int), bfp); // null terminator
fclose(bfp);
}
}

View File

@ -119,5 +119,4 @@ public:
};
#endif
#endif

View File

@ -26,7 +26,6 @@ bool rankBots;
int gmsgCurWeapon;
int gmsgDeathMsg;
int gmsgDamage;
int gmsgDamageEnd;
int gmsgWeaponList;
int gmsgResetHUD;
int gmsgAmmoX;
@ -57,7 +56,6 @@ struct sUserMsg {
} g_user_msg[] = {
{ "CurWeapon" , &gmsgCurWeapon , Client_CurWeapon, false },
{ "Damage" , &gmsgDamage,Client_Damage, false },
{ "Damage" , &gmsgDamageEnd, Client_Damage_End, true },
{ "WeaponList" , &gmsgWeaponList, Client_WeaponList, false },
{ "ResetHUD" , &gmsgResetHUD,Client_ResetHUD, true },
{ "AmmoX" , &gmsgAmmoX, Client_AmmoX , false },
@ -289,7 +287,7 @@ void OnMetaAttach() {
void OnAmxxAttach(){
MF_AddNatives(stats_Natives);
const char* path = get_localinfo("csstats_score","addons/amxmodx/data/csstats.amxx");
const char* path = get_localinfo("csstats_score");
if ( path && *path )
{
char error[128];
@ -299,7 +297,7 @@ void OnAmxxAttach(){
if ( !g_rank.begin() )
{
g_rank.loadRank( MF_BuildPathname("%s",
get_localinfo("csstats","addons/amxmodx/data/csstats.dat") ) );
get_localinfo("csstats") ) );
}
}

View File

@ -52,7 +52,6 @@ extern int mPlayerIndex;
extern int mState;
extern int gmsgCurWeapon;
extern int gmsgDamageEnd;
extern int gmsgDamage;
extern int gmsgWeaponList;
extern int gmsgResetHUD;
@ -69,7 +68,6 @@ void Client_CurWeapon(void*);
void Client_Damage(void*);
void Client_WeaponList(void*);
void Client_AmmoPickup(void*);
void Client_Damage_End(void*);
void Client_ScoreInfo(void*);
void Client_ResetHUD(void*);

View File

@ -5,12 +5,6 @@
weaponsVault weaponData[MAX_WEAPONS];
int damage;
int TK;
int weapon;
int aim;
CPlayer *pAttacker;
int g_Planter;
int g_Defuser;
@ -52,6 +46,12 @@ void Client_WeaponList(void* mValue){
void Client_Damage(void* mValue){
static int bits;
static int damage;
static int TK;
static int weapon;
static int aim;
static CPlayer *pAttacker;
switch (mState++) {
case 1:
damage = *(int*)mValue;
@ -79,19 +79,16 @@ void Client_Damage(void* mValue){
}
if( g_grenades.find(enemy , &pAttacker , &weapon ) )
pAttacker->saveHit( mPlayer , weapon , damage, aim );
}
}
void Client_Damage_End(void* mValue){
if ( !mPlayer || !damage || mPlayer->IsAlive() )
return;
break;
case 4:
if ( !pAttacker )
pAttacker = mPlayer;
pAttacker = mPlayer;
TK = 0;
if ( (mPlayer->teamId == pAttacker->teamId) && (mPlayer != pAttacker) )
TK = 1;
TK = 1;
pAttacker->saveKill(mPlayer,weapon,( aim == 1 ) ? 1:0 ,TK);
break;
}
}
void Client_CurWeapon(void* mValue){