Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void __thiscall UpdateDeathTimer(Algae *this,int connectedAlgaes)
- {
- int iVar1;
- int32_t iVar2;
- float fVar3;
- iVar1 = (*(this->super_Spreadable).super_Repairable.super_Selectable._vptr_Selectable[10])();
- if ((char)iVar1 == '\0') {
- this->fDeathTimer = -1.00000000;
- return;
- }
- fVar3 = this->fDeathTimer;
- if (0.00000000 <= fVar3) {
- fVar3 = GetSpeedFactor(&FPSControl);
- fVar3 = this->fDeathTimer - (float)(connectedAlgaes * -3 + 0xf) * 0.00300000 * fVar3;
- if (fVar3 < 0.00000000) {
- this->fDeathTimer = 0.00000000;
- if (this->fOxygen < 90.00000000) {
- return;
- }
- goto LAB_0047f5c3;
- }
- this->fDeathTimer = fVar3;
- }
- if (90.00000000 <= this->fOxygen) {
- if (fVar3 == 0.00000000) {
- LAB_0047f5c3:
- // WARNING: Could not recover jumptable at 0x0047f5d3. Too many branches
- // WARNING: Treating indirect jump as call
- (*(this->super_Spreadable).super_Repairable.super_Selectable._vptr_Selectable[7])(this);
- return;
- }
- if (fVar3 < 0.00000000) {
- if (RNG == false) {
- iVar2 = random32();
- }
- else {
- iVar2 = rand();
- }
- this->fDeathTimer = (float)(iVar2 % 10 + 5);
- }
- }
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement