Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void mtamap()
- {
- char filename[MAX_PATH];
- FILE *file;
- FILE *prok;
- char model[100], FposX[100], FposY[100], FposZ[100], FrotX[100], FrotY[100], FrotZ[100];
- float Tpos[3], pos[3], rot[3];
- float *coord;
- char arr[256];
- int c = 0;
- A_Set.objectinv = 0;
- A_Set.i = 0;
- Sleep(1250);
- snprintf(filename, sizeof(filename), "%s\\mod_sa\\MTAMaps\\%s.map", g_szWorkingDirectory, A_Set.mapfilename);
- file = fopen(filename, "r");
- prok = fopen(filename, "r");
- if (file)
- {
- addMessageToChatWindow("Конвертирование координат и выставление объектов \"%s\" начато", A_Set.mapfilename);
- MessageBeep(MB_ICONEXCLAMATION);
- while (fgets(arr, 256, prok) != NULL && A_Set.mtamap)
- {
- if (strstr(arr, "model=\"") && strstr(arr, "posX=\"") && strstr(arr, "posY=\"") && strstr(arr, "posZ=\"")
- && strstr(arr, "rotX=\"") && strstr(arr, "rotY=\"") && strstr(arr, "rotZ=\""))
- {
- A_Set.objectinv++;
- }
- }
- while (fgets(arr, 256, file) != NULL && A_Set.mtamap)
- {
- if (strstr(arr, "model=\"") && strstr(arr, "posX=\"") && strstr(arr, "posY=\"") && strstr(arr, "posZ=\"")
- && strstr(arr, "rotX=\"") && strstr(arr, "rotY=\"") && strstr(arr, "rotZ=\""))
- {
- StringFind(arr, "model=\"", '\"', model);
- StringFind(arr, "posX=\"", '\"', FposX);
- StringFind(arr, "posY=\"", '\"', FposY);
- StringFind(arr, "posZ=\"", '\"', FposZ);
- StringFind(arr, "rotX=\"", '\"', FrotX);
- StringFind(arr, "rotY=\"", '\"', FrotY);
- StringFind(arr, "rotZ=\"", '\"', FrotZ);
- Tpos[0] = std::stof(FposX);
- Tpos[1] = std::stof(FposY);
- Tpos[2] = std::stof(FposZ);
- rot[0] = std::stof(FrotX);
- rot[1] = std::stof(FrotY);
- rot[2] = std::stof(FrotZ);
- coord = (cheat_state->state == CHEAT_STATE_VEHICLE) ? cheat_state->vehicle.coords : cheat_state->actor.coords;
- pos[0] = Tpos[0] - coord[0];
- pos[1] = Tpos[1] - coord[1];
- pos[2] = Tpos[2] - coord[2];
- 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]);
- A_Set.i++;
- A_Set.setobj++;
- Sleep(1250);
- }
- }
- cheat_teleport(Tpos, 0);
- Sleep(350);
- say("/goto %d", g_Players->sLocalPlayerID);
- A_Set.stopped = 1;
- A_Set.started = 0;
- A_Set.process = 0;
- addMessageToChatWindow("Конвертирование координат и выставление объектов \"%s\" окончено (%d объектов)", A_Set.mapfilename, A_Set.i);
- MessageBeep(MB_ICONEXCLAMATION);
- }
- else
- addMessageToChatWindow("Ошибка: файл %s.txt не найден в папке mod_sa\\MTAMaps", A_Set.mapfilename);
- ExitThread(0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement