Новые сообщения Участники Правила Поиск
Модератор форума: freeknik, SLAwww, thecre, RealCrazyMan  
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Помощь по SDK для Serious Sam 1.05/1.07
Steadfast Вторник, 01.11.2011, 18:45 | Сообщение # 961


Лохматый и голодный
Сообщений: 711
Награды: 23
Замечания: 0%
 
SeriousAlexej, окей, попробую так. :) Спасибо! ;)


SLAwww Вторник, 01.11.2011, 20:13 | Сообщение # 962


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
SeriousAlexej, как всё запущено, раз уж на то пошло, то хотя бы инициализируй свежесозданный объект:
Code
CEntity *penCopyTarget->CreateEntity(GetPlacement(),CLASS_ТВОЯ_ЕНТИТЯ);
penCopyTarget->Initialize();

А вообще, копирование делается так:
Code
GetWorld()->CopyEntityInWorld(*m_penEntityToCopy,GetPlacement());


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
Steadfast Среда, 02.11.2011, 09:40 | Сообщение # 963


Лохматый и голодный
Сообщений: 711
Награды: 23
Замечания: 0%
 
SLAwww, SeriousAlexej, спасибо за помощь, всё заработало. :)

Я пошёл немного другим путём:


^_^ Ещё раз спасибо.



CAHEK Среда, 02.11.2011, 18:34 | Сообщение # 964


Сообщений: 794
Награды: 15
Замечания: 0%
 
Как уменьшить скорострельность у пулимета?
Я мучил код но толь паузы между выйстрелами поставить выходит.


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Steadfast Четверг, 03.11.2011, 05:21 | Сообщение # 965


Лохматый и голодный
Сообщений: 711
Награды: 23
Замечания: 0%
 
CAHEK, ну и в чём проблема?

Если ты хочешь замедлить саму анимацию, открывай Serious Modeller.



CAHEK Четверг, 03.11.2011, 06:35 | Сообщение # 966


Сообщений: 794
Награды: 15
Замечания: 0%
 
Не внешне а внутрене (СДК)

Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Gh0st Четверг, 03.11.2011, 09:06 | Сообщение # 967


Любитель попугать
Сообщений: 865
Награды: 9
Замечания: 0%
 
CAHEK, скорострельность зависит от скорости анимации огня.

CAHEK Четверг, 03.11.2011, 18:40 | Сообщение # 968


Сообщений: 794
Награды: 15
Замечания: 0%
 
УПС незнал пробую

Добавлено (03.11.2011, 18:40)
---------------------------------------------
Как при гибели игрока запретить загрузку левой кнопкои мыши на некоторое время

Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Steadfast Суббота, 05.11.2011, 18:30 | Сообщение # 969


Лохматый и голодный
Сообщений: 711
Награды: 23
Замечания: 0%
 
Ребят, снова проблема, но это уже больше теория:

Как заставить HUD.cpp взять кое-какую инфу из другого класса (в моём случае это Counter.es)? Как должна выглядеть ссылка?



SLAwww Суббота, 05.11.2011, 18:46 | Сообщение # 970


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Code
((CCounter&)(*penPointerToCounter)).m_fParameterOfCounter


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
SeriousAlexej Понедельник, 07.11.2011, 21:47 | Сообщение # 971


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
Всем привет. У меня появилась необычная проблема, не связанная с Сэмовским СДК.

Я нашел код проигрывателя avi и немного переделал его под себя (он всегда в фул скрине и выключается после просмотра или от нажатия клавиши Esc).

Проблема состоит в том, что когда я его запускаю из другой программы (линк на проигрыватель лежит в дллке другой программы и выглядит так:
Code
system("start player.exe /silent");
), то виндоус переключается на эту задачу и снизу вылазит панелька задач. После проигрывания, появляется десктоп, а мне надо, что бы автоматически выбиралась та программа, которая запустила плеер. Еще хотелось бы убрать панельку задач из видео по возможности... Надеюсь на вашу помощь. :(


SLAwww Понедельник, 07.11.2011, 22:58 | Сообщение # 972


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Хы, ну кто же так делает? ) Передай в свой проигрыватель HWND активного окна, вытащи из него Device context и отрисовывай туда всё, что тебе нужно.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
SeriousAlexej Понедельник, 07.11.2011, 23:38 | Сообщение # 973


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
SLAwww, спасибо, что ответил. Я, по правде говоря, только сейчас узнал об HWND. Как я понял, активировать/деактивировать можно только активное окно. Можно ли при инициализации плеера деактивировать его, получить id окна программы, которая запустила его, развернуть плеер обратно и потом уже переключиться на окно программы с помощью найденного id? Или же можно как-то послать евент exe файлу самого плеера?

На счет Device context. Об этом я тоже услышал впервые, но, как я понял, оно используется для прорисовки чего-то на экране. Оно и правда тут необходимо, или же можно обойтись активацией/деактивацией окон?
П.С.: прости, что так много вопросов сразу, я только начинаю изучать ЯПы.


