SHARE
TWEET

Untitled

a guest Nov 19th, 2019 89 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void mtamap()
  2. {
  3.     char    filename[MAX_PATH];
  4.     FILE    *file;
  5.     FILE    *prok;
  6.     char    model[100], FposX[100], FposY[100], FposZ[100], FrotX[100], FrotY[100], FrotZ[100];
  7.     float   Tpos[3], pos[3], rot[3];
  8.     float   *coord;
  9.     char    arr[256];
  10.     int     c = 0;
  11.     A_Set.objectinv = 0;
  12.     A_Set.i = 0;
  13.     Sleep(1250);
  14.     snprintf(filename, sizeof(filename), "%s\\mod_sa\\MTAMaps\\%s.map", g_szWorkingDirectory, A_Set.mapfilename);
  15.     file = fopen(filename, "r");
  16.     prok = fopen(filename, "r");
  17.  
  18.     if (file)
  19.     {
  20.         addMessageToChatWindow("Конвертирование координат и выставление объектов \"%s\" начато", A_Set.mapfilename);
  21.         MessageBeep(MB_ICONEXCLAMATION);
  22.         while (fgets(arr, 256, prok) != NULL && A_Set.mtamap)
  23.         {
  24.             if (strstr(arr, "model=\"") && strstr(arr, "posX=\"") && strstr(arr, "posY=\"") && strstr(arr, "posZ=\"")
  25.                 && strstr(arr, "rotX=\"") && strstr(arr, "rotY=\"") && strstr(arr, "rotZ=\""))
  26.             {
  27.                 A_Set.objectinv++;
  28.             }
  29.         }
  30.         while (fgets(arr, 256, file) != NULL && A_Set.mtamap)
  31.         {
  32.             if (strstr(arr, "model=\"") && strstr(arr, "posX=\"") && strstr(arr, "posY=\"") && strstr(arr, "posZ=\"")
  33.                 && strstr(arr, "rotX=\"") && strstr(arr, "rotY=\"") && strstr(arr, "rotZ=\""))
  34.             {
  35.                 StringFind(arr, "model=\"", '\"', model);
  36.                 StringFind(arr, "posX=\"", '\"', FposX);
  37.                 StringFind(arr, "posY=\"", '\"', FposY);
  38.                 StringFind(arr, "posZ=\"", '\"', FposZ);
  39.                 StringFind(arr, "rotX=\"", '\"', FrotX);
  40.                 StringFind(arr, "rotY=\"", '\"', FrotY);
  41.                 StringFind(arr, "rotZ=\"", '\"', FrotZ);
  42.  
  43.                 Tpos[0] = std::stof(FposX);
  44.                 Tpos[1] = std::stof(FposY);
  45.                 Tpos[2] = std::stof(FposZ);
  46.  
  47.                 rot[0] = std::stof(FrotX);
  48.                 rot[1] = std::stof(FrotY);
  49.                 rot[2] = std::stof(FrotZ);
  50.  
  51.                 coord = (cheat_state->state == CHEAT_STATE_VEHICLE) ? cheat_state->vehicle.coords : cheat_state->actor.coords;
  52.  
  53.                 pos[0] = Tpos[0] - coord[0];
  54.                 pos[1] = Tpos[1] - coord[1];
  55.                 pos[2] = Tpos[2] - coord[2];
  56.  
  57.                 say("/obj %d %s %f %f %f %f %f %f", A_Set.setobj, model, pos[0], pos[1], pos[2], rot[0], rot[1], rot[2]);
  58.                 A_Set.i++;
  59.                 A_Set.setobj++;
  60.                 Sleep(1250);
  61.             }
  62.         }
  63.         cheat_teleport(Tpos, 0);
  64.         Sleep(350);
  65.         say("/goto %d", g_Players->sLocalPlayerID);
  66.         A_Set.stopped = 1;
  67.         A_Set.started = 0;
  68.         A_Set.process = 0;
  69.         addMessageToChatWindow("Конвертирование координат и выставление объектов \"%s\" окончено (%d объектов)", A_Set.mapfilename, A_Set.i);
  70.         MessageBeep(MB_ICONEXCLAMATION);
  71.     }
  72.     else
  73.         addMessageToChatWindow("Ошибка: файл %s.txt не найден в папке mod_sa\\MTAMaps", A_Set.mapfilename);
  74.  
  75.     ExitThread(0);
  76. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top