/* <1ef43f> ../cstrike/dlls/career_tasks.cpp:192 */ CCareerTask::CCareerTask(const char *taskName, GameEventType event, const char *weaponName, int n, bool mustLive, bool crossRounds, int id, bool isComplete) { m_isComplete = isComplete; m_event = event; m_eventsNeeded = n; m_name = taskName; m_eventsSeen = 0; m_mustLive = mustLive; m_crossRounds = crossRounds; m_diedThisRound = false; m_id = id; m_weaponId = AliasToWeaponID(weaponName); m_weaponClassId = AliasToWeaponClass(weaponName); m_rescuer = (Q_stricmp(taskName, "stoprescue") == 0); m_defuser = (Q_stricmp(taskName, "killdefuser") == 0); m_vip = (Q_stricmp(taskName, "killvip") == 0); if (event == EVENT_ALL_HOSTAGES_RESCUED) { m_mustLive = true; m_crossRounds = false; } if (m_isComplete) { MESSAGE_BEGIN(MSG_ALL, gmsgCZCareer); WRITE_STRING("TASKDONE"); WRITE_BYTE(m_id); MESSAGE_END(); } }
/** * Return true if this profile has a pistol weapon preference */ bool BotProfile::HasPistolPreference( void ) const { for( int i=0; i<m_weaponPreferenceCount; ++i ) if (AliasToWeaponClass( WeaponIDToAlias( m_weaponPreference[i] ) ) == WEAPONCLASS_PISTOL) return true; return false; }
/* <1f04ed> ../cstrike/dlls/career_tasks.cpp:757 */ void CCareerTaskManager::HandleEnemyKill(bool wasBlind, const char *weaponName, bool headshot, bool killerHasShield, CBasePlayer *pAttacker, CBasePlayer *pVictim) { HandleWeaponKill(AliasToWeaponID(weaponName), AliasToWeaponClass(weaponName), headshot, killerHasShield, pAttacker, pVictim); HandleEvent(EVENT_KILL, pAttacker, pVictim); if (headshot) { HandleEvent(EVENT_HEADSHOT, pAttacker, pVictim); } if (wasBlind) { HandleEvent(EVENT_KILL_FLASHBANGED, pAttacker, pVictim); } }
// Return true if this profile has a primary weapon preference bool BotProfile::HasPrimaryPreference() const { for (int i = 0; i < m_weaponPreferenceCount; i++) { int weaponClass = AliasToWeaponClass(WeaponIDToAlias(m_weaponPreference[i])); if (weaponClass == WEAPONCLASS_SUBMACHINEGUN || weaponClass == WEAPONCLASS_SHOTGUN || weaponClass == WEAPONCLASS_MACHINEGUN || weaponClass == WEAPONCLASS_RIFLE || weaponClass == WEAPONCLASS_SNIPERRIFLE) return true; } return false; }
/* <1f0815> ../cstrike/dlls/career_tasks.cpp:777 */ void CCareerTaskManager::HandleEnemyInjury(const char *weaponName, bool attackerHasShield, CBasePlayer *pAttacker) { HandleWeaponInjury(AliasToWeaponID(weaponName), AliasToWeaponClass(weaponName), attackerHasShield, pAttacker); HandleEvent(EVENT_PLAYER_TOOK_DAMAGE); }
/* <22ce5a> ../cstrike/dlls/weapontype.cpp:276 */ WeaponClassType WeaponIDToWeaponClass(int id) { return AliasToWeaponClass(WeaponIDToAlias(id)); }