Aynekko писал: Я тут со всем разобрался - в ксашмоде спектатор-режима вообще нет, там какие-то зачатки - StartObserver и… все. Я даже сомневаюсь что он работал. Наверное хлсдк очень древний брался за основу. g_iUser1 никакого тоже не было и в помине. В общем долго и упорно сверялся с актуальным хлсдк и более-менее собрал спектатора - правда без вида овервью карты. Эх, ксашмод, допиливать и допиливать еще. Но, быть может, соберу-таки мод, в который можно будет адекватно поиграть в мультик, а не только пройти сюжетку - благо перешел на FWGS недавно
В HLSDK 2.3 не было спектатора.
Лучше из hlsdk-xash3d взять, там вроде была правка, чтобы из него можно было выйти.
Либо спектатор из AG.
nekonomicon писал: В HLSDK 2.3 не было спектатора.
В клиентской части полная поддержка. На сервере - частичная. То есть, работает только режим HLTV, а просто так войти и выйти из этого режима в ванильной халфе нельзя. Вернее, войти-то можно командой spectate, а вот выйти - никак, нужно дописывать недостающий код.
Добавлено 18-08-2021 в 14:12:
Цитата:
nekonomicon писал: Либо спектатор из AG.
Сорцы AG я не глядел, ориентировался на ReGameDLL, там всё есть. Серверная часть вообще довольно простая в этом плане. При pev->iuser1 у игрока другое состояние. Оно уже всё есть в pm_shared, нужно дописать лишь некоторые мелочи.
илья2 писал: это для тебя так легко для меня это целая эпопея
Ты очень легко сдаёшься. Для меня раньше была целая эпопея сделать прицел для снайперской винтовки. А сейчас вон, крутые штуки вроде переносимых пушаблей и рамочек выделения получаются. Дядя Миша тоже не сразу ксаш написал.
Дядя Миша не пугают, а мотивируют! илья2 если тебе что-то не даётся, оставь на время, и делай что попроще. В самом начале своей моддерской деятельности я занимался клонированием монстров и пушек. Сейчас я могу сделать монстра наследованием, да и пушку тоже, да и вообще, если заморочусь, могу почти с нуля написать. А тогда клонировал весь код. Пробуй делать что попроще и в дебри не лезь. Но первый спавн из DMC всё-таки скопипасти. Ты же уже нашёл, что там всё в спавне игрока. Вот и переноси в халфу всё, что связано с условием m_bHadFirstSpawn.
Скопипастил в Фитцквейк из Спирита функцию float AngleBetweenVectors().
Сначала положил её в матчлибу, но при вызове из cl_input.c она давала бред типа 1239768.00000 без ошибок и ворнингов.
Тогда положил её в тот же cl_input.c и она стала нормально передавать значение, но возникла другая проблема, когда вектора переданные ей в качестве параметра, после нормализации в дочерней функции оказываются нормализованными и в материнской. Это что ваще.
Подскажите. Есть класс CHudAmmo, где в public есть int ID оружия. Я его занес туда, т.к. оно мне нужно. Меняется оно так - iId = READ_CHAR(). Оно меняется - проверил. В другом cpp файле я хочу это значение использовать.
Сделал код:
C++ Source Code:
CHudAmmo AmmoData;
int WeaponID;
WeaponID = AmmoData.iId;
И вот это WeaponID всегда 0, а в худе алерт говорит что не ноль нифига. И ошибок никаких не выдает. Как достать значение?