Advertisement
Kiosani

0.97.04 KOR Comparation AccessModel

Jul 26th, 2021 (edited)
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. //----- (005088C0) --------------------------------------------------------
  2. void AccessModel(int Type,char *Dir,char *FileName,int i)
  3. {
  4. char Name[64]; // [sp+0h] [bp-40h]@2 -> v5
  5.  
  6. if ( i == -1 )
  7. {
  8. sprintf(&Name, "%s.bmd", FileName);
  9. }
  10. else if ( i >= 10 )
  11. {
  12. sprintf(&Name, "%s0%d.bmd", FileName, i);
  13. }
  14. else
  15. {
  16. sprintf(&v5, "%s%d.bmd", FileName, i);
  17. }
  18. bool Success; // <- byte_55C7D0
  19. if ( Success )
  20. {
  21. sub_444F00((DWORD*)(0x582AD80 + 188 * Type), Dir, &Name);
  22. }
  23. else
  24. {
  25. Success = Type;
  26. if ( *(WORD*)(0x582AD80 + 188 * Type + 34) > 0 ) // BMD::BMD +34 = NumBones
  27. sub_445580((void*)(0x582AD80 + 188 * Type), Dir, &File);
  28. }
  29. }
  30. // 55C7D0: using guessed type bool byte_55C7D0;
  31. // 582AD80: using guessed type BMD::BMD() dword_582AD80;
  32.  
  33. // Original
  34. void AccessModel(int Type,char *Dir,char *FileName,int i)
  35. {
  36. char Name[64];
  37. if(i == -1)
  38. sprintf(Name,"%s.bmd",FileName);
  39. else if(i < 10)
  40. sprintf(Name,"%s0%d.bmd",FileName,i);
  41. else
  42. sprintf(Name,"%s%d.bmd",FileName,i);
  43.  
  44. bool Success = false;
  45.  
  46. Success = Models[Type].Open2(Dir,Name);
  47.  
  48. if ( Success==false && ( strcmp(FileName,"Monster")==NULL || strcmp(FileName,"Player")==NULL || strcmp(FileName,"PlayerTest")==NULL || strcmp(FileName,"Angel")==NULL ) )
  49. {
  50. char Text[256];
  51. sprintf(Text,"%s file does not exist.",Name );
  52. MessageBox(g_hWnd,Text,NULL,MB_OK);
  53. SendMessage(g_hWnd,WM_DESTROY,0,0);
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement