CvDiplomacyAI::DoSomeoneDeclaredWarOnMe(TeamTypes)
- Defined in
- CvDiplomacyAI.cpp, line 5814
- Class
- CvDiplomacyAI
- Hook name
CivHooks::CvDiplomacyAI_DoSomeoneDeclaredWarOnMe
Hooks
static bool BeforeCvDiplomacyAI_DoSomeoneDeclaredWarOnMe(CvDiplomacyAI* self, TeamTypes eTeam);static void AfterCvDiplomacyAI_DoSomeoneDeclaredWarOnMe(CvDiplomacyAI* self, TeamTypes eTeam);static void ReplaceCvDiplomacyAI_DoSomeoneDeclaredWarOnMe(void (*original)(CvDiplomacyAI*, TeamTypes), CvDiplomacyAI* self, TeamTypes eTeam);CivRegisterBefore<CivHooks::CvDiplomacyAI_DoSomeoneDeclaredWarOnMe>(host, &BeforeCvDiplomacyAI_DoSomeoneDeclaredWarOnMe);CivRegisterAfter<CivHooks::CvDiplomacyAI_DoSomeoneDeclaredWarOnMe>(host, &AfterCvDiplomacyAI_DoSomeoneDeclaredWarOnMe);CivRegisterReplace<CivHooks::CvDiplomacyAI_DoSomeoneDeclaredWarOnMe>(host, &ReplaceCvDiplomacyAI_DoSomeoneDeclaredWarOnMe);
Code
5813/// Player was attacked by another! Change appropriate Diplomacy stuff5814void CvDiplomacyAI::DoSomeoneDeclaredWarOnMe(TeamTypes eTeam)5815{5816 PlayerTypes eLoopPlayer;58175818 // Loop through all players on our attacker's Team5819 for(int iPlayerLoop = 0; iPlayerLoop < MAX_CIV_PLAYERS; iPlayerLoop++)5820 {5821 eLoopPlayer = (PlayerTypes) iPlayerLoop;58225823 if(IsPlayerValid(eLoopPlayer))5824 {5825 if(GET_PLAYER(eLoopPlayer).getTeam() == eTeam)5826 {5827 // Major Civs5828 if(!GET_PLAYER(eLoopPlayer).isMinorCiv())5829 {5830 // This will be updated on turn cycling, but for now we're "shocked and disappointed!"5831 SetWarGoal(eLoopPlayer, WAR_GOAL_PEACE);5832// SetMajorCivApproach(eLoopPlayer, MAJOR_CIV_APPROACH_DEFENSIVE_WAR);5833 }5834 // Minor Civs5835 else5836 {5837// SetMinorCivApproach(eLoopPlayer, MINOR_CIV_APPROACH_WAR);5838 }58395840 m_pPlayer->GetCitySpecializationAI()->SetSpecializationsDirty(SPECIALIZATION_UPDATE_NOW_AT_WAR);5841 }5842 }5843 }5844}
Calls
- CvCitySpecializationAI::SetSpecializationsDirty(CitySpecializationUpdateType)
- CvDiplomacyAI::IsPlayerValid(PlayerTypes, bool)
- CvDiplomacyAI::SetWarGoal(PlayerTypes, WarGoalTypes)
- CvPlayer::GetCitySpecializationAI() const
- CvPlayer::getTeam() const
- CvPlayer::isMinorCiv() const
- CvPlayerAI::getPlayer(PlayerTypes)