A.I.M. Jagged Alliance2

Добро пожаловать, Гость. Пожалуйста, выберите:
Вход || Регистрация.
19.04.2024 в 19:02:33

Главная Главная Помощь Помощь Поиск Поиск Участники Участники Вход Вход Регистрация Регистрация
A.I.M. « Первые шаги... »
   A.I.M.
   Обсуждаем игры
   Гробокопатели
(Модераторы: Терапевт, ThunderBird)
   Первые шаги...
« Предыдущая Тема | Следующая Тема »
  Тема:  Первые шаги...             Страниц:  1     « Открыть сокрытое! »Прочитано 140022 раз
Green Eyesman
[Добрый волшебник]
Прирожденный Джаец

Иногда мне дико не хватает мозгов.


WWW Ё-мэйл

Пол:
Репутация: +675
Re: Первые шаги...
« Ответ #1031 от 08.08.2022 в 10:50:28 »

Может кто подскажет, а то я уже как дурак весь затылок себе расчесал и лоб разбил.
 
Есть такая шняга: https://github.com/ja2-stracciatella/ja2-stracciatella/blob/master/COMPI...
 
Собственно это исходники и инструкция по сборке Stracciatella. Для линуксов они поставляют Appimages, а через него я не могу подключать любые другие моды, кроме тех, что в архив уже включены. Я пробовал открыть этот аппимадж и ручками туда нужные моды включить. Не получается - ни один архиватор не понимает этот конкретный формат.
 
Вайн - не выход. Работает у меня он криво, вылетает и вообще ведет себя как распоследняя сволочь.
 
Поэтому пытаюсь собрать из исходников рабочий лаунчер. Первая часть (где переносится и собираются исходники) проходит без проблем. Но при попытке уже скомпилировать это в рабочее ПО получаю следующую ошибку:
 
идет сборка:
[  1%] Built target gtest
[  8%] Built target lua
[  9%] Built target smacker
[  9%] Built target stracciatella-update-stamp
[ 10%] Built target stracciatella-build
[ 10%] Linking CXX executable ja2
 
потом куча текста, будто бы кусок кода не получается обнаружить
 