SeriousAlexej Вторник, 08.11.2011, 00:09 | Сообщение # 974


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
Кажется, я нашел то, что мне надо - поиск окна по его заголовку.
Code
hwnd = FindWindow(NULL, "Program");


SLAwww Вторник, 08.11.2011, 00:15 | Сообщение # 975


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Немного не понял, чего ты хочешь добиться. Убрать панель задач во время воспроизведения видео и вернуться в предыдущее окно после окончания видео? Используй CreateProcess вместо еретического чугунно-деревянного system(). Если не поможет, тогда уже надо либо посылать процессу проигрывателя сообщение для перехода в полноэкранный режим, либо возиться с контекстом устройства. То, что воспроизводится в полноэкранном режиме, по идее должно захватывать HWND рабочего стола и/или отрисовываться в эксклюзивном режиме (если юзается Direct3D или OpenGL). Но в большинстве случаев, CreateProcess с правильно выбранными аргументами должен помочь.
Сообщение отредактировал SLAwww - Вторник, 08.11.2011, 00:16


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
SeriousAlexej Вторник, 08.11.2011, 00:18 | Сообщение # 976


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
Спасибо) Буду эксперементировать...

МегаМозг Четверг, 10.11.2011, 12:30 | Сообщение # 977


Сообщений: 444
Награды: 3
Замечания: 0%
 
Вопрос:
Я добавил в PlayerWeapons, новое оружие, но сомневаюсь всё ли правильно сделал?!
Напишите плиз как добавить новое оружие!!! ^_^


Мои работы....


Увлекаешься дядей сэдом? Тогда тебе >>сюда<<!
thecre Четверг, 10.11.2011, 12:32 | Сообщение # 978


Сообщений: 3449
Награды: 28
Замечания: 0%
 
SLAwww, хмм, а я по-другому делал..

SeriousNikc Четверг, 10.11.2011, 19:30 | Сообщение # 979


Сообщений: 629
Награды: 2
Замечания: 0%
 
как изменить цвет нетриксы!


#смайлик_живи!
"Существует ли жизнь без Windows?" (с)
Steadfast Пятница, 11.11.2011, 16:50 | Сообщение # 980


Лохматый и голодный
Сообщений: 711
Награды: 23
Замечания: 0%
 
SeriousNikc, используй файл SEColors.h???


art-serious Пятница, 11.11.2011, 16:59 | Сообщение # 981


Старый маппер
Сообщений: 652
Награды: 29
Замечания: 0%
 
Если честно, меняя параметры в SEColors.h хорошего не жди. Как я помню, там идет имя переменной (допустим GreenMP) и присваиваемое ей значение 0x00ff0000, а значит меняя только присваиваемое значение, смещается только цветовая гамма. Например - Под желтым цветом можно получить Бирюзовый.

Сам файл Нетриксы бы найти и там отредактировать
Сообщение отредактировал art-serious - Пятница, 11.11.2011, 17:01


[ zc-lab.org ] [ Операция "Новый год" - 40% ]
Tim Пятница, 11.11.2011, 17:09 | Сообщение # 982


Если умеешь что-то, не делай это бесплатно
Сообщений: 280
Награды: 4
Замечания: 0%
 
в какой папке лежит картинка,которая появляется во время загрузки карты КООП

SLAwww Пятница, 11.11.2011, 21:33 | Сообщение # 983


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Quote (SeriousNikc)
как изменить цвет нетриксы!

В Computer.cpp ищи строки:
Code
_colLight  = LCDFadedColor(C_WHITE|255);
    _colMedium = LCDFadedColor(SE_COL_BLUE_LIGHT|255);
    _colDark   = LCDFadedColor(LerpColor(SE_COL_BLUE_DARK, SE_COL_BLUE_LIGHT, 0.5f)|255);
    _colBoxes  = LCDFadedColor(LerpColor(SE_COL_BLUE_DARK, SE_COL_BLUE_LIGHT, 0.5f)|255);

Переменные, значения которых здесь задаются, определены внутри Computer.cpp, и отвечают за цвет элементов Инертана.
Сообщение отредактировал SLAwww - Пятница, 11.11.2011, 21:34


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
SeriousAlexej Суббота, 12.11.2011, 15:37 | Сообщение # 984


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
SLAwww, спасибо, все заработало, как надо. У меня еще остался 1 вопрос. Я решил научить прогу воспроизводить bik видео, но по этому примеру тут инициализируется новое окно.

Можно ли это новое окно заменить на то, которое уже открыто в моей программе вот так:
Code
HWND hwnd = FindWindow(NULL, "окно проги");
?


SLAwww Суббота, 12.11.2011, 17:27 | Сообщение # 985


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
В твоём примере достаточно в функцию Init3D передавать HWND окна, в котором хочешь отрисовывать видео. И лучше бы тебе передавать HWND непосредственно в своё приложение каким-нибудь образом (например, через совместно используемую ДЛЛку с HWND в сегменте .SHARDAT), чем искать его через FindWindow, хотя, это тоже должно сработать. Но не на всех системах.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
Heming_Hitrowski Суббота, 12.11.2011, 17:29 | Сообщение # 986


