Mercurial > mm7
changeset 1356:301e227439e7
Player::CanEquip_RaceAndAlignmentCheck condition reorganizing, label removal, using GetSexByVoice()
author | Grumpy7 |
---|---|
date | Sat, 13 Jul 2013 16:05:24 +0200 |
parents | af2fc30d765f |
children | 06926081358f |
files | Player.cpp |
diffstat | 1 files changed, 75 insertions(+), 108 deletions(-) [+] |
line wrap: on
line diff
--- a/Player.cpp Sat Jul 13 13:14:05 2013 +0200 +++ b/Player.cpp Sat Jul 13 16:05:24 2013 +0200 @@ -683,118 +683,85 @@ char v2; // zf@9 __int16 v4; // dx@13 char v5; // zf@15 - + // if (uItemID == 530) // item093 ������ ���� ���䠪�, ������ if ( (signed int)uItemID > 532 ) // if (uItemID == 514 || // item233 ���� ��ਪ� ���䠪�, ��� - // uItemID == 516 || // item221 ���� ��� ���䠪�, ��� - // uItemID == 524) // item325 ��ࠪ ५�����, ��� - { - if ( uItemID == 533 ) - { - v2 = GetRace() == 1; + // uItemID == 516 || // item221 ���� ��� ���䠪�, ��� + // uItemID == 524) // item325 ��ࠪ ५�����, ��� + { + if ( uItemID == 533 ) // if (uItemID == 533) // item113 ������ ���� �㪠���� ���䠪�, ���� + { + v2 = GetRace() == CHARACTER_RACE_ELF; + } + else if ( uItemID == 534 ) // if (uItemID == 534) // item104 ���� ���� ���䠪�, ��稭� + { + v2 = GetRace() == CHARACTER_RACE_DWARF; + } + else if ( uItemID == 535 ) // + { + if (this->GetSexByVoice() == SEX_MALE)// if (uItemID == 535) // item129 ��� ���� ���䠪�, ���騭� + { + return 1; + } + else + { + return 0; + } + } + else if ( uItemID == 536 ) + { + if (this->GetSexByVoice() == SEX_FEMALE) + { + return 1; + } + else + { + return 0; + } + } + else if ( uItemID == 604 ) + { + v5 = NothingOrJustBlastersEquipped() == 0; + if ( !v5 ) + return 1; + return 0; + } + else + return 1; + } + else + { + if ( uItemID == 532 ) // if (uItemID == 532) // item073 ���䨩᪠� �����㣠 ���䠪�, ���� + { + v2 = GetRace() == CHARACTER_RACE_HUMAN; + } + else if ( uItemID == 515 || uItemID == 517 || uItemID == 525) // + { + v5 = (unsigned __int16)_449B57_test_bit(pParty->_quest_bits, 100) == 0; + if ( !v5 ) + return 1; + return 0; + } + else if ( uItemID == 521 || uItemID == 527) // if (uItemID == 521 || // item239 ���� �������� ���䠪�, ���� + // uItemID == 526) // item230 ��ࠢ��������� ५�����, ���� + { + v5 = (unsigned __int16)_449B57_test_bit(pParty->_quest_bits, 99) == 0; + if ( !v5 ) + return 1; + return 0; + } + else if ( uItemID == 531 ) // if (uItemID == 531) // item093 ��� �� ���䠪�, 祫���� + { + v2 = GetRace() == CHARACTER_RACE_GOBLIN; + if ( v2 ) + return 1; + return 0; } else { - if ( uItemID != 534 ) - { - if ( uItemID == 535 ) // - // if (uItemID == 530) // item093 ������ ���� ���䠪�, ������ - { - switch ( this->uVoiceID ) - { - default: - return 1; - case 4u: - case 5u: - case 6u: - case 7u: - case 0xAu: - case 0xBu: - case 0xEu: // - // if (uItemID == 535) // item129 ��� ���� ���䠪�, ���騭� - case 0xFu: - case 0x12u: - case 0x13u: - case 0x15u: - case 0x18u: - return 0; - } - return 0; - } - if ( uItemID == 536 ) // - // if (uItemID == 531) // item093 ��� �� ���䠪�, 祫���� - { - switch ( this->uVoiceID ) - { - case 4u: - case 5u: - case 6u: - case 7u: - case 0xAu: - case 0xBu: - case 0xEu: - case 0xFu: - case 0x12u: - case 0x13u: - case 0x15u: - case 0x18u: - return 1; - default: - return 0; - } - return 0; - } - if ( uItemID != 604 ) // - // if (uItemID == 532) // item073 ���䨩᪠� �����㣠 ���䠪�, ���� - return 1; - v5 = NothingOrJustBlastersEquipped() == 0; - goto LABEL_23; - } - v2 = GetRace() == 3; // - // if (uItemID == 533) // item113 ������ ���� �㪠���� ���䠪�, ���� - } - } - else - { - if ( uItemID != 532 ) - { - if ( uItemID != 515 && uItemID != 517 ) // - // if (uItemID == 534) // item104 ���� ���� ���䠪�, ��稭� - { - if ( uItemID == 521 ) // if (uItemID == 521 || // item239 ���� �������� ���䠪�, ���� - // uItemID == 526) // item230 ��ࠢ��������� ५�����, ���� - { -LABEL_13: - v4 = 99; -LABEL_15: - v5 = (unsigned __int16)_449B57_test_bit(pParty->_quest_bits, v4) == 0; -LABEL_23: - if ( !v5 ) - return 1; - return 0; - } - if ( uItemID != 525 ) - { - if ( uItemID != 527 ) - { - if ( uItemID != 531 ) - return 1; - v2 = GetRace() == 2; - goto LABEL_10; - } - goto LABEL_13; - } - } - v4 = 100; - goto LABEL_15; - } - v2 = GetRace() == 0; - } -LABEL_10: - if ( v2 ) - return 1; - return 0; -} - + return 1; + } + } +} //----- (00492D65) -------------------------------------------------------- int Player::SetCondition(unsigned int uConditionIdx, int a3) {