comparison Player.cpp @ 81:377535d6e366

structure boundaries fixed in many places. fixed quests, notes, awards, calendar.
author zipi
date Sun, 03 Feb 2013 15:36:54 +0000
parents e753d08b78ec
children 3c9762ec6c2e
comparison
equal deleted inserted replaced
80:48f69ae3bc8d 81:377535d6e366
16 #include "TurnEngine.h" 16 #include "TurnEngine.h"
17 #include "Events.h" 17 #include "Events.h"
18 #include "Events2D.h" 18 #include "Events2D.h"
19 #include "Outdoor.h" 19 #include "Outdoor.h"
20 #include "StorylineTextTable.h" 20 #include "StorylineTextTable.h"
21 21 #include "Autonotes.h"
22 #include "Awards.h"
22 #include "mm7_data.h" 23 #include "mm7_data.h"
23 24
24 25
25 26
26 27
8411 goto LABEL_170; 8412 goto LABEL_170;
8412 } 8413 }
8413 if ( var == VAR_AutoNotes ) 8414 if ( var == VAR_AutoNotes )
8414 { 8415 {
8415 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pParty->_autonote_bits[((signed __int16)a3 - 1) >> 3]) 8416 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pParty->_autonote_bits[((signed __int16)a3 - 1) >> 3])
8416 && (&dword_723718_autonote_related)[8 * a3] ) 8417 //&& (&dword_723718_autonote_related)[8 * a3] )
8418 && pAutonoteTxt[a3-1].pText )
8417 { 8419 {
8418 v20 = pPlayers[v3 + 1]; 8420 v20 = pPlayers[v3 + 1];
8419 v30 = 1; 8421 v30 = 1;
8420 v20->PlaySound(96, 0); 8422 v20->PlaySound(96, 0);
8421 v21 = dword_72371C[2 * a3]; 8423 v21 = pAutonoteTxt[a3-1].eType;// dword_72371C[2 * a3];
8422 bFlashAutonotesBook = 1; 8424 bFlashAutonotesBook = 1;
8423 dword_506568 = v21; 8425 dword_506568 = v21;
8424 } 8426 }
8425 _449B7E_toggle_bit(pParty->_autonote_bits, a3, 1u); 8427 _449B7E_toggle_bit(pParty->_autonote_bits, a3, 1u);
8426 v31 = 1; 8428 v31 = 1;
8480 case VAR_Age: 8482 case VAR_Age:
8481 this->sAgeModifier = a3; 8483 this->sAgeModifier = a3;
8482 return; 8484 return;
8483 case VAR_Award: 8485 case VAR_Award:
8484 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pPlayers[v3 + 1]->field_152[((signed __int16)a3 - 1) >> 3]) 8486 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pPlayers[v3 + 1]->field_152[((signed __int16)a3 - 1) >> 3])
8485 && dword_723E80_award_related[2 * a3] ) 8487 //&& dword_723E80_award_related[2 * a3] )
8488 && pAwards[a3-1].pText )
8486 { 8489 {
8487 v12 = pPlayers[v3 + 1]; 8490 v12 = pPlayers[v3 + 1];
8488 v30 = 1; 8491 v30 = 1;
8489 v31 = 1; 8492 v31 = 1;
8490 v12->PlaySound(96, 0); 8493 v12->PlaySound(96, 0);
8494 case VAR_Experience: 8497 case VAR_Experience:
8495 this->uExperience = a3; 8498 this->uExperience = a3;
8496 goto LABEL_124; 8499 goto LABEL_124;
8497 case VAR_QBits_QuestsDone: 8500 case VAR_QBits_QuestsDone:
8498 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pParty->_award_bits[((signed __int16)a3 - 1) >> 3]) 8501 if ( !((unsigned __int8)(0x80u >> ((signed __int16)a3 - 1) % 8) & pParty->_award_bits[((signed __int16)a3 - 1) >> 3])
8499 && (&dword_722F10)[4 * a3] ) 8502 // && (&dword_722F10)[4 * a3] )
8503 && pQuestTable[a3-1] )
8500 { 8504 {
8501 v14 = pPlayers[v3 + 1]; 8505 v14 = pPlayers[v3 + 1];
8502 bFlashQuestBook = 1; 8506 bFlashQuestBook = 1;
8503 v30 = 1; 8507 v30 = 1;
8504 v31 = 1; 8508 v31 = 1;
8907 return; 8911 return;
8908 case VAR_Award: 8912 case VAR_Award:
8909 v13 = pPlayers[uPlayerIdx + 1]; 8913 v13 = pPlayers[uPlayerIdx + 1];
8910 v33 = 0x80u >> ((signed __int16)val - 1) % 8; 8914 v33 = 0x80u >> ((signed __int16)val - 1) % 8;
8911 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & v13->field_152[((signed __int16)val - 1) >> 3]) 8915 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & v13->field_152[((signed __int16)val - 1) >> 3])
8912 && dword_723E80_award_related[2 * val] ) 8916 //&& dword_723E80_award_related[2 * val] )
8917 && pAwards[val-1].pText )
8913 { 8918 {
8914 v14 = pPlayers[uPlayerIdx + 1]; 8919 v14 = pPlayers[uPlayerIdx + 1];
8915 v34 = 1; 8920 v34 = 1;
8916 v3 = 1; 8921 v3 = 1;
8917 v14->PlaySound(96, 0); 8922 v14->PlaySound(96, 0);
8925 if ( (signed __int64)Dst->uExperience > 4000000000i64 ) 8930 if ( (signed __int64)Dst->uExperience > 4000000000i64 )
8926 Dst->uExperience = 4000000000i64; 8931 Dst->uExperience = 4000000000i64;
8927 goto _play_anim_and_exit; 8932 goto _play_anim_and_exit;
8928 case VAR_QBits_QuestsDone: 8933 case VAR_QBits_QuestsDone:
8929 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & pParty->_award_bits[((signed __int16)val - 1) >> 3]) 8934 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & pParty->_award_bits[((signed __int16)val - 1) >> 3])
8930 && (&dword_722F10)[4 * val] ) 8935 //&& (&dword_722F10)[4 * val] )
8936 && pQuestTable[val-1] )
8931 { 8937 {
8932 v17 = pPlayers[uPlayerIdx + 1]; 8938 v17 = pPlayers[uPlayerIdx + 1];
8933 bFlashQuestBook = 1; 8939 bFlashQuestBook = 1;
8934 v34 = 1; 8940 v34 = 1;
8935 v3 = 1; 8941 v3 = 1;
9189 if ( v3 != 1 ) 9195 if ( v3 != 1 )
9190 return; 9196 return;
9191 goto _play_sound; 9197 goto _play_sound;
9192 } 9198 }
9193 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & pParty->_autonote_bits[((signed __int16)val - 1) >> 3]) 9199 if ( !((unsigned __int8)(0x80u >> ((signed __int16)val - 1) % 8) & pParty->_autonote_bits[((signed __int16)val - 1) >> 3])
9194 && (&dword_723718_autonote_related)[8 * val] ) 9200 //&& (&dword_723718_autonote_related)[8 * val] )
9201 && pAutonoteTxt[val-1].pText )
9195 { 9202 {
9196 v23 = pPlayers[uPlayerIdx + 1]; 9203 v23 = pPlayers[uPlayerIdx + 1];
9197 v34 = 1; 9204 v34 = 1;
9198 v23->PlaySound(96, 0); 9205 v23->PlaySound(96, 0);
9199 v24 = dword_72371C[2 * val]; 9206 v24 = pAutonoteTxt[val-1].eType;//dword_72371C[2 * val];
9200 bFlashAutonotesBook = 1; 9207 bFlashAutonotesBook = 1;
9201 dword_506568 = v24; 9208 dword_506568 = v24;
9202 } 9209 }
9203 _449B7E_toggle_bit(pParty->_autonote_bits, val, 1u); 9210 _449B7E_toggle_bit(pParty->_autonote_bits, val, 1u);
9204 v3 = 1; 9211 v3 = 1;