Сериализация там не сложная. но на разбор каждого окна уйдет куча времени.
010 Editor очень сильно помогает в разборе )
в начале идет размер потом однотипные блоки.
так же он собран не из 1 файла а из кучи. ( AbnormalStatusWnd.xml / ActionWnd.xml / ArmorEnchantEffectTestWnd.xml и тд )
xsd нету в клиенте.
Код HTML:
NewWnd.SetXMLDocumentInfo( "Created By L2UIEditor Ver1.0",
"http://www.lineage2.co.kr/ui",
"http://www.w3.org/2001/XMLSchema-instance",
"http://www.lineage2.co.kr/ui ..\\..\\Schema.xsd" );
Есть так же enum-мы c типами данных
PHP код:
enum EXMLControlType
{
XCT_None,
XCT_FrameWnd,
XCT_Button,
XCT_TextBox,
XCT_EditBox,
XCT_TextureCtrl,
XCT_ChatListBox,
XCT_TabControl,
XCT_ItemWnd,
XCT_CheckBox,
XCT_ComboBox,
XCT_ProgressCtrl,
XCT_MultiEdit,
XCT_ListCtrl,
XCT_ListBox,
XCT_StatusBarCtrl,
XCT_NameCtrl,
XCT_MinimapWnd,
XCT_ShortcutItemWnd,
XCT_XMLTreeCtrl,
XCT_SliderCtrl,
XCT_EffectButton,
XCT_TextListBox,
XCT_RadarWnd,
XCT_HtmlViewer,
XCT_RadioButton,
XCT_InvenWeightWnd,
XCT_StatusIconCtrl,
XCT_BarCtrl,
XCT_ScrollWnd,
XCT_FishViewportWnd,
XCT_VIPShopItemInfoWnd,
XCT_VIPShopNeededItemWnd,
XCT_DrawPanel,
XCT_RadarMapCtrl,
XCT_PropertyController,
XCT_FlashCtrl,
XCT_CharacterViewportWnd,
XCT_SceneCameraCtrl,
XCT_SceneNpcCtrl,
XCT_ScenePcCtrl,
XCT_SceneScreenCtrl,
XCT_SceneMusicCtrl
};
enum ETrackerAlignType
{
TAT_Left,
TAT_Center,
TAT_Right,
TAT_Width,
TAT_Height
};
enum EControlPropertyGroupType
{
CPGT_None,
CPGT_Single, //ГјЕ©№ЪЅє°Ў іЄїВґЩ ex) <Iconable> <Frame>
CPGT_SingleRequired, //ѕЖ№«°Нµµ ѕИіЄїВґЩ ex) <DefaultProperty>
CPGT_Multiple, //єОёрїЎ +№цЖ°АМ іЄїА°н, X№цЖ°АМ µоАе ex) <ComboBox>АЗ <ComboItem>
CPGT_MultipleRequired, //єОёрїЎ +№цЖ°АМ іЄїА°н, X№цЖ°АМ µоАеЗПБцёё ёрµО БцїпјцґВ ѕшАЅ ex) <ListCtrl>АЗ <ListColumnType>
CPGT_Choice, //їЙјЗ№цЖ°АМ іЄїВґЩ ex) <Size>АЗ <RelativeSize>їН <AbsoluteSize>
};
enum EControlPropertyItemType
{
CPIT_None,
CPIT_Boolean,
CPIT_Integer,
CPIT_String
};
enum EControlPropertyRestrictionType
{
CPRT_None,
CPRT_Integer,
CPRT_String
};
enum ETextLinkType
{
TLT_None,
TLT_ServerItem, //ј-№цїЎ RequestЗП°ЕіЄ CacheїЎј- №ЮѕЖїИ
TLT_LocalItem, //ClientАЗ ItemБ¤єёё¦ АМїл
TLT_User, //АЪµї ±УјУё»
TLT_SKill, //ClientАЗ SkillБ¤єёё¦ АМїл
TLT_URL //URL ёµЕ© ЕёАФ
};
enum EControlOrderWay
{
COW_None,
COW_Top,
COW_Up,
COW_Down,
COW_Bottom,
};
enum EProgressBarType
{
PBT_None,
PBT_RightLeft,
PBT_LeftRight,
PBT_TopBottom,
PBT_BottomTop,
};
enum ETextureAutoRotateType
{
ETART_None,
ETART_Camera,
ETART_Pawn
};
enum EItemWindowType
{
ITEMWNDTYPE_ScrollType,
ITEMWNDTYPE_SideButtonType,
ITEMWNDTYPE_UpDownButtonType
};
enum EItemWindowIconDrawType
{
ITEMWND_IconDraw_Default,
ITEMWND_IconDraw_NoConditionalEffect,
};
enum EAnchorPointType
{
ANCHORPOINT_None,
ANCHORPOINT_TopLeft,
ANCHORPOINT_TopCenter,
ANCHORPOINT_TopRight,
ANCHORPOINT_CenterLeft,
ANCHORPOINT_CenterCenter,
ANCHORPOINT_CenterRight,
ANCHORPOINT_BottomLeft,
ANCHORPOINT_BottomCenter,
ANCHORPOINT_BottomRight,
};