mirror of
https://github.com/DrBeef/Raze.git
synced 2024-11-15 00:41:55 +00:00
More weapon system changes
git-svn-id: https://svn.eduke32.com/eduke32@170 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
ac14852079
commit
85452ab0d5
1 changed files with 41 additions and 25 deletions
|
@ -4968,46 +4968,62 @@ SHOOTINCODE:
|
|||
else if ( *kb >= aplWeaponFireDelay[p->curr_weapon][snum] && (*kb) < aplWeaponTotalTime[p->curr_weapon][snum]
|
||||
&& ((aplWeaponWorksLike[p->curr_weapon][snum] & KNEE_WEAPON)?1:p->ammo_amount[p->curr_weapon] > 0))
|
||||
{
|
||||
if ( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_AUTOMATIC)
|
||||
if ( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_AUTOMATIC )
|
||||
{
|
||||
if(( sb_snum&(1<<2) ) == 0 )
|
||||
if(!(aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_SEMIAUTO))
|
||||
{
|
||||
*kb = 0;
|
||||
}
|
||||
if ( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_FIREEVERYTHIRD)
|
||||
{
|
||||
if( ((*(kb))%3) == 0 )
|
||||
if(( sb_snum&(1<<2) ) == 0 )
|
||||
{
|
||||
*kb = 0;
|
||||
}
|
||||
if ( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_FIREEVERYTHIRD)
|
||||
{
|
||||
if( ((*(kb))%3) == 0 )
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
}
|
||||
}
|
||||
else if( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_FIREEVERYOTHER)
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
}
|
||||
}
|
||||
else if( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_FIREEVERYOTHER)
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
else
|
||||
{
|
||||
if(*kb == aplWeaponFireDelay[p->curr_weapon][snum])
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
}
|
||||
}
|
||||
if(aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_RESET &&
|
||||
(*kb) > aplWeaponTotalTime[p->curr_weapon][snum]-aplWeaponHoldDelay[p->curr_weapon][snum] &&
|
||||
((aplWeaponWorksLike[p->curr_weapon][snum] & KNEE_WEAPON)?1:p->ammo_amount[p->curr_weapon] > 0))
|
||||
{
|
||||
if( sb_snum&(1<<2) ) *kb = 1;
|
||||
else *kb = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(*kb == aplWeaponFireDelay[p->curr_weapon][snum])
|
||||
if( aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_FIREEVERYOTHER)
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
}
|
||||
}
|
||||
if(aplWeaponFlags[p->curr_weapon][snum] & WEAPON_FLAG_RESET &&
|
||||
(*kb) > aplWeaponTotalTime[p->curr_weapon][snum]-aplWeaponHoldDelay[p->curr_weapon][snum] &&
|
||||
((aplWeaponWorksLike[p->curr_weapon][snum] & KNEE_WEAPON)?1:p->ammo_amount[p->curr_weapon] > 0))
|
||||
{
|
||||
if( sb_snum&(1<<2) ) *kb = 1;
|
||||
else *kb = 0;
|
||||
else
|
||||
{
|
||||
if(*kb == aplWeaponFireDelay[p->curr_weapon][snum])
|
||||
{
|
||||
DoFire(p);
|
||||
DoSpawn(p);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(*kb == aplWeaponFireDelay[p->curr_weapon][snum])
|
||||
DoFire(p);
|
||||
}
|
||||
else if(*kb == aplWeaponFireDelay[p->curr_weapon][snum])
|
||||
DoFire(p);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue