Форумы на Наша-Life
Home user CP  
Календарь событий Найти других пользователей Часто задаваемые Вопросы Поиск  
Автор
Тема
Создать Новую Тему    Ответить
Arch13
(Member)

Зарегистрирован: Jul 2008
Проживает: /
Написал: 49 сообщений

Оценка: 0 Votes

Question 
помогите с кодом, пожалуйста.
Сообщение #933344
писал уже ночью - взял за основу русский тутор на вальв девелопмент нетворк... не понимаю, что за еруда - ошибки 2447 - хотя всё закрыл, что мог

code:
void ClientModeShared::OverrideView( CViewSetup *pSetup );

C_BasePlayer *pPlayer = C_BasePlayer::GetLocalPlayer();
{
if(!pPlayer)
return;

pPlayer->OverrideView( pSetup );
}

if( ::input->CAM_IsThirdPerson() );
{
Vector camForward, camRight, camUp;

AngleVectors( pPlayer->EyeAngles(), &camForward, &camRight, &camUp );

trace_t tr, tr2;
Vector vecStart, vecStop, vecDirection, vecSetDirection;
static float camCurrentY;
static float camCurrentX=16.0f; //used for fluid camera transfers
float camDelta=0.5f;
vecStart=pSetup->origin;

AngleVectors(pPlayer->EyeAngles(), &vecDirection);

vecSetDirection.Init(0,0,1.0f);
vecDirection=vecDirection.Cross(vecSetDirection);
vecStop = vecStart + vecDirection*52.0f;

UTIL_TraceLine( vecStart, vecStop, MASK_ALL, pPlayer, COLLISION_GROUP_NONE, &tr );

if (tr.fraction == 1)
{
if(camCurrentX < 16.0f)
camCurrentX +=camDelta;
if(camCurrentX >16.0f)
camCurrentX=16.0f;
VectorMA( pSetup->origin, camCurrentX, camRight, pSetup->origin); //set the right offset
VectorMA( pSetup->origin, 16.0f, camUp, pSetup->origin);
vecStart=tr.endpos;
}
else
{

vecStop = vecStart + vecDirection * -52.0f;

UTIL_TraceLine( vecStart, vecStop, MASK_ALL, pPlayer, COLLISION_GROUP_NONE, &tr );

if (tr.fraction == 1)
{
if(camCurrentX > -16.0f)
camCurrentX -=camDelta;
if(camCurrentX < -16.0f)
camCurrentX=-16.0f;
VectorMA( pSetup->origin, camCurrentX, camRight, pSetup->origin);
VectorMA( pSetup->origin, 16.0f, camUp, pSetup->origin);
vecStart=tr.endpos;
}
else
{
VectorMA( pSetup->origin, 0.0f, camRight, pSetup->origin);

AngleVectors(pPlayer->EyeAngles(), &vecDirection);
vecSetDirection.Init(1.0f,0,0);
vecDirection=vecDirection.Cross(vecSetDirection);
vecStop = vecStart +vecDirection*32.0f;

UTIL_TraceLine( vecStart, vecStop, MASK_ALL, pPlayer, COLLISION_GROUP_NONE, &tr);

if(tr.fraction == 1)
{
VectorMA( pSetup->origin, 32.0f, camUp, pSetup->origin);
vecStart=tr.endpos;
}
else

{
VectorMA( pSetup->origin, 0.0f, camUp, pSetup->origin);
}
}

}

AngleVectors(pPlayer->EyeAngles(), &vecDirection);
vecStop = vecStart + vecDirection * -96;
UTIL_TraceLine( vecStart, vecStop, MASK_ALL, pPlayer, COLLISION_GROUP_NONE, &tr );

vecStart=pSetup->origin;

vecStop = vecStart+vecDirection*-96;
UTIL_TraceLine( vecStart, vecStop, MASK_ALL, pPlayer, COLLISION_GROUP_NONE, &tr );


if(tr.fraction != 1)
{
camCurrentY = -96 * tr.fraction + 10.0f;
}
else
{
camCurrentY=-96.0f;
VectorMA( pSetup->origin, camCurrentY, camForward, pSetup->origin);
}
}
Old Post 19-12-2009 11:57
Arch13 отсутствует Посмотреть данные 'Arch13' Отправить Приватное Сообщение для 'Arch13' Найти другие сообщения 'Arch13' Добавить Arch13 в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Doctor5772
(Someone)

Зарегистрирован: Nov 2007
Проживает: Россия/
Написал: 1050 сообщений

Оценка: 33 Votes 33 чел.

Старожил 
Сообщение #933394
Хех, дебагуй лучше. Ошибк в коде делают специально, что бы всякие ламмеры не делали тупо копи-паст кода, над которым, между прочим, кто то потел
Old Post 19-12-2009 15:10
Doctor5772 отсутствует Посмотреть данные 'Doctor5772' Отправить Приватное Сообщение для 'Doctor5772' Найти другие сообщения 'Doctor5772' Добавить Doctor5772 в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Arch13
(Member)

Зарегистрирован: Jul 2008
Проживает: /
Написал: 49 сообщений

Оценка: 0 Votes

Сообщение #933400
Strelok, так и скажи, что не знаешь)))
а ошибку я-таки нашёл...
можно тему закрывать)))
Old Post 19-12-2009 15:20
Arch13 отсутствует Посмотреть данные 'Arch13' Отправить Приватное Сообщение для 'Arch13' Найти другие сообщения 'Arch13' Добавить Arch13 в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Все время в GMT . Сейчас 22:04.
Создать Новую Тему    Ответить

Быстрый ответ
Ваше Имя:
Хотите Зарегистрироваться?
Ваш Пароль:
Забыли свой Пароль?
Вы можете оставлять свои комментарии анонимно, просто введя свои имя и оставив пустым поле пароля.
Ваш ответ:

[проверить размер]
[транслит в win] | [?]
[русская клавиатура]

Дополнительно: Подтверждение по E-Mail


Быстрый переход:
 
Оцените эту Тему:
 

Правила форума:
Создание Тем не разрешено
Создание Сообщений разрешено
Создавать Вложения не разрешено
Редактирование Сообщений не разрешено
Коды HTML запрещены
Коды форума разрешены
Смайлики разрешены
Коды [IMG] запрещены