Code
10557/// Say hi to someone else10558void CvDiplomacyAI::DoSendStatementToPlayer(PlayerTypes ePlayer, DiploStatementTypes eStatement, int iData1, CvDeal* pDeal)10559{10560 CvAssertMsg(ePlayer >= 0, "DIPLOMACY_AI: Invalid Player Index. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");10561 CvAssertMsg(ePlayer < MAX_MAJOR_CIVS, "DIPLOMACY_AI: Invalid Player Index. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");10562 CvAssertMsg(eStatement >= 0, "DIPLOMACY_AI: Invalid DiploStatementType. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");10563 CvAssertMsg(eStatement < NUM_DIPLO_LOG_STATEMENT_TYPES, "DIPLOMACY_AI: Invalid DiploStatementType. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");1056410565 const char* szText;10566 //bool bShouldShowLeaderScene = GC.getGame().getActivePlayer() == ePlayer;10567 bool bHuman = GET_PLAYER(ePlayer).isHuman();10568 bool bShouldShowLeaderScene = bHuman;1056910570 // Aggressive Military warning10571 if(eStatement == DIPLO_STATEMENT_AGGRESSIVE_MILITARY_WARNING)10572 {10573 if(bShouldShowLeaderScene)10574 {10575#if defined(MOD_DIPLOMACY_STFU)10576 if(IsActHostileTowardsHuman(ePlayer))10577 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AGGRESSIVE_MILITARY_WARNING, DIPLO_MESSAGE_HOSTILE_AGGRESSIVE_MILITARY_WARNING, LEADERHEAD_ANIM_NEGATIVE);10578 else10579 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AGGRESSIVE_MILITARY_WARNING, DIPLO_MESSAGE_AGGRESSIVE_MILITARY_WARNING, LEADERHEAD_ANIM_NEGATIVE);10580#else10581 if(IsActHostileTowardsHuman(ePlayer))10582 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HOSTILE_AGGRESSIVE_MILITARY_WARNING);10583 else10584 szText = GetDiploStringForMessage(DIPLO_MESSAGE_AGGRESSIVE_MILITARY_WARNING);1058510586#if defined(MOD_API_PLAYER_LOGS)10587 if (IsActHostileTowardsHuman(ePlayer))10588 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AGGRESSIVE_MILITARY_WARNING, DIPLO_MESSAGE_HOSTILE_AGGRESSIVE_MILITARY_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10589 else10590 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AGGRESSIVE_MILITARY_WARNING, DIPLO_MESSAGE_AGGRESSIVE_MILITARY_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10591#else10592 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AGGRESSIVE_MILITARY_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10593#endif10594#endif10595 }10596 }1059710598 // Player Killed a City State we're protecting10599 else if(eStatement == DIPLO_STATEMENT_KILLED_PROTECTED_CITY_STATE)10600 {10601 if(bShouldShowLeaderScene)10602 {10603 PlayerTypes eMinorCiv = (PlayerTypes) iData1;10604 CvAssert(eMinorCiv != NO_PLAYER);10605 if(eMinorCiv != NO_PLAYER)10606 {10607 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();1060810609#if defined(MOD_DIPLOMACY_STFU)10610 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_KILLED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);10611#else10612 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_KILLED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey);10613#if defined(MOD_API_PLAYER_LOGS)10614 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_KILLED_PROTECTED_CITY_STATE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10615#else10616 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10617#endif10618#endif10619 }10620 }10621 }1062210623 // Player Attacked a City State we're protecting10624 else if(eStatement == DIPLO_STATEMENT_ATTACKED_PROTECTED_CITY_STATE)10625 {10626 if(bShouldShowLeaderScene)10627 {10628 PlayerTypes eMinorCiv = (PlayerTypes) iData1;10629 CvAssert(eMinorCiv != NO_PLAYER);10630 if(eMinorCiv != NO_PLAYER)10631 {10632 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();1063310634#if defined(MOD_DIPLOMACY_STFU)10635 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_ATTACKED_MINOR_CIV, DIPLO_MESSAGE_HUMAN_ATTACKED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);10636#else10637 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_ATTACKED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey);10638#if defined(MOD_API_PLAYER_LOGS)10639 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_ATTACKED_MINOR_CIV, DIPLO_MESSAGE_HUMAN_ATTACKED_PROTECTED_CITY_STATE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10640#else10641 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_ATTACKED_MINOR_CIV, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10642#endif10643#endif10644 }10645 }10646 }1064710648 // Player Bullied a City State we're protecting10649 else if(eStatement == DIPLO_STATEMENT_BULLIED_PROTECTED_CITY_STATE)10650 {10651 if(bShouldShowLeaderScene)10652 {10653 PlayerTypes eMinorCiv = (PlayerTypes) iData1;10654 CvAssert(eMinorCiv != NO_PLAYER);10655 if(eMinorCiv != NO_PLAYER)10656 {10657 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();1065810659#if defined(MOD_DIPLOMACY_STFU)10660 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_BULLIED_MINOR_CIV, DIPLO_MESSAGE_HUMAN_BULLIED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);10661#else10662 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_BULLIED_PROTECTED_CITY_STATE, NO_PLAYER, strMinorCivKey);10663#if defined(MOD_API_PLAYER_LOGS)10664 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_BULLIED_MINOR_CIV, DIPLO_MESSAGE_HUMAN_BULLIED_PROTECTED_CITY_STATE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10665#else10666 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_BULLIED_MINOR_CIV, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10667#endif10668#endif10669 }10670 }10671 }1067210673 // Serious Expansion warning10674 else if(eStatement == DIPLO_STATEMENT_EXPANSION_SERIOUS_WARNING)10675 {10676 if(bShouldShowLeaderScene)10677 {10678#if defined(MOD_DIPLOMACY_STFU)10679 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_SERIOUS_WARNING, DIPLO_MESSAGE_EXPANSION_SERIOUS_WARNING, LEADERHEAD_ANIM_HATE_NEGATIVE);10680#else10681 szText = GetDiploStringForMessage(DIPLO_MESSAGE_EXPANSION_SERIOUS_WARNING);10682#if defined(MOD_API_PLAYER_LOGS)10683 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_SERIOUS_WARNING, DIPLO_MESSAGE_EXPANSION_SERIOUS_WARNING, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10684#else10685 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_SERIOUS_WARNING, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10686#endif10687#endif10688 }10689 }1069010691 // Expansion warning10692 else if(eStatement == DIPLO_STATEMENT_EXPANSION_WARNING)10693 {10694 if(bShouldShowLeaderScene)10695 {10696#if defined(MOD_DIPLOMACY_STFU)10697 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_WARNING, DIPLO_MESSAGE_EXPANSION_WARNING, LEADERHEAD_ANIM_NEGATIVE);10698#else10699 szText = GetDiploStringForMessage(DIPLO_MESSAGE_EXPANSION_WARNING);10700#if defined(MOD_API_PLAYER_LOGS)10701 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_WARNING, DIPLO_MESSAGE_EXPANSION_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10702#else10703 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_EXPANSION_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10704#endif10705#endif10706 }10707 }1070810709 // Expansion Broken Promise10710 else if(eStatement == DIPLO_STATEMENT_EXPANSION_BROKEN_PROMISE)10711 {10712 if(bShouldShowLeaderScene)10713 {10714#if defined(MOD_DIPLOMACY_STFU)10715 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_EXPANSION_BROKEN_PROMISE, LEADERHEAD_ANIM_HATE_NEGATIVE);10716#else10717 szText = GetDiploStringForMessage(DIPLO_MESSAGE_EXPANSION_BROKEN_PROMISE);10718#if defined(MOD_API_PLAYER_LOGS)10719 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_EXPANSION_BROKEN_PROMISE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10720#else10721 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10722#endif10723#endif10724 }10725 }1072610727 // Serious Plot Buying warning10728 else if(eStatement == DIPLO_STATEMENT_PLOT_BUYING_SERIOUS_WARNING)10729 {10730 if(bShouldShowLeaderScene)10731 {10732#if defined(MOD_DIPLOMACY_STFU)10733 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_SERIOUS_WARNING, DIPLO_MESSAGE_PLOT_BUYING_SERIOUS_WARNING, LEADERHEAD_ANIM_HATE_NEGATIVE);10734#else10735 szText = GetDiploStringForMessage(DIPLO_MESSAGE_PLOT_BUYING_SERIOUS_WARNING);10736#if defined(MOD_API_PLAYER_LOGS)10737 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_SERIOUS_WARNING, DIPLO_MESSAGE_PLOT_BUYING_SERIOUS_WARNING, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10738#else10739 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_SERIOUS_WARNING, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10740#endif10741#endif10742 }10743 }1074410745 // Plot Buying warning10746 else if(eStatement == DIPLO_STATEMENT_PLOT_BUYING_WARNING)10747 {10748 if(bShouldShowLeaderScene)10749 {10750#if defined(MOD_DIPLOMACY_STFU)10751 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_WARNING, DIPLO_MESSAGE_PLOT_BUYING_WARNING, LEADERHEAD_ANIM_NEGATIVE);10752#else10753 szText = GetDiploStringForMessage(DIPLO_MESSAGE_PLOT_BUYING_WARNING);10754#if defined(MOD_API_PLAYER_LOGS)10755 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_WARNING, DIPLO_MESSAGE_PLOT_BUYING_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10756#else10757 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_YOU_PLOT_BUYING_WARNING, szText, LEADERHEAD_ANIM_NEGATIVE);10758#endif10759#endif10760 }10761 }1076210763 // Plot Buying broken promise10764 else if(eStatement == DIPLO_STATEMENT_PLOT_BUYING_BROKEN_PROMISE)10765 {10766 if(bShouldShowLeaderScene)10767 {10768#if defined(MOD_DIPLOMACY_STFU)10769 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_PLOT_BUYING_BROKEN_PROMISE, LEADERHEAD_ANIM_HATE_NEGATIVE);10770#else10771 szText = GetDiploStringForMessage(DIPLO_MESSAGE_PLOT_BUYING_BROKEN_PROMISE);10772#if defined(MOD_API_PLAYER_LOGS)10773 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_PLOT_BUYING_BROKEN_PROMISE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10774#else10775 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10776#endif10777#endif10778 }10779 }1078010781 // We attacked a Minor someone has a PtP with10782 else if(eStatement == DIPLO_STATEMENT_WE_ATTACKED_YOUR_MINOR)10783 {10784 if(bShouldShowLeaderScene)10785 {10786 PlayerTypes eMinorCiv = (PlayerTypes) iData1;10787 CvAssert(eMinorCiv != NO_PLAYER);10788 if(eMinorCiv != NO_PLAYER)10789 {10790 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();10791#if defined(MOD_DIPLOMACY_STFU)10792 if(IsActHostileTowardsHuman(ePlayer))10793 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_ATTACKED_YOUR_MINOR_CIV, DIPLO_MESSAGE_HOSTILE_WE_ATTACKED_YOUR_MINOR, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10794 else10795 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_ATTACKED_YOUR_MINOR_CIV, DIPLO_MESSAGE_WE_ATTACKED_YOUR_MINOR, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10796#else10797 if(IsActHostileTowardsHuman(ePlayer))10798 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HOSTILE_WE_ATTACKED_YOUR_MINOR, NO_PLAYER, strMinorCivKey);10799 else10800 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WE_ATTACKED_YOUR_MINOR, NO_PLAYER, strMinorCivKey);1080110802#if defined(MOD_API_PLAYER_LOGS)10803 if (IsActHostileTowardsHuman(ePlayer))10804 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_ATTACKED_YOUR_MINOR_CIV, DIPLO_MESSAGE_HOSTILE_WE_ATTACKED_YOUR_MINOR, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10805 else10806 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_ATTACKED_YOUR_MINOR_CIV, DIPLO_MESSAGE_WE_ATTACKED_YOUR_MINOR, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10807#else10808 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_ATTACKED_YOUR_MINOR_CIV, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10809#endif10810#endif1081110812 // Extra flag, since diplo log does not save which minor civ the message was about10813 SetSentAttackProtectedMinorTaunt(ePlayer, eMinorCiv, true);10814 }10815 }10816 }1081710818 // We bullied a Minor someone has a PtP with10819 else if(eStatement == DIPLO_STATEMENT_WE_BULLIED_YOUR_MINOR)10820 {10821 if(bShouldShowLeaderScene)10822 {10823 PlayerTypes eMinorCiv = (PlayerTypes) iData1;10824 CvAssert(eMinorCiv != NO_PLAYER);10825 if (eMinorCiv != NO_PLAYER)10826 {10827 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();10828#if defined(MOD_DIPLOMACY_STFU)10829 if(IsActHostileTowardsHuman(ePlayer))10830 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_BULLIED_YOUR_MINOR_CIV, DIPLO_MESSAGE_HOSTILE_WE_BULLIED_YOUR_MINOR, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10831 else10832 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_BULLIED_YOUR_MINOR_CIV, DIPLO_MESSAGE_WE_BULLIED_YOUR_MINOR, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10833#else10834 if(IsActHostileTowardsHuman(ePlayer))10835 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HOSTILE_WE_BULLIED_YOUR_MINOR, NO_PLAYER, strMinorCivKey);10836 else10837 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WE_BULLIED_YOUR_MINOR, NO_PLAYER, strMinorCivKey);1083810839#if defined(MOD_API_PLAYER_LOGS)10840 if (IsActHostileTowardsHuman(ePlayer))10841 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_BULLIED_YOUR_MINOR_CIV, DIPLO_MESSAGE_HOSTILE_WE_BULLIED_YOUR_MINOR, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10842 else10843 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_BULLIED_YOUR_MINOR_CIV, DIPLO_MESSAGE_WE_BULLIED_YOUR_MINOR, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10844#else10845 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_I_BULLIED_YOUR_MINOR_CIV, szText, LEADERHEAD_ANIM_POSITIVE, eMinorCiv);10846#endif10847#endif10848 }10849 }10850 }1085110852 // We'd like to work with a player10853 else if(eStatement == DIPLO_STATEMENT_WORK_WITH_US)10854 {10855 // Send message to human10856 if(bShouldShowLeaderScene)10857 {10858#if defined(MOD_DIPLOMACY_STFU)10859 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_WORK_WITH_US, DIPLO_MESSAGE_WORK_WITH_US, LEADERHEAD_ANIM_REQUEST);10860#else10861 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WORK_WITH_US);10862#if defined(MOD_API_PLAYER_LOGS)10863 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_WORK_WITH_US, DIPLO_MESSAGE_WORK_WITH_US, szText, LEADERHEAD_ANIM_REQUEST);10864#else10865 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_WORK_WITH_US, szText, LEADERHEAD_ANIM_REQUEST);10866#endif10867#endif10868 }10869 // AI resolution10870 else if(!bHuman)10871 {10872 SetDoFCounter(ePlayer, 0);10873 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetDoFCounter(GetPlayer()->GetID(), 0);1087410875 // Accept - reject is assumed from the counter10876 if(GET_PLAYER(ePlayer).GetDiplomacyAI()->IsDoFAcceptable(GetPlayer()->GetID()))10877 {10878 SetDoFAccepted(ePlayer, true);10879 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetDoFAccepted(GetPlayer()->GetID(), true);1088010881 LogDoF(ePlayer);10882 }10883 }10884 }1088510886 // We no longer want to work with a player10887 else if(eStatement == DIPLO_STATEMENT_END_WORK_WITH_US)10888 {10889 SetDoFAccepted(ePlayer, false);10890 SetDoFCounter(ePlayer, -666);1089110892 // If we had agreed to not settle near the player, break that off10893 SetPlayerNoSettleRequestAccepted(ePlayer, false);10894 SetPlayerNoSettleRequestCounter(ePlayer, -666);1089510896 // If we had agreed to not spy on the player, break that off10897 SetPlayerStopSpyingRequestAccepted(ePlayer, false);10898 SetPlayerStopSpyingRequestCounter(ePlayer, -666);1089910900 // Send message to human10901 if(bShouldShowLeaderScene)10902 {10903#if defined(MOD_DIPLOMACY_STFU)10904 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_END_WORK_WITH_US, ePlayer, LEADERHEAD_ANIM_NEGATIVE);10905#else10906 szText = GetDiploStringForMessage(DIPLO_MESSAGE_END_WORK_WITH_US, ePlayer);10907#if defined(MOD_API_PLAYER_LOGS)10908 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_END_WORK_WITH_US, szText, LEADERHEAD_ANIM_NEGATIVE);10909#else10910 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_NEGATIVE);10911#endif10912#endif10913 }10914 else if(!bHuman)10915 {10916 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetDoFAccepted(GetPlayer()->GetID(), false);10917 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetDoFCounter(GetPlayer()->GetID(), -666);10918 }10919 }1092010921 // Denounce10922 else if(eStatement == DIPLO_STATEMENT_DENOUNCE)10923 {10924 DoDenouncePlayer(ePlayer);10925 LogDenounce(ePlayer);1092610927 // Send message to human10928 if(bShouldShowLeaderScene)10929 {10930#if defined(MOD_DIPLOMACY_STFU)10931 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, ePlayer, LEADERHEAD_ANIM_HATE_NEGATIVE);10932#else10933 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, ePlayer);10934#if defined(MOD_API_PLAYER_LOGS)10935 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10936#else10937 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10938#endif10939#endif10940 }10941 }1094210943 // Denounce Friend (backstab)10944 else if(eStatement == DIPLO_STATEMENT_DENOUNCE_FRIEND)10945 {10946 DoDenouncePlayer(ePlayer);10947 LogDenounce(ePlayer, /*bBackstab*/ true);1094810949 // Send message to human10950 if(bShouldShowLeaderScene)10951 {10952#if defined(MOD_DIPLOMACY_STFU)10953 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_AI_DOF_BACKSTAB, ePlayer, LEADERHEAD_ANIM_HATE_NEGATIVE);10954#else10955 szText = GetDiploStringForMessage(DIPLO_MESSAGE_AI_DOF_BACKSTAB, ePlayer);10956#if defined(MOD_API_PLAYER_LOGS)10957 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_AI_DOF_BACKSTAB, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10958#else10959 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);10960#endif10961#endif10962 }10963 }1096410965 // Request Friend Denounce Someone10966 else if(eStatement == DIPLO_STATEMENT_REQUEST_FRIEND_DENOUNCE)10967 {10968 PlayerTypes eTarget = (PlayerTypes) iData1;10969 CvAssert(eTarget != NO_PLAYER);10970 if(eTarget != NO_PLAYER)10971 {10972 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();1097310974 // Send message to human10975 if(bShouldShowLeaderScene)10976 {10977#if defined(MOD_DIPLOMACY_STFU)10978 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AI_REQUEST_DENOUNCE, DIPLO_MESSAGE_DOF_AI_DENOUNCE_REQUEST, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_POSITIVE, eTarget);10979#else10980 szText = GetDiploStringForMessage(DIPLO_MESSAGE_DOF_AI_DENOUNCE_REQUEST, ePlayer, strTargetCivKey);10981#if defined(MOD_API_PLAYER_LOGS)10982 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AI_REQUEST_DENOUNCE, DIPLO_MESSAGE_DOF_AI_DENOUNCE_REQUEST, szText, LEADERHEAD_ANIM_POSITIVE, eTarget);10983#else10984 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_AI_REQUEST_DENOUNCE, szText, LEADERHEAD_ANIM_POSITIVE, eTarget);10985#endif10986#endif10987 }10988 else if(!bHuman)10989 {10990 bool bAgree = IsDenounceAcceptable(eTarget, /*bBias*/ true);1099110992 LogFriendRequestDenounce(ePlayer, eTarget, bAgree);1099310994 if(bAgree)10995 {10996 GET_PLAYER(ePlayer).GetDiplomacyAI()->DoDenouncePlayer(eTarget);10997 GET_PLAYER(ePlayer).GetDiplomacyAI()->LogDenounce(eTarget);1099810999 // Denounced a human?11000#if defined(MOD_AI_MP_DIPLOMACY)11001 bool bActive = (eTarget == GC.getGame().getActivePlayer());11002 if (MOD_AI_MP_DIPLOMACY) bActive = GET_PLAYER(eTarget).isHuman();11003 if(bActive)11004#else11005 if(eTarget == GC.getGame().getActivePlayer())11006#endif11007 {11008#if defined(MOD_DIPLOMACY_STFU)11009 SendAILeaderMessage(ePlayer, eTarget, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, eTarget, LEADERHEAD_ANIM_HATE_NEGATIVE);11010#else11011 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, eTarget);11012#if defined(MOD_API_PLAYER_LOGS)11013 CvDiplomacyRequests::SendRequest(ePlayer, eTarget, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_WORK_AGAINST_SOMEONE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11014#else11015 CvDiplomacyRequests::SendRequest(ePlayer, eTarget, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11016#endif11017#endif11018 }11019 }11020 else11021 {11022 // Oh, you're gonna say no, are you?11023 if(IsFriendDenounceRefusalUnacceptable(ePlayer, eTarget))11024 {11025 DoDenouncePlayer(ePlayer);11026 LogDenounce(ePlayer, /*bBackstab*/ false, /*bRefusal*/ true);11027 }11028 }11029 }11030 }11031 }1103211033 // We no longer want to work with a player against someone else11034 //else if (eStatement == DIPLO_STATEMENT_END_WORK_AGAINST_SOMEONE)11035 //{11036 // PlayerTypes eAgainstPlayer = (PlayerTypes) iData1;1103711038 // SetWorkingAgainstPlayerAccepted(ePlayer, eAgainstPlayer, false);11039 // SetWorkingAgainstPlayerCounter(ePlayer, eAgainstPlayer, -666);1104011041 // // Send message to human11042 // if (bShouldShowLeaderScene)11043 // {11044 // const char* strAgainstPlayerKey = GET_PLAYER(eAgainstPlayer).getNameKey();11045 // szText = GetDiploStringForMessage(DIPLO_MESSAGE_END_WORK_AGAINST_SOMEONE, ePlayer, strAgainstPlayerKey);1104611047 // gDLL->GameplayDiplomacyAILeaderMessage(GetPlayer()->GetID(), DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);11048 // }11049 // else if (!bHuman)11050 // {11051 // GET_PLAYER(ePlayer).GetDiplomacyAI()->SetWorkingAgainstPlayerAccepted(GetPlayer()->GetID(), eAgainstPlayer, false);11052 // GET_PLAYER(ePlayer).GetDiplomacyAI()->SetWorkingAgainstPlayerCounter(GetPlayer()->GetID(), eAgainstPlayer, -666);11053 // }11054 //}1105511056 // We'd like to declare war on someone11057 else if(eStatement == DIPLO_STATEMENT_COOP_WAR_REQUEST)11058 {11059 PlayerTypes eAgainstPlayer = (PlayerTypes) iData1;11060 CvAssert(eAgainstPlayer != NO_PLAYER);11061 if(eAgainstPlayer != NO_PLAYER)11062 {11063 // Send message to human11064 if(bShouldShowLeaderScene)11065 {11066 const char* strAgainstPlayerKey = GET_PLAYER(eAgainstPlayer).getNameKey();11067#if defined(MOD_DIPLOMACY_STFU)11068 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR, DIPLO_MESSAGE_COOP_WAR_REQUEST, ePlayer, strAgainstPlayerKey, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11069#else11070 szText = GetDiploStringForMessage(DIPLO_MESSAGE_COOP_WAR_REQUEST, ePlayer, strAgainstPlayerKey);11071#if defined(MOD_API_PLAYER_LOGS)11072 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR, DIPLO_MESSAGE_COOP_WAR_REQUEST, szText, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11073#else11074 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR, szText, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11075#endif11076#endif11077 }11078 // AI resolution11079 else if(!bHuman)11080 {11081 SetCoopWarCounter(ePlayer, eAgainstPlayer, 0);11082 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetCoopWarCounter(GetPlayer()->GetID(), eAgainstPlayer, 0);1108311084 // Will they agree?11085 CoopWarStates eAcceptedState = GET_PLAYER(ePlayer).GetDiplomacyAI()->GetWillingToAgreeToCoopWarState(GetPlayer()->GetID(), eAgainstPlayer);11086 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetCoopWarAcceptedState(GetPlayer()->GetID(), eAgainstPlayer, eAcceptedState);1108711088 if(eAcceptedState == COOP_WAR_STATE_ACCEPTED)11089 {11090 DeclareWar(eAgainstPlayer);11091 GetPlayer()->GetMilitaryAI()->RequestBasicAttack(eAgainstPlayer, 1);1109211093 GET_PLAYER(ePlayer).GetDiplomacyAI()->DeclareWar(eAgainstPlayer);11094 GET_PLAYER(ePlayer).GetMilitaryAI()->RequestBasicAttack(eAgainstPlayer, 1);1109511096 int iLockedTurns = /*15*/ GC.getCOOP_WAR_LOCKED_LENGTH();11097 GET_TEAM(GetPlayer()->getTeam()).ChangeNumTurnsLockedIntoWar(GET_PLAYER(eAgainstPlayer).getTeam(), iLockedTurns);11098 GET_TEAM(GET_PLAYER(ePlayer).getTeam()).ChangeNumTurnsLockedIntoWar(GET_PLAYER(eAgainstPlayer).getTeam(), iLockedTurns);11099 }1110011101 LogCoopWar(ePlayer, eAgainstPlayer, eAcceptedState);1110211103 // If the other player didn't agree then we don't need to change our state from what it was (NO_STATE)11104 if(eAcceptedState != COOP_WAR_STATE_REJECTED)11105 SetCoopWarAcceptedState(ePlayer, eAgainstPlayer, eAcceptedState);11106 }11107 }11108 }1110911110 // We'd like to declare war on someone11111 else if(eStatement == DIPLO_STATEMENT_COOP_WAR_TIME)11112 {11113 PlayerTypes eAgainstPlayer = (PlayerTypes) iData1;11114 CvAssert(eAgainstPlayer != NO_PLAYER);11115 if(eAgainstPlayer != NO_PLAYER)11116 {11117 // Send message to human11118 if(bShouldShowLeaderScene)11119 {11120 const char* strAgainstPlayerKey = GET_PLAYER(eAgainstPlayer).getNameKey();11121#if defined(MOD_DIPLOMACY_STFU)11122 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR_TIME, DIPLO_MESSAGE_COOP_WAR_TIME, ePlayer, strAgainstPlayerKey, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11123#else11124 szText = GetDiploStringForMessage(DIPLO_MESSAGE_COOP_WAR_TIME, ePlayer, strAgainstPlayerKey);11125#if defined(MOD_API_PLAYER_LOGS)11126 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR_TIME, DIPLO_MESSAGE_COOP_WAR_TIME, szText, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11127#else11128 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_COOP_WAR_TIME, szText, LEADERHEAD_ANIM_POSITIVE, eAgainstPlayer);11129#endif11130#endif11131 }11132 }1113311134 // No AI resolution! This is handled automatically in DoCounters() - no need for diplo exchange11135 }1113611137 // We're making a demand of Player11138 else if(eStatement == DIPLO_STATEMENT_DEMAND)11139 {11140 // Active human11141 if(bShouldShowLeaderScene)11142 {11143#if defined(MOD_DIPLOMACY_STFU)11144 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_DEMAND, DIPLO_MESSAGE_DEMAND, LEADERHEAD_ANIM_DEMAND);11145#else11146 szText = GetDiploStringForMessage(DIPLO_MESSAGE_DEMAND);11147#if defined(MOD_API_PLAYER_LOGS)11148 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_DEMAND, DIPLO_MESSAGE_DEMAND, szText, LEADERHEAD_ANIM_DEMAND);11149#else11150 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_DEMAND, szText, LEADERHEAD_ANIM_DEMAND);11151#endif11152#endif11153 }11154 // AI player11155 else if(!bHuman)11156 {11157 // For now the AI will always give in1115811159#if defined(MOD_AI_MP_DIPLOMACY)11160 if (MOD_AI_MP_DIPLOMACY) {11161 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11162 } else {11163#endif11164 CvDeal kDeal = *pDeal;1116511166 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11167 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11168#if defined(MOD_AI_MP_DIPLOMACY)11169 }11170#endif11171 }11172 }1117311174 // We're making a request of Player11175 else if(eStatement == DIPLO_STATEMENT_REQUEST)11176 {11177 // Active human11178 if(bShouldShowLeaderScene)11179 {11180#if defined(MOD_DIPLOMACY_STFU)11181 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_REQUEST, DIPLO_MESSAGE_REQUEST, LEADERHEAD_ANIM_REQUEST);11182#else11183 szText = GetDiploStringForMessage(DIPLO_MESSAGE_REQUEST);11184#if defined(MOD_API_PLAYER_LOGS)11185 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_REQUEST, DIPLO_MESSAGE_REQUEST, szText, LEADERHEAD_ANIM_REQUEST);11186#else11187 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_REQUEST, szText, LEADERHEAD_ANIM_REQUEST);11188#endif11189#endif11190 }11191 // AI player11192 else if(!bHuman)11193 {11194 // For now the AI will always give in - may eventually write additional logic here1119511196#if defined(MOD_AI_MP_DIPLOMACY)11197 if (MOD_AI_MP_DIPLOMACY) {11198 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11199 } else {11200#endif11201 CvDeal kDeal = *pDeal;1120211203 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11204 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11205#if defined(MOD_AI_MP_DIPLOMACY)11206 }11207#endif11208 }11209 }1121011211 // Player has a Luxury we'd like11212 else if(eStatement == DIPLO_STATEMENT_LUXURY_TRADE)11213 {11214 // Active human11215 if(bShouldShowLeaderScene)11216 {11217#if defined(MOD_DIPLOMACY_STFU)11218 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_LUXURY_TRADE, LEADERHEAD_ANIM_REQUEST);11219#else11220 szText = GetDiploStringForMessage(DIPLO_MESSAGE_LUXURY_TRADE);11221#if defined(MOD_API_PLAYER_LOGS)11222 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_LUXURY_TRADE, szText, LEADERHEAD_ANIM_REQUEST);11223#else11224 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11225#endif11226#endif11227 }11228 // Offer to an AI player11229 else if(!bHuman)11230 {11231 CvDeal kDeal = *pDeal;1123211233 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11234#if defined(MOD_AI_MP_DIPLOMACY)11235 if (MOD_AI_MP_DIPLOMACY) {11236 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11237 } else {11238#endif11239 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11240 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11241#if defined(MOD_AI_MP_DIPLOMACY)11242 }11243#endif11244 }11245 }1124611247 // Offer Embassy Exchange11248 else if(eStatement == DIPLO_STATEMENT_EMBASSY_EXCHANGE)11249 {11250 if(bShouldShowLeaderScene)11251 {11252#if defined(MOD_DIPLOMACY_STFU)11253 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_EMBASSY_EXCHANGE, LEADERHEAD_ANIM_REQUEST);11254#else11255 szText = GetDiploStringForMessage(DIPLO_MESSAGE_EMBASSY_EXCHANGE);11256#if defined(MOD_API_PLAYER_LOGS)11257 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_EMBASSY_EXCHANGE, szText, LEADERHEAD_ANIM_REQUEST);11258#else11259 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11260#endif11261#endif11262 }11263 else if(!bHuman)11264 {11265 CvDeal kDeal = *pDeal;1126611267 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11268#if defined(MOD_AI_MP_DIPLOMACY)11269 if (MOD_AI_MP_DIPLOMACY) {11270 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11271 } else {11272#endif11273 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11274 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11275#if defined(MOD_AI_MP_DIPLOMACY)11276 }11277#endif11278 }11279 }1128011281 // Offer Embassy11282 else if(eStatement == DIPLO_STATEMENT_EMBASSY_OFFER)11283 {11284 if(bShouldShowLeaderScene)11285 {11286#if defined(MOD_DIPLOMACY_STFU)11287 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_EMBASSY_OFFER, LEADERHEAD_ANIM_REQUEST);11288#else11289 szText = GetDiploStringForMessage(DIPLO_MESSAGE_EMBASSY_OFFER);11290#if defined(MOD_API_PLAYER_LOGS)11291 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_EMBASSY_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11292#else11293 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11294#endif11295#endif11296 }11297 else if(!bHuman)11298 {11299 CvDeal kDeal = *pDeal;1130011301 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11302#if defined(MOD_AI_MP_DIPLOMACY)11303 if (MOD_AI_MP_DIPLOMACY) {11304 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11305 } else {11306#endif11307 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11308 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11309#if defined(MOD_AI_MP_DIPLOMACY)11310 }11311#endif11312 }11313 }1131411315 // Offer Open Borders Exchange11316 else if(eStatement == DIPLO_STATEMENT_OPEN_BORDERS_EXCHANGE)11317 {11318 // Active human11319 if(bShouldShowLeaderScene)11320 {11321#if defined(MOD_DIPLOMACY_STFU)11322 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_OPEN_BORDERS_EXCHANGE, LEADERHEAD_ANIM_REQUEST);11323#else11324 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OPEN_BORDERS_EXCHANGE);11325#if defined(MOD_API_PLAYER_LOGS)11326 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_OPEN_BORDERS_EXCHANGE, szText, LEADERHEAD_ANIM_REQUEST);11327#else11328 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11329#endif11330#endif11331 }11332 // Offer to an AI player11333 else if(!bHuman)11334 {11335 CvDeal kDeal = *pDeal;1133611337 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11338#if defined(MOD_AI_MP_DIPLOMACY)11339 if (MOD_AI_MP_DIPLOMACY) {11340 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11341 } else {11342#endif11343 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11344 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11345#if defined(MOD_AI_MP_DIPLOMACY)11346 }11347#endif11348 }11349 }1135011351 // Offer Open Borders11352 else if(eStatement == DIPLO_STATEMENT_OPEN_BORDERS_OFFER)11353 {11354 // Active human11355 if(bShouldShowLeaderScene)11356 {11357#if defined(MOD_DIPLOMACY_STFU)11358 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_OPEN_BORDERS_OFFER, LEADERHEAD_ANIM_REQUEST);11359#else11360 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OPEN_BORDERS_OFFER);11361#if defined(MOD_API_PLAYER_LOGS)11362 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_OPEN_BORDERS_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11363#else11364 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11365#endif11366#endif11367 }11368 // Offer to an AI player11369 else if(!bHuman)11370 {11371 CvDeal kDeal = *pDeal;1137211373 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11374#if defined(MOD_AI_MP_DIPLOMACY)11375 if (MOD_AI_MP_DIPLOMACY) {11376 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11377 } else {11378#endif11379 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11380 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11381#if defined(MOD_AI_MP_DIPLOMACY)11382 }11383#endif11384 }11385 }1138611387 // Offer plans to make Research Agreement11388 else if(eStatement == DIPLO_STATEMENT_PLAN_RESEARCH_AGREEMENT)11389 {11390 // Active human11391 if(bShouldShowLeaderScene)11392 {11393#if defined(MOD_DIPLOMACY_STFU)11394 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_PLAN_RESEARCH_AGREEMENT, DIPLO_MESSAGE_PLAN_RESEARCH_AGREEMENT, LEADERHEAD_ANIM_REQUEST);11395#else11396 szText = GetDiploStringForMessage(DIPLO_MESSAGE_PLAN_RESEARCH_AGREEMENT);11397#if defined(MOD_API_PLAYER_LOGS)11398 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_PLAN_RESEARCH_AGREEMENT, DIPLO_MESSAGE_PLAN_RESEARCH_AGREEMENT, szText, LEADERHEAD_ANIM_REQUEST);11399#else11400 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_DISCUSS_PLAN_RESEARCH_AGREEMENT, szText, LEADERHEAD_ANIM_REQUEST);11401#endif11402#endif11403 }11404 // Offer to an AI player11405 else if(!bHuman)11406 {11407 if(!GET_PLAYER(ePlayer).GetDiplomacyAI()->IsWantsResearchAgreementWithPlayer(GetPlayer()->GetID()))11408 GET_PLAYER(ePlayer).GetDiplomacyAI()->DoAddWantsResearchAgreementWithPlayer(GetPlayer()->GetID()); // just auto-reciprocate right now11409 }11410 }1141111412 // Offer Research Agreement11413 else if(eStatement == DIPLO_STATEMENT_RESEARCH_AGREEMENT_OFFER)11414 {11415 // Active human11416 if(bShouldShowLeaderScene)11417 {11418#if defined(MOD_DIPLOMACY_STFU)11419 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_RESEARCH_AGREEMENT_OFFER, LEADERHEAD_ANIM_REQUEST);11420#else11421 szText = GetDiploStringForMessage(DIPLO_MESSAGE_RESEARCH_AGREEMENT_OFFER);11422#if defined(MOD_API_PLAYER_LOGS)11423 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_RESEARCH_AGREEMENT_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11424#else11425 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11426#endif11427#endif11428 }11429 // Offer to an AI player11430 else if(!bHuman)11431 {11432 CvDeal kDeal = *pDeal;1143311434 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11435#if defined(MOD_AI_MP_DIPLOMACY)11436 if (MOD_AI_MP_DIPLOMACY) {11437 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);11438 } else {11439#endif11440 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11441 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11442#if defined(MOD_AI_MP_DIPLOMACY)11443 }11444#endif11445 }11446 }1144711448 // Offer to renew deal11449 else if(eStatement == DIPLO_STATEMENT_RENEW_DEAL)11450 {11451 // Active human11452 if(bShouldShowLeaderScene)11453 {11454 int iDealValueToMe, iValueImOffering, iValueTheyreOffering, iAmountOverWeWillRequest, iAmountUnderWeWillOffer;11455 DiploMessageTypes eMessageType = NUM_DIPLO_MESSAGE_TYPES;11456 bool bCantMatchOffer;11457 bool bDealAcceptable = m_pPlayer->GetDealAI()->IsDealWithHumanAcceptable(pDeal, ePlayer, iDealValueToMe, iValueImOffering, iValueTheyreOffering, iAmountOverWeWillRequest, iAmountUnderWeWillOffer, bCantMatchOffer);1145811459 if(!bDealAcceptable)11460 {11461 if(iValueTheyreOffering > iValueImOffering)11462 {11463 bDealAcceptable = true;11464 }11465 }1146611467 if(bDealAcceptable)11468 {11469 eMessageType = DIPLO_MESSAGE_RENEW_DEAL;11470 }11471 // We want more from this Deal11472 else if(iDealValueToMe > -75 &&11473 iValueImOffering < (iValueTheyreOffering * 5)) // The total value of the deal might not be that bad, but if he's asking for WAY more than he's offering (e.g. something for nothing) then it's not unacceptable, but insulting11474 {11475 eMessageType = DIPLO_MESSAGE_WANT_MORE_RENEW_DEAL;11476 }11477 else11478 {11479 CvDeal* pRenewDeal = GetDealToRenew();11480 if (pRenewDeal)11481 {11482 pRenewDeal->m_bCheckedForRenewal = true;11483 }11484 ClearDealToRenew();11485 }1148611487 if(eMessageType != NUM_DIPLO_MESSAGE_TYPES)11488 {11489 CvDeal* pRenewDeal = GetDealToRenew();11490 if (pRenewDeal)11491 {11492 pRenewDeal->m_bCheckedForRenewal = true;11493 }11494#if defined(MOD_DIPLOMACY_STFU)11495 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, eMessageType, LEADERHEAD_ANIM_REQUEST);11496#else11497 szText = GetDiploStringForMessage(eMessageType);11498#if defined(MOD_API_PLAYER_LOGS)11499 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, eMessageType, szText, LEADERHEAD_ANIM_REQUEST);11500#else11501 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_REQUEST);11502#endif11503#endif11504 }11505 }11506 // Offer to an AI player11507 else if(!bHuman)11508 {11509 CvDeal kDeal = *pDeal;11510 int iDealType = -1;11511 CvDeal* pRenewedDeal = m_pPlayer->GetDiplomacyAI()->GetDealToRenew(&iDealType);11512 if(pRenewedDeal)11513 { 11514 if (iDealType != 0) // this is not a historic deal, so don't change the resource allocations11515 {11516 CvGameDeals::PrepareRenewDeal(m_pPlayer->GetDiplomacyAI()->GetDealToRenew(), &kDeal);11517 }11518 pRenewedDeal->m_bCheckedForRenewal = true;11519 m_pPlayer->GetDiplomacyAI()->ClearDealToRenew();11520 }1152111522 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending11523#if defined(MOD_AI_MP_DIPLOMACY)11524 if (MOD_AI_MP_DIPLOMACY) {11525 GC.getGame().GetGameDeals()->FinalizeDeal(kDeal, true);11526 } else {11527#endif11528 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);11529 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);11530#if defined(MOD_AI_MP_DIPLOMACY)11531 }11532#endif11533 }11534 }1153511536 // They're now unforgivable11537 else if(eStatement == DIPLO_STATEMENT_NOW_UNFORGIVABLE)11538 {11539 if(bShouldShowLeaderScene)11540 {11541#if defined(MOD_DIPLOMACY_STFU)11542 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_NOW_UNFORGIVABLE, LEADERHEAD_ANIM_HATE_NEGATIVE);11543#else11544 szText = GetDiploStringForMessage(DIPLO_MESSAGE_NOW_UNFORGIVABLE);11545#if defined(MOD_API_PLAYER_LOGS)11546 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_NOW_UNFORGIVABLE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11547#else11548 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11549#endif11550#endif11551 }11552 }1155311554 // They're now an enemy11555 else if(eStatement == DIPLO_STATEMENT_NOW_ENEMY)11556 {11557 if(bShouldShowLeaderScene)11558 {11559#if defined(MOD_DIPLOMACY_STFU)11560 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_NOW_ENEMY, LEADERHEAD_ANIM_HATE_NEGATIVE);11561#else11562 szText = GetDiploStringForMessage(DIPLO_MESSAGE_NOW_ENEMY);11563#if defined(MOD_API_PLAYER_LOGS)11564 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_NOW_ENEMY, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11565#else11566 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11567#endif11568#endif11569 }11570 }1157111572 // They caught one of our spies11573 else if(eStatement == DIPLO_STATEMENT_CAUGHT_YOUR_SPY)11574 {11575 if(bShouldShowLeaderScene)11576 {11577#if defined(MOD_DIPLOMACY_STFU)11578 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_CAUGHT_YOUR_SPY, DIPLO_MESSAGE_CAUGHT_YOUR_SPY, LEADERHEAD_ANIM_HATE_NEGATIVE);11579#else11580 szText = GetDiploStringForMessage(DIPLO_MESSAGE_CAUGHT_YOUR_SPY);11581#if defined(MOD_API_PLAYER_LOGS)11582 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_CAUGHT_YOUR_SPY, DIPLO_MESSAGE_CAUGHT_YOUR_SPY, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11583#else11584 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_CAUGHT_YOUR_SPY, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11585#endif11586#endif11587 }11588 }1158911590 // They killed one of our spies11591 else if(eStatement == DIPLO_STATEMENT_KILLED_YOUR_SPY)11592 {11593 if(bShouldShowLeaderScene)11594 {11595#if defined(MOD_DIPLOMACY_STFU)11596 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_YOUR_SPY, DIPLO_MESSAGE_KILLED_YOUR_SPY, LEADERHEAD_ANIM_NEGATIVE);11597#else11598 szText = GetDiploStringForMessage(DIPLO_MESSAGE_KILLED_YOUR_SPY);11599#if defined(MOD_API_PLAYER_LOGS)11600 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_YOUR_SPY, DIPLO_MESSAGE_KILLED_YOUR_SPY, szText, LEADERHEAD_ANIM_NEGATIVE);11601#else11602 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_YOUR_SPY, szText, LEADERHEAD_ANIM_NEGATIVE);11603#endif11604#endif11605 }11606 }1160711608 // We killed one of their spies11609 else if(eStatement == DIPLO_STATEMENT_KILLED_MY_SPY)11610 {11611 if(bShouldShowLeaderScene)11612 {11613#if defined(MOD_DIPLOMACY_STFU)11614 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_MY_SPY, DIPLO_MESSAGE_KILLED_MY_SPY, LEADERHEAD_ANIM_DEFEATED);11615#else11616 szText = GetDiploStringForMessage(DIPLO_MESSAGE_KILLED_MY_SPY);11617#if defined(MOD_API_PLAYER_LOGS)11618 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_MY_SPY, DIPLO_MESSAGE_KILLED_MY_SPY, szText, LEADERHEAD_ANIM_DEFEATED);11619#else11620 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_KILLED_MY_SPY, szText, LEADERHEAD_ANIM_DEFEATED);11621#endif11622#endif11623 }11624 }1162511626 // We (the AI) have intrigue information to share with them11627 else if(eStatement == DIPLO_STATEMENT_SHARE_INTRIGUE)11628 {11629 IntrigueNotificationMessage* pNotificationMessage = GetPlayer()->GetEspionage()->GetRecentIntrigueInfo(ePlayer);11630 CvAssertMsg(pNotificationMessage, "pNotificationMessage is null. Whut?");11631 if (pNotificationMessage)11632 {11633 CvAssertMsg(pNotificationMessage->m_eSourcePlayer != NO_PLAYER, "There is no plotter! What's going on");11634 PlayerTypes ePlotterPlayer = pNotificationMessage->m_eSourcePlayer;11635 CvIntrigueType eIntrigueType = (CvIntrigueType)pNotificationMessage->m_iIntrigueType;11636 // don't share intrigue about two parties if they are already at war11637 if (!GET_TEAM(GET_PLAYER(ePlayer).getTeam()).isAtWar(GET_PLAYER(ePlotterPlayer).getTeam()))11638 {11639 CvCity* pCity = NULL;11640 if(pNotificationMessage->m_iCityX != -1 && pNotificationMessage->m_iCityY != -1)11641 {11642 CvPlot* pPlot = GC.getMap().plot(pNotificationMessage->m_iCityX, pNotificationMessage->m_iCityY);11643 if(pPlot)11644 {11645 pCity = pPlot->getPlotCity();11646 }11647 }1164811649 // add the notification to the 11650 GET_PLAYER(ePlayer).GetEspionage()->AddIntrigueMessage(m_pPlayer->GetID(), ePlotterPlayer, ePlayer, NO_BUILDING, NO_PROJECT, eIntrigueType, 0, pCity, false);1165111652 if(bShouldShowLeaderScene)11653 {11654 const char* szPlayerName;11655 if(GC.getGame().isGameMultiPlayer() && GET_PLAYER(ePlotterPlayer).isHuman())11656 {11657 szPlayerName = GET_PLAYER(ePlotterPlayer).getNickName();11658 }11659 else11660 {11661 szPlayerName = GET_PLAYER(ePlotterPlayer).getNameKey();11662 }1166311664 szText = "";1166511666#if defined(MOD_DIPLOMACY_STFU)11667 switch(eIntrigueType)11668 {11669 case INTRIGUE_TYPE_ARMY_SNEAK_ATTACK:11670 if(pCity)11671 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_KNOWN_CITY, NO_PLAYER, szPlayerName, pCity->getNameKey(), LEADERHEAD_ANIM_POSITIVE);11672 else11673 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_UNKNOWN_CITY, NO_PLAYER, szPlayerName, LEADERHEAD_ANIM_POSITIVE);11674 break;11675 case INTRIGUE_TYPE_AMPHIBIOUS_SNEAK_ATTACK:11676 if(pCity)11677 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_KNOWN_CITY, NO_PLAYER, szPlayerName, pCity->getNameKey(), LEADERHEAD_ANIM_POSITIVE);11678 else11679 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_UNKNOWN_CITY, NO_PLAYER, szPlayerName, LEADERHEAD_ANIM_POSITIVE);11680 break;11681 case INTRIGUE_TYPE_DECEPTION:11682 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SHARE_INTRIGUE, NO_PLAYER, szPlayerName, LEADERHEAD_ANIM_POSITIVE);11683 break;11684 default:11685 CvAssertMsg(false, "Unknown intrigue type");11686 break;11687 }11688#else11689#if defined(MOD_API_PLAYER_LOGS)11690 DiploMessageTypes eMessage = NO_DIPLO_MESSAGE_TYPE;11691#endif11692 switch(eIntrigueType)11693 {11694 case INTRIGUE_TYPE_ARMY_SNEAK_ATTACK:11695 if(pCity)11696 {11697#if defined(MOD_API_PLAYER_LOGS)11698 eMessage = DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_KNOWN_CITY;11699#endif11700 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_KNOWN_CITY, NO_PLAYER, szPlayerName, pCity->getNameKey());11701 }11702 else11703 {11704#if defined(MOD_API_PLAYER_LOGS)11705 eMessage = DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_UNKNOWN_CITY;11706#endif11707 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SHARE_INTRIGUE_ARMY_SNEAK_ATTACK_UNKNOWN_CITY, NO_PLAYER, szPlayerName);11708 }11709 break;11710 case INTRIGUE_TYPE_AMPHIBIOUS_SNEAK_ATTACK:11711 if(pCity)11712 {11713#if defined(MOD_API_PLAYER_LOGS)11714 eMessage = DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_KNOWN_CITY;11715#endif11716 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_KNOWN_CITY, NO_PLAYER, szPlayerName, pCity->getNameKey());11717 }11718 else11719 {11720#if defined(MOD_API_PLAYER_LOGS)11721 eMessage = DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_UNKNOWN_CITY;11722#endif11723 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SHARE_INTRIGUE_AMPHIBIOUS_SNEAK_ATTACK_UNKNOWN_CITY, NO_PLAYER, szPlayerName);11724 }11725 break;11726 case INTRIGUE_TYPE_DECEPTION:11727#if defined(MOD_API_PLAYER_LOGS)11728 eMessage = DIPLO_MESSAGE_SHARE_INTRIGUE;11729#endif11730 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SHARE_INTRIGUE, NO_PLAYER, szPlayerName);11731 break;11732 default:11733 CvAssertMsg(false, "Unknown intrigue type");11734 break;11735 }1173611737#if defined(MOD_API_PLAYER_LOGS)11738 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, eMessage, szText, LEADERHEAD_ANIM_POSITIVE);11739#else11740 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);11741#endif11742#endif11743 }1174411745 }1174611747 // mark the messages as shared so the player isn't told the same thing repeatedly11748 for(uint ui = 0; ui < MAX_MAJOR_CIVS; ui++)11749 {11750 PlayerTypes eLoopPlayer = (PlayerTypes)ui;11751 GET_PLAYER(eLoopPlayer).GetEspionage()->MarkRecentIntrigueAsShared(ePlayer, ePlotterPlayer, eIntrigueType);11752 }11753 }11754 }1175511756 // Stop converting our cities11757 else if(eStatement == DIPLO_STATEMENT_STOP_CONVERSIONS)11758 {11759 if(bShouldShowLeaderScene)11760 {11761#if defined(MOD_DIPLOMACY_STFU)11762 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_CONVERSIONS, DIPLO_MESSAGE_STOP_CONVERSIONS, LEADERHEAD_ANIM_NEGATIVE);11763#else11764 szText = GetDiploStringForMessage(DIPLO_MESSAGE_STOP_CONVERSIONS);11765#if defined(MOD_API_PLAYER_LOGS)11766 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_CONVERSIONS, DIPLO_MESSAGE_STOP_CONVERSIONS, szText, LEADERHEAD_ANIM_NEGATIVE);11767#else11768 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_CONVERSIONS, szText, LEADERHEAD_ANIM_NEGATIVE);11769#endif11770#endif11771 }11772 }1177311774 // Stop digging up our yard11775 else if(eStatement == DIPLO_STATEMENT_STOP_DIGGING)11776 {11777 if(bShouldShowLeaderScene)11778 {11779#if defined(MOD_DIPLOMACY_STFU)11780 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_DIGGING, DIPLO_MESSAGE_STOP_DIGGING, LEADERHEAD_ANIM_NEGATIVE);11781#else11782 szText = GetDiploStringForMessage(DIPLO_MESSAGE_STOP_DIGGING);11783#if defined(MOD_API_PLAYER_LOGS)11784 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_DIGGING, DIPLO_MESSAGE_STOP_DIGGING, szText, LEADERHEAD_ANIM_NEGATIVE);11785#else11786 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_STOP_DIGGING, szText, LEADERHEAD_ANIM_NEGATIVE);11787#endif11788#endif11789 }11790 }1179111792 // Insult11793 else if(eStatement == DIPLO_STATEMENT_INSULT)11794 {11795 // Change other players' guess as to our Approach (right now it falls in line exactly with the Approach...)11796 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuess(GetPlayer()->GetID(), MAJOR_CIV_APPROACH_HOSTILE);11797 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuessCounter(GetPlayer()->GetID(), 0);1179811799 if(bShouldShowLeaderScene)11800 {11801#if defined(MOD_DIPLOMACY_STFU)11802 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_INSULT_ROOT, LEADERHEAD_ANIM_HATE_NEGATIVE);11803#else11804 szText = GetDiploStringForMessage(DIPLO_MESSAGE_INSULT_ROOT);11805#if defined(MOD_API_PLAYER_LOGS)11806 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_INSULT_ROOT, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11807#else11808 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11809#endif11810#endif11811 }11812 }1181311814 // Compliment11815 else if(eStatement == DIPLO_STATEMENT_COMPLIMENT)11816 {11817 // Change other players' guess as to our Approach (right now it falls in line exactly with the Approach...)11818 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuess(GetPlayer()->GetID(), MAJOR_CIV_APPROACH_FRIENDLY);11819 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuessCounter(GetPlayer()->GetID(), 0);1182011821 if(bShouldShowLeaderScene)11822 {11823#if defined(MOD_DIPLOMACY_STFU)11824 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_COMPLIMENT, LEADERHEAD_ANIM_POSITIVE);11825#else11826 szText = GetDiploStringForMessage(DIPLO_MESSAGE_COMPLIMENT);11827#if defined(MOD_API_PLAYER_LOGS)11828 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_COMPLIMENT, szText, LEADERHEAD_ANIM_POSITIVE);11829#else11830 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);11831#endif11832#endif11833 }11834 }1183511836 // Boot-kissing of a stronger power11837 else if(eStatement == DIPLO_STATEMENT_BOOT_KISSING)11838 {11839 // Change other players' guess as to our Approach (right now it falls in line exactly with the Approach...)11840 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuess(GetPlayer()->GetID(), MAJOR_CIV_APPROACH_AFRAID);11841 GET_PLAYER(ePlayer).GetDiplomacyAI()->SetApproachTowardsUsGuessCounter(GetPlayer()->GetID(), 0);1184211843 if(bShouldShowLeaderScene)11844 {11845#if defined(MOD_DIPLOMACY_STFU)11846 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_BOOT_KISSING, LEADERHEAD_ANIM_POSITIVE);11847#else11848 szText = GetDiploStringForMessage(DIPLO_MESSAGE_BOOT_KISSING);11849#if defined(MOD_API_PLAYER_LOGS)11850 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_BOOT_KISSING, szText, LEADERHEAD_ANIM_POSITIVE);11851#else11852 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);11853#endif11854#endif11855 }11856 }1185711858 // We're warning a player his warmongering behavior is attracting attention11859 else if(eStatement == DIPLO_STATEMENT_WARMONGER)11860 {11861 if(bShouldShowLeaderScene)11862 {11863#if defined(MOD_DIPLOMACY_STFU)11864 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_WARMONGER, LEADERHEAD_ANIM_HATE_NEGATIVE);11865#else11866 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WARMONGER);11867#if defined(MOD_API_PLAYER_LOGS)11868 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_WARMONGER, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11869#else11870 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11871#endif11872#endif11873 }11874 }1187511876 // We're warning a player his interactions with city states is not to our liking11877 else if(eStatement == DIPLO_STATEMENT_MINOR_CIV_COMPETITION)11878 {11879 if(bShouldShowLeaderScene)11880 {11881 PlayerTypes eMinorCiv = (PlayerTypes) iData1;11882 const char* strMinorCivKey = GET_PLAYER(eMinorCiv).getNameKey();1188311884#if defined(MOD_DIPLOMACY_STFU)11885 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_MINOR_CIV_COMPETITION, NO_PLAYER, strMinorCivKey, LEADERHEAD_ANIM_NEGATIVE);11886#else11887 szText = GetDiploStringForMessage(DIPLO_MESSAGE_MINOR_CIV_COMPETITION, NO_PLAYER, strMinorCivKey);11888#if defined(MOD_API_PLAYER_LOGS)11889 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_MINOR_CIV_COMPETITION, szText, LEADERHEAD_ANIM_NEGATIVE);11890#else11891 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_NEGATIVE);11892#endif11893#endif11894 }11895 }1189611897 // Human befriended an enemy of this AI!11898 else if(eStatement == DIPLO_STATEMENT_ANGRY_BEFRIEND_ENEMY)11899 {11900 if(bShouldShowLeaderScene)11901 {11902 PlayerTypes eTarget = (PlayerTypes) iData1;11903 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();1190411905#if defined(MOD_DIPLOMACY_STFU)11906 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_DOFED_ENEMY, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);11907#else11908 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DOFED_ENEMY, ePlayer, strTargetCivKey);11909#if defined(MOD_API_PLAYER_LOGS)11910 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_DOFED_ENEMY, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11911#else11912 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11913#endif11914#endif11915 }11916 }1191711918 // Human denounced a friend of this AI!11919 else if(eStatement == DIPLO_STATEMENT_ANGRY_DENOUNCED_FRIEND)11920 {11921 if(bShouldShowLeaderScene)11922 {11923 PlayerTypes eTarget = (PlayerTypes) iData1;11924 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();11925#if defined(MOD_DIPLOMACY_STFU)11926 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_DENOUNCED_FRIEND, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);11927#else11928 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DENOUNCED_FRIEND, ePlayer, strTargetCivKey);11929#if defined(MOD_API_PLAYER_LOGS)11930 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, DIPLO_MESSAGE_HUMAN_DENOUNCED_FRIEND, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11931#else11932 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_HUMAN, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11933#endif11934#endif11935 }11936 }1193711938 // Human denounced an enemy of this AI!11939 else if(eStatement == DIPLO_STATEMENT_HAPPY_DENOUNCED_ENEMY)11940 {11941 if(bShouldShowLeaderScene)11942 {11943 PlayerTypes eTarget = (PlayerTypes) iData1;11944 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();11945#if defined(MOD_DIPLOMACY_STFU)11946 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DENOUNCED_ENEMY, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_POSITIVE);11947#else11948 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DENOUNCED_ENEMY, ePlayer, strTargetCivKey);11949#if defined(MOD_API_PLAYER_LOGS)11950 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DENOUNCED_ENEMY, szText, LEADERHEAD_ANIM_POSITIVE);11951#else11952 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);11953#endif11954#endif11955 }11956 }1195711958 // Human befriended a friend of this AI!11959 else if(eStatement == DIPLO_STATEMENT_HAPPY_BEFRIENDED_FRIEND)11960 {11961 if(bShouldShowLeaderScene)11962 {11963 PlayerTypes eTarget = (PlayerTypes) iData1;11964 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();11965#if defined(MOD_DIPLOMACY_STFU)11966 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DOFED_FRIEND, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_POSITIVE);11967#else11968 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DOFED_FRIEND, ePlayer, strTargetCivKey);11969#if defined(MOD_API_PLAYER_LOGS)11970 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DOFED_FRIEND, szText, LEADERHEAD_ANIM_POSITIVE);11971#else11972 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);11973#endif11974#endif11975 }11976 }1197711978 // AI befriended an enemy of the human!11979 else if(eStatement == DIPLO_STATEMENT_FYI_BEFRIEND_HUMAN_ENEMY)11980 {11981 if(bShouldShowLeaderScene)11982 {11983 PlayerTypes eTarget = (PlayerTypes) iData1;11984 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();11985#if defined(MOD_DIPLOMACY_STFU)11986 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DOF, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);11987#else11988 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DOF, ePlayer, strTargetCivKey);11989#if defined(MOD_API_PLAYER_LOGS)11990 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DOF, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11991#else11992 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);11993#endif11994#endif11995 }11996 }1199711998 // AI denounced a friend of the human!11999 else if(eStatement == DIPLO_STATEMENT_FYI_DENOUNCED_HUMAN_FRIEND)12000 {12001 if(bShouldShowLeaderScene)12002 {12003 PlayerTypes eTarget = (PlayerTypes) iData1;12004 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();12005#if defined(MOD_DIPLOMACY_STFU)12006 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DENOUNCE, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_HATE_NEGATIVE);12007#else12008 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DENOUNCE, ePlayer, strTargetCivKey);12009#if defined(MOD_API_PLAYER_LOGS)12010 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DENOUNCE, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);12011#else12012 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION_MEAN_AI, szText, LEADERHEAD_ANIM_HATE_NEGATIVE);12013#endif12014#endif12015 }12016 }1201712018 // AI denounced an enemy of the human!12019 else if(eStatement == DIPLO_STATEMENT_FYI_DENOUNCED_HUMAN_ENEMY)12020 {12021 if(bShouldShowLeaderScene)12022 {12023 PlayerTypes eTarget = (PlayerTypes) iData1;12024 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();12025#if defined(MOD_DIPLOMACY_STFU)12026 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DENOUNCE, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_POSITIVE);12027#else12028 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DENOUNCE, ePlayer, strTargetCivKey);12029#if defined(MOD_API_PLAYER_LOGS)12030 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DENOUNCE_SO_AI_DENOUNCE, szText, LEADERHEAD_ANIM_POSITIVE);12031#else12032 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12033#endif12034#endif12035 }12036 }1203712038 // AI befriended a friend of the human!12039 else if(eStatement == DIPLO_STATEMENT_FYI_BEFRIEND_HUMAN_FRIEND)12040 {12041 if(bShouldShowLeaderScene)12042 {12043 PlayerTypes eTarget = (PlayerTypes) iData1;12044 const char* strTargetCivKey = GET_PLAYER(eTarget).getCivilizationShortDescriptionKey();12045#if defined(MOD_DIPLOMACY_STFU)12046 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DOF, ePlayer, strTargetCivKey, LEADERHEAD_ANIM_POSITIVE);12047#else12048 szText = GetDiploStringForMessage(DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DOF, ePlayer, strTargetCivKey);12049#if defined(MOD_API_PLAYER_LOGS)12050 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_HUMAN_DOF_SO_AI_DOF, szText, LEADERHEAD_ANIM_POSITIVE);12051#else12052 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12053#endif12054#endif12055 }12056 }1205712058 // AI chose same late game policy tree!12059 else if(eStatement == DIPLO_STATEMENT_SAME_POLICIES_FREEDOM)12060 {12061 if(bShouldShowLeaderScene)12062 {12063#if defined(MOD_DIPLOMACY_STFU)12064 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_FREEDOM, LEADERHEAD_ANIM_POSITIVE);12065#else12066 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SAME_POLICIES_FREEDOM);12067#if defined(MOD_API_PLAYER_LOGS)12068 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_FREEDOM, szText, LEADERHEAD_ANIM_POSITIVE);12069#else12070 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12071#endif12072#endif12073 }12074 }1207512076 else if(eStatement == DIPLO_STATEMENT_SAME_POLICIES_ORDER)12077 {12078 if(bShouldShowLeaderScene)12079 {12080#if defined(MOD_DIPLOMACY_STFU)12081 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_ORDER, LEADERHEAD_ANIM_POSITIVE);12082#else12083 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SAME_POLICIES_ORDER);12084#if defined(MOD_API_PLAYER_LOGS)12085 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_ORDER, szText, LEADERHEAD_ANIM_POSITIVE);12086#else12087 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12088#endif12089#endif12090 }12091 }1209212093 else if(eStatement == DIPLO_STATEMENT_SAME_POLICIES_AUTOCRACY)12094 {12095 if(bShouldShowLeaderScene)12096 {12097#if defined(MOD_DIPLOMACY_STFU)12098 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_AUTOCRACY, LEADERHEAD_ANIM_POSITIVE);12099#else12100 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SAME_POLICIES_AUTOCRACY);12101#if defined(MOD_API_PLAYER_LOGS)12102 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SAME_POLICIES_AUTOCRACY, szText, LEADERHEAD_ANIM_POSITIVE);12103#else12104 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12105#endif12106#endif12107 }12108 }1210912110 else if(eStatement == DIPLO_STATEMENT_WE_LIKED_THEIR_PROPOSAL)12111 {12112 if(bShouldShowLeaderScene)12113 {12114 Localization::String sLeagueName = Localization::Lookup("TXT_KEY_LEAGUE_WORLD_CONGRESS_GENERIC");12115 CvLeague* pLeague = GC.getGame().GetGameLeagues()->GetActiveLeague();12116 if (pLeague != NULL)12117 {12118 sLeagueName = pLeague->GetName();12119 }12120#if defined(MOD_DIPLOMACY_STFU)12121 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_WE_LIKED_THEIR_PROPOSAL, ePlayer, sLeagueName, LEADERHEAD_ANIM_POSITIVE);12122#else12123 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WE_LIKED_THEIR_PROPOSAL, ePlayer, sLeagueName);12124#if defined(MOD_API_PLAYER_LOGS)12125 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_WE_LIKED_THEIR_PROPOSAL, szText, LEADERHEAD_ANIM_POSITIVE);12126#else12127 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12128#endif12129#endif12130 }12131 }1213212133 else if(eStatement == DIPLO_STATEMENT_WE_DISLIKED_THEIR_PROPOSAL)12134 {12135 if(bShouldShowLeaderScene)12136 {12137 Localization::String sLeagueName = Localization::Lookup("TXT_KEY_LEAGUE_WORLD_CONGRESS_GENERIC");12138 CvLeague* pLeague = GC.getGame().GetGameLeagues()->GetActiveLeague();12139 if (pLeague != NULL)12140 {12141 sLeagueName = pLeague->GetName();12142 }12143#if defined(MOD_DIPLOMACY_STFU)12144 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_WE_DISLIKED_THEIR_PROPOSAL, ePlayer, sLeagueName, LEADERHEAD_ANIM_NEGATIVE);12145#else12146 szText = GetDiploStringForMessage(DIPLO_MESSAGE_WE_DISLIKED_THEIR_PROPOSAL, ePlayer, sLeagueName);12147#if defined(MOD_API_PLAYER_LOGS)12148 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_WE_DISLIKED_THEIR_PROPOSAL, szText, LEADERHEAD_ANIM_NEGATIVE);12149#else12150 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12151#endif12152#endif12153 }12154 }1215512156 else if(eStatement == DIPLO_STATEMENT_THEY_SUPPORTED_OUR_PROPOSAL)12157 {12158 if(bShouldShowLeaderScene)12159 {12160 Localization::String sLeagueName = Localization::Lookup("TXT_KEY_LEAGUE_WORLD_CONGRESS_GENERIC");12161#if defined(MOD_DIPLOMACY_STFU)12162 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_SUPPORTED_OUR_PROPOSAL, ePlayer, sLeagueName, LEADERHEAD_ANIM_POSITIVE);12163#else12164 szText = GetDiploStringForMessage(DIPLO_MESSAGE_THEY_SUPPORTED_OUR_PROPOSAL, ePlayer, sLeagueName);12165#if defined(MOD_API_PLAYER_LOGS)12166 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_SUPPORTED_OUR_PROPOSAL, szText, LEADERHEAD_ANIM_POSITIVE);12167#else12168 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12169#endif12170#endif12171 }12172 }1217312174 else if(eStatement == DIPLO_STATEMENT_THEY_FOILED_OUR_PROPOSAL)12175 {12176 if(bShouldShowLeaderScene)12177 {12178 Localization::String sLeagueName = Localization::Lookup("TXT_KEY_LEAGUE_WORLD_CONGRESS_GENERIC");12179#if defined(MOD_DIPLOMACY_STFU)12180 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_FOILED_OUR_PROPOSAL, ePlayer, sLeagueName, LEADERHEAD_ANIM_NEGATIVE);12181#else12182 szText = GetDiploStringForMessage(DIPLO_MESSAGE_THEY_FOILED_OUR_PROPOSAL, ePlayer, sLeagueName);12183#if defined(MOD_API_PLAYER_LOGS)12184 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_FOILED_OUR_PROPOSAL, szText, LEADERHEAD_ANIM_NEGATIVE);12185#else12186 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12187#endif12188#endif12189 }12190 }1219112192 else if(eStatement == DIPLO_STATEMENT_THEY_SUPPORTED_OUR_HOSTING)12193 {12194 if(bShouldShowLeaderScene)12195 {12196 Localization::String sLeagueName = Localization::Lookup("TXT_KEY_LEAGUE_WORLD_CONGRESS_GENERIC");12197 CvLeague* pLeague = GC.getGame().GetGameLeagues()->GetActiveLeague();12198 if (pLeague != NULL)12199 {12200 sLeagueName = pLeague->GetName();12201 }12202#if defined(MOD_DIPLOMACY_STFU)12203 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_SUPPORTED_OUR_HOSTING, ePlayer, sLeagueName, LEADERHEAD_ANIM_POSITIVE);12204#else12205 szText = GetDiploStringForMessage(DIPLO_MESSAGE_THEY_SUPPORTED_OUR_HOSTING, ePlayer, sLeagueName);12206#if defined(MOD_API_PLAYER_LOGS)12207 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_THEY_SUPPORTED_OUR_HOSTING, szText, LEADERHEAD_ANIM_POSITIVE);12208#else12209 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12210#endif12211#endif12212 }12213 }1221412215 // Ideological statements12216 else if(eStatement == DIPLO_STATEMENT_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM)12217 {12218 if(bShouldShowLeaderScene)12219 {12220#if defined(MOD_DIPLOMACY_STFU)12221 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM, LEADERHEAD_ANIM_NEGATIVE);12222#else12223 szText = GetDiploStringForMessage(DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM);12224#if defined(MOD_API_PLAYER_LOGS)12225 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM, szText, LEADERHEAD_ANIM_NEGATIVE);12226#else12227 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12228#endif12229#endif12230 }12231 } 12232 else if(eStatement == DIPLO_STATEMENT_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER)12233 {12234 if(bShouldShowLeaderScene)12235 {12236#if defined(MOD_DIPLOMACY_STFU)12237 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER, LEADERHEAD_ANIM_NEGATIVE);12238#else12239 szText = GetDiploStringForMessage(DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER);12240#if defined(MOD_API_PLAYER_LOGS)12241 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER, szText, LEADERHEAD_ANIM_NEGATIVE);12242#else12243 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12244#endif12245#endif12246 }12247 }12248 else if(eStatement == DIPLO_STATEMENT_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY)12249 {12250 if(bShouldShowLeaderScene)12251 {12252#if defined(MOD_DIPLOMACY_STFU)12253 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY, LEADERHEAD_ANIM_NEGATIVE);12254#else12255 szText = GetDiploStringForMessage(DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY);12256#if defined(MOD_API_PLAYER_LOGS)12257 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY, szText, LEADERHEAD_ANIM_NEGATIVE);12258#else12259 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12260#endif12261#endif12262 }12263 }12264 else if(eStatement == DIPLO_STATEMENT_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM)12265 {12266 if(bShouldShowLeaderScene)12267 {12268#if defined(MOD_DIPLOMACY_STFU)12269 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM, LEADERHEAD_ANIM_POSITIVE);12270#else12271 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM);12272#if defined(MOD_API_PLAYER_LOGS)12273 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_FREEDOM, szText, LEADERHEAD_ANIM_POSITIVE);12274#else12275 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12276#endif12277#endif12278 }12279 } 12280 else if(eStatement == DIPLO_STATEMENT_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER)12281 {12282 if(bShouldShowLeaderScene)12283 {12284#if defined(MOD_DIPLOMACY_STFU)12285 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER, LEADERHEAD_ANIM_POSITIVE);12286#else12287 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER);12288#if defined(MOD_API_PLAYER_LOGS)12289 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_ORDER, szText, LEADERHEAD_ANIM_POSITIVE);12290#else12291 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12292#endif12293#endif12294 }12295 } 12296 else if(eStatement == DIPLO_STATEMENT_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY)12297 {12298 if(bShouldShowLeaderScene)12299 {12300#if defined(MOD_DIPLOMACY_STFU)12301 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY, LEADERHEAD_ANIM_POSITIVE);12302#else12303 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY);12304#if defined(MOD_API_PLAYER_LOGS)12305 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_IDEOLOGY_CAUSING_CIVIL_UNREST_AUTOCRACY, szText, LEADERHEAD_ANIM_POSITIVE);12306#else12307 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12308#endif12309#endif12310 }12311 }12312 else if(eStatement == DIPLO_STATEMENT_SWITCH_OUR_IDEOLOGY_FREEDOM)12313 {12314 if(bShouldShowLeaderScene)12315 {12316#if defined(MOD_DIPLOMACY_STFU)12317 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_FREEDOM, LEADERHEAD_ANIM_POSITIVE);12318#else12319 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_FREEDOM);12320#if defined(MOD_API_PLAYER_LOGS)12321 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_FREEDOM, szText, LEADERHEAD_ANIM_POSITIVE);12322#else12323 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12324#endif12325#endif12326 }12327 }12328 else if(eStatement == DIPLO_STATEMENT_SWITCH_OUR_IDEOLOGY_ORDER)12329 {12330 if(bShouldShowLeaderScene)12331 {12332#if defined(MOD_DIPLOMACY_STFU)12333 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_ORDER, LEADERHEAD_ANIM_POSITIVE);12334#else12335 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_ORDER);12336#if defined(MOD_API_PLAYER_LOGS)12337 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_ORDER, szText, LEADERHEAD_ANIM_POSITIVE);12338#else12339 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12340#endif12341#endif12342 }12343 }12344 else if(eStatement == DIPLO_STATEMENT_SWITCH_OUR_IDEOLOGY_AUTOCRACY)12345 {12346 if(bShouldShowLeaderScene)12347 {12348#if defined(MOD_DIPLOMACY_STFU)12349 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_AUTOCRACY, LEADERHEAD_ANIM_POSITIVE);12350#else12351 szText = GetDiploStringForMessage(DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_AUTOCRACY);12352#if defined(MOD_API_PLAYER_LOGS)12353 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_SWITCH_OUR_IDEOLOGY_AUTOCRACY, szText, LEADERHEAD_ANIM_POSITIVE);12354#else12355 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12356#endif12357#endif12358 }12359 }12360 else if(eStatement == DIPLO_STATEMENT_YOUR_CULTURE_INFLUENTIAL)12361 {12362 if(bShouldShowLeaderScene)12363 {12364#if defined(MOD_DIPLOMACY_STFU)12365 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_CULTURE_INFLUENTIAL, LEADERHEAD_ANIM_NEGATIVE);12366#else12367 szText = GetDiploStringForMessage(DIPLO_MESSAGE_YOUR_CULTURE_INFLUENTIAL);12368#if defined(MOD_API_PLAYER_LOGS)12369 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_YOUR_CULTURE_INFLUENTIAL, szText, LEADERHEAD_ANIM_NEGATIVE);12370#else12371 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_NEGATIVE);12372#endif12373#endif12374 }12375 }12376 else if(eStatement == DIPLO_STATEMENT_OUR_CULTURE_INFLUENTIAL)12377 {12378 if(bShouldShowLeaderScene)12379 {12380#if defined(MOD_DIPLOMACY_STFU)12381 SendAILeaderMessage(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_CULTURE_INFLUENTIAL, LEADERHEAD_ANIM_POSITIVE);12382#else12383 szText = GetDiploStringForMessage(DIPLO_MESSAGE_OUR_CULTURE_INFLUENTIAL);12384#if defined(MOD_API_PLAYER_LOGS)12385 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, DIPLO_MESSAGE_OUR_CULTURE_INFLUENTIAL, szText, LEADERHEAD_ANIM_POSITIVE);12386#else12387 CvDiplomacyRequests::SendRequest(GetPlayer()->GetID(), ePlayer, DIPLO_UI_STATE_BLANK_DISCUSSION, szText, LEADERHEAD_ANIM_POSITIVE);12388#endif12389#endif12390 }12391 }1239212393 // Do we want peace with ePlayer?12394 else if(eStatement == DIPLO_STATEMENT_REQUEST_PEACE)12395 {12396 // Active human12397 if(bShouldShowLeaderScene)12398 {12399#if defined(MOD_DIPLOMACY_STFU)12400 SendAIDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_PEACE_OFFER, LEADERHEAD_ANIM_POSITIVE);12401#else12402 szText = GetDiploStringForMessage(DIPLO_MESSAGE_PEACE_OFFER);12403#if defined(MOD_API_PLAYER_LOGS)12404 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, DIPLO_MESSAGE_PEACE_OFFER, szText, LEADERHEAD_ANIM_POSITIVE);12405#else12406 CvDiplomacyRequests::SendDealRequest(GetPlayer()->GetID(), ePlayer, pDeal, DIPLO_UI_STATE_TRADE_AI_MAKES_OFFER, szText, LEADERHEAD_ANIM_POSITIVE);12407#endif12408#endif12409 }12410 // Offer to an AI player12411 else if(!bHuman)12412 {12413 CvDeal kDeal = *pDeal;1241412415 // Don't need to call DoOffer because we check to see if the deal works for both sides BEFORE sending12416#if defined(MOD_AI_MP_DIPLOMACY)12417 if (MOD_AI_MP_DIPLOMACY) {12418 GC.getGame().GetGameDeals()->FinalizeDeal(*pDeal, true);12419 } else {12420#endif12421 GC.getGame().GetGameDeals()->AddProposedDeal(kDeal);12422 GC.getGame().GetGameDeals()->FinalizeDeal(GetPlayer()->GetID(), ePlayer, true);12423#if defined(MOD_AI_MP_DIPLOMACY)12424 }12425#endif1242612427 LogPeaceMade(ePlayer);12428 }12429 }12430}