потом выдает ошибку:
 
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/ja2.dir/build.make:6487: ja2] Error 1
make[1]: *** [CMakeFiles/Makefile2:614: CMakeFiles/ja2.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
 
И вот я понятия не понимаю, что я делаю не так. А вы говорите "учи Питон". :(
Зарегистрирован

Модельки от меня.
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1032 от 28.12.2022 в 21:08:26 »

Нужна помощь клуба  
Items.c    
 
#define MAX_AMMO_TYPES_PER_GUN    3
 
UINT16 RandomMagazine( UINT16 usItem, UINT8 ubPercentStandard )

 
Почему MAX_AMMO_TYPES_PER_GUN = именно 3??? Откуда 3???
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
JAggernaut
[Сын батьки Махно]
Прирожденный Джаец

Он же Махновский




Пол:
Репутация: +135
Re: Первые шаги...
« Ответ #1033 от 29.12.2022 в 03:25:33 »

2Raty: обычные, АР, НР?
Зарегистрирован

Мод JA2 "Солдаты Анархии": http://forum.ja2.su/cgi-bin/yabb/YaBB.pl?board=ja2v113;action=display;num=1461950373;start=0#0
Видеоканал: www.youtube.com/playlist?list=PLfiTd_jX0ZXcL5mOEXr7t3u3Mygzqbzzp

Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1034 от 17.01.2023 в 21:55:46 »


А как бы сделать отображение, например, в 2 ряда по 4???
Как я понял, рулит заданием координат вот это:
void GetSlotInvXY( UINT8 ubPos, INT16 *psX, INT16 *psY )
{
      *psX = gSMInvData[ ubPos ].sX;
      *psY = gSMInvData[ ubPos ].sY;
}
Для прогера это как 2 пальца, а я ничего более-менее похожего в коде, чтоб как обычно скопипастить и допилить не нашел :(
Интересует как счетчик реализовать, остальное-то не сложно.
Вот прицепился!       ItemStackPopup.jpg
« Изменён в : 17.01.2023 в 21:58:30 пользователем: Raty » Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Терапевт
[Человек в чёрном]
Кардинал


Народный целитель. Шарлатан высшей категории.




Пол:
Репутация: +1190
Re: Первые шаги...
« Ответ #1035 от 17.01.2023 в 23:21:43 »

2Raty:  
Там есть две функции:
BOOLEAN InitItemStackPopup( ... )
void RenderItemStackPopup( ... )
в них есть цикл
for ( cnt = 0; cnt < gubNumItemPopups; cnt++ )
{...}
разберись, как там вычисляются координаты, и добавь корректировки для X и Y что-то типа
if( cnt == 4) //это если ты хочешь две строчки по 4 слота
{
    Y += ВысотаПлашкиСлота;
    X -= cnt * ШиринаПлашкиСлота;
}
размерности плашки там получаются из свойств её картинки чуть выше по коду подобным образом
ВысотаПлашкиСлота = pTrav->usHeight;
ШиринаПлашкиСлота = pTrav->usWidth;
Зарегистрирован

Весна! Я уже не грею пиво! (с) В.Цой
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1036 от 19.01.2023 в 22:48:44 »

2Терапевт:  
Спасибо, за науку, вроде что-то рабочее получилось.
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1037 от 21.01.2023 в 00:58:49 »

А как так получается, что при отображении стопки предметов(см. предыдущую картинку) в тактике интерфейс затеняется, а в стратегии нет?
Кроме всего прочего, не показываются картинки предметов в слотах основного интерфейса.
 
Да и ключница ведёт себя не менее странно: Основной интерфейс затеняется и там и там, а вот картинки предметов пропадают только в тактике. Хотя в 640х480 в тактике ключница полностью перекрывает инвентарь.
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Терапевт
[Человек в чёрном]
Кардинал


Народный целитель. Шарлатан высшей категории.




Пол:
Репутация: +1190
Re: Первые шаги...
« Ответ #1038 от 22.01.2023 в 21:42:38 »

21.01.2023 в 00:58:49, Raty писал(a):
А как так получается, что при отображении стопки предметов(см. предыдущую картинку) в тактике интерфейс затеняется, а в стратегии нет?

С этим всё непросто. Рендер экранов устроен по-разному, поэтому способ затенения от тактики не подходит для стратегии.
 
 21.01.2023 в 00:58:49, Raty писал(a):
Кроме всего прочего, не показываются картинки предметов в слотах основного интерфейса.

В ряде случаев они не стали заморачиваться с рендером слоя предметов, а в некоторых специально заблокировали.
Зарегистрирован

Весна! Я уже не грею пиво! (с) В.Цой
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1039 от 01.02.2023 в 17:58:36 »

2Терапевт:  
 22.01.2023 в 21:42:38, Терапевт писал(a):
В ряде случаев они не стали заморачиваться с рендером слоя предметов, а в некоторых специально заблокировали.  

Вот же ж бл..... Будем поглядеть.
 
2All:
В тактике, когда предмет кладём на землю, это делает AddItemToPool(..)  
А в стратегии, когда в инвентарь сектора кладём? PlaceObjectInInventoryStash?
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Терапевт
[Человек в чёрном]
Кардинал


Народный целитель. Шарлатан высшей категории.




Пол:
Репутация: +1190
Re: Первые шаги...
« Ответ #1040 от 02.02.2023 в 11:43:59 »

01.02.2023 в 17:58:36, Raty писал(a):
В тактике, когда предмет кладём на землю, это делает AddItemToPool(..)  
А в стратегии, когда в инвентарь сектора кладём? PlaceObjectInInventoryStash?

Да.
Зарегистрирован

Весна! Я уже не грею пиво! (с) В.Цой
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1041 от 07.02.2023 в 12:43:13 »

В items.c соорудил следующую конструёвину:
case SMALLPOCK1POS:
// если разгрузка не надета, скидываем содержимое кармана на землю
if (pSoldier->inv[THIGH1POS].usItem == NONE && pSoldier->inv[SMALLPOCK1POS].usItem != NONE)
 {
 AddItemToPool(pSoldier->sGridNo, &pSoldier->inv[SMALLPOCK1POS], 1, pSoldier->bLevel, 0, -1);
 DeleteObj(&(pSoldier->inv[SMALLPOCK1POS]));
 }
В тактике работает безупречно. А вот в стратегии...
При открытом инвентаре сектора, ожидаемо не работает. Вернее предметы удаляются, но не появляются. А вот при закрытом инвентаре сектора, к моему удивлению, очень даже всё прекрасно работает. А чего это вдруг? Отрыт или закрыт интерфейс сектора это, получается, 2 большие разницы?
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Терапевт
[Человек в чёрном]
Кардинал


Народный целитель. Шарлатан высшей категории.




Пол:
Репутация: +1190
Re: Первые шаги...
« Ответ #1042 от 07.02.2023 в 17:15:53 »

07.02.2023 в 12:43:13, Raty писал(a):
Отрыт или закрыт интерфейс сектора это, получается, 2 большие разницы?

Когда закрываешь интерфейс сектора, данные из него переписываются в сектор.
А вообще существует три ситуации:  
1. Помещение предмета в загруженный в тактике сектор. AddItemToPool()
2. Помещение предмета в незагруженный сектор. AddItemsToUnLoadedSector()
3. Помещение предмета в открытый инвентарь сектора. PlaceObjectInInventoryStash()
Зарегистрирован

Весна! Я уже не грею пиво! (с) В.Цой
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1043 от 07.02.2023 в 21:30:32 »

07.02.2023 в 17:15:53, Терапевт писал(a):
А вообще существует три ситуации:

О как. Ясненько, но мне всё равно самому похоже это не осилить.
 
вот еще что нашёл:
 метод перезарядки оружия RELOAD_AUTOPLACE_OLD
При перезаряжании стопкой других магазинов, если инвентарь перса полностью занят, т.е. свободных слотов нету, старый магазин просто исчезает. На землю не дропается.
Поправить не сложно. Но это так изначально было, или я же сначала у себя и сломал???
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Терапевт
[Человек в чёрном]
Кардинал


Народный целитель. Шарлатан высшей категории.




Пол:
Репутация: +1190
Re: Первые шаги...
« Ответ #1044 от 08.02.2023 в 15:33:10 »

07.02.2023 в 21:30:32, Raty писал(a):
Но это так изначально было

Изначально.
Зарегистрирован

Весна! Я уже не грею пиво! (с) В.Цой
Raty
[индус-гранатометчик]
Прирожденный Джаец

Здесь красивая местность...




Пол:
Репутация: +109
Re: Первые шаги...
« Ответ #1045 от 15.12.2023 в 23:08:28 »

А как делается картинка мертвой техники? Окончательно мертвой, когда она уже закончила гореть???
Вот, например, мертвый танк это же ANIMS/CORPSES/TK_DEAD.STI? А чё-то я не вижу, чтоб эта стишка как-то в коде фигурировала.
Зарегистрирован

На траве развалился убитый, он должно воевал против нас, он нам крикнул, что все мы бандиты, вот и пуля вошла между глаз...
Страниц: 1     « Открыть сокрытое! » Послать Тему Послать Тему Печатать Печатать

« Предыдущая Тема | Следующая Тема »

Статистика. Размер данных: 51894 GZip: off
A.I.M. » Powered by YaBB Modification 4 (v.4.0.0-pre)!
YaBB © 2000-2003. All Rights Reserved.