MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / Sprite_Handle_Troop_Speed

Method Sprite_Handle_Troop_Speed

Source/Fodder.cpp:15747–15795  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

15745}
15746
15747void cFodder::Sprite_Handle_Troop_Speed(sSprite* pSprite) {
15748 int16 Data0;
15749
15750 pSprite->field_36 = 0x10;
15751
15752 if (pSprite->field_18 == eSprite_Enemy) {
15753 Data0 = 0x0C;
15754 Data0 += pSprite->field_62;
15755 if (Data0 > 0x1A)
15756 Data0 = 0x1A;
15757 pSprite->field_36 = Data0;
15758 }
15759 else {
15760
15761 //loc_1FD36
15762 Data0 = word_3BED5[pSprite->field_32];
15763 if (!Data0)
15764 pSprite->field_36 >>= 1;
15765 else {
15766 if (Data0 != 1)
15767 pSprite->field_36 = 0x18;
15768 }
15769 }
15770
15771 if (pSprite->field_4F)
15772 goto loc_1FDDC;
15773
15774 Data0 = pSprite->field_52;
15775 if (Data0 == pSprite->field_50)
15776 goto loc_1FDD5;
15777 if (Data0 < pSprite->field_50)
15778 goto loc_1FDC3;
15779
15780 Data0--;
15781 if (Data0 == pSprite->field_50)
15782 goto loc_1FDD5;
15783 Data0--;
15784 goto loc_1FDC8;
15785
15786loc_1FDC3:;
15787 Data0++;
15788loc_1FDC8:;
15789 pSprite->field_52 = Data0;
15790loc_1FDD5:;
15791 if (!Data0)
15792 return;
15793loc_1FDDC:;
15794 pSprite->field_36 = 6;
15795}
15796
15797void cFodder::Sprite_Handle_Troop_Direct_TowardWeaponTarget_WithRestore(sSprite* pSprite) {
15798

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected