- 0
Войдите для возможности подписаться
Подписчики
0
[закрыто] Проблема с созданием домов!
Вопрос от
SendFo RP
,
-
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От Zelixsz
Привет, при попытке запустить сервер появляется такая ошибка.
Буду благодарен за любую помощь
MySQL: подключаюсь к localhost (Логин: root | БД: adamandrp) MySQL: не удалось подключиться к localhost
-
От gooding
Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
Основа данного мода: Cruela RP
-
От gooding
Скачать файл PAR RP | Доработанный мод Cruela RP | Без багов
Всем здравствуйте, уважаемые читатели. Я много времени потратил на доработку данного игрового мода, чтобы его выставить на форум.
Лог доработок можно посмотреть внизу, а скриншоты игрового мода внизу и верху.
Основа данного мода: Cruela RP
Добавил gooding Добавлено 20.11.2024 Категория Моды Автор GOODING (Я)
-
Опубликовано (изменено) · Жалоба
Привет, мне друг добавил команду для создания домов, и я решил её проверить!
Создаю дом всё как надо, /addhouse [ТИП] [СТОИМОСТЬ] [ЦЕНА АРЕНДЫ]
Создаю так: /addhouse (2-Высокий) 50000000 100000
Дом создался под ID 0
Я пере захожу, создаю ещё один дом, а он начал создаваться опять с 0 ID.
Посмотрел то место где я создавал дом, того дома нет он просто переместился!
Купил дом который создал, потом вышел из него, а вышел в другом месте где создавал дом в первый раз!
Что делать кто знает?
CMD:addhouse(playerid, params[])
{
if(GetPlayerAdminEx(playerid) != 6) return 1;
extract params -> new type, price, rent_price; else return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /addhouse [тип] [стоимость] [цена аренды]");
new fmt_text[300];
if(!(0 <= type <= sizeof g_house_type - 1))
{
SendClientMessage(playerid, 0x999999FF, "Типы домов:");
for(new i; i < sizeof g_house_type; i ++)
{
format(fmt_text, sizeof fmt_text, "%d. %s", i, GetHouseTypeInfo(i, HT_NAME));
SendClientMessage(playerid, 0xCECECEFF, fmt_text);
}
return 1;
}
if(price < 1) return SendClientMessage(playerid, 0x999999FF, "Стоимость дома не может быть меньше 1");
if(rent_price < 1) return SendClientMessage(playerid, 0x999999FF, "Стоимость аренды не может быть меньше 1");
new Cache: result,
idx = g_house_loaded;
GetPlayerPos(playerid, g_house[idx][H_POS_X], g_house[idx][H_POS_Y], g_house[idx][H_POS_Z]);
new buffer[2];
buffer[0] = Get2DCity(GetHouseData(idx, H_POS_X), GetHouseData(idx, H_POS_Y));
buffer[1] = Get2DZone(GetHouseData(idx, H_POS_X), GetHouseData(idx, H_POS_Y));
SetHouseData(idx, H_CITY, buffer[0]);
SetHouseData(idx, H_ZONE, buffer[1]);
SetHouseData(idx, H_PRICE, price);
SetHouseData(idx, H_RENT_PRICE, rent_price);
SetHouseData(idx, H_TYPE, type);
SetHouseData(idx, H_ENTRACE, -1);
format
(
fmt_text, sizeof fmt_text,
"INSERT INTO houses \
(city, zone, type, price, rent_price, x, y, z)\
VALUES ('%d', '%d', '%d', '%d', '%f', '%f', '%f', '%f')",
GetHouseData(idx, H_CITY),
GetHouseData(idx, H_ZONE),
type, price, rent_price,
GetHouseData(idx, H_POS_X),
GetHouseData(idx, H_POS_Y),
GetHouseData(idx, H_POS_Z)
);
result = mysql_query(mysql, fmt_text, true);
SetHouseData(idx, H_SQL_ID, cache_insert_id());
cache_delete(result);
g_house_loaded ++;
UpdateHouse(idx);
format(fmt_text, sizeof fmt_text, "[A] %s[%d] создал дом ¹%d (%s / %s)", GetPlayerNameEx(playerid), playerid, idx, GetCityName(GetHouseData(idx, H_CITY)), GetZoneName(GetHouseData(idx, H_ZONE)));
SendMessageToAdmins(fmt_text, 0x66CC33FF);
SendClientMessage(playerid, 0x3399FFFF, "Используйте {FFFF00}/setexitpos и /setcarpos{3399FF}, чтобы завершить создание дома");
return 1;
}
CMD:setexitpos(playerid, params[])
{
if(GetPlayerAdminEx(playerid) != 6) return 1;
extract params -> new house_id; else return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /setexitpos [id дома]");
if(!(0 <= house_id <= g_house_loaded - 1)) return SendClientMessage(playerid, 0x999999FF, "Данного дома не существует на сервере");
GetPlayerPos(playerid, g_house[house_id][H_EXIT_POS_X], g_house[house_id][H_EXIT_POS_Y], g_house[house_id][H_EXIT_POS_Z]);
GetPlayerFacingAngle(playerid, g_house[house_id][H_EXIT_ANGLE]);
new fmt_text[144];
format
(
fmt_text, sizeof fmt_text,
"UPDATE houses SET exit_x='%f', exit_y='%f', exit_z='%f', exit_angle='%f' WHERE id=%d",
GetHouseData(house_id, H_EXIT_POS_X),
GetHouseData(house_id, H_EXIT_POS_Y),
GetHouseData(house_id, H_EXIT_POS_Z),
GetHouseData(house_id, H_EXIT_ANGLE),
GetHouseData(house_id, H_SQL_ID)
);
mysql_query(mysql, fmt_text, false);
format(fmt_text, sizeof fmt_text, "Вы успешно изменили координаты выхода у дома №%d", house_id);
SendClientMessage(playerid, 0x66CC33FF, fmt_text);
return 1;
}
CMD:setcarpos(playerid, params[])
{
if(GetPlayerAdminEx(playerid) != 6) return 1;
extract params -> new house_id; else return SendClientMessage(playerid, 0xCECECEFF, "Используйте: /setcarpos [id дома]");
if(!(0 <= house_id <= g_house_loaded - 1)) return SendClientMessage(playerid, 0x999999FF, "Данного дома не существует на сервере");
GetPlayerPos(playerid, g_house[house_id][H_CAR_POS_X], g_house[house_id][H_CAR_POS_Y], g_house[house_id][H_CAR_POS_Z]);
GetPlayerFacingAngle(playerid, g_house[house_id][H_CAR_ANGLE]);
new fmt_text[144];
format
(
fmt_text, sizeof fmt_text,
"UPDATE houses SET car_x='%f', car_y='%f', car_z='%f', car_angle='%f' WHERE id=%d",
GetHouseData(house_id, H_CAR_POS_X),
GetHouseData(house_id, H_CAR_POS_Y),
GetHouseData(house_id, H_CAR_POS_Z),
GetHouseData(house_id, H_CAR_ANGLE),
GetHouseData(house_id, H_SQL_ID)
);
mysql_query(mysql, fmt_text, false);
format(fmt_text, sizeof fmt_text, "Вы успешно изменили координаты спавна авто у дома №%d", house_id);
SendClientMessage(playerid, 0x66CC33FF, fmt_text);
return 1;
}
Отредактировано пользователем SendFo RP
Поделиться сообщением
Ссылка на сообщение