Double Jumper
Сообщений: 883
Награды: 32
Замечания: 0%
 
Привет всем.

Я тут начал кодить класс врага, аля NPC Dr.zlo, используется моделька стандартного сэма, но проблемко, вот в этой части я не могу сделать так, чтобы все аттачменты было видно:

// set your appearance
SetModel(MODEL_PLAYER);
SetModelMainTexture(m_fnmPlayerTex);
AddAttachment(PLAYER_ATTACHMENT_TORSO, MODEL_BODY, TEXTURE_BODY);
SetModelMainTexture(m_fnmBodyTex);
AddAttachment(BODY_ATTACHMENT_HEAD, MODEL_HEAD, TEXTURE_HEAD);
SetModelMainTexture(m_fnmHeadTex);
AddAttachment(HEAD_ATTACHMENT_GLASSES, MODEL_GLASSES, TEXTURE_GLASSES);

Пробовал разными способами, но либо видна одна голова, либо торс с головой и очками парентится совсем не туда, куда нужно.

Так же почему то вылетает при функции атаки ( одной из нескольких):

Fire(EVoid) : CEnemyBase::Fire {
// hit
if (en_BotWeaponType=WT_ROCKETLAUNCHER) {

SetAttachment(PLAYER_ATTACHMENT_TORSO);
StartModelAnim(BODY_ANIM_SHOTGUN_STAND, AOF_LOOPING);
AddAttachment(BODY_ATTACHMENT_ROCKET_LAUNCHER, MODEL_ROCKETLAUNCHER, TEXTURE_HEAD);
autocall RocketLauncherAttack() EEnd;
}
return EReturn();

}
Сообщение отредактировал Heming_Hitrowski - Суббота, 12.11.2011, 17:38


SLAwww Суббота, 12.11.2011, 17:54 | Сообщение # 987


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Гы, так ты же пытаешься прикрепить аттачмент головы к самой модели Player.mdl, а его надо цеплять к аттачменту торса. ) Не странно, что получается голова с ножками. Смотри сюда:
Code
GetModelObject()->GetAttachmentModel(PLAYER_ATTACHMENT_TORSO)->amo_moModelObject.AddAttachment(BODY_ATTACHMENT_HEAD, MODEL_HEAD, TEXTURE_HEAD);

Идея понятна?
А функция огня вылетает по той же причине - пытаешься прикрепить аттачмент к несуществующей позиции и/или удаляешь предыдущий аттачмент путём установки на его место нового. Аттачмент нельзя удалять, его можно в крайнем случае деактивировать, иначе фейл.


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
SeriousAlexej Суббота, 12.11.2011, 17:57 | Сообщение # 988


Serious Editor
Сообщений: 1245
Награды: 52
Замечания: 0%
 
SLAwww, спасибо, буду пробовать)

Heming_Hitrowski, ты добавляешь атачменты к одной и той же модельке - к Player.mdl Тебе надо сперва добавить Боди, а потом уже к нему голову, а к ней очки. Вот пример (на практике не применял, но должен помочь в теории):

SetModel(MODEL_PLAYER);
SetModelMainTexture(m_fnmPlayerTex);
CModelObject moPlayer = GetModelObject();
//ссылка к Плееру
AddAttachmentToModel(this, moPlayer, PLAYER_ATTACHMENT_TORSO, MODEL_BODY, TEXTURE_BODY, 0, 0, 0);
//добавили Боди
CModelObject &mo = moPlayer.GetAttachmentModel(PLAYER_ATTACHMENT_TORSO)->amo_moModelObject;
//теперь у нас есть ссылка к Боди
AddAttachmentToModel(this, mo, BODY_ATTACHMENT_HEAD, MODEL_HEAD, TEXTURE_HEAD, 0, 0, 0);
//добавили голову
CModelObject &mog = mo.GetAttachmentModel(HEAD_ATTACHMENT_GLASSES)->amo_moModelObject;
//получили ссылку к голове =)
AddAttachmentToModel(this, mog, HEAD_ATTACHMENT_GLASSES, MODEL_GLASSES, TEXTURE_GLASSES, 0, 0, 0);
//ну и добавили очки =)


Heming_Hitrowski Суббота, 12.11.2011, 18:10 | Сообщение # 989


Double Jumper
Сообщений: 883
Награды: 32
Замечания: 0%
 
SeriousAlexej, SLAwww, Спасибо, буду пробовать)) Если получится - обоим репа :D

Heming_Hitrowski Суббота, 12.11.2011, 19:45 | Сообщение # 990


Double Jumper
Сообщений: 883
Награды: 32
Замечания: 0%
 
SeriousAlexej,
E:/Program Files/MyMod/Sources/EntitiesMP/Bot.es(294) : error C2440: 'initializing' : cannot convert from 'class CModelObject *' to 'class CModelObject'
No constructor could take the source type, or constructor overload resolution was ambiguous

Сейчас с Creater'ом мучаемся, что не так здесь?


Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Поиск:

Статистика