Активный
- Тема Автор
- #1
Идея и назначение
Идея в том, чтобы у игрока был свой небольшой личный гараж для одного автомобиля.
Игрок может заспавнить свою машину в этом гараже и всегда знать, где она находится.
Подходит для RPG и экономических серверов, где у каждого есть личный транспорт.
Суть реализации
1. Для простоты задаем одну точку гаража с координатами.
2. Создаем переменную, в которой храним ID личного транспорта игрока.
3. Делаем команду, которая спавнит или переспавнивает машину игрока в гараже.
4. При необходимости можно проверять, чтобы в гараже не было других игроков.
Реализация
Дополнительные идеи
1. Сделать по одной точке гаража для каждого игрока с разными координатами.
2. Привязать модель машины к данным аккаунта, а не жестко к 411.
3. Добавить команду продажи или смены автомобиля.
4. Реализовать вход в интерьер гаража с отдельной локацией.
5. Сохранять состояние машины между рестартами сервера.
Идея в том, чтобы у игрока был свой небольшой личный гараж для одного автомобиля.
Игрок может заспавнить свою машину в этом гараже и всегда знать, где она находится.
Подходит для RPG и экономических серверов, где у каждого есть личный транспорт.
Суть реализации
1. Для простоты задаем одну точку гаража с координатами.
2. Создаем переменную, в которой храним ID личного транспорта игрока.
3. Делаем команду, которая спавнит или переспавнивает машину игрока в гараже.
4. При необходимости можно проверять, чтобы в гараже не было других игроков.
Реализация
Код:
#define GARAGE_X 2150.0
#define GARAGE_Y -1800.0
#define GARAGE_Z 13.5
new PlayerCar[MAX_PLAYERS];
CMD:mycar(playerid)
{
if(PlayerCar[playerid] == 0)
{
PlayerCar[playerid] = CreateVehicle(411, GARAGE_X, GARAGE_Y, GARAGE_Z, 0.0, 1, 1, 0);
LinkVehicleToInterior(PlayerCar[playerid], GetPlayerInterior(playerid));
}
else
{
SetVehiclePos(PlayerCar[playerid], GARAGE_X, GARAGE_Y, GARAGE_Z);
SetVehicleZAngle(PlayerCar[playerid], 0.0);
RepairVehicle(PlayerCar[playerid]);
}
SendClientMessage(playerid, -1, "Твоя машина находится в личном гараже.");
return 1;
}
Дополнительные идеи
1. Сделать по одной точке гаража для каждого игрока с разными координатами.
2. Привязать модель машины к данным аккаунта, а не жестко к 411.
3. Добавить команду продажи или смены автомобиля.
4. Реализовать вход в интерьер гаража с отдельной локацией.
5. Сохранять состояние машины между рестартами сервера.