script Простенький спавн ТС

Brian_Galaxy

Trainee
Много где искал, изучил этот ваш Freemode, но нигде нет конкретной информации по созданию команды спавна машины.
Вот до чего в процессе изучения офф. ресурсов дошел я. Простенькая команда, которая спавнит ТС на персонаже.
Команда: /v [Модель]
JavaScript:
mp.events.addCommand("v",(player,model)=>{
    mp.vehicles.new(model, player.position,
        {
            heading: player.heading,
            numberPlate: "TEST",
            alpha: 0,
            color: "Black",
            locked: false,
            engine: true,
            dimension: 0
        });
});
 

Lev Angel

Developer
Команда форума
Скриптер
А не будет машина спавнится в игроке? Можно еще добавить ей смещение по x или y координате на 1 единицу.
 

C4_

Trainee
Лучше так сделать
JavaScript:
mp.events.addCommand('veh', (player, _, id, veh, color1, color2) => {
    if(player.admin < 1) return player.outputChatBox("<SERVER> У вас нет доступа к этой команде!");
    if (id == undefined || veh == undefined) return player.outputChatBox('/veh [id] [model] [color1] [color2]');
    let target = mp.players.at(id);
    if (target == null) return player.notify('~r~ID игрока не найден!');
    let pos;
    pos = target.position;
    var adminVeh = mp.vehicles.new(mp.joaat(veh), new mp.Vector3(pos.x + 2, pos.y, pos.z));
    adminVeh.setColor(parseInt(color1), parseInt(color2));
    adminVeh.numberPlate = "SWG RP";  //Номер машины
    player.dim = player.id;
    setTimeout(() => {
        target.putIntoVehicle(adminVeh, 0) // Спавн за водительское место
    }, 150)
    player.notify('~g~ Заспавенно!');
})
 

geneff

Middle Developer
Скриптер
Лучше так сделать
JavaScript:
mp.events.addCommand('veh', (player, _, id, veh, color1, color2) => {
    if(player.admin < 1) return player.outputChatBox("<SERVER> У вас нет доступа к этой команде!");
    if (id == undefined || veh == undefined) return player.outputChatBox('/veh [id] [model] [color1] [color2]');
    let target = mp.players.at(id);
    if (target == null) return player.notify('~r~ID игрока не найден!');
    let pos;
    pos = target.position;
    var adminVeh = mp.vehicles.new(mp.joaat(veh), new mp.Vector3(pos.x + 2, pos.y, pos.z));
    adminVeh.setColor(parseInt(color1), parseInt(color2));
    adminVeh.numberPlate = "SWG RP";  //Номер машины
    player.dim = player.id;
    setTimeout(() => {
        target.putIntoVehicle(adminVeh, 0) // Спавн за водительское место
    }, 150)
    player.notify('~g~ Заспавенно!');
})
А еще лучше так:
JavaScript:
mp.events.addCommand('veh', (player, _, id, veh, color1, color2) => {
    if(player.admin < 1)
        return player.outputChatBox("<SERVER> У вас нет доступа к этой команде!");
    
    if (!id || !veh)
        return player.outputChatBox('/veh [id] [model] [color1] [color2]');
    
    const target = mp.players.at(id);
    if (!target)
        return player.notify('~r~ID игрока не найден!');
    
    const pos = target.position;
    const adminVeh = mp.vehicles.new(mp.joaat(veh), new mp.Vector3(pos.x + 2, pos.y, pos.z));
    adminVeh.setColor(parseInt(color1), parseInt(color2));
    adminVeh.numberPlate = "SWG RP";  //Номер машины
    
    player.dim = player.id;
    setTimeout(() => target.putIntoVehicle(adminVeh, 0) , 150)
    player.notify('~g~ Заспавенно!');
})
 

Lev Angel

Developer
Команда форума
Скриптер
Рас уж мы не проверяем color1 и color2, то стоит задать им значения по-умолчанию. Тогда их не обязательно будет указывать в команде и не будет ошибок если их все же нет.
JavaScript:
mp.events.addCommand('veh', (player, _, id, veh, color1 = 0, color2 = 0) => {
 
  • Like
Реакции: C4_

C4_

Trainee
Рас уж мы не проверяем color1 и color2, то стоит задать им значения по-умолчанию. Тогда их не обязательно будет указывать в команде и не будет ошибок если их все же нет.
JavaScript:
mp.events.addCommand('veh', (player, _, id, veh, color1 = 0, color2 = 0) => {
так это... цвет по стоку можно и не указывать, будет черное авто =/
у нас же проверка идет то ко на ид игрока и на название авто
 

Lev Angel

Developer
Команда форума
Скриптер
так это... цвет по стоку можно и не указывать, будет черное авто =/
у нас же проверка идет то ко на ид игрока и на название авто
А в консоли не ругается setColor, что вместо числа там прилетает NaN? Если нет, то ок :) Мне кажется должно ругаться
 

TTox421

New member
Код:
mp.events.addCommand('veh', (player, veh) => {
        if(veh === undefined) return player.outputChatBox('/veh id_car');
        let pos;
        pos = player.position;
        let adminVeh = mp.vehicles.new(mp.joaat(veh), new mp.Vector3(pos.x + 2, pos.y, pos.z));
})



А вот мой если кому интересно
 
Яндекс.Метрика
Верх