Jump to content

MrSharp

Community
  • Content Count

    91
  • Joined

  • Last visited

  • Days Won

    13

Everything posted by MrSharp

  1. Нужно искать не функцию, а текст, который отображается в системном чате. Есть программа, которая при выделении копирует текст, но к сожалению я не помню как она называется.
  2. Один из вариантов реализации данной функции. function ItemUse_BZ( role, Item ) local Cha_Boat = GetCtrlBoat( role ) if Cha_Boat ~= nil then SystemNotice( role, "Не может быть использовано, когда Вы в море!" ) UseItemFailed( role ) return end local item_id = GetItemID( Item ) local data for data in FireworksList do if item_id == FireworksList[data][1] then PlayEffect( role, FireworksList[data][2] ) break end end end Открываем variable.lua и вставляем в начало: -- ID предмета, ID эффекта FireworksList = {} FireworksList[1] = { 3077, 370 } FireworksList[2] = { 3344, 370 } FireworksList[3] = { 3345, 361 } FireworksList[4] = { 3346, 362 } FireworksList[5] = { 3347, 363 } FireworksList[6] = { 3348, 364 } FireworksList[7] = { 3349, 365 } FireworksList[8] = { 3350, 366 } FireworksList[9] = { 3351, 367 } FireworksList[10] = { 3352, 368 } FireworksList[11] = { 3353, 369 } FireworksList[12] = { 3355, 355 } FireworksList[13] = { 3356, 356 } Не тестировалось!
  3. Есть еще лучше вариант. В visual studio (а может быть и не только в нем) есть замечательная вещь как ресурсы. В ней можно записать все шапки, а в меню программы добавить редактор шапок. Тогда не придется за собой таскать текстовый файл) Ну тут конечно кому как удобно)
  4. Наверное я неясно выразился - Если в файле есть шапка, то она будет считываться с файла, а если она отсутствует, то программа вставляет стандартную (заранее заготовленную) шапку)
  5. Но в итоге мы считываем все те-же неизвестные нам названия в шапке) Поэтому добавить более-менее переведенные шапки можно) Это не призыв к действию, это всего-лишь мои рекомендации)
  6. А в чем собственно проблема? Шапки можно заранее забить в программу и вставлять их, если они отсутствуют. Если встречаем 2 таба, то вставляем их с пустыми значениями.
  7. local cha_type = GetChaTypeID( role ) -- Получаем тип персонажа Возвращаемые значения: 1 - Ланс 2 - Карциз 3 - Филлис 4 - Ами
  8. Перезалейте пожалуйста GS.exe на другой файлообменник, DropBox пишет, что превышен лимит на скачивание.
  9. Открываем exp_and_level.lua, находим функцию GetExp_PKM и редактируем её: function GetExp_PKM( dead, atk ) ... local normal_monster = GetChaID( dead ) local data for data in BossRepList do if normal_monster == BossRepList[data][2] then local r = BossRepList[data][3] * REP_RATE SystemNotice( atk, "За уничтожение " ..BossRepList[data][1].. " получено "..r.." репутации!" ) AddCreditX( atk, r ) end end ... end Открываем variable.lua и вставляем в начало: REP_RATE = 1 -- множитель репутации (функция GetExp_PKM) ------------------------------------------------------ -- Имя моба ID моба Кол-во получаемой репутации -- ------------------------------------------------------ BossRepList = {} BossRepList[ 1 ] = { "Кары", 988, 2500 } BossRepList[ 2 ] = { "Хардина", 987, 800 } Не тестировал, но должно работать.
  10. Есть предложение по этому скрипту. Добавить в variable.lua массив с ID_монстра и кол-вом репутации, которое дается за этого босса, и перебирать это все циклом.
  11. функция восстановления хп находится в cha_timer (function.lua) в самом начале функции. Но восстановление может перестать работать из-за ошибок во всем коде cha_timer'а.
  12. Полагаю, это она - ссылка на скачивание.
  13. inline int lua_RefreshCha(lua_State* L) { BOOL bValid = lua_gettop( L ) == 1 && lua_islightuserdata( L, 1 ); if( !bValid ) { E_LUAPARAM; return 0; } CCharacter* pChar = (CCharacter*)lua_touserdata( L, 1 ); if( !pChar ) { E_LUANULL; return 0; } pChar->SynSkillStateToEyeshot(); // 通知主角道具栏更新 pChar->SynKitbagNew(enumSYN_KITBAG_EQUIP); // 重新计算属性 g_CParser.DoString("AttrRecheck", enumSCRIPT_RETURN_NONE, 0, enumSCRIPT_PARAM_LIGHTUSERDATA, 1, pChar, DOSTRING_PARAM_END); if (pChar->GetPlayer()) { pChar->GetPlayer()->RefreshBoatAttr(); pChar->SyncBoatAttr(enumATTRSYN_ITEM_MEDICINE); } pChar->SynAttrToSelf(enumATTRSYN_ITEM_MEDICINE); return 1; } inline int lua_SyncChar( lua_State* L ) { BOOL bValid = lua_gettop( L ) == 2 && lua_islightuserdata( L, 1 ) && lua_isnumber( L, 2 ); if( !bValid ) { E_LUAPARAM; return 0; } CCharacter* pChar = (CCharacter*)lua_touserdata( L, 1 ); if( !pChar ) { E_LUANULL; return 0; } BYTE byType = (BYTE)lua_tonumber( L, 2 ); pChar->SynAttr( byType ); lua_pushnumber( L, LUA_TRUE ); return 1; } Вырезка из исходников. Понимаю, что это не тот ответ, который ожидался, но хоть что-то.
  14. Почистил и уменьшил вес БД.
  15. Здесь всё сводится к тому, что пакет авторизации на 1.3х и 2.х разные. SQL Guard, как и FilterServer, предназначены для 1.3х. И насколько мне известно, то в 2.0 должны были пофиксить взлом через пакет авторизации, так что фильтры там не нужны. Если я ошибаюсь, то поправьте меня.
  16. Привет. Спасибо что указал копирайты) Пару советов: 1. Поменяй пожалуйста цвет различных PS на черный, а то читать тяжело. 2. При создании ServerSet.txt укажи, что нужно проставлять табы, а то компилироваться не будет.
  17. SQLGuard (Защита сервера от SQL-инъекций JailBreak(MAC), Game.exe(PIN)) by insider
  18. По поводу дистанции, извиняюсь, реализовал просто для сервера, скопировал реализацию и забыл поменять дистанцию. Сегодня постараюсь исправить. Спасибо за указанные ошибки)
  19. Обновлена версия! Исправил баг, когда можно было комбинировать Очищающий самоцвет ( ID 885 ) 9 ур. и выше Теперь молодоженам добавляется эффект от свадьбы. Также было пофикшено отнимание этого эффекта ( Если при полученном эффекте от свадьбы выйти из группы, то эффект теперь не остается ) Исправил громоздкую реализацию добавления скилла свадьбы после РБ
  20. А я и не говорил про тип предмета При изменении этого значения ничего не происходит. Да и бред какой-то. Почему перемещение предмета в банк завязано на хексе (причем хексе Game.exe. Я могу просто взять и обратно хексануть предмет, чтобы его можно было перемещать в банк и тогда смысл от этого?).
×
×
  • Create New...