Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для kala4iks
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.02.2015
    Сообщений
    317
    Репутация:
    0 ±

    Команда /veh

    Добрый день помогите пожалуйста как записать id и название транспорта. Чтоб в команде /vehd при удалении писало carid который создался в /veh и его название.. А то у меня при удалении не пишется какой транспорт был создан и id его.

    PHP код:
    CMD:veh(playerid,params[])
    {
        if(
    Player[playerid][pAdmin] == || AdminDuty[playerid] == 0)return NoRights;
        if(
    sscanf(params,"d",params[0]))return send(playerid,COLOR_COMAND,"[КОМАНДЫ] {FFFFFF}/veh [id транспорта].");
        if(
    params[0] > 611 || params[0] < 400)return send(playerid,COLOR_RED,"[ОШИБКА] {FFFFFF}Доступное значение транспорта от 400 до 611.");
        new 
    Float:X,Float:Y,Float:Z,Float:A,lights,alarm,doors,bonnet,boot,objective,string[80];
        
    GetPlayerPos(playerid,X,Y,Z);
        
    GetPlayerFacingAngle(playerid,A);
        if(
    CreateCar[playerid] != 0)DestroyVehicle(CreateCar[playerid]);
        
    CreateCar[playerid] = CreateVehicle(params[0],X,Y,Z,A,-1,-1,1800000);
        
    SetVehicleParamsEx(CreateCar[playerid],1,lights,alarm,doors,bonnet,boot,objective);
        
    Engine[CreateCar[playerid]] = 1;
        
    PutPlayerInVehicle(playerid,CreateCar[playerid],0);
        new 
    carid GetPlayerVehicleID(playerid);
        
    f(string,"Ты создал(а) %s (ID:%d). Удалить транспорт: /vehd.",VehiclesName[GetVehicleModel(CreateCar[playerid])-400],carid);
        
    send(playerid,COLOR_WHITE,string);
        
    strmid(VenicleInfo[CreateCar[playerid]][NameAcar],VehiclesName[GetVehicleModel(CreateCar[playerid])-400],0,strlen(VehiclesName[GetVehicleModel(CreateCar[playerid])-400]),999);
        return 
    1;

    PHP код:
    CMD:vehd(playerid,params[])
    {
        if(
    Player[playerid][pAdmin] == || AdminDuty[playerid] == 0)return NoRights;
        if(
    CreateCar[playerid] == 0)return send(playerid,COLOR_RED,"[ОШИБКА] {FFFFFF}Ты не создовал(а) транспорт.");
        new 
    string[128];
        
    f(string,"Ты удалил(а) транспорт %s (ID:%d).",VenicleInfo[GetPlayerVehicleID(playerid)][NameAcar]);
        
    send(playerid,COLOR_WHITE,string);
        
    DestroyVehicle(CreateCar[playerid]);
        
    CreateCar[playerid] = 0;
        return 
    1;

    Последний раз редактировалось kala4iks; 21.08.2015 в 17:00.

  2. #2
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от kala4iks Посмотреть сообщение
    Добрый день помогите пожалуйста как записать id и название транспорта. Чтоб в команде /vehd при удалении писало carid который создался в /veh и его название.. А то у меня при удалении не пишется какой транспорт был создан и id его.
    Разобраться, откуда берётся название транспорта в команде /veh и точно так же получить его в /vehd ? Тут работы на 10 секунд.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  3. #3
    Аватар для kala4iks
    Пользователь

    Статус
    Оффлайн
    Регистрация
    27.02.2015
    Сообщений
    317
    Репутация:
    0 ±
    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    Разобраться, откуда берётся название транспорта в команде /veh и точно так же получить его в /vehd ? Тут работы на 10 секунд.
    Да у меня работало но я чуть переделал так как у меня сробатывало ток когда в транспорте сидел.

  4. #4
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Лол? А как вы хотите? Что бы игрок не в транспорте был?

  5. #5
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2589 ±
    Цитата Сообщение от kala4iks Посмотреть сообщение
    Да у меня работало но я чуть переделал так как у меня сробатывало ток когда в транспорте сидел.
    Ну так правильно: GetPlayerVehicleID вернёт 0 --> GetVehicleModel из-за неправильного ID транспорта тоже вернёт 0 --> вы попытаетесь получить название транспорта в массиве VehiclesName из ячейки 0-400 (= -400) --> словите выход за перделы массива и дальше код не будет выполняться.

    Вместо того, чтобы получать ID транспорта через GetVehicleID, смотрите, куда он сохраняется в команде /veh и откуда берётся при удалении (DestroyVehicle в /vehd).
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  6. Пользователь сказал cпасибо:
    $continue$ (21.08.2015)
 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •