Новые сообщения Участники Правила Поиск

Страница 57 из 91«1255565758599091»
Модератор форума: SLAwww, thecre, RealCrazyMan 
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Помощь по SDK для Serious Sam 1.05/1.07
CAHEK Вторник, 27.11.2012, 07:28 | Сообщение # 1681


Сообщений: 698
Награды: 7
Замечания: 0%
 
Как изменить число в первом ......es при срабатывании функции во втором ......es
и как ограничит обзов вверх вниз при выборе определенного оружия.
Сообщение отредактировал CAHEK - Пятница, 30.11.2012, 15:49


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Вторник, 27.11.2012, 19:57 | Сообщение # 1682


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Менять число ты будешь не в "es", а в объекте какого-то класса, и делать это будешь через указатель (как правило, ((COtherEntity&)(*m_penOtherEntity)).m_fValue=m_fSomeValue), или отправляя события, что есть более правильно: можешь посмотреть, как любой Item отправляет игроку событие, в котором хранится нужная информация.

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.
seriously_petr Четверг, 29.11.2012, 15:56 | Сообщение # 1683


Сообщений: 434
Награды: 4
Замечания: 0%
 
Итак мой проект делается очень медленными шагами, уровнями почти не занимался с начала лета, а сейчас потянуло опять делать, но я хочу решить вопросы с СДК, а потом картами заниматься.

Вот мой вопрос:

Как из типа переменной FLOAT3D извлечь одно из значений, например значение координат по оси X. Ssmile2


SLAwww Четверг, 29.11.2012, 19:15 | Сообщение # 1684


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
FLOAT3D vSomeFloat;
vSomeFloat(1) = 1.0; // значение по Х
vSomeFloat(2) = 1.0; // значение по Y
vSomeFloat(3) = 1.0; // значение по Z


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.
CAHEK Пятница, 30.11.2012, 19:14 | Сообщение # 1685


Сообщений: 698
Награды: 7
Замечания: 0%
 
SLAwww спасибо работает. :)

Как зовут функцию "землятрясение" в эфект маркере.
Как дать на нее "сигнал" (я незнаю как правильно сказать, мне нужен такой эффект что при попадении определенного снаряда в сема происходит землятрясение, в будущем будет еще эффекты но пока так.)


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Пятница, 30.11.2012, 21:14 | Сообщение # 1686


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
А ты не можешь посмотреть в самом исходном коде EffectMarker'a?
Code
// ---------- Apply shake
           CWorldSettingsController *pwsc = NULL;
           // obtain bcg viewer
           CBackgroundViewer *penBcgViewer = (CBackgroundViewer *) GetWorld()->GetBackgroundViewer();
           if( penBcgViewer!=NULL && penBcgViewer->m_penWorldSettingsController!=NULL)
           {
             pwsc = (CWorldSettingsController *) &*penBcgViewer->m_penWorldSettingsController;
             pwsc->m_tmShakeStarted = _pTimer->CurrentTick();
             pwsc->m_vShakePos = GetPlacement().pl_PositionVector;
             pwsc->m_fShakeFalloff = m_fShakeFalloff;
             pwsc->m_fShakeFade = m_fShakeFade;
             pwsc->m_fShakeIntensityZ = m_fShakeIntensityZ;
             pwsc->m_tmShakeFrequencyZ = m_fShakeFrequencyZ;
             pwsc->m_fShakeIntensityY = m_fShakeIntensityY;
             pwsc->m_tmShakeFrequencyY = m_fShakeFrequencyY;
             pwsc->m_fShakeIntensityB = m_fShakeIntensityB;
             pwsc->m_tmShakeFrequencyB = m_fShakeFrequencyB;
             pwsc->m_bShakeFadeIn = FALSE;
           }


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.
seriously_petr Пятница, 30.11.2012, 21:16 | Сообщение # 1687


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Спс

CAHEK Вторник, 04.12.2012, 10:55 | Сообщение # 1688


Сообщений: 698
Награды: 7
Замечания: 0%
 
И еще раз спасибо. :)
И еще вопрос. Как включать и выключать аттачменты на модели. (Ну чтобы они исчезали и появлялись) не знаю как правильно написать. :(


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Среда, 05.12.2012, 22:49 | Сообщение # 1689


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Code
GetModelObject()->RemoveAttachmentModel(MY_ATTACHMENT);

Если в следующий раз нужно будет посмотреть методы класса, не задавай вопрос здесь, просто напиши где-нибудь в IDE само название класса (в данном случае - CModelObject), нажми на нём ПКМ и Go to definition of...


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.
CAHEK Четверг, 06.12.2012, 10:47 | Сообщение # 1690


Сообщений: 698
Награды: 7
Замечания: 0%
 
1. Как включить АНИМАЦИЮ АТТАЧМЕНТА АТТАЧМЕНТА у оружия Сэма. Пробовал этим невыходит (хотя с врагами работает)

GetModelObject()->GetAttachmentModel( НАЗВАНИЕ_АТТАЧМЕНТА )->amo_moModelObject.GetAttachmentModel( НАЗВАНИЕ_АТТАЧМЕНТА_АТТАЧМЕНТА )->amo_moModelObject.PlayAnim( НАЗВАНИЕ_АНИМАЦИИ_АТТАЧМЕНТА_АТТАЧМЕНТА , ФЛАГИ_АНИМАЦИИ_АТТАЧМЕНТА_АТТАЧМЕНТА );

2. Ситуация: у оружия есть 3 атачмент. У каждого из них есть анимации. Как сделать что бы когда Сэм выбирает это оружие кроме анимации ACTIVATE у оружия стартовала анимация атачмента.
(надеюсь понятно написал)
Сообщение отредактировал CAHEK - Четверг, 06.12.2012, 14:01


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


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
С аттачментами вроде бы всё правильно, возможно, ты ошибся где-нибудь в НАЗВАНИЕ_АНИМАЦИИ_АТТАЧМЕНТА_АТТАЧМЕНТА - тебе ведь нужно включить анимацию аттачмента аттачмента? А тут три слова "аттачмент". )

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.
CAHEK Четверг, 06.12.2012, 19:12 | Сообщение # 1692


Сообщений: 698
Награды: 7
Замечания: 0%
 
Не выходит. А ладно Максом буду делать. А вот со вторым вопросиком как быть.

Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Denil Понедельник, 10.12.2012, 21:35 | Сообщение # 1693


Сообщений: 111
Награды: 0
Замечания: 0%
 
кто нибудь подскажет как как декомпилировать dll ?








SLAwww Вторник, 11.12.2012, 03:59 | Сообщение # 1694


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Никак. Настраивай СДК и компилируй свои собственные ДЛЛ. Реальная работа с дизассемблированным кодом гораздо сложнее, чем тихое и спокойное написание классов на С++, так что можешь об этом забыть.

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.
CAHEK Вторник, 11.12.2012, 10:05 | Сообщение # 1695


Сообщений: 698
Награды: 7
Замечания: 0%
 
И еще вопросы.
Ситуация 1. Модель оружия имеет анимацию и 2 атачмента которые тоже имеют свою анимацию.
Я сделал так
Quote

INDEX iAnim; //Играет аним оружия
switch (IRnd()%3) {
case 0: iAnim = COLT_ANIM_FIRE1; break;
case 1: iAnim = COLT_ANIM_FIRE2; break;
case 2: iAnim = COLT_ANIM_FIRE3; break;
}
m_moWeapon.PlayAnim(iAnim, 0);

autowait(0.1f); // играет аним аттачмента 1
CModelObject *pmo = &(m_moWeapon.GetAttachmentModel(COLT_ATTACHMENT_COLT)->amo_moModelObject);
pmo->PlayAnim(COLT_ANIM_FIRE1, 0);
FireSniperBullet(wpn_fFX[WEAPON_SNIPER], wpn_fFY[WEAPON_SNIPER], 500.0f,
(GetSP()->sp_bCooperative) ? 10.0f : 20.0f, 5.0f);

DecAmmo(m_iBMagasinePEST, 1);

SpawnRangeSound(40.0f);
m_iPESTPUL--;
SetFlare(0, FLARE_ADD);
PlayLightAnim(LIGHT_ANIM_COLT_SHOTGUN, 0);
autowait(0.1f); // играет анимация второго аттачмента
CModelObject *pmo = &(m_moWeapon.GetAttachmentModel(COLT_ATTACHMENT_BULLETS)->amo_moModelObject);
pmo->PlayAnim(COLT_ANIM_FIRE1, 0 );


Но при этом когда начинает играть анимация второво аттачмента, анимация оружия прекращается хотя ей еще идти и идти. Как исправить.

Ситуация 2. Аттачмент имеет анимированную текстуру. Как ,ну скажем при старте анимации "FIRE",
запустить у него текстурную анимацию "2"
Сообщение отредактировал CAHEK - Вторник, 11.12.2012, 13:34


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Вторник, 11.12.2012, 19:31 | Сообщение # 1696


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
А существует ли у COLT_ATTACHMENT_BULLETS анимация с индексом COLT_ANIM_FIRE1?
Про анимированную текстуру - там подход аналогичный, просто используется объект типа CTextureObject, который входит в состав CAttachmentModel или как его там.


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.
CAHEK Среда, 12.12.2012, 11:18 | Сообщение # 1697


Сообщений: 698
Награды: 7
Замечания: 0%
 
COLT_ATTACHMENT_BULLETS анимация с индексом COLT_ANIM_FIRE1
Да существует и работает но с багом.(см выше)(я сам добавил)

А с аним текстурой я непонял. (К сожалению я не програмист и в СДК лазию "Методом научного тыка"

На основе этого делать?

CModelObject *pmo = &(m_moWeapon.GetAttachmentModel(COLT_ATTACHMENT_COLT)->amo_moModelObject);
pmo->PlayAnim(COLT_ANIM_FIRE1, 0 );

Можно пример?
Сообщение отредактировал CAHEK - Среда, 12.12.2012, 13:13


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Среда, 12.12.2012, 21:24 | Сообщение # 1698


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Code
CModelObject *pmo = &(m_moWeapon.GetAttachmentModel(COLT_ATTACHMENT_COLT)->amo_moModelObject);  
pmo->mo_toTexture.PlayAnim(TEXTURE_ANIMATION_INDEX,0);

По поводу предыдущего бага - точно не знаю, что это может быть. Попробуй по очереди комментировать строки, относящиеся ко второму выстрелу (начиная с конца), пока баг не исчезнет.


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.
seriously_petr Суббота, 15.12.2012, 15:55 | Сообщение # 1699


Сообщений: 434
Награды: 4
Замечания: 0%
 
Всем привет :D ! У меня проблемка:

В классе CPlayer в процедуре смерти хочу вызвать функцию из CPlayerWeapons:

Code
Death(EDeath eDeath)
{
...
penWeapon->DestroyGhostBusterRay();
...
}


Code
  DestroyGhostBusterRay() {
     // destroy ray
     ((CGhostBusterRay&)*m_penGhostBusterRay).DestroyGhostBusterRay();     
     CPlayer &pl = (CPlayer&)*m_penPlayer;
     pl.m_soWeapon5.Stop();
     return EEnd();
   };


При компиляции выдаёт ошибку:
Code
E:/Mymod/Sources/EntitiesMP/Player.es(5561) : error C2660: 'DestroyGhostBusterRay' : function does not take 0 parameters


Я не пойму причём здесь функция, если это процедура.


SLAwww Суббота, 15.12.2012, 17:38 | Сообщение # 1700


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
В стандарте языка нет разделения на функции и процедуры, это всё - примочки ES-диалекта, поэтому IDE называет их функциями, но всё-же процедуры извне лучше не вызывать, потому что они являются "состояниями", в одном из которых находится объект. Они вызываются, как правило, самим объектом соответствующего класса: в CPlayerWeapons в какой-то точке происходит ожидание ивента (wait), и при получении определённого ивента вызывается процедура. Как-то так:
Code
on (EDestroyGhostBusterRay) : { call DestroyGhostBusterRay() EReturn; resume; }

Вариант полегче - просто оформить этот твой DestroyGhostBusterRay функцией, а не процедурой.


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.
CAHEK Понедельник, 17.12.2012, 19:54 | Сообщение # 1701


Сообщений: 698
Награды: 7
Замечания: 0%
 
Спасибо SLAwww все работает. (Что бы я без тебя делал.)
Вопрос Как при попадании во врага с опр. оружия сделать появление аттачмента у этого оружия.
Как добавить аттач. я знаю, а как вызвать эту функцию только при попадении опр. оружия нет.


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Понедельник, 17.12.2012, 20:14 | Сообщение # 1702


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
В функции стрельбы у каждого оружия, стреляющего пулями (FireTommygun, FireDoubleShotgun и т. д.), пропиши проверку m_penRayHit. Если m_penRayHit указывает на врага (m_penRayHit ненулевой и IsDerivedFromClass(m_penRayHit,"Enemy Base") возвращает TRUE), добавляй аттачмент.
Можно пойти другим путём - в RecieveDamage у CEnemyBase прописать проверку Inflictor'а - если таковым является игрок, отправить ему ивент или иным образом сообщить о необходимости добавления аттачмента.


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.
CAHEK Понедельник, 17.12.2012, 20:24 | Сообщение # 1703


Сообщений: 698
Награды: 7
Замечания: 0%
 
Примерно понял.
А если оружие бензопила.
(я для нее этот эффект готовлю)


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Вторник, 18.12.2012, 00:30 | Сообщение # 1704


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Начиная со строки 2089 в PlayerWeapons.es выполняются действия над объектом, который получает повреждения от бензопилы (penClosest). Можешь проверять этот penClosest, и в зависимости от него добавлять или убирать аттачмент.

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.
CAHEK Вторник, 18.12.2012, 12:07 | Сообщение # 1705


Сообщений: 698
Награды: 7
Замечания: 0%
 
Я вставил код
Code
if( penClosest!=NULL)  
            { .........}

после строки
Code
m_moWeapon.PlayAnim(CHAINSAW_ANIM_FIRE, AOF_LOOPING|AOF_NORESTART);


Выдает ошибку C:/MyMod/Sources/EntitiesMP/PlayerWeapons.es(6245) : error C2065: 'penClosest' : undeclared identifier


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Вторник, 18.12.2012, 19:34 | Сообщение # 1706


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Конечно, ведь penClosest - локальная переменная метода CutWithChainsaw, а тебе нужно сделать её глобальной.

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.
XFighter Пятница, 21.12.2012, 20:00 | Сообщение # 1707


Сообщений: 20
Награды: 1
Замечания: 20%
 
Привет, вопрос такой: как рандонмизировать бег врагов (Random)? Например один гнаар бежит быстрее другого.

SLAwww Пятница, 21.12.2012, 20:43 | Сообщение # 1708


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
В процедуре Main задаются все начальные параметры врага. Начиная со строки 492 в Eyeman.es:
Код
if (m_EecChar==EYC_SERGEANT) {
       m_fAttackRunSpeed = FRnd()*2.0f + 10.0f;
       m_aAttackRotateSpeed = AngleDeg(FRnd()*100 + 600.0f);
       m_fCloseRunSpeed = FRnd()*2.0f + 10.0f;
       m_aCloseRotateSpeed = AngleDeg(FRnd()*100 + 600.0f);
     } else {
       m_fAttackRunSpeed = FRnd()*2.0f + 9.0f;
       m_aAttackRotateSpeed = AngleDeg(FRnd()*100 + 600.0f);
       m_fCloseRunSpeed = FRnd()*2.0f + 9.0f;
       m_aCloseRotateSpeed = AngleDeg(FRnd()*100 + 600.0f);
     }

Как видишь, скорости бега и так рандомизированы, хотя, можно увеличить разброс, сделав, например, не FRnd()*2.0f + 10.0f, а FRnd()*6.0f + 8.0f.


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.
XFighter Воскресенье, 23.12.2012, 19:27 | Сообщение # 1709


Сообщений: 20
Награды: 1
Замечания: 20%
 
ок, спасибо.

Добавлено (23.12.2012, 19:27)
---------------------------------------------
--------------------Configuration: EntitiesMP - Win32 Release--------------------
Compiling...
Command line warning D4002 : ignoring unknown option '/Ot'
Command line warning D4002 : ignoring unknown option '/Og'
Command line warning D4002 : ignoring unknown option '/Oi'
Command line warning D4002 : ignoring unknown option '/Oy-'
HUD.cpp
E:\Program Files\Croteam\SeriousSam-2\The Second Encounter\Mods\MyMod\Sources\EntitiesMP\Common\HUD.cpp(752) : fatal error C1001: INTERNAL COMPILER ERROR
(compiler file 'msc1.cpp', line 1786)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
Error executing cl.exe.

EntitiesMP.dll - 1 error(s), 4 warning(s)
wtf?? что за ошибка, утром её не было.

SLAwww Воскресенье, 23.12.2012, 21:46 | Сообщение # 1710


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Неправильно настроен проект и/или сама IDE. Возможно, ты открыл проект не в VC++ 6.0.

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.
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Страница 57 из 91«1255565758599091»
Поиск: