Jump to content

SnakeSanders

Advanced members
  • Content Count

    28
  • Joined

  • Last visited

Community Reputation

0 Neutral

About SnakeSanders

  • Rank
    Cabin Boy

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. @V3ct0r да, спасибо, как по факту работает GetItemType(a) я разобрался давно, мне не известно только в каком виде переменной "а" он принимает значение )= Видимо не судьба. Все равно уже все вчера в ручную проверил, но сам факт, что нельзя написать такой скрипт - печален.
  2. @Jones I tryin to get ItemType not from item that i use, but all items from iteminfo and now i know that GetItemType(a) dont pick the value from variable "a" if its looks just like a number. There looks like "Item" or "Atker, 2, 1" (for example) have another value but a number and i can't get the point how it looks. But thanks you for answer.
  3. @V3ct0r Ну, изначальный план был создать все предметы одного типа, чтобы их протестировать, чтобы не искать вручную по итеминфо. Просто поправил анимацию всем крыльям и всем феям и надо проверить бы их все. Это конечно отчасти из-за лени, но сама нестыковка и сам факт того в каком виде GetItemType получает переменную - заинтересовали. Я понимаю, что если предмет у нас есть, мы можем пройти через a = GetChaItem (x, y, z), b = GetItemType ( a ) , c = GetItemID ( b ), но по факту интересно как обойтись без проверни наличия предмета у персонажа. Изначальный код был таким, но GetItemType не принимает значения в виде цифры айди, а я не знал. Теперь стало интересно в каком виде принимает: function ItemUse_test ( role, Item ) local a = 8000 local Itype = 0 for a = 1, a, 1 do Itype = GetItemType ( a ) -- И на этом месте получаем всегда 0. Путем Нотисов было доказано, что GetItemType с числовым значением не работает а GetChaItem не выдает значение. То есть Notice (GetChaItem( x, y, z )) в систему ничего не выдает. if Itype == 44 then GiveItem(role, 0, a , 1, 1) end end end П.С: Извиняюсь, что не вставляю это в [код]. Он у меня кк то криво работает или руки не из того места произрастают, но он в лучшем случае забирает только первую строчку.
  4. Здесь было много что написано,но я укоротил вопрос: Как получить тип предмета по его айди? GetItemType - не работает, ибо ему нужен какой-то другой вид принимаемой переменной...
  5. @V3ct0r буду признателен за помощь в подсказке как отключить погоду и изначальное системное сообщение о том что "система что нибудь выдала"(или забрала), которое у меня заменено.
  6. @Waka~ Да, я уже понял и подогнал чистый клиент. Но там из полезного выпеленная погода (((= Но, кстати, по 2015 порту вполне себе коннектится беспроблемно.
  7. @NMS3RR Да все так, просто учитывая, что я только начал - нигде не мог найти это формулу. Но похоже нашел именно то что надо. Тема закрыта и ее можно оставить нуждающимся, ибо единственное, где я нашел ее упоминание - это тема Пастуха на МэйнДеве про пасху и то, когда уже разобрался что к чему.
  8. Что-то ковырялся в итемах, правил-подгонял итемэффекты и столкнулся с такой вот интересной штукой. Если с Итемами увеличивающими экспу все нормально, то итему увеличивающие шанс дропа работают как то не правильно. И не в варианте того, что финкция на итемюз написана криво, а в варианте того, что я не смог найти функцию подобную вот этой, только для МФ. Skilleffect.lua: часть функции Check_Baoliao(ATKER, DEFER, ... ) : local StateLv = GetChaStateLv ( ATKER , STATE_SBBLGZ ) здесь пропущен код, который не играет роли для нас сейчас if StateLv > 0 and StateLv <= 10 then if StateLv == 1 then MF_RAID_STATE = StateLv + 1 end if StateLv == 2 then MF_RAID_STATE = 2 end if StateLv == 3 then MF_RAID_STATE = 2.5 end if StateLv == 4 then MF_RAID_STATE = 3 end if StateLv == 5 then----------------------------升级推进器------Amon MF_RAID_STATE = 3.5--------------------半小时5倍经验 end if StateLv == 6 then----------------------------超级推进器------Amon MF_RAID_STATE = 4---------------------15分钟10倍经验 end if StateLv == 7 then----------------------------大闸蟹--------kokora MF_RAID_STATE = 10------------------2分钟20倍经验 end end for i = 1 , diaoliao_count , 1 do if arg >= 100 then mf = math.min ( 1, 100 / arg * bsmf ) * MF_RAID * MF_RAID_STATE a = Percentage_Random(mf) if a == 1 then count = count + 1 item[count] = i end else --LG(role, "baoliao_err", "function Check_Baoliao : " , " drop item rate error ", "Round", i , "kind of drop list rate= " , arg ) end end --LG(role,"Drop List" , "function Check_Baoliao : " , "count = " , count , "item[1] =" ,item[1] , "item[2] = " , item[2], "item[3] = " , item[3] , "item[4] = " ,item[4] , "item[5] = " , item[5] , "item[6] = " ,item[6] , "item[7] = " ,item[7], "item[8] = " ,item[8], "item[9] = " ,item[9], "item[10] = " ,item[10]) SetItemFall ( count , item[1] , item[2] , item[3] , item[4] , item[5] , item[6], item[7] ,item[8],item[9],item[10] ) end По ряду тестов, похоже, это она и есть. Вопрос один: Эта функция ведь, да? П.С: Извиняюсь за оформление. Оно ни в какую не хотело залезать в code.
  9. Да я так поглядел в forge, но там все, в большинстве своем все равно восходит к тому, что все функции работают с уже выбранными итемами. Временно оставил Бинго такой, какая она есть. Щас больше вникну - может и разберусь, но от помощи не откажусь, если что. Спасибо.
  10. Выяснил, что TakeItem не срабатывает, потому что там указывается только количество, а качество итемы не указывается. При форже\комбинировании мы используем ручную расстановку гемов, так что там забирается указанный. Возьмем к примеру Бинго: Естественно из кода в строках HasItem и Take итем убраны 102 и прочие указатели качества в коонце, потому как они все равно не работают. Talk( 3, "Бинго: Принеси мне очищающий самоцвет и я выдам тебе Расписку на очищающий самоцвет.") InitTrigger() TriggerCondition( 1, HasItem, 0885, 1) TriggerCondition( 1, HasLeaveBagGrid, 1 ) TriggerCondition( 1, KitbagLock, 0 ) TriggerAction( 1, TakeItem, 885, 1) TriggerAction( 1, GiveItem, 3877, 1, 1 ) TriggerAction( 1, JumpPage, 3 ) TriggerFailure( 1, JumpPage, 15 ) Text( 3, "Так и будет!",MultiTrigger, GetMultiTrigger(), 1) То есть код такого вида не реагирует на качество: Как сделать. чтобы проверка на HasItem и TakeItem проверяли так же качество\уровень предмета? Кто-нибудь сталкивался? Щас конечно пойду копаться в forge.luа потому что там должны быть хоть сколько нибудь адекватные намеки.
  11. Таком образом получается вот такая штука походу: main.clu отвечает за внешний вид панельки, не более. Из кучи информации мне не удалось выудить историю как сделать 10-11-(и перекинуть ф12 на слот, а не на быструю смену) рабочими, так что вероятно хекс или библиотеки к UI_CreateComponent. Мне пока этим рано заниматься (= Но спасибо за помощь, @V3ct0r
  12. @V3ct0r Извиняюсь за постоянные домогания к тебе, но а чуть чуть поконкретнее? lua/clu или хекс?
  13. @V3ct0r все просто - изменил только 0024d880, сохранил, запустил клиент (он запустился - я доволен), потом опять открыл в хексе, решил доделать все сразу, но по остальным адресам автоматом уже стоит исправленное значение. Это нормально ? Оо П.С: Конечно может быть небольшая погрешность, что я не уследил за собой и нажал на "заменить все" но шанс того, что я так сделал крайне мал. Фактически стремится к нулю.
  14. А вот кстати, не совсем в тему,но по теме. Где-как-что настраивать, если в чистом клиенте 1-8, после добавления клиентских исправлений (не помню какие точно файлы, но какие cluшки и luaшки) отображается 12, но работают только 1-9. Где искать что исправлять? В геймсервере небось? )=
  15. Если чо и кому то надо поменьше париться с расстановкой первой строки то: открываем в экселе, разбиваем по знаку табуляции и "другой: альт+0160" - все пробелы заменены неразрывным пробелом, а все пробелы первой строки нижним прочерком, чтобы эксель не разбивал криво. П.С: Но возможно это я слишком под седативными сейчас, и с начальной строкой нормльно тоже, но у меня не получилось.
×
×
  • Create New...