Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Список ресурсов для определенной вещи
Chicos
сообщение 4.11.2018, 14:07
Сообщение #1


**

Neophyte
Сообщений: 21
Регистрация: 20.6.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 6.565



Долго искал но не могу найти где хранится список металлов, дерева для крафта вещей.
Например у нас нельзя сделать WoodenShield из дерева выше 100.
Мечи делаются из только из 4 видов метала.
Хочется добавить, но не могу найти где список.
тут
Код
AddCraft( typeof( ShepherdsCrook ), 1044295, 1023713, 78.9, 103.9, typeof( Log ), 1044041, 7, 1044351 );
AddCraft( typeof( QuarterStaff ), 1044295, 1023721, 73.6, 98.6, typeof( Log ), 1044041, 6, 1044351 );
AddCraft( typeof( GnarledStaff ), 1044295, 1025112, 78.9, 103.9, typeof( Log ), 1044041, 7, 1044351 );
AddCraft( typeof( WoodenShield ), 1044295, 1027034, 52.6, 77.6, typeof( Log ), 1044041, 9, 1044351 );

можно конечно ввести новые итемы и вместо typeof( Log ) сделать тот материал который я хочу но это не хочу так делать, надо просто разрешить использовать материал который я хочу
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 5.11.2018, 11:27
Сообщение #2


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22565
Из: Северная Корея
Пользователь №: 11.273



Список ресурсов в: Scripts\Misc\ResourceInfo.cs

Ресурсы должны по умолчанию браться из списка, но в твоём случае с Nova - много костылей раскиданных по разным частям сборки. Попробуй посмотреть CraftItem, там много проверок по крафту вставлено.
Если пользуешься студией, то делай CTRL+SHIFT+F поиск по сборке, ища по ключевым словам совпадения, так выйдешь на место, где это может быть прописано.


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Chicos
сообщение 5.11.2018, 13:54
Сообщение #3


**

Neophyte
Сообщений: 21
Регистрация: 20.6.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 6.565




ResourceInfo.cs у меня совсем нет, есть oreinfo, ясно дело все это прошерстил не один раз,но нет нигде привязки к именно этому типу щитов или посохов. Думал вначале группа влияет, но нет, в одной и той же группе одному типу предметов дает сделать из этого дерева, а другому нет. Проверил построчно все связанные разделы крафта и ресурсов нет нигде. Добавил Club ему так же как посохам дает сделать только из части дерева.
Условия то я нашел в CraftItem, но не понял как оно выполняется
Код
 
else if (item is BaseShield)
                            {
                                            if (craftSystem is DefCarpentry)
                                                message = "You could not make the shields from this type of wood";
                                            else
                                                message = "You could not make the shields from this type of metal.";
                                            Type resourceType = typeRes;

                                            if (resourceType == null)
                                                resourceType = Ressources.GetAt(0).ItemType;

                                            CraftResource thisResource = CraftResources.GetFromType(resourceType);
                                            if ((int)thisResource > 11 && (int)thisResource != 301)
                                            {
                                                from.EndAction(typeof(CraftSystem));
                                                from.SendGump(new CraftGump(from, craftSystem, tool, message));
                                            }
                                            else
                                                new InternalTimer(from, craftSystem, this, typeRes, tool, iRandom).Start();


Ладно наверное сделаю их отдельным крафтом, заодно добавлю что щиты из вышки вид другой имели и для крафта использовалась какая ни быдь чешуя дракона. Так же и для посохов.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 5.11.2018, 16:09
Сообщение #4


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22565
Из: Северная Корея
Пользователь №: 11.273



Поскольку работает не по стандарту, значит где-то таки изменено. Найти можно либо посредством отладки, либо стак трейс вызвать на крафте и найти все ветки вызываемые. Либо перебором, типа BaseStaff, Bashing, тип предмета и т.д., вариаций может быть много, никто не знает по какому признаку определяют эти вещи в проверках.


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 5.11.2018, 20:31
Сообщение #5


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22565
Из: Северная Корея
Пользователь №: 11.273



Посмотрел скрипт CraftItem.cs, там таки проверок много:
Метод: CraftItem
для оружия:
Код
                                            if (!(thisResource == CraftResource.Bronze) && !(thisResource == CraftResource.Copper) && !(thisResource == CraftResource.Shining) &&
                                                !(thisResource == CraftResource.Spectral) && !(thisResource == CraftResource.Star) && !(thisResource == CraftResource.Ablaze) &&
                                                !(thisResource == CraftResource.Azure) && !(thisResource == CraftResource.Divine) && !(thisResource == CraftResource.OakLog) &&
                                                !(thisResource == CraftResource.SandLog) && (!(thisResource == CraftResource.DarkLog) || item is BaseRanged) && (!(thisResource == CraftResource.CrystalLog) || item is BaseRanged))

т.е. из вышеперечисленных ресурсов нельзя сделать оружие.

и по щитам ты верно нашел строку:
(IMG:https://pp.userapi.com/c850616/v850616361/3c654/b6Vra4XgCck.jpg)
В ней говорится, что щиты выше чем Ancient материала и если материал не "Log"(301) - не крафтятся.


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Chicos
сообщение 6.11.2018, 11:23
Сообщение #6


**

Neophyte
Сообщений: 21
Регистрация: 20.6.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 6.565



Цитата(Juzzver @ 5.11.2018, 22:31) *

Посмотрел скрипт CraftItem.cs, там таки проверок много:
Метод: CraftItem
для оружия:
Код
                                            if (!(thisResource == CraftResource.Bronze) && !(thisResource == CraftResource.Copper) && !(thisResource == CraftResource.Shining) &&
                                                !(thisResource == CraftResource.Spectral) && !(thisResource == CraftResource.Star) && !(thisResource == CraftResource.Ablaze) &&
                                                !(thisResource == CraftResource.Azure) && !(thisResource == CraftResource.Divine) && !(thisResource == CraftResource.OakLog) &&
                                                !(thisResource == CraftResource.SandLog) && (!(thisResource == CraftResource.DarkLog) || item is BaseRanged) && (!(thisResource == CraftResource.CrystalLog) || item is BaseRanged))

т.е. из вышеперечисленных ресурсов нельзя сделать оружие.

и по щитам ты верно нашел строку:
(IMG:https://pp.userapi.com/c850616/v850616361/3c654/b6Vra4XgCck.jpg)
В ней говорится, что щиты выше чем Ancient материала и если материал не "Log"(301) - не крафтятся.


Спасибо, блин невнимательный я, вроде смотрел, а эти условия не увидел почему то
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 13:07
Designed by Nickostyle