Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7

Тема: Вход!

  1. #1
    Аватар для #Mark
    Пользователь

    Статус
    Оффлайн
    Регистрация
    14.05.2014
    Адрес
    Киев. Украина
    Сообщений
    13
    Репутация:
    1 ±

    Вход!

    Всем здарова. Вот мне интересно узнать а как сделать так чтобы после того как player авторизировался, ему показывали 6 машин и можно было камерой передвигать и выбирать тачки??

    Зарание спасибо, а то я в скриптинге недавно. Хотелось бы узнать.
    #Mark

      Открыть/закрыть
    Skype - jast.fuck97
    Vk - Тыкь

    - У нас тут блек-джек и шлюхи!
    - Одна убежаоа но мы её найдём

  2. #2
    Аватар для MR_BEN
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.01.2014
    Сообщений
    110
    Репутация:
    29 ±
    Начни с чего-нибудь попроще...

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

    Статус
    Оффлайн
    Регистрация
    14.05.2014
    Адрес
    Киев. Украина
    Сообщений
    13
    Репутация:
    1 ±
    Я с попроще уже пробывал...
    Уже нужно что то посложнее...
    #Mark

      Открыть/закрыть
    Skype - jast.fuck97
    Vk - Тыкь

    - У нас тут блек-джек и шлюхи!
    - Одна убежаоа но мы её найдём

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

    Статус
    Оффлайн
    Регистрация
    10.01.2014
    Сообщений
    110
    Репутация:
    29 ±
    Скачай FS InGame Cam Editor. Установи машины, выбери позицию камеры. После этого создай переменную. По нажатию, допустим, на стрелку вправо меняй значение переменной и позицию камеры. Ну а дальше продумай сам.
    Последний раз редактировалось MR_BEN; 20.07.2014 в 12:28.

  5. #5
    Аватар для wAx
    ¯\_(ツ)_/¯

    Статус
    Оффлайн
    Регистрация
    13.12.2013
    Сообщений
    377
    Репутация:
    146 ±
    Привет!

    Для "плавного" перемещения камеры от точки к точке, используется функция InterpolateCameraPos. Подробнее тут.

    Расставляй автомобили и находи позицию камеры при помощи команды /save, где позиция самой камеры - твоя позиция, а координаты направления камеры - координаты автомобиля.

    Дальше - проще, в OnPlayerKeyStateChange(ну или на текстдравах). Создаешь переменную, которая хранит "этап" просмотра игрока твоих автомобилей.
    К примеру:

    PHP код:
    if(!step[playerid])
    {
        
    step[playerid]++;
        
    InterpolateCameraPos(playeridfromx,fromy,fromz,tox,toy,toztimemove);
        
    InterpolateCameraLookAt(playeridfromx,fromy,fromz,tox,toy,toztimemove);

    Ну и далее в таком же духе.

  6. 2 пользователя(ей) сказали cпасибо:
    MR_BEN (20.07.2014) underwoker (20.07.2014)
  7. #6
    Аватар для L0ndl3m
    Пользователь

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Также подкину команду для точного сохранения координат камеры:
    PHP код:
    CMD:savecam(playeridparams[]) // if(strcmp(cmdtext, "/savecam", true, 8) == 0)
    {
        static const
            
    fmt_str0[] = "SetPlayerCameraPos(playerid, %f, %f, %f);\n",
            
    fmt_str1[] = "SetPlayerCameraLookAt(playerid, %f, %f, %f);\n";

        const
            
    fmt_size0 sizeof(fmt_str0) + (-11) * 3,
            
    fmt_size1 sizeof(fmt_str1) + (-11) * 3;

        
    #if fmt_size0 > fmt_size1
            #define final_size fmt_size0
        #else
            #define final_size fmt_size1
        #endif

        
    new
            
    str[final_size],
            
    Filecam_file fopen("CamCoords.ini"io_append),
            
    Floatcam_pos_axis_x,
            
    Floatcam_pos_axis_y,
            
    Floatcam_pos_axis_z,
            
    Floatcam_pos_vec_axis_x,
            
    Floatcam_pos_vec_axis_y,
            
    Floatcam_pos_vec_axis_z;

        
    #undef final_size

        
    GetPlayerCameraPos(playeridcam_pos_axis_xcam_pos_axis_ycam_pos_axis_z);
        
    GetPlayerCameraFrontVector(playeridcam_pos_vec_axis_xcam_pos_vec_axis_ycam_pos_vec_axis_z);

        
    format(strsizeof(str), fmt_str0cam_pos_axis_xcam_pos_axis_ycam_pos_axis_z);
        
    fwrite(cam_filestr);

        
    format(strsizeof(str), fmt_str1cam_pos_axis_x 5.0 cam_pos_vec_axis_xcam_pos_axis_y 5.0 cam_pos_vec_axis_ycam_pos_axis_z 5.0 cam_pos_vec_axis_z);
        
    fwrite(cam_filestr);

        return 
    fclose(cam_file);

    Как сделать из этих координат передвижение камеры?
    Допустим мы сохранили 2 координаты в файл: Первая координата - откуда, вторая - куда, код:
    PHP код:
    SetPlayerCameraPos(playerid1647.3437501718.68395911.734600); // Откуда ( первая функция )
    SetPlayerCameraLookAt(playerid1647.3674311723.64819311.138239); // Откуда // ( первая функция )
    SetPlayerCameraPos(playerid1644.8741451863.82678211.175399); // Куда ( вторая функция )
    SetPlayerCameraLookAt(playerid1641.9504391859.77673311.397855); // Куда // вторая функция ) 
    Теперь используем функции InterpolateCameraPos и InterpolateCameraLookAt.

    Берём координаты из первой функции SetPlayerCameraPos и совмещаем со второй функцией. И заключаем её в функцию InterpolateCameraPos. Должно получиться как-то так ( остальные параметры не относятся к положению камеры ):
    PHP код:
    InterpolateCameraPos(playerid1647.3437501718.68395911.7346001644.8741451863.82678211.17539910000); 
    Положение перемещения камеры готово, но при перемещении камеры, она будет смотреть не туда, куда мы хотели. Для это есть функция InterpolateCameraLookAt. Совмещать координаты мы будем так же как и с первой функцией.

    Берём координаты из второй функции. Смещаем координаты из функции SetPlayerCameraPos с SetPlayerCameraLookAt.

    В итоге должно получиться это:
    PHP код:
    InterpolateCameraLookAt(playerid1647.3674311723.64819311.1382391641.9504391859.77673311.39785510000); 
    Для примера я записал видео, этих координат:

  8. Пользователь сказал cпасибо:
    underwoker (20.07.2014)
  9. #7
    Аватар для #Mark
    Пользователь

    Статус
    Оффлайн
    Регистрация
    14.05.2014
    Адрес
    Киев. Украина
    Сообщений
    13
    Репутация:
    1 ±
    Всем спасбо, будем разбиратся сейчас :)
    #Mark

      Открыть/закрыть
    Skype - jast.fuck97
    Vk - Тыкь

    - У нас тут блек-джек и шлюхи!
    - Одна убежаоа но мы её найдём

 

 

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

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

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

Ваши права

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