Перейти к содержанию
Авторизация  
†DeMoN†™

[Исходник] aCis 371 Build, Source, Diff

Рекомендуемые сообщения

aCis 371 Build, Source, Diff


Changeset 371 (821)

Datatype reorganization, Skill stuff, Misc

Datatype reorganization
   - MapRegionTable > MapRegionData
      - Javadoc, extends XMLDocument, moved to data.xml, edit for mapRegions.xml. Drop useless methods.
   - PlayerNameTable > PlayerInfoTable
      - Javadoc, moved to data.sql, DataHolder > PlayerInfo.
   - DoorTable > DoorData
      - Javadoc, extends XMLDocument, moved to data.xml, StatsSet reuse, writting style.
   - RecipeTable > RecipeData
      - Javadoc, extends XMLDocument, moved to data.xml, StatsSet used for Recipe, RecipeList > Recipe. Extract RecipeItemMaker from RecipeData, and create model.craft package to store it.
      - The data is reparsed using L2OFF data.
      - Fix an issue with recipe name when destroying such recipe from book (was the case for Orcish Poleaxe for example).
      - Rework character_recipebook table, dropping one column. Datatypes are tweaked.
      - Fix an issue on complete recipe book destroy ; the deleted stuff wasn't saved on database.
      - Rework RecipeBookItemList packet. Add a missing use of it on Recipes itemhandler (refresh book or open it on recipe addition).
   - CharTemplateTable > PlayerData
      - Skill trees are now stored directly into player templates under a List, rather than SkillTreeTable. Most methods are moved into Player, since its a generic needed parameter.
      - We don't store anymore Item template list (for character creation items generation), but int array (since storing Item templates was pointless and not even used correctly).
      - All methods got a "single" and "all" versions to avoid to loop for nothing on all skills.
   - SkillTreeTable > SkillTreeData
      - Rework all skills holders, and move them on model.skillnode
      - All methods got a "single" and "all" versions to avoid to loop for nothing on all skills.
   - BufferTable > BufferManager
      - Use XMLDocument, move to data package, rename/cleanup. Data is edited to reflect changes.
      - Add an integrity check for available skills on player schemes loading to avoid NPE. Ty katara.

Skill stuff
   - Drop getSkillLearningClassId / setSkillLearningClassId concept.
   - Drop _expertiseIndex. It is now directly calculated from skill 239 level, and can be found using getSkillLevel().
   - Rework subclass skills addition. We only storeSkill the final List, leading to a massive drop of mid-operations. Ty vladalien for the initial workbench.
   - Cleanup removeSkill() / storeSkill().
   - autoGet skills are handled by PlayerTemplate data (skills with getSpCost == 0), the stuff isn't hardcoded anymore.
   - getSkillLevel returns 0 instead of -1 if no skill is found, making checks easier to write.
   - hasSkill is used instead of getSkillLevel when skill existence is needed, but we don't specifically need the level.
   - Skill enchantable routes now handle level 79 and 80. Each route can be manually edited.
   - Fix a visual issue about shortcut refresh on failed enchant skill.
   
Misc
   - Drop RATE_CONSUMABLE_COST && ALT_GAME_SHIELD_BLOCKS configs. Rename some players.properties configs.
   - Addition of StatsSet getIntIntHolder, getIntIntHolderList && getDoubleArray.
   - Fix an issue using a toggle when you run to a target with ATTACK intention. Ty Sahar.
   - getCurrentFolkNPC() -> getCurrentFolk(). The value retained is now a Folk, not a Npc.
   - Fix an issue on RequestAnswerJoinAlly introduced on rev 366, ty sahar.
   - Region size decreases from 4096 to 2048 (x4 WorldRegion amount, vision is reduced from 6k to 3k max). It now fits retail knownlist range.
   - Fist Weapon is moved from Player to PlayerTemplate (no calculation needed anymore on player login).
   - Formatting rule for lambdas && try-with-ressources. Use lambda writting style for all Runnable.
   - Cleanup L2Request > Request, keep a reference of the task to cancel it on onRequestResponse().
   - RequestRestartPoint doesn't use anymore a Runnable for instant use.
   - Drop door onEvtAttacked behavior, which was adding a ridiculous amount of operations for nothing.
   - RequestCrystallizeItem packet is cleaned up (avoid getItemByObjectId x2, World.getInstance().removeObject is already handled).


 

  • Upvote 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...