|
Raven
Пользователь
Откуда: Владик Регистрация: Февр. 2004
Всего: 408 сообщений
|
Mynah >>А про то, чтобы хранить указатели в битах, я вообще молчу Небольшой полуофтопец. При извесном желании можно в вару запихнуть оч. много указателей. Каким образом: "12345678:87654321:6892020"... Т.е. - самодельный char-массив. atoi написан. Естественно, это подходит только для динамического хранения вар. И работает не слишком шустро. Зато - массивы :-) И куча указателей "в одной варе" :-) (Добавление от 17:18 - 30 Июня, 2005.) >>Нужно ставить проверку на каждый раз, когда чуз использует ствол. Есть идея - чекать не использование ствола, а расход патронов. 1. Смотрим инвентарь, отбираем всё с subtype==ammo. Запоминаем количество. 2. Периодически чекаем инвентарь. Если quantity уменьшилось - снижаем прочность стволов в руках. Нечто подобное: ---------------------------- procedure set_gun begin while i<=inven_count(dude_obj) do begin ptr:=inven_cmds(dude_obj,13,i); if obj_item_subtype(ptr)==4 then begin set_global_var(15,ptr); set_global_var(16,obj_is_carrying_obj_pid(dude_obj, obj_pid(ptr))); i:=inven_count(dude_obj)+1; end i+=1; end end <...> procedure combat_p_proc begin variable i:=1; variable ptr; if (fixed_param == COMBAT_SUBTYPE_TURN) then begin if obj_is_carrying_obj_pid(dude_obj, obj_pid(global_var(15)))<global_var(16) then begin display_msg("Lowering durability"; <...> //уменьшаем прочность set_global_var(16,obj_is_carrying_obj_pid(dude_obj, obj_pid(global_var(15)))); end else display_msg("Do nothing"; end end ---------------------------- Проблем полно: - типов боеприпасов много. В принципе, можно зафиксировать диапазон GVAR под все типы и обойтись без хранения указателей. - прочность будет уменьшатся только по расходованию всей обоймы ("кучки" - 24 патрона для 10 мм) - если в слоте будут два оружия одновременно - неопределённость. Хотя, в принципе, можно и по калибру поглядеть.
|
Отправлено: 16:44 - 30 Июня, 2005
|
|
Sam Laury
Пользователь
Откуда: Обнинск Регистрация: Июнь 2005
Всего: 13 сообщений
|
Raven, а это не ты ли делал разрушаемую броню? Если ты, то пришли плиз инфу или файл с прототипом.
|
Отправлено: 18:29 - 30 Июня, 2005
|
|
Mynah
Модератор
Откуда: Пермь Регистрация: Окт. 2004
Всего: 469 сообщений
|
Raven Патроны я тоже обдумывал... Не понравилась именно идея "обоймы". Например, в обойме 4.7 мм. - 50 патронов. я буду стрелять из ХК г11-е по 1 патрону - дооолго будет пушка портится. Чуть-чуть точнее - определять по весу. Пушка, которая заряжена наполовину, весит меньше, чем та, которая заряженна полностью. И ещё... я когда отыгрывал "энергетического" чуза, у меня в одной руке было laser rifle, в другой plasma rifle. С определением - из какой стреляли возникнут траблы. Но зато, используя "патронный" вариант, мы избавляемся от "привыкания" чуза к пушке, без которого не обойтись в моем скрипте. Совершенных решений нет. Есть только полумеры. :(
----- Scio me nihil scire
|
Отправлено: 18:56 - 30 Июня, 2005
|
|
binyan
Пользователь
Откуда: Israel Регистрация: Март 2005
Всего: 292 сообщения
|
>>Нужно ставить проверку на каждый раз, когда чуз использует ствол. Есть идея - чекать не использование ствола, а расход патронов. Идея хороша,но есть одно но. Как уже сказал Mynah,если в слотах стоят два оружия,которые используют одни и те же патроны,то как ты определишь,какому оружию уменьшать износ? Можно конечно же поставить запрет на ношение двух однокаллиберных оружий одновременно, но это нерационально. ПЫ.СЫ. а про массив я бы не додумался
----- ...выражая озадаченность, граничащую с озабоченностью..
|
Отправлено: 21:07 - 30 Июня, 2005
|
|
Wasteland Ghost
Маленькое Злое Привидение
Откуда: Россия, Самара Регистрация: Дек. 2002
Всего: 2251 сообщение
|
2Raven Нам с тобой пора на пенсию. Ибо сие есть ни что иное, как массовые галлюцинации. После тщательно проделанных проверок мне остаётся только подтвердить правдивость слов Mynah: указатель на активный предмет получить можно, а вот на неактивный уже нельзя . Хотя и тут я теперь поберегусь . Функция оказалась с подковыркой. Мне - позор за использование непроверенных данных, Mynah'у - решпект.
|
Отправлено: 21:23 - 30 Июня, 2005
|
|
binyan
Пользователь
Откуда: Israel Регистрация: Март 2005
Всего: 292 сообщения
|
Хмм..не значит ли это,что ели при каждом уменьшении патронов сделать чек на активное оружие,то можно будет определить какому оружию уменьшать износ? Отвечу сам себе.Нет,не значит.Потому что заряжать можно и неактивное оружие через инвентарь.Если я не прав,поправьте.
----- ...выражая озадаченность, граничащую с озабоченностью..
|
Отправлено: 21:39 - 30 Июня, 2005 | ИСПРАВЛЕНО: binyan - 21:40 - 30 Июня, 2005
|
|
Sam Laury
Пользователь
Откуда: Обнинск Регистрация: Июнь 2005
Всего: 13 сообщений
|
Цитата:
Мне - позор за использование непроверенных данных, Mynah'у - решпект.
Самокритика. Уважаю. А то все нельзя да нельзя...
|
Отправлено: 21:43 - 30 Июня, 2005
|
|
Mynah
Модератор
Откуда: Пермь Регистрация: Окт. 2004
Всего: 469 сообщений
|
И заряжать можно неактивное. И выстрелить можно сначала из одного, потом из другого... 2WG: Это не массовые галюцинации, это массовая потеря памяти. Вырезка из ФМОД-FAQ 9 месячной давности:
Цитата:
Не можем (на текущий момент ;-): Редактировать и создавать полноценные перки (прошиты в движке) Репутация в городах - берется движком из GVAR'ов, т.е. жестко прошито количество этих GVAR'ов Изменять координаты начального города на карте мира - или, как минимум, это место (Арройо) все равно остается "подсвеченным" Добавлять новые типы амуниции Получить указатель на предмет в неактивной руке Инвентарь. Полностью движковая вотчина.
Я у кого учился-то, по вашему? :))
----- Scio me nihil scire
|
Отправлено: 21:45 - 30 Июня, 2005
|
|
binyan
Пользователь
Откуда: Israel Регистрация: Март 2005
Всего: 292 сообщения
|
Ну так как я не ошибся ,то вопрос остаётся открытым.
----- ...выражая озадаченность, граничащую с озабоченностью..
|
Отправлено: 21:47 - 30 Июня, 2005
|
|
Mynah
Модератор
Откуда: Пермь Регистрация: Окт. 2004
Всего: 469 сообщений
|
А по-моему, уже никакого открытого вопроса не осталось. Три способа: 1) Записывание указателей в гвары. Заставлять чузена "привыкать" к пушке, пока она не сломается. Ставить запрет на использование аналогичной. Способ, позволяющий высчитывать прочность точнее всего, но при этом накладывающий ограничения. 2) Количество патронов. Не точный способ. Необходимо так же учитывать количество подобранных/истраченных другим оружием пуль. 3) Вес. Чуть-чуть более точный, опирающийся так же на трату пуль, но сложный в реализации. Имхо, вариантов больше нет.
----- Scio me nihil scire
|
Отправлено: 21:55 - 30 Июня, 2005
|
|
|
|