| 6919 | } |
| 6920 | |
| 6921 | int16 cFodder::Sprite_Create_Civilian_Spear2(sSprite* pSprite) { |
| 6922 | if (mPhase_Completed_Timer) |
| 6923 | return -1; |
| 6924 | |
| 6925 | if (!pSprite->field_2E) |
| 6926 | return -1; |
| 6927 | |
| 6928 | int16 Data0 = 1; |
| 6929 | sSprite* Data2C = 0, *Data30 = 0; |
| 6930 | if (Sprite_Get_Free_Max42(Data0, Data2C, Data30)) |
| 6931 | return -1; |
| 6932 | |
| 6933 | if (mSprite_Projectile_Counters[2] == 0x14) |
| 6934 | return -1; |
| 6935 | |
| 6936 | ++mSprite_Projectile_Counters[2]; |
| 6937 | Data2C->field_0 = pSprite->field_0; |
| 6938 | Data2C->field_4 = pSprite->field_4; |
| 6939 | Data2C->field_8 = 0xD7; |
| 6940 | Data2C->field_A = 0; |
| 6941 | Data2C->field_12 = 9; |
| 6942 | Data0 = pSprite->field_62; |
| 6943 | |
| 6944 | Data0 >>= 3; |
| 6945 | Data0 += 8; |
| 6946 | if (Data0 > 0x10) |
| 6947 | Data0 = 0x10; |
| 6948 | |
| 6949 | Data2C->field_12 = Data0; |
| 6950 | Data2C->field_18 = eSprite_Civilian_Spear2; |
| 6951 | Data2C->field_1E_Big = pSprite->field_1E_Big; |
| 6952 | Data2C->field_1E_Big += 0x60000; |
| 6953 | |
| 6954 | Data2C->field_52 = pSprite->field_52; |
| 6955 | Data2C->field_22 = pSprite->field_22; |
| 6956 | Data2C->field_2C = eSprite_Draw_Second; |
| 6957 | Data0 = 0x32; |
| 6958 | Data0 += pSprite->field_62; |
| 6959 | |
| 6960 | Data2C->field_4A = Data0; |
| 6961 | Data2C->field_36 = 0x18; |
| 6962 | Data2C->field_43 = 0; |
| 6963 | Data2C->field_44 = 0; |
| 6964 | Data2C->field_2E = pSprite->field_2E; |
| 6965 | Data2C->field_30 = pSprite->field_30; |
| 6966 | Data2C->field_2E += 7; |
| 6967 | Data2C->field_52 = 0; |
| 6968 | Data2C->field_3A = 0; |
| 6969 | Data2C->field_1A_sprite = pSprite; |
| 6970 | Data2C->field_2A = 2; |
| 6971 | Data2C->field_16 = 0; |
| 6972 | Data2C->field_14 = 2; |
| 6973 | |
| 6974 | if (Data2C->field_A == 4) |
| 6975 | Data2C->field_14 = -1; |
| 6976 | |
| 6977 | Data2C->field_34 = -1; |
| 6978 | Data2C->field_50 = 0; |
nothing calls this directly
no test coverage detected