Created
December 28, 2018 06:49
-
-
Save shibbo/52d81debf7f903711873a29bcc9b3b9e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PlayerOxygen::PlayerOxygen() | |
{ | |
this->field_0 = 1.0f; | |
*&this->field_14 = 0; | |
*&this->field_C = 0; | |
this->field_4 = 0; | |
} | |
void PlayerOxygen::setup(int a2, int a3, int a4, int a5) | |
{ | |
this->field_C = a2; | |
this->field_10 = a3; | |
this->field_14 = a4; | |
this->field_18 = a5; | |
} | |
void PlayerOxygen::reset() | |
{ | |
this->field_0 = 1.0f; | |
this->field_4 = 0; | |
} | |
void PlayerOxygen::reduce() | |
{ | |
int v1; // w8 | |
float v2; // s0 | |
v1 = this->field_4; | |
LODWORD(this->field_4) = v1 + 1; | |
if ( v1 >= this->field_C ) | |
{ | |
v2 = this->field_0; | |
if ( this->field_0 <= 0.0 ) | |
{ | |
++HIDWORD(this->field_4); | |
} | |
this->field_0 = fmaxf(v2 + (-1.0 / this->field_10), 0.0); | |
} | |
} | |
void __fastcall PlayerOxygen::recovery(PlayerOxygen *this) | |
{ | |
this->field_0 = fminf(this->field_0 + (1.0 / this->field_14), 1.0); | |
this->field_4 = 0LL; | |
} | |
bool PlayerOxygen::isTriggerDamage() const | |
{ | |
int v1; // w8 | |
_BOOL8 result; // x0 | |
v1 = HIDWORD(this->field_4); | |
if ( v1 ) | |
{ | |
result = v1 == v1 / this->field_18 * this->field_18; | |
} | |
else | |
{ | |
result = 0LL; | |
} | |
return result; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment