нам предлагают поговорить, проверяем наше отношение и если не враг начинаем разговор
| 226 | //проверяем наше отношение |
| 227 | //и если не враг начинаем разговор |
| 228 | bool CInventoryOwner::OfferTalk(CInventoryOwner* talk_partner) |
| 229 | { |
| 230 | if (!IsTalkEnabled()) |
| 231 | return false; |
| 232 | |
| 233 | //проверить отношение к собеседнику |
| 234 | CEntityAlive* pOurEntityAlive = smart_cast<CEntityAlive*>(this); |
| 235 | R_ASSERT(pOurEntityAlive); |
| 236 | |
| 237 | CEntityAlive* pPartnerEntityAlive = smart_cast<CEntityAlive*>(talk_partner); |
| 238 | R_ASSERT(pPartnerEntityAlive); |
| 239 | |
| 240 | // ALife::ERelationType relation = RELATION_REGISTRY().GetRelationType(this, talk_partner); |
| 241 | // if(relation == ALife::eRelationTypeEnemy) return false; |
| 242 | |
| 243 | if (!pOurEntityAlive->g_Alive() || !pPartnerEntityAlive->g_Alive()) |
| 244 | return false; |
| 245 | |
| 246 | StartTalk(talk_partner); |
| 247 | |
| 248 | return true; |
| 249 | } |
| 250 | |
| 251 | void CInventoryOwner::StartTalk(CInventoryOwner* talk_partner, bool start_trade) |
| 252 | { |