robsons2007 Ответов: 1

Помогите доработать этот счетчик.


struct { 
int Play;
 int beatbyp1;//Initial value 0, when play1 wins it passes to 1 and increases each time play1 wins.

int beatbyp2; //Initial value 0, when play2 wins it passes to 1 and increases each time play2 wins.

}RAM = { 0 };
bool isP1vsP2;
void ProcessG( struct B) {u
TCHAR status[256];
char* data = ((char*)pba->Data);


scoreP1 = RAM.beatbyp1;

scoreP2 = RAM.beatbyp2;

  }

print_screen_Emulato(scoreP1,scoreP2); } }

Как вы можете видеть, я назначаю только значения переменных beatbyp1 и beatbyp2 в переменных scoreP1 и scoreP2, поэтому все хорошо выглядит на экране значение, когда одна из пьес выигрывает, проблема и если t

Что я уже пробовал:

Я Пытался
if (.beatbyp1 >0 )scorep1++;
if (.beatbyp2 >0 )scorep2++;
Не работает, потому что он увеличивается нон-стоп

Помогает сделать его увеличивающимся всякий раз, когда beatby> 0,
+ 1 переменная.

Patrice T

Не снимайте вопрос

1 Ответов

Рейтинг:
11

KarstenK

Ваша проблема заключается в назначении:

RAM.beatbyp1 = ((unsigned char*)pba->Data)[0x0000daf9];
RAM.beatbyp2 = ((unsigned char*)pba->Data)[0x0000daf7];
в котором вы получаете доступ к некоторой памяти и с помощью этих значений задаете переменные области видимости.

Переосмыслите область действия переменных, структуру и доступ к памяти.