Equivalent; scheduling.
| 542 | |
| 543 | // Equivalent; scheduling. |
| 544 | static void zGame_HackPostPortalAutoSaveDraw() |
| 545 | { |
| 546 | U32 i; |
| 547 | RwCamera* ccam; |
| 548 | RwCamera* cam; |
| 549 | RwRaster* rast; |
| 550 | char str[2048]; |
| 551 | RwTexture* tex; |
| 552 | RwRGBA bg = {}; |
| 553 | |
| 554 | cam = (RwCamera*)RwEngineInstance->curCamera; |
| 555 | if (cam != NULL) |
| 556 | { |
| 557 | RwCameraEndUpdate(cam); |
| 558 | } |
| 559 | |
| 560 | sprintf(str, "{font=0}{i:MNU4 AUTO SAVE TXT}"); |
| 561 | |
| 562 | ccam = (RwCamera *)iCameraCreate(640, 480, 0); |
| 563 | |
| 564 | xtextbox tb = xtextbox::create |
| 565 | ( |
| 566 | xfont::create |
| 567 | ( |
| 568 | 1, NSCREENX(19.0f), NSCREENY(22.0f), 0.0f, |
| 569 | xColorFromRGBA(0xFF, 0xE6, 0x00, 0xFF), |
| 570 | screen_bounds |
| 571 | ), |
| 572 | screen_bounds, 0, 0.0f, 0.0f, 0.0f, 0.0f |
| 573 | ); |
| 574 | |
| 575 | tb.flags |= 2; |
| 576 | tb.bounds.assign(0.0f, 0.4125f, 1.0f, 0.25f); |
| 577 | tb.bounds.contract(0.025f); |
| 578 | tb.set_text(str); |
| 579 | tb.bounds.h = tb.yextent(true); |
| 580 | tb.bounds.y = -((tb.bounds.h * 0.5f) - 0.5f); |
| 581 | tb.font.clip = tb.bounds; |
| 582 | tb.font.clip.expand(0.025f); |
| 583 | F32 yextent = tb.yextent(true); |
| 584 | |
| 585 | for (i = 0; i < 2; i++) |
| 586 | { |
| 587 | RwCameraClear(ccam, &bg, rwCAMERACLEARZ | rwCAMERACLEARIMAGE); |
| 588 | RwCameraBeginUpdate(ccam); |
| 589 | tex = (RwTexture*)xSTFindAsset(xStrHash("fx_boomball_smoke.RW3"), NULL); |
| 590 | if (tex != NULL) |
| 591 | { |
| 592 | rast = tex->raster; |
| 593 | } |
| 594 | else |
| 595 | { |
| 596 | rast = NULL; |
| 597 | } |
| 598 | |
| 599 | zGame_HackDrawCard(0.0f, 0.0f, 320.0f, 240.0f, rast); |
| 600 | zGame_HackDrawCard(320.0f, 0.0f, 320.0f, 240.0f, rast); |
| 601 | zGame_HackDrawCard(0.0f, 240.0f, 320.0f, 240.0f, rast); |
no test coverage detected