Новые сообщения Участники Правила Поиск
Помощь по SDK для Serious Sam 1.05/1.07
CAHEK Суббота, 06.10.2012, 14:38 | Сообщение # 1621


Сообщений: 794
Награды: 16
Замечания: 0%
 
Делаю алт. огонь и вот на чем остановился. Немогу прописать вот сдесь
Code
  Idle() {

Idle() {

       wait() {
         on (EBegin) : {
           // play default anim
           PlayDefaultAnim();

           // weapon changed
           if (m_bChangeWeapon) {
             jump ChangeWeapon();
           }
           // fire pressed start firing
           if (m_bFireWeapon) {
             jump Fire();
           }

           // reload pressed
           if (m_bReloadWeapon) {
             jump Reload();
           }
           resume;
         }
         // select weapon
         on (ESelectWeapon eSelect) : {
           // try to change weapon
           SelectWeaponChange(eSelect.iWeapon);
           if (m_bChangeWeapon) {
             jump ChangeWeapon();
           }
           resume;
         }
         // fire pressed
         on (EFireWeapon) : {
           jump Fire();
         }

         // МЕСТО НЕПОНИМАНИЯ КОМПА
         on (EALTFireWeapon) : {
           jump ALTFire();
         }

         // reload pressed
         on (EReloadWeapon) : {
           jump Reload();
         }
         // boring weapon animation
         on (EBoringWeapon) : {
           call BoringWeaponAnimation();
         }
       }
     };



ПРИЧЕМ ЕСЛИ ИЗ Player.es СИГНАЛ ОТ МОЕЙ КЛАВИШИ ОТПРАВИТЬ НЕ НА ALTFireWeapon НА Fire ТО ОБЕ КЛАВИШИ ВЫПОЛНЯЮТ ВУНКЦИЮ ВЫЙСТРЕЛА.

ОШИБКА : error C2065: 'STATE_CPlayerWeapons_ALTFIRE' : undeclared identifier

КАК Я ПОНЯЛ ЭТО ИЗ Player.es ПРИ НАЖАТИИ КНОПКИ ПРИХОДИТ СИГНАЛ ТАКОЙТО И ПРИ ЭТОМ ДОЛЖНА ВЫПОЛНИТСЯ ТАКАЯТА ФУНКЦИЯ.
Сообщение отредактировал CAHEK - Суббота, 06.10.2012, 15:03


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Суббота, 06.10.2012, 15:23 | Сообщение # 1622


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
У тебя в Player.es нигде нет процедуры ALTFire(), поэтому ошибка.
Не надо писать капсом, и расставь знаки припинания.


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.10.2012, 16:16 | Сообщение # 1623


Сообщений: 794
Награды: 16
Замечания: 0%
 
Вопрос снят.

Добавлено (06.10.2012, 16:16)
---------------------------------------------
Алт огонь у меня стреляет 1 раз на 1 нажатие. Как сделать чтобы алт огонь был автоматический.

Сообщение отредактировал CAHEK - Суббота, 06.10.2012, 15:34


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Суббота, 06.10.2012, 16:35 | Сообщение # 1624


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 Вторник, 09.10.2012, 07:26 | Сообщение # 1625


Сообщений: 794
Награды: 16
Замечания: 0%
 
Не совсем понимая как и мучил код, но максимум что у меня выходило это при нажатии клавиши у меня алт. огонь стрелял пока патроны не накрылись. Делаю на примере функции оригинального огня.

Все я встал. <_< Не могу сделать. :( Прошу помощи. алт выстрел не хочет работать нормально.
Варианты действий у меня закончились. Пожалуйста напишите пример исправления бага (одно нажатие = один выстрел) X_X .Заранее благодарен.
X_X

Добавлено (09.10.2012, 07:26)
---------------------------------------------
Это опять я (скоро надоем уже наверно). В чем разница между левой и правой кнопкой мыши. Дело в том что я попробовал поставить свой алт.огонь на левую кнопку мыши и у меня заработало как надо, а на правой кнопке мыши у меня все тот же глюк.

Сообщение отредактировал CAHEK - Воскресенье, 07.10.2012, 19:44


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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_Master Вторник, 09.10.2012, 19:01 | Сообщение # 1627


Сообщений: 19
Награды: 0
Замечания: 0%
 
Подскажите пожалуйста. При нанесении ущерба игроку экран на долю секунды покрывается красной пеленой. Где это искать?

Дратуте, мыня довут М`дет...
SLAwww Вторник, 09.10.2012, 21:30 | Сообщение # 1628


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Player.es, строка 3121:
Code
m_tmWoundedTime   = _pTimer->CurrentTick();

Экран остаётся красным некоторое время после m_tmWoundedTime.


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 Среда, 10.10.2012, 08:04 | Сообщение # 1629


Сообщений: 794
Награды: 16
Замечания: 0%
 
Ну весь свой код выкладывать здесь не вариант т.к. он захламит весь форум. Сделаю так.
Сообщение отредактировал CAHEK - Среда, 10.10.2012, 08:13


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
У тебя в процедуре AltFire() в PlayerWeapons встречается такое:
Code
while (HoldingFire() && m_bHasAmmo)

А HoldingFire() проверяет m_bFireWeapon. Тебе нужно проверять не его, а m_bAltFireWeapon.


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.10.2012, 07:54 | Сообщение # 1631


Сообщений: 794
Награды: 16
Замечания: 0%
 
Спасибо работает.
Сообщение отредактировал CAHEK - Четверг, 11.10.2012, 13:20


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Heming_Hitrowski Вторник, 06.11.2012, 12:56 | Сообщение # 1632


Double Jumper
Сообщений: 887
Награды: 32
Замечания: 0%
 
Нужна помосч. Недавно вкручивая в исходники новое оружие, появилась проблема. Представьте себе кольт, у которого есть кончающиеся патроны.
Выстрелы кольта (осталась одна обойма, 7 патрон) : Когда патроны кончаются, кольт не меняется автоматически, пока не нажмешь снова на кнопку огня.
Выстрелы кольта, когда осталось 6 и менее патронов( кольт перезаряжен): На нуле кольт встает, не дает сменить оружие. При выстреле ничего не происходит.

Я пробовал что то мудрить с SelectNewWeapon,
// DeagleBullets = ColtBullets
// DgBullets - новый тип патрон
ReloadDesert() {
if (m_iDeagleBullets==7) {
return EEnd();
}
// sound
CPlayer &pl = (CPlayer&)*m_penPlayer;
PlaySound(pl.m_soWeapon1, SOUND_DEAGLE_RELOAD, SOF_3D|SOF_VOLUMETRIC);

m_moWeapon.PlayAnim(COLT_ANIM_RELOAD, 0);
autowait(m_moWeapon.GetAnimLength(COLT_ANIM_RELOAD));
m_iDeagleBullets = 7;
return EEnd();
if (m_iDgBullets<=0) { SelectNewWeapon(); }
else {
ASSERTALWAYS("Deagle - Auto weapon change not working.");
m_bFireWeapon = m_bHasAmmo = FALSE;
}
};

Тем не менее, ничего не происходило. /cht_bPleaseHelp=1
Сообщение отредактировал Heming_Hitrowski - Вторник, 06.11.2012, 12:57


SLAwww Вторник, 06.11.2012, 18:09 | Сообщение # 1633


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 Вторник, 20.11.2012, 19:16 | Сообщение # 1634


Сообщений: 794
Награды: 16
Замечания: 0%
 
Как изменить местоположение и размер надписей в главном меню ( «Новая игра» и ей подобных.)

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


Double Jumper
Сообщений: 887
Награды: 32
Замечания: 0%
 
CAHEK, Про размер не знаю, а вот положение можно настроить, посмотрев в файл serioussam.txt, находящийся в Data/Translations. (правда двигать можно только вправо, насколько я знаю)
Но это геморно. Другого пути не знаю, если только новое меню делать.


CAHEK Суббота, 24.11.2012, 07:07 | Сообщение # 1636


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


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Суббота, 24.11.2012, 17:13 | Сообщение # 1637


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 0%
 
Скопируй существующий .es-файл, переименуй, добавь к проекту, измени число в начале файла (должно быть уникальным) и имя класса, скомпилируй .es (перед этим скопируй его опции у другого .es), затем добавь к проекту получившиеся .h (как правило, два файла) и .срр (один файл). Затем компилируй DLL, и в ней будет новый класс.

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 Вторник, 27.11.2012, 07:28 | Сообщение # 1638


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


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 | Сообщение # 1640


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

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

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


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 | Сообщение # 1642


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

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


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 | Сообщение # 1644


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

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


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


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


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 | Сообщение # 1647


Сообщений: 794
Награды: 16
Замечания: 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 | Сообщение # 1648


Рряа? ^..^
Сообщений: 2398
Награды: 27
Замечания: 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 | Сообщение # 1649


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

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


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








Поиск: