HLFX.Ru Forum Страницы (7): « 1 2 [3] 4 5 6 7 »
Показать все 103 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Проблема с xash ents (https://hlfx.ru/forum/showthread.php?threadid=569)


Отправлено FiEctro 20-03-2007 в 17:47:

И как их фиксить ?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 20-03-2007 в 18:17:

Цитата:
-CJ- писал:
error C2039: 'PostActivate' : is not a member of 'CBaseEntity'

Значит ты не добавил эту строку! Сделай так, как тебе сказали... Покажи кусок класса CBaseEntity, содержащий Activate и PostActivate.

__________________

xaerox on Vivino


Отправлено FiEctro 21-03-2007 в 09:56:

XaeroX
>> Покажи кусок класса CBaseEntity

Собсно вот ! тока возможно я напутал что нить .....
в cbase.h :
class CBaseEntity;
virtual void Activate ( void ) {}
class CBaseMonster;
class CBasePlayerItem;
class CSquadMonster;

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 21-03-2007 в 10:03:

-CJ- иди уже купи себе книжку по С++.
и внимательно прочитай там, как описывается класс.
мне бы на твоем месте было бы стыдно выкладывать то что ты сейчас выложил.
Тебе же ясно сказали ПОСЛЕ virtual void Activate ( void ) {}
Нахрена ты Actviate вытащил к PostActivate ?
если гора не идет к магомеду?


Отправлено XaeroX 21-03-2007 в 11:32:

-CJ- извини, но если ты принципиально не понимаешь то, что мы говорим, то тут уже мы помочь не можем.

__________________

xaerox on Vivino


Отправлено FiEctro 21-03-2007 в 14:14:

>> Нахрена ты Actviate вытащил к PostActivate ?

А как нада ? Я делал все по выложенной статье
Я чета не врублюсь там етих CBASE ENTITY дофига и больше после какого класса писать то ( строчку если можно) ?

>> извини, но если ты принципиально не понимаешь то, что мы говорим, то тут уже мы помочь не можем.

Ну так надо излагать ясней ! Яж не экстрасенс а принципиально я понимаю , я просто не могу все ето затолкать в сервеную часть

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 21-03-2007 в 15:27:

Цитата:
-CJ- писал:
Ну так надо излагать ясней !

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

Тебе надо дописать декларацию (описание прототипа) новой функции в описание класса CBaseEntity. Эти описания обычно находятся в заголовках, в твоем случае - в cbase.h. Что ты там видишь?
C++ Source Code:
class CBaseEntity;

Это - так называемое предварительное описание (forward declaration). Это не само описание, а указание компилятору, что описание еще встретится далее. Вот и ищем далее.
C++ Source Code:
1
class CBaseEntity
2
{
3
public:
4
  // Constructor.  Set engine to use C/C++ callback functions
5
  // pointers to engine data
6
  entvars_t *pev;		// Don't need to save/restore this pointer, the engine resets it
7
  ...

Вот, это уже то что нужно - как видишь, переменные и функции уже есть. Нам нужно добавить свое описание функции после описания Activate. Находим Activate:
C++ Source Code:
1
...	// initialization functions
2
virtual void	Spawn( void ) { return; }
3
virtual void	Precache( void ) { return; }
4
virtual void	KeyValue( KeyValueData* pkvd);
5
virtual int		Save( CSave &save );
6
virtual int		Restore( CRestore &restore );
7
virtual int		ObjectCaps( void ) { return FCAP_ACROSS_TRANSITION; }
8
virtual void	Activate( void ) {}
9
...

Вот оно, последняя строка! После нее нужно вставить описание PostActivate по образу и подобию Activate. Выглядеть это будет так:
C++ Source Code:
1
...
2
// initialization functions
3
virtual void	Spawn( void ) { return; }
4
virtual void	Precache( void ) { return; }
5
virtual void	KeyValue( KeyValueData* pkvd);
6
virtual int		Save( CSave &save );
7
virtual int		Restore( CRestore &restore );
8
virtual int		ObjectCaps( void ) { return FCAP_ACROSS_TRANSITION; }
9
virtual void	Activate( void ) {}
10
virtual void	PostActivate( void ) {}
11
...


Многоточия - это указание на то, что перед описанным мной участком и после него есть еще код, а не то, что там есть в самом деле многоточие.

Убедись, что слова, написанные курсивом, тебе понятны! Если нет, то прочитай же наконец книжку по С++!

__________________

xaerox on Vivino


Отправлено FiEctro 21-03-2007 в 17:04:

Во вот ето по нашему Давнобы так все четко и понятно !
>> Убедись, что слова, написанные курсивом, тебе понятны!

Могу обрадовать что да

Собсно новые ошибки пропали появились еще новые !

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 21-03-2007 в 17:34:

-CJ- а ты как хотел
ты думал, что я в Xash пару переменных изменил и все? забрось ты это дело нафиг. Не хватит тебе опыта.


Отправлено XaeroX 21-03-2007 в 18:00:

-CJ- В общем, придется тебе отказаться от идеи мониторов как в ксаше. По крайней мере, фичи их юзанья. А просто энтити зеркала и монитора я тебе сконвертил. xashutil.cpp удали, он тебе не нужен.

Еще нужно зарегать мессаги gmsgAddScreen и gmsgAddMirror.
В файле player.cpp надо добавить глобальные переменные

C++ Source Code:
int gmsgAddScreen = 0;
int gmsgAddMirror = 0;

И в функции LinkUserMessages дописать:
C++ Source Code:
gmsgAddScreen = REG_USER_MSG( "AddScreen", 1);
gmsgAddMirror = REG_USER_MSG( "AddMirror", 1);


Учти - это только серверный код. Еще надо портировать клиентский, например, чтение мессаг и собственно рисование с использованием OpenGL. Но это ты уже как-нибудь сам... Разбирайся...

__________________

xaerox on Vivino


Отправлено Дядя Миша 21-03-2007 в 18:05:

Цитата:

А просто энтити зеркала и монитора я тебе сконвертил

И каждые две минуты спрашивал меня что там для чего


Отправлено XaeroX 21-03-2007 в 18:10:

Дядя Миша ну ты еще давай, меня ламером назови...

__________________

xaerox on Vivino


Отправлено Дядя Миша 21-03-2007 в 18:11:

XaeroX ушастым?


Отправлено FiEctro 22-03-2007 в 08:22:

XaeroX
>> Учти - это только серверный код. Еще надо портировать клиентский, например, чтение мессаг и собственно рисование с использованием OpenGL. Но это ты уже как-нибудь сам... Разбирайся...

А если я буду использовать xasheвскую client.dll ?

Кстати а нуженли здесь етот Xash postActivate system ? А то он у меня выдает одну ошибку :
C:\Program Files\halfsdk\Single-Player Source\Êîïèÿ dlls\gamerules.h(60) : see declaration of 'CGameRules'
Error executing cl.exe.

C:\Program Files\halfsdk\Single-Player Source\Копия dlls\client.cpp(686) : error C2039: 'isMultiplayer' : is not a member of 'CGameRules'

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 22-03-2007 в 09:27:

-CJ- замени isMultiplayer на IsMultiplayer().

__________________

xaerox on Vivino


Временная зона GMT. Текущее время 10:06. Страницы (7): « 1 2 [3] 4 5 6 7 »
Показать все 103 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024