Jump to content

destrodevianne

Members
  • Posts

    42
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by destrodevianne

  1. hello, you have two ways to use the c4 client with another chronicle,

    1- connect the c4 client adapting the c6 system, or the other way is

    2- make again all the connections server -> client in the network packet adapting the protocols to the c4 chronicleand use a c4 system .

     

    possibly have some headaches with the "npc", as they have different "id".

     

     

    [746] Interlude Update 3

     

    [746] Interlude Update 3
    Client
    00 SendProtocolVersion
    01 MoveBackwardToLocation
    02 Say
    03 RequestEnterWorld
    04 Action
    08 RequestLogin
    09 SendLogOut
    0A RequestAttack
    0B RequestCharacterCreate
    0C RequestCharacterDelete
    0D RequestGameStart
    0E RequestNewCharacter
    0F RequestItemList
    10 RequestEquipItem
    11 RequestUnEquipItem
    12 RequestDropItem
    14 RequestUseItem
    15 RequestTrade
    16 RequestAddTradeItem
    17 TradeDone
    1A RequestTeleport
    1B SocialAction
    1C ChangeMoveType
    1D ChangeWaitType
    1E RequestSellItem
    1F RequestBuyItem
    20 RequestLinkHtml
    21 RequestBypassToServer
    22 RequestBBSWrite
    23 RequestCreatePledge
    24 RequestJoinPledge
    25 RequestAnswerJoinPledge
    26 RequestWithDrawalPledge
    27 RequestOustPledgeMember
    28 RequestDismissPledge
    29 RequestJoinParty
    2A RequestAnswerJoinParty
    2B RequestWithDrawalParty
    2C RequestOustPartyMember
    2D RequestDismissParty
    2E UserAck
    2F RequestMagicSkillUse
    30 SendAppearing
    31 SendWareHouseDepositList
    32 SendWareHouseWithdrawList
    33 RequestShortCutReg
    34 RequestShortCutUse
    35 RequestShortCutDel
    36 CanNotMoveAnymore
    37 RequestTargetCancel
    38 Say2
    3C RequestPledgeMemberList
    3E RequestMagicList
    3F RequestSkillList
    41 MoveWithDelta
    42 GetOnVehicle
    43 GetOffVehicle
    44 AnswerTradeRequest
    45 RequestActionUse
    46 RequestRestart
    47 RequestSiegeInfo
    48 ValidateLocation
    49 RequestSEKCustom
    4A StartRotating
    4B FinishRotating
    4D RequestStartPledgeWar
    4E RequestReplyStartPledgeWar
    4F RequestStopPledgeWar
    50 RequestReplyStopPledgeWar
    51 RequestSurrenderPledgeWar
    52 RequestReplySurrenderPledgeWar
    53 RequestSetPledgeCrest
    55 RequestGiveNickName
    57 RequestShowboard
    58 RequestEnchantItem
    59 RequestDestroyItem
    5B SendBypassBuildCmd
    5C MoveToLocationInVehicle
    5D CanNotMoveAnymore(Vehicle)
    5E RequestFriendInvite
    5F RequestFriendAddReply
    60 RequestFriendInfoList
    61 RequestFriendDel
    62 RequestCharacterRestore
    63 RequestQuestList
    64 RequestDestroyQuest
    66 RequestPledgeInfo
    67 RequestPledgeExtendedInfo
    68 RequestPledgeCrest
    69 RequestSurrenderPersonally
    6A RequestRide
    6B RequestAcquireSkillInfo
    6C RequestAcquireSkill
    6D RequestRestartPoint
    6E RequestGMCommand
    6F RequestListPartyWaiting
    70 RequestManagePartyRoom
    71 RequestJoinPartyRoom
    72 RequestCrystallizeItem
    73 RequestPrivateStoreSellManageList
    74 SetPrivateStoreSellList
    75 RequestPrivateStoreSellManageCancel
    76 RequestPrivateStoreSellQuit
    77 SetPrivateStoreSellMsg
    79 SendPrivateStoreBuyList
    7A RequestReviveReply
    7B RequestTutorialLinkHtml
    7C RequestTutorialPassCmdToServer
    7D RequestTutorialQuestionMarkPressed
    7E RequestTutorialClientEvent
    7F RequestPetition
    80 RequestPetitionCancel
    81 RequestGMList
    82 RequestJoinAlly
    83 RequestAnswerJoinAlly
    84 RequestWithdrawAlly
    85 RequestOustAlly
    86 RequestDismissAlly
    87 RequestSetAllyCrest
    88 RequestAllyCrest
    89 RequestChangePetName
    8A RequestPetUseItem
    8B RequestGiveItemToPet
    8C RequestGetItemFromPet
    8E RequestAllyInfo
    8F RequestPetGetItem
    90 RequestPrivateStoreBuyManageList
    91 SetPrivateStoreBuyList
    93 RequestPrivateStoreBuyManageQuit
    94 SetPrivateStoreBuyMsg
    96 SendPrivateStoreSellList
    97 SendTimeCheck
    98 RequestStartAllianceWar
    99 ReplyStartAllianceWar
    9A RequestStopAllianceWar
    9B ReplyStopAllianceWar
    9C RequestSurrenderAllianceWar
    9D RequestSkillCoolTime
    9E RequestPackageSendableItemList
    9F RequestPackageSend
    A0 RequestBlock
    A1 RequestCastleSiegeInfo
    A2 RequestCastleSiegeAttackerList
    A3 RequestCastleSiegeDefenderList
    A4 RequestJoinCastleSiege
    A5 RequestConfirmCastleSiegeWaitingList
    A6 RequestSetCastleSiegeTime
    A7 RequestMultiSellChoose
    A8 NetPing
    A9 RequestRemainTime
    AA BypassUserCmd
    AB GMSnoopEnd
    AC RequestRecipeBookOpen
    AD RequestRecipeItemDelete
    AE RequestRecipeItemMakeInfo
    AF RequestRecipeItemMakeSelf
    B0 RequestRecipeShopManageList
    B1 RequestRecipeShopMessageSet
    B2 RequestRecipeShopListSet
    B3 RequestRecipeShopManageQuit
    B4 RequestRecipeShopManageCancel
    B5 RequestRecipeShopMakeInfo
    B6 RequestRecipeShopMakeDo
    B7 RequestRecipeShopSellList
    B8 RequestObserverEnd
    B9 VoteSociality
    BA RequestHennaItemList
    BB RequestHennaItemInfo
    BC RequestHennaEquip
    BD RequestHennaUnequipList
    BE RequestHennaUnequipInfo
    BF RequestHennaUnequip
    C0 RequestPledgePower
    C1 RequestMakeMacro
    C2 RequestDeleteMacro
    C3 RequestProcureCrop
    C4 RequestBuySeed
    C5 ConfirmDlg
    C6 RequestPreviewItem
    C7 RequestSSQStatus
    C8 PetitionVote
    CA ReplyGameGuardQuery
    CC RequestSendL2FriendSay
    CD RequestOpenMinimap
    CE RequestSendMsnChatLog
    CF RequestReload
    D0:01 RequestOustFromPartyRoom
    D0:02 RequestDismissPartyRoom
    D0:03 RequestWithdrawPartyRoom
    D0:04 RequestHandOverPartyMaster
    D0:05 RequestAutoSoulShot
    D0:06 RequestExEnchantSkillInfo
    D0:07 RequestExEnchantSkill
    D0:08 RequestManorList
    D0:09 RequestProcureCropList
    D0:0A RequestSetSeed
    D0:0B RequestSetCrop
    D0:0C RequestWriteHeroWords
    D0:0D RequestExAskJoinMPCC
    D0:0E RequestExAcceptJoinMPCC
    D0:0F RequestExOustFromMPCC
    D0:10 RequestExPledgeCrestLarge
    D0:11 RequestExSetPledgeCrestLarge
    D0:12 RequestOlympiadObserverEnd
    D0:13 RequestOlympiadMatchList
    D0:14 RequestAskJoinPartyRoom
    D0:15 AnswerJoinPartyRoom
    D0:16 RequestListPartyMatchingWaitingRoom
    D0:17 RequestExitPartyMatchingWaitingRoom
    D0:18 RequestGetBossRecord
    D0:19 RequestPledgeSetAcademyMaster
    D0:1A RequestPledgePowerGradeList
    D0:1B RequestPledgeMemberPowerInfo
    D0:1C RequestPledgeSetMemberPowerGrade
    D0:1D RequestPledgeMemberInfo
    D0:1E RequestPledgeWarList
    D0:1F RequestExFishRanking
    D0:20 RequestPCCafeCouponUse
    D0:22 RequestCursedWeaponList
    D0:23 RequestCursedWeaponLocation
    D0:24 RequestPledgeReorganizeMember
    D0:26 RequestExMPCCShowPartyMembersInfo
    D0:27 RequestDuelStart
    D0:28 RequestDuelAnswerStart
    D0:29 RequestConfirmTargetItem
    D0:2A RequestConfirmRefinerItem
    D0:2B RequestConfirmGemStone
    D0:2C RequestRefine
    D0:2D RequestConfirmCancelItem
    D0:2E RequestRefineCancel
    D0:2F RequestExMagicSkillUseGround
    D0:30 RequestDuelSurrender
    D0:31 RequestExChangeName
    
    Server
    00 VersionCheck
    01 MoveToLocation
    02 NpcSay
    03 CharInfo
    04 UserInfo
    05 Attack
    06 Die
    07 Revive
    08 AttackOutofRange
    09 AttackinCoolTime
    0A AttackDeadTarget
    0B SpawnItem
    0C DropItem
    0D GetItem
    0E StatusUpdate
    0F NpcHtmlMessage
    10 SellList
    11 BuyList
    12 DeleteObject
    13 CharacterSelectionInfo
    14 LoginFail
    15 CharacterSelected
    16 NpcInfo
    17 NewCharacterSuccess
    18 NewCharacterFail
    19 CharacterCreateSuccess
    1A CharacterCreateFail
    1B ItemList
    1C SunRise
    1D SunSet
    1E TradeStart
    1F TradeStartOk
    20 TradeOwnAdd
    21 TradeOtherAdd
    22 TradeDone
    23 CharacterDeleteSuccess
    24 CharacterDeleteFail
    25 ActionFail
    26 ServerClose
    27 InventoryUpdate
    28 TeleportToLocation
    29 TargetSelected
    2A TargetUnselected
    2B AutoAttackStart
    2C AutoAttackStop
    2D SocialAction
    2E ChangeMoveType
    2F ChangeWaitType
    30 ManagePledgePower
    31 CreatePledge
    32 AskJoinPledge
    33 JoinPledge
    34 WithdrawalPledge
    35 OustPledgeMember
    36 SetOustPledgeMember
    37 DismissPledge
    38 SetDismissPledge
    39 AskJoinParty
    3A JoinParty
    3B WithdrawalParty
    3C OustPartyMember
    3D SetOustPartyMember
    3E DismissParty
    3F SetDismissParty
    40 UserAck
    41 WareHouseDepositList
    42 WareHouseWithdrawList
    43 WareHouseDone
    44 ShortCutRegister
    45 ShortCutInit
    46 ShortCutDelete
    47 StopMove
    48 MagicSkillUse
    49 MagicSkillCanceled
    4A Say2
    4B EquipUpdate
    4C DoorInfo
    4D DoorStatusUpdate
    4E PartySmallWindowAll
    4F PartySmallWindowAdd
    50 PartySmallWindowDeleteAll
    51 PartySmallWindowDelete
    52 PartySmallWindowUpdate
    53 PledgeShowMemberListAll
    54 PledgeShowMemberListUpdate
    55 PledgeShowMemberListAdd
    56 PledgeShowMemberListDelete
    57 MagicList
    58 SkillList
    59 VehicleInfo
    5A VehicleDeparture
    5B VehicleCheckLocation
    5C GetOnVehicle
    5D GetOffVehicle
    5E TradeRequest
    5F RestartResponse
    60 MoveToPawn
    61 ValidateLocation
    62 StartRotating
    63 FinishRotating
    64 SystemMessage
    65 StartPledgeWar
    66 ReplyStartPledgeWar
    67 StopPledgeWar
    68 ReplyStopPledgeWar
    69 SurrenderPledgeWar
    6A ReplySurrenderPledgeWar
    6B SetPledgeCrest
    6C PledgeCrest
    6D SetupGauge
    6E ShowBoard
    6F ChooseInventoryItem
    70 Dummy_70
    71 MoveToLocationInVehicle
    72 StopMoveInVehicle
    73 ValidateLocationInVehicle
    74 TradeUpdate
    75 TradePressOwnOk
    76 MagicSkillLaunched
    77 FriendAddRequestResult
    78 FriendAdd
    79 FriendRemove
    7A FriendList
    7B FriendStatus
    7C TradePressOtherOk
    7D FriendAddRequest
    7E LogOutOk
    7F AbnormalStatusUpdate
    80 QuestList
    81 EnchantResult
    82 PledgeShowMemberListDeleteAll
    83 PledgeInfo
    84 PledgeExtendedInfo
    85 SurrenderPersonally
    86 Ride
    87 GiveNickNameDone
    88 PledgeShowInfoUpdate
    89 ClientAction
    8A AcquireSkillList
    8B AcquireSkillInfo
    8C ServerObjectInfo
    8D GMHide
    8E AcquireSkillDone
    8F GMViewCharacterInfo
    90 GMViewPledgeInfo
    91 GMViewSkillInfo
    92 GMViewMagicInfo
    93 GMViewQuestInfo
    94 GMViewItemList
    95 GMViewWarehouseWithdrawList
    96 ListPartyWaiting
    97 PartyRoomInfo
    98 PlaySound
    99 StaticObject
    9A PrivateStoreSellManageList
    9B PrivateStoreSellList
    9C PrivateStoreSellMsg
    9D ShowMinimap
    9E ReviveRequest
    9F AbnormalVisualEffect
    A0 TutorialShowHtml
    A1 ShowTutorialMark
    A2 TutorialEnableClientEvent
    A3 TutorialCloseHtml
    A4 ShowRadar
    A5 DeleteRadar
    A6 MyTargetSelected
    A7 PartyMemberPosition
    A8 AskJoinAlliance
    A9 JoinAlliance
    AA WithdrawAlliance
    AB OustAllianceMemberPledge
    AC DismissAlliance
    AD SetAllianceCrest
    AE AllianceCrest
    AF ServerCloseSocket
    B0 PetStatusShow
    B1 PetInfo
    B2 PetItemList
    B3 PetInventoryUpdate
    B4 AllianceInfo
    B5 PetStatusUpdate
    B6 PetDelete
    B7 PrivateStoreBuyManageList
    B8 PrivateStoreBuyList
    B9 PrivateStoreBuyMsg
    BA VehicleStart
    BB RequestTimeCheck
    BC StartAllianceWar
    BD ReplyStartAllianceWar
    BE StopAllianceWar
    BF ReplyStopAllianceWar
    C0 SurrenderAllianceWar
    C1 SkillCoolTime
    C2 PackageToList
    C3 PackageSendableList
    C4 EarthQuake
    C5 FlyToLocation
    C6 BlockList
    C7 SpecialCamera
    C8 NormalCamera
    C9 CastleSiegeInfo
    CA CastleSiegeAttackerList
    CB CastleSiegeDefenderList
    CC NickNameChanged
    CD PledgeStatusChanged
    CE RelationChanged
    CF EventTrigger
    D0 MultiSellList
    D1 SetSummonRemainTime
    D2 SkillRemainSec
    D3 NetPing
    D4 Dice
    D5 Snoop
    D6 RecipeBookItemList
    D7 RecipeItemMakeInfo
    D8 RecipeShopManageList
    D9 RecipeShopSellList
    DA RecipeShopItemInfo
    DB RecipeShopMsg
    DC ShowCalc
    DD MonRaceInfo
    DE ShowTownMap
    DF ObserverStart
    E0 ObserverEnd
    E1 ChairSit
    E2 HennaEquipList
    E3 HennaItemInfo
    E4 HennaInfo
    E5 HennaUnequipList
    E6 HennaUnequipInfo
    E7 MacroList
    E8 BuyListSeed
    E9 SellListProcure
    EA GMHennaInfo
    EB RadarControl
    EC ClientSetTime
    ED ConfirmDlg
    EE PartySpelled
    EF ShopPreviewList
    F0 ShopPreviewInfo
    F1 CameraMode
    F2 ShowXMasSeal
    F3 EtcStatusUpdate
    F4 ShortBuffStatusUpdate
    F5 SSQStatus
    F6 PetitionVote
    F7 AgitDecoInfo
    F8 SSQInfo
    F9 GameGuardQuery
    FA L2FriendList
    FB L2Friend
    FC L2FriendStatus
    FD L2FriendSay
    FE:01 ExRegenMax
    FE:02 ExEventMatchList
    FE:03 ExEventMatchObserver
    FE:04 ExEventMatchMessage
    FE:05 ExEventMatchScore
    FE:06 ExEventMatchTeamInfo
    FE:07 ExEventMatchCreate
    FE:08 ExEventMatchUserInfo
    FE:09 ExColosseumFenceInfo
    FE:0A ExEventMatchSpelledInfo
    FE:0B ExEventMatchFirecracker
    FE:0C ExEventMatchTeamUnlocked
    FE:0D ExEventMatchGMTest
    FE:0E ExPartyRoomMember
    FE:0F ExClosePartyRoom
    FE:10 ExManagePartyRoomMember
    FE:11 ExEventMatchLockResult
    FE:12 ExAutoSoulShot
    FE:13 ExFishingStart
    FE:14 ExFishingEnd
    FE:15 ExFishingStartCombat
    FE:16 ExFishingHpRegen
    FE:17 ExEnchantSkillList
    FE:18 ExEnchantSkillInfo
    FE:19 ExShowQuestInfo
    FE:1A ExShowQuestMark
    FE:1B ExSendManorList
    FE:1C ExShowSeedInfo
    FE:1D ExShowCropInfo
    FE:1E ExShowManorDefaultInfo
    FE:1F ExShowSeedSetting
    FE:20 ExShowCropSetting
    FE:21 ExShowSellCropList
    FE:22 ExShowProcureCropDetail
    FE:23 ExHeroList
    FE:24 ExServerPrimitive
    FE:25 ExOpenMPCC
    FE:26 ExCloseMPCC
    FE:27 ExAskJoinMPCC
    FE:28 ExPledgeEmblem
    FE:29 ExOlympiadUserInfo
    FE:2A ExOlympiadSpelledInfo
    FE:2B ExOlympiadMode
    FE:2C ExOlympiadMatchEnd
    FE:2D ExMailArrived
    FE:2E ExStorageMaxCount
    FE:2F ExEventMatchManage
    FE:30 ExMultiPartyCommandChannelInfo
    FE:31 ExPCCafePointInfo
    FE:32 ExSetCompassZoneCode
    FE:33 ExGetBossRecord
    FE:34 ExAskJoinPartyRoom
    FE:35 ExListPartyMatchingWaitingRoom
    FE:36 ExSetMpccRouting
    FE:37 ExShowAdventurerGuideBook
    FE:38 ExShowScreenMessage
    FE:39 PledgeSkillList
    FE:3A PledgeSkillListAdd
    FE:3B PledgePowerGradeList
    FE:3C PledgeReceivePowerInfo
    FE:3D PledgeReceiveMemberInfo
    FE:3E PledgeReceiveWarList
    FE:3F PledgeReceiveSubPledgeCreated
    FE:40 ExRedSky
    FE:41 PledgeReceiveUpdatePower
    FE:42 FlySelfDestination
    FE:43 ShowPCCafeCouponShowUI
    FE:44 ExSearchOrc
    FE:45 ExCursedWeaponList
    FE:46 ExCursedWeaponLocation
    FE:47 ExRestartClient
    FE:48 ExRequestHackShield
    FE:49 ExUseSharedGroupItem
    FE:4A ExMPCCShowPartyMemberInfo
    FE:4B ExDuelAskStart
    FE:4C ExDuelReady
    FE:4D ExDuelStart
    FE:4E ExDuelEnd
    FE:4F ExDuelUpdateUserInfo
    FE:50 ExShowVariationMakeWindow
    FE:51 ExShowVariationCancelWindow
    FE:52 ExPutItemResultForVariationMake
    FE:53 ExPutIntensiveResultForVariationMake
    FE:54 ExPutCommissionResultForVariationMake
    FE:55 ExVariationResult
    FE:56 ExPutItemResultForVariationCancel
    FE:57 ExVariationCancelResult
    FE:58 ExDuelEnemyRelation
    FE:59 ExPlayAnimation
    FE:5A ExMPCCPartyInfoUpdate
    FE:5B ExPlayScene
    FE:5C ExNeedToChangeName

     

    [660] C4 Scions Of Destiny Update 1

    [660] C4 Scions Of Destiny Update 1
    Client
    00 SendProtocolVersion
    01 MoveBackwardToLocation
    02 Say
    03 RequestEnterWorld
    04 Action
    08 RequestLogin
    09 SendLogOut
    0A RequestAttack
    0B RequestCharacterCreate
    0C RequestCharacterDelete
    0D RequestGameStart
    0E RequestNewCharacter
    0F RequestItemList
    10 RequestEquipItem
    11 RequestUnEquipItem
    12 RequestDropItem
    14 RequestUseItem
    15 RequestTrade
    16 RequestAddTradeItem
    17 TradeDone
    1A RequestTeleport
    1B SocialAction
    1C ChangeMoveType
    1D ChangeWaitType
    1E RequestSellItem
    1F RequestBuyItem
    20 RequestLinkHtml
    21 RequestBypassToServer
    22 RequestBBSWrite
    23 RequestCreatePledge
    24 RequestJoinPledge
    25 RequestAnswerJoinPledge
    26 RequestWithDrawalPledge
    27 RequestOustPledgeMember
    28 RequestDismissPledge
    29 RequestJoinParty
    2A RequestAnswerJoinParty
    2B RequestWithDrawalParty
    2C RequestOustPartyMember
    2D RequestDismissParty
    2E UserAck
    2F RequestMagicSkillUse
    30 SendAppearing
    31 SendWareHouseDepositList
    32 SendWareHouseWithdrawList
    33 RequestShortCutReg
    34 RequestShortCutUse
    35 RequestShortCutDel
    36 CanNotMoveAnymore
    37 RequestTargetCancel
    38 Say2
    3C RequestPledgeMemberList
    3E RequestMagicList
    3F RequestSkillList
    41 MoveWithDelta
    42 GetOnVehicle
    43 GetOffVehicle
    44 AnswerTradeRequest
    45 RequestActionUse
    46 RequestRestart
    47 RequestSiegeInfo
    48 ValidateLocation
    49 RequestSEKCustom
    4A StartRotating
    4B FinishRotating
    4D RequestStartPledgeWar
    4E RequestReplyStartPledgeWar
    4F RequestStopPledgeWar
    50 RequestReplyStopPledgeWar
    51 RequestSurrenderPledgeWar
    52 RequestReplySurrenderPledgeWar
    53 RequestSetPledgeCrest
    55 RequestGiveNickName
    57 RequestShowboard
    58 RequestEnchantItem
    59 RequestDestroyItem
    5B SendBypassBuildCmd
    5C MoveToLocationInVehicle
    5D CanNotMoveAnymore(Vehicle)
    5E RequestFriendInvite
    5F RequestFriendAddReply
    60 RequestFriendInfoList
    61 RequestFriendDel
    62 RequestCharacterRestore
    63 RequestQuestList
    64 RequestDestroyQuest
    66 RequestPledgeInfo
    67 RequestPledgeExtendedInfo
    68 RequestPledgeCrest
    69 RequestSurrenderPersonally
    6A RequestRide
    6B RequestAcquireSkillInfo
    6C RequestAcquireSkill
    6D RequestRestartPoint
    6E RequestGMCommand
    6F RequestListPartyWaiting
    70 RequestManagePartyRoom
    71 RequestJoinPartyRoom
    72 RequestCrystallizeItem
    73 RequestPrivateStoreSellManageList
    74 SetPrivateStoreSellList
    75 RequestPrivateStoreSellManageCancel
    76 RequestPrivateStoreSellQuit
    77 SetPrivateStoreSellMsg
    79 SendPrivateStoreBuyList
    7A RequestReviveReply
    7B RequestTutorialLinkHtml
    7C RequestTutorialPassCmdToServer
    7D RequestTutorialQuestionMarkPressed
    7E RequestTutorialClientEvent
    7F RequestPetition
    80 RequestPetitionCancel
    81 RequestGMList
    82 RequestJoinAlly
    83 RequestAnswerJoinAlly
    84 RequestWithdrawAlly
    85 RequestOustAlly
    86 RequestDismissAlly
    87 RequestSetAllyCrest
    88 RequestAllyCrest
    89 RequestChangePetName
    8A RequestPetUseItem
    8B RequestGiveItemToPet
    8C RequestGetItemFromPet
    8E RequestAllyInfo
    8F RequestPetGetItem
    90 RequestPrivateStoreBuyManageList
    91 SetPrivateStoreBuyList
    93 RequestPrivateStoreBuyManageQuit
    94 SetPrivateStoreBuyMsg
    96 SendPrivateStoreSellList
    97 SendTimeCheck
    98 RequestStartAllianceWar
    99 ReplyStartAllianceWar
    9A RequestStopAllianceWar
    9B ReplyStopAllianceWar
    9C RequestSurrenderAllianceWar
    9D RequestSkillCoolTime
    9E RequestPackageSendableItemList
    9F RequestPackageSend
    A0 RequestBlock
    A1 RequestCastleSiegeInfo
    A2 RequestCastleSiegeAttackerList
    A3 RequestCastleSiegeDefenderList
    A4 RequestJoinCastleSiege
    A5 RequestConfirmCastleSiegeWaitingList
    A6 RequestSetCastleSiegeTime
    A7 RequestMultiSellChoose
    A8 NetPing
    A9 RequestRemainTime
    AA BypassUserCmd
    AB GMSnoopEnd
    AC RequestRecipeBookOpen
    AD RequestRecipeItemDelete
    AE RequestRecipeItemMakeInfo
    AF RequestRecipeItemMakeSelf
    B0 RequestRecipeShopManageList
    B1 RequestRecipeShopMessageSet
    B2 RequestRecipeShopListSet
    B3 RequestRecipeShopManageQuit
    B4 RequestRecipeShopManageCancel
    B5 RequestRecipeShopMakeInfo
    B6 RequestRecipeShopMakeDo
    B7 RequestRecipeShopSellList
    B8 RequestObserverEnd
    B9 VoteSociality
    BA RequestHennaItemList
    BB RequestHennaItemInfo
    BC RequestHennaEquip
    BD RequestHennaUnequipList
    BE RequestHennaUnequipInfo
    BF RequestHennaUnequip
    C0 RequestPledgePower
    C1 RequestMakeMacro
    C2 RequestDeleteMacro
    C3 RequestProcureCrop
    C4 RequestBuySeed
    C5 ConfirmDlg
    C6 RequestPreviewItem
    C7 RequestSSQStatus
    C8 PetitionVote
    CA ReplyGameGuardQuery
    CC RequestSendL2FriendSay
    CD RequestOpenMinimap
    CE RequestSendMsnChatLog
    CF RequestReload
    D0:01 RequestOustFromPartyRoom
    D0:02 RequestDismissPartyRoom
    D0:03 RequestWithdrawPartyRoom
    D0:04 RequestHandOverPartyMaster
    D0:05 RequestAutoSoulShot
    D0:06 RequestExEnchantSkillInfo
    D0:07 RequestExEnchantSkill
    D0:08 RequestManorList
    D0:09 RequestProcureCropList
    D0:0A RequestSetSeed
    D0:0B RequestSetCrop
    D0:0C RequestWriteHeroWords
    D0:0D RequestExAskJoinMPCC
    D0:0E RequestExAcceptJoinMPCC
    D0:0F RequestExOustFromMPCC
    D0:10 RequestExPledgeCrestLarge
    D0:11 RequestExSetPledgeCrestLarge
    D0:12 RequestOlympiadObserverEnd
    D0:13 RequestOlympiadMatchList
    
    
    Server
    00 VersionCheck
    01 MoveToLocation
    02 NpcSay
    03 CharInfo
    04 UserInfo
    05 Attack
    06 Die
    07 Revive
    08 AttackOutofRange
    09 AttackinCoolTime
    0A AttackDeadTarget
    0B SpawnItem
    0C DropItem
    0D GetItem
    0E StatusUpdate
    0F NpcHtmlMessage
    10 SellList
    11 BuyList
    12 DeleteObject
    13 CharacterSelectionInfo
    14 LoginFail
    15 CharacterSelected
    16 NpcInfo
    17 NewCharacterSuccess
    18 NewCharacterFail
    19 CharacterCreateSuccess
    1A CharacterCreateFail
    1B ItemList
    1C SunRise
    1D SunSet
    1E TradeStart
    1F TradeStartOk
    20 TradeOwnAdd
    21 TradeOtherAdd
    22 TradeDone
    23 CharacterDeleteSuccess
    24 CharacterDeleteFail
    25 ActionFail
    26 ServerClose
    27 InventoryUpdate
    28 TeleportToLocation
    29 TargetSelected
    2A TargetUnselected
    2B AutoAttackStart
    2C AutoAttackStop
    2D SocialAction
    2E ChangeMoveType
    2F ChangeWaitType
    30 ManagePledgePower
    31 CreatePledge
    32 AskJoinPledge
    33 JoinPledge
    34 WithdrawalPledge
    35 OustPledgeMember
    36 SetOustPledgeMember
    37 DismissPledge
    38 SetDismissPledge
    39 AskJoinParty
    3A JoinParty
    3B WithdrawalParty
    3C OustPartyMember
    3D SetOustPartyMember
    3E DismissParty
    3F SetDismissParty
    40 UserAck
    41 WareHouseDepositList
    42 WareHouseWithdrawList
    43 WareHouseDone
    44 ShortCutRegister
    45 ShortCutInit
    46 ShortCutDelete
    47 StopMove
    48 MagicSkillUse
    49 MagicSkillCanceled
    4A Say2
    4B EquipUpdate
    4C DoorInfo
    4D DoorStatusUpdate
    4E PartySmallWindowAll
    4F PartySmallWindowAdd
    50 PartySmallWindowDeleteAll
    51 PartySmallWindowDelete
    52 PartySmallWindowUpdate
    53 PledgeShowMemberListAll
    54 PledgeShowMemberListUpdate
    55 PledgeShowMemberListAdd
    56 PledgeShowMemberListDelete
    57 MagicList
    58 SkillList
    59 VehicleInfo
    5A VehicleDeparture
    5B VehicleCheckLocation
    5C GetOnVehicle
    5D GetOffVehicle
    5E TradeRequest
    5F RestartResponse
    60 MoveToPawn
    61 ValidateLocation
    62 StartRotating
    63 FinishRotating
    64 SystemMessage
    65 StartPledgeWar
    66 ReplyStartPledgeWar
    67 StopPledgeWar
    68 ReplyStopPledgeWar
    69 SurrenderPledgeWar
    6A ReplySurrenderPledgeWar
    6B SetPledgeCrest
    6C PledgeCrest
    6D SetupGauge
    6E ShowBoard
    6F ChooseInventoryItem
    70 Dummy_70
    71 MoveToLocationInVehicle
    72 StopMoveInVehicle
    73 ValidateLocationInVehicle
    74 TradeUpdate
    75 TradePressOwnOk
    76 MagicSkillLaunched
    77 FriendAddRequestResult
    78 FriendAdd
    79 FriendRemove
    7A FriendList
    7B FriendStatus
    7C TradePressOtherOk
    7D FriendAddRequest
    7E LogOutOk
    7F AbnormalStatusUpdate
    80 QuestList
    81 EnchantResult
    82 PledgeShowMemberListDeleteAll
    83 PledgeInfo
    84 PledgeExtendedInfo
    85 SurrenderPersonally
    86 Ride
    87 GiveNickNameDone
    88 PledgeShowInfoUpdate
    89 ClientAction
    8A AcquireSkillList
    8B AcquireSkillInfo
    8C ServerObjectInfo
    8D GMHide
    8E AcquireSkillDone
    8F GMViewCharacterInfo
    90 GMViewPledgeInfo
    91 GMViewSkillInfo
    92 GMViewMagicInfo
    93 GMViewQuestInfo
    94 GMViewItemList
    95 GMViewWarehouseWithdrawList
    96 ListPartyWaiting
    97 PartyRoomInfo
    98 PlaySound
    99 StaticObject
    9A PrivateStoreSellManageList
    9B PrivateStoreSellList
    9C PrivateStoreSellMsg
    9D ShowMinimap
    9E ReviveRequest
    9F AbnormalVisualEffect
    A0 TutorialShowHtml
    A1 ShowTutorialMark
    A2 TutorialEnableClientEvent
    A3 TutorialCloseHtml
    A4 ShowRadar
    A5 DeleteRadar
    A6 MyTargetSelected
    A7 PartyMemberPosition
    A8 AskJoinAlliance
    A9 JoinAlliance
    AA WithdrawAlliance
    AB OustAllianceMemberPledge
    AC DismissAlliance
    AD SetAllianceCrest
    AE AllianceCrest
    AF ServerCloseSocket
    B0 PetStatusShow
    B1 PetInfo
    B2 PetItemList
    B3 PetInventoryUpdate
    B4 AllianceInfo
    B5 PetStatusUpdate
    B6 PetDelete
    B7 PrivateStoreBuyManageList
    B8 PrivateStoreBuyList
    B9 PrivateStoreBuyMsg
    BA VehicleStart
    BB RequestTimeCheck
    BC StartAllianceWar
    BD ReplyStartAllianceWar
    BE StopAllianceWar
    BF ReplyStopAllianceWar
    C0 SurrenderAllianceWar
    C1 SkillCoolTime
    C2 PackageToList
    C3 PackageSendableList
    C4 EarthQuake
    C5 FlyToLocation
    C6 BlockList
    C7 SpecialCamera
    C8 NormalCamera
    C9 CastleSiegeInfo
    CA CastleSiegeAttackerList
    CB CastleSiegeDefenderList
    CC NickNameChanged
    CD PledgeStatusChanged
    CE RelationChanged
    CF EventTrigger
    D0 MultiSellList
    D1 SetSummonRemainTime
    D2 SkillRemainSec
    D3 NetPing
    D4 Dice
    D5 Snoop
    D6 RecipeBookItemList
    D7 RecipeItemMakeInfo
    D8 RecipeShopManageList
    D9 RecipeShopSellList
    DA RecipeShopItemInfo
    DB RecipeShopMsg
    DC ShowCalc
    DD MonRaceInfo
    DE ShowTownMap
    DF ObserverStart
    E0 ObserverEnd
    E1 ChairSit
    E2 HennaEquipList
    E3 HennaItemInfo
    E4 HennaInfo
    E5 HennaUnequipList
    E6 HennaUnequipInfo
    E7 MacroList
    E8 BuyListSeed
    E9 SellListProcure
    EA GMHennaInfo
    EB RadarControl
    EC ClientSetTime
    ED ConfirmDlg
    EE PartySpelled
    EF ShopPreviewList
    F0 ShopPreviewInfo
    F1 CameraMode
    F2 ShowXMasSeal
    F3 EtcStatusUpdate
    F4 ShortBuffStatusUpdate
    F5 SSQStatus
    F6 PetitionVote
    F7 AgitDecoInfo
    F8 SSQInfo
    F9 GameGuardQuery
    FA L2FriendList
    FB L2Friend
    FC L2FriendStatus
    FD L2FriendSay
    FE:01 ExRegenMax
    FE:02 ExEventMatchList
    FE:03 ExEventMatchObserver
    FE:04 ExEventMatchMessage
    FE:05 ExEventMatchScore
    FE:06 ExEventMatchTeamInfo
    FE:07 ExEventMatchCreate
    FE:08 ExEventMatchUserInfo
    FE:09 ExColosseumFenceInfo
    FE:0A ExEventMatchSpelledInfo
    FE:0B ExEventMatchFirecracker
    FE:0C ExEventMatchTeamUnlocked
    FE:0D ExEventMatchGMTest
    FE:0E ExPartyRoomMember
    FE:0F ExClosePartyRoom
    FE:10 ExManagePartyRoomMember
    FE:11 ExEventMatchLockResult
    FE:12 ExAutoSoulShot
    FE:13 ExFishingStart
    FE:14 ExFishingEnd
    FE:15 ExFishingStartCombat
    FE:16 ExFishingHpRegen
    FE:17 ExEnchantSkillList
    FE:18 ExEnchantSkillInfo
    FE:19 ExShowQuestInfo
    FE:1A ExShowQuestMark
    FE:1B ExSendManorList
    FE:1C ExShowSeedInfo
    FE:1D ExShowCropInfo
    FE:1E ExShowManorDefaultInfo
    FE:1F ExShowSeedSetting
    FE:20 ExShowCropSetting
    FE:21 ExShowSellCropList
    FE:22 ExShowProcureCropDetail
    FE:23 ExHeroList
    FE:24 ExServerPrimitive
    FE:25 ExOpenMPCC
    FE:26 ExCloseMPCC
    FE:27 ExAskJoinMPCC
    FE:28 ExPledgeEmblem
    FE:29 ExOlympiadUserInfo
    FE:2A ExOlympiadSpelledInfo
    FE:2B ExOlympiadMode
    FE:2C ExOlympiadMatchEnd
    FE:2D ExMailArrived
    FE:2E ExStorageMaxCount
    FE:2F ExEventMatchManage
    FE:30 ExMultiPartyCommandChannelInfo
    FE:31 ExPCCafePointInfo

     

    maybe an exmaple:

     

     

  2. Hi friends, I have a question I am trying to access the CreatureID variable of the Pawn class that inherits from the Actor class to check if it is the one that corresponds to my target inside a for loop.
    I am trying to apply an effect on the target as in the monokini interface, but in the Interlude client.

     

    function ApplyEffectTarget (bool isClear, optional private UserInfo info )
    {
    	local Pawn a_Pawn;
    	local Vector V;
    	local Actor PlayerActor;
    	
    	if(! GetTargetInfo(info))
    	{
    		return;
    	}
    	else
    	{		
    		V = PlayerActor.Location;		
    	}
    			
    	if ( decalEmitter != None )
    	{		
    		decalEmitter = None;
    	}
    	
    	if ( isClear )
    	{
    		return;
    	}
    			
    	foreach PlayerActor.CollidingActors(Class'Pawn',a_Pawn,100,V)
    	{		
    		if (m_TargetID == a_Pawn.CreatureID && m_TargetID > 0)		
    		{
    			V.X = 0.0;
    			V.Y = 0.0;
    			V.Z = a_Pawn.CollisionHeight + 7;
    			decalEmitter = a_Pawn.Spawn(TargetEmitterClass, a_Pawn);
    		} else {
    		}
    	}
    }

     

    I get this error when compiling

     

    Capturadepantalla2023-12-15162346.thumb.png.d8c84f8d2d3bed6711336d33708620ab.png

     

     

    Can someone help me ? 

     

    thanks.

     

     

     

  3. I have tried, but the problem is that the system does not open the client, I am using windows 10 

     

    @AlisaCodeDragon say :

     

    Quote

    take for example the grace of part 2 

    to make it work on Windows 10 you need to clean these DLL and EXE from themida

    NWindow.dll 

    Engine.dll

    L2.exe + patch rsa 256 

    and then they will be able to run on Windows 10  ))

     

    I don't like how to clean themida. It is possible that someone in the forum has done it.

    Captura.PNG


  4. gQzk1zX.jpg


     

     

    nothing special interlude acis based on public sources , working on protocol 216

     

     

     

     

     

     

     

    Datapack : https://disk.yandex.com/d/58hEKe8uSqcPbw

     

    Client C6 with textures : https://mega.nz/file/DQpSXbbZ#KtoUzMou9LO_FJaCFLMjnR4Hez9EYRulpN2YsvDGTAk

    or https://disk.yandex.com/d/wYiIm7iuO2pEHg

     

    Source :

    This is the hidden content, please

     

    5GpQKvZ.jpg


    this is my first post sharing something, I am not a professional just a person with curiosity who learns every day something new, here I leave the result of playing with the protocols.

     

    regards.

     

    ehap4AA.jpg

     

    🙂 Mikado.-

    • Like 1
  5. deadz uses an nwindows.dll modified but it is not compatible in the freya chronicle someone can add those functions in the nwindows.dll for Freya to be able to adapt the interface ?? thank you very much for your time. greetings.

     

    example :

     

    in ProgressCtrlHandle.uc function SetBackTex or SetBarTex 

     

    I do not know if it is possible ? I apologize if the request is ridiculous.

  6. 3 minutes ago, Celestine said:

     

    im on vacations until 25 june so i have no softwares there.

    no problem, and I appreciate your willingness to share this wonderful work , it really looks amazing. I just wanted to let you know that this problem exists and maybe you uploaded the wrong file.

  7. 5 minutes ago, Celestine said:

    this code seems not obufuscated 😄 they just copy pasted from other interface and replaced.

    for security I just downloaded mega your file and I used a completely clean client;

    I understand that if you have shared it compiled and say you are not obfuscated you will not mind sharing the *uc files, may your software be better than mine

  8. 1 hour ago, Celestine said:

     

    could you show me? the author that made that interface has no any programs to obufuscate his share.

    you can choose any class for example this "ChatWnd.uc "

     

    //================================================================================
    // ChatWnd.
    //================================================================================
    
    class ChatWnd extends UICommonAPI;
    
    const CHAT_UNION_MAX= 35;
    const CHAT_WINDOW_SYSTEM= 5;
    const CHAT_WINDOW_COUNT= 5;
    const CHAT_WINDOW_ALLY= 4;
    const CHAT_WINDOW_CLAN= 3;
    const CHAT_WINDOW_PARTY= 2;
    const CHAT_WINDOW_TRADE= 1;
    const CHAT_WINDOW_NORMAL= 0;
    var int m_NoUnionCommanderMessage;
    var array<ChatFilterInfo> m_filterInfo;
    var array<string> m_sectionName;
    var int m_chatType;
    var ChatWindowHandle NormalChat;
    var ChatWindowHandle TradeChat;
    var ChatWindowHandle PartyChat;
    var ChatWindowHandle ClanChat;
    var ChatWindowHandle AllyChat;
    var ChatWindowHandle SystemMsg;
    var TabHandle ChatTabCtrl;
    var EditBoxHandle ChatEditBox;
    struct ChatFilterInfo
    {
    	var int bSystem;
    	var int bChat;
    	var int bDamage;
    	var int bNormal;
    	var int bShout;
    	var int bClan;
    	var int bParty;
    	var int bTrade;
    	var int bWhisper;
    	var int bAlly;
    	var int bUseitem;
    	var int bHero;
    	var int bUnion;
    };
    
    
    function OnLoad ()
    {
    	m_filterInfo.Length = UnknownFunction146(5,1);
    	RegisterEvent(540);
    	RegisterEvent(1500);
    	RegisterEvent(550);
    	RegisterEvent(560);
    	RegisterEvent(570);
    	RegisterEvent(571);
    	RegisterEvent(572);
    	m_sectionName.Length = 5;
    	m_sectionName[0] = "entire_tab";
    	m_sectionName[1] = "pledge_tab";
    	m_sectionName[2] = "party_tab";
    	m_sectionName[3] = "market_tab";
    	m_sectionName[4] = "ally_tab";
    	RegisterState("ChatWnd","OlympiadObserverState");
    	InitHandle();
    	InitFilterInfo();
    	InitGlobalSetting();
    	InitScrollBarPosition();
    }
    
    function OnDefaultPosition ()
    {
    	ChatTabCtrl.MergeTab(1);
    	ChatTabCtrl.MergeTab(2);
    	ChatTabCtrl.MergeTab(3);
    	ChatTabCtrl.MergeTab(4);
    	ChatTabCtrl.SetTopOrder(0,True);
    	HandleTabClick("ChatTabCtrl0");
    }
    
    function InitGlobalSetting ()
    {
    	Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxCommand",bool(m_NoUnionCommanderMessage));
    }
    
    function InitHandle ()
    {
    	NormalChat = ChatWindowHandle(GetHandle("ChatWnd.NormalChat"));
    	TradeChat = ChatWindowHandle(GetHandle("ChatWnd.TradeChat"));
    	PartyChat = ChatWindowHandle(GetHandle("ChatWnd.PartyChat"));
    	ClanChat = ChatWindowHandle(GetHandle("ChatWnd.ClanChat"));
    	AllyChat = ChatWindowHandle(GetHandle("ChatWnd.AllyChat"));
    	SystemMsg = ChatWindowHandle(GetHandle("SystemMsgWnd.SystemMsgList"));
    	ChatTabCtrl = TabHandle(GetHandle("ChatWnd.ChatTabCtrl"));
    	ChatEditBox = EditBoxHandle(GetHandle("ChatWnd.ChatEditBox"));
    }
    
    function InitScrollBarPosition ()
    {
    	NormalChat.SetScrollBarPosition(5,10,14);
    	TradeChat.SetScrollBarPosition(5,10,14);
    	PartyChat.SetScrollBarPosition(5,10,14);
    	ClanChat.SetScrollBarPosition(5,10,14);
    	AllyChat.SetScrollBarPosition(5,10,14);
    }
    
    function OnCompleteEditBox (string strID)
    {
    	local string strInput;
    	local EChatType Type;
    
    	if ( UnknownFunction122(strID,"ChatEditBox") )
    	{
    		strInput = ChatEditBox.GetString();
    		if ( UnknownFunction150(UnknownFunction125(strInput),1) )
    		{
    			return;
    		}
    		ProcessChatMessage(strInput,m_chatType);
    		ChatEditBox.SetString("");
    		if ( UnknownFunction242(GetOptionBool("Game","OldChatting"),True) )
    		{
    			Type = GetChatTypeByTabIndex(m_chatType);
    			if ( UnknownFunction155(m_chatType,0) )
    			{
    				ChatEditBox.AddString(GetChatPrefix(Type));
    			}
    		}
    		if ( UnknownFunction242(GetOptionBool("Game","EnterChatting"),True) )
    		{
    			ChatEditBox.ReleaseFocus();
    		}
    	}
    }
    
    function Clear ()
    {
    	ChatEditBox.Super(EditBoxHandle).Clear();
    	NormalChat.Super(TextListBoxHandle).Clear();
    	PartyChat.Super(TextListBoxHandle).Clear();
    	ClanChat.Super(TextListBoxHandle).Clear();
    	TradeChat.Super(TextListBoxHandle).Clear();
    	AllyChat.Super(TextListBoxHandle).Clear();
    	SystemMsg.Super(TextListBoxHandle).Clear();
    }
    
    function OnShow ()
    {
    	if ( GetOptionBool("Game","SystemMsgWnd") )
    	{
    		ShowWindow("SystemMsgWnd");
    	} else {
    		HideWindow("SystemMsgWnd");
    	}
    	HandleIMEStatusChange();
    }
    
    function OnClickButton (string strID)
    {
    	local PartyMatchWnd script;
    
    	script = PartyMatchWnd(GetScript("PartyMatchWnd"));
    	switch (strID)
    	{
    		case "ChatTabCtrl0":
    		case "ChatTabCtrl1":
    		case "ChatTabCtrl2":
    		case "ChatTabCtrl3":
    		case "ChatTabCtrl4":
    		HandleTabClick(strID);
    		break;
    		case "ChatFilterBtn":
    		if ( Class'UIAPI_WINDOW'.IsShowWindow("ChatFilterWnd") )
    		{
    			Class'UIAPI_WINDOW'.HideWindow("ChatFilterWnd");
    		} else {
    			SetChatFilterButton();
    			Class'UIAPI_WINDOW'.ShowWindow("ChatFilterWnd");
    		}
    		break;
    		case "MessengerBtn":
    		ToggleMsnWindow();
    		break;
    		case "PartyMatchingBtn":
    		if ( UnknownFunction242(Class'UIAPI_WINDOW'.IsShowWindow("PartyMatchWnd"),True) )
    		{
    			Class'UIAPI_WINDOW'.HideWindow("PartyMatchWnd");
    			script.OnSendPacketWhenHiding();
    		} else {
    			Class'PartyMatchAPI'.RequestOpenPartyMatch();
    		}
    		break;
    		default:
    		break;
    	}
    }
    
    function OnTabSplit (string sTabButton)
    {
    	local ChatWindowHandle Handle;
    
    	switch (sTabButton)
    	{
    		case "ChatTabCtrl0":
    		Handle = NormalChat;
    		HandleTabClick(sTabButton);
    		break;
    		case "ChatTabCtrl1":
    		Handle = TradeChat;
    		HandleTabClick(sTabButton);
    		break;
    		case "ChatTabCtrl2":
    		Handle = PartyChat;
    		HandleTabClick(sTabButton);
    		break;
    		case "ChatTabCtrl3":
    		Handle = ClanChat;
    		HandleTabClick(sTabButton);
    		break;
    		case "ChatTabCtrl4":
    		Handle = AllyChat;
    		HandleTabClick(sTabButton);
    		break;
    		default:
    		break;
    	}
    	if ( UnknownFunction119(Handle,None) )
    	{
    		Handle.SetWindowSizeRel(-1.0,-1.0,0,0);
    		Handle.SetSettledWnd(True);
    		Handle.EnableTexture(True);
    	}
    }
    
    function OnTabMerge (string sTabButton)
    {
    	local ChatWindowHandle Handle;
    	local int Width;
    	local int Height;
    	local Rect rectWnd;
    
    	switch (sTabButton)
    	{
    		case "ChatTabCtrl0":
    		Handle = NormalChat;
    		break;
    		case "ChatTabCtrl1":
    		Handle = TradeChat;
    		break;
    		case "ChatTabCtrl2":
    		Handle = PartyChat;
    		break;
    		case "ChatTabCtrl3":
    		Handle = ClanChat;
    		break;
    		case "ChatTabCtrl4":
    		Handle = AllyChat;
    		break;
    		default:
    		break;
    	}
    	if ( UnknownFunction119(Handle,None) )
    	{
    		rectWnd = NormalChat.GetRect();
    		NormalChat.GetWindowSize(Width,Height);
    		Handle.SetSettledWnd(False);
    		Handle.MoveTo(rectWnd.nX,rectWnd.nY);
    		Handle.SetWindowSize(Width,UnknownFunction147(Height,46));
    		Handle.SetWindowSizeRel(1.0,1.0,0,-46);
    		Handle.EnableTexture(False);
    	}
    }
    
    function HandleTabClick (string strID)
    {
    	local string strInput;
    	local string strPrefix;
    	local int StrLen;
    
    	m_chatType = ChatTabCtrl.GetTopIndex();
    	SetChatFilterButton();
    	if ( UnknownFunction242(GetOptionBool("Game","OldChatting"),True) )
    	{
    		strInput = ChatEditBox.GetString();
    		StrLen = UnknownFunction125(strInput);
    		strPrefix = UnknownFunction128(strInput,1);
    		if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(IsSameChatPrefix(8,strPrefix),IsSameChatPrefix(3,strPrefix)),IsSameChatPrefix(4,strPrefix)),IsSameChatPrefix(9,strPrefix)) )
    		{
    			strInput = UnknownFunction234(strInput,UnknownFunction147(StrLen,1));
    		}
    		if ( UnknownFunction155(m_chatType,0) )
    		{
    			strPrefix = GetChatPrefix(GetChatTypeByTabIndex(m_chatType));
    			strInput = UnknownFunction112(strPrefix,strInput);
    		}
    		ChatEditBox.SetString(strInput);
    	}
    }
    
    function OnEnterState (name a_PrevStateName)
    {
    	if ( UnknownFunction254(a_PrevStateName,'LoadingState') )
    	{
    		Clear();
    	}
    }
    
    function OnEvent (int Event_ID, string param)
    {
    	switch (Event_ID)
    	{
    		case 540:
    		HandleChatmessage(param);
    		case 1500:
    		HandleIMEStatusChange();
    		break;
    		case 550:
    		HandleChatWndStatusChange();
    		break;
    		case 570:
    		HandleSetFocus();
    		break;
    		case 560:
    		HandleSetString(param);
    		break;
    		case 571:
    		HandleMsnStatus(param);
    		break;
    		case 572:
    		HandleChatWndMacroCommand(param);
    		break;
    		default:
    		break;
    	}
    }
    
    function HandleChatWndMacroCommand (string param)
    {
    	local string Command;
    
    	if ( UnknownFunction129(ParseString(param,"Command",Command)) )
    	{
    		return;
    	}
    	ProcessChatMessage(Command,m_chatType);
    }
    
    function HandleChatmessage (string param)
    {
    	local int nTmp;
    	local EChatType Type;
    	local ESystemMsgType systemType;
    	local string Text;
    	local Color Color;
    
    	ParseInt(param,"Type",nTmp);
    	Type = nTmp;
    	ParseString(param,"Msg",Text);
    	ParseInt(param,"ColorR",nTmp);
    	Color.R = nTmp;
    	ParseInt(param,"ColorG",nTmp);
    	Color.G = nTmp;
    	ParseInt(param,"ColorB",nTmp);
    	Color.B = nTmp;
    	Color.A = 255;
    	if ( UnknownFunction154(Type,5) )
    	{
    		ParseInt(param,"SysType",nTmp);
    		systemType = nTmp;
    	} else {
    		systemType = 0;
    	}
    	if ( UnknownFunction122(UnknownFunction128(Text,3),"___") )
    	{
    		if ( UnknownFunction122(Text,"___EV_ShowInventory") )
    		{
    			ShowWindow("InventoryWnd");
    		}
    	} else {
    		if ( CheckFilter(Type,0,systemType) )
    		{
    			NormalChat.AddString(Text,Color);
    		}
    		if ( CheckFilter(Type,2,systemType) )
    		{
    			PartyChat.AddString(Text,Color);
    		}
    		if ( CheckFilter(Type,3,systemType) )
    		{
    			ClanChat.AddString(Text,Color);
    		}
    		if ( CheckFilter(Type,1,systemType) )
    		{
    			TradeChat.AddString(Text,Color);
    		}
    		if ( CheckFilter(Type,4,systemType) )
    		{
    			AllyChat.AddString(Text,Color);
    		}
    		if ( CheckFilter(Type,5,systemType) )
    		{
    			SystemMsg.AddString(Text,Color);
    		}
    		if ( UnknownFunction130(UnknownFunction154(Type,15),UnknownFunction154(m_NoUnionCommanderMessage,0)) )
    		{
    			ShowUnionCommanderMessgage(Text);
    		}
    	}
    }
    
    function ShowUnionCommanderMessgage (string Msg)
    {
    	local string strParam;
    	local string MsgTemp;
    	local string MsgTemp2;
    	local int maxLength;
    
    	maxLength = UnknownFunction125(Msg);
    	if ( UnknownFunction151(maxLength,35) )
    	{
    		MsgTemp = UnknownFunction128(Msg,35);
    		MsgTemp2 = UnknownFunction234(Msg,UnknownFunction147(maxLength,35));
    		Msg = UnknownFunction112(UnknownFunction112(MsgTemp,"#"),MsgTemp2);
    	}
    	Debug(Msg);
    	if ( UnknownFunction151(UnknownFunction125(Msg),0) )
    	{
    		ParamAdd(strParam,"MsgType",string(1));
    		ParamAdd(strParam,"WindowType",string(8));
    		ParamAdd(strParam,"FontType",string(0));
    		ParamAdd(strParam,"BackgroundType",string(0));
    		ParamAdd(strParam,"LifeTime",string(5000));
    		ParamAdd(strParam,"AnimationType",string(1));
    		ParamAdd(strParam,"Msg",Msg);
    		ParamAdd(strParam,"MsgColorR",string(255));
    		ParamAdd(strParam,"MsgColorG",string(150));
    		ParamAdd(strParam,"MsgColorB",string(149));
    		ExecuteEvent(140,strParam);
    	}
    }
    
    function HandleIMEStatusChange ()
    {
    	local string Texture;
    	local EIMEType imeType;
    
    	imeType = GetCurrentIMELang();
    	switch (imeType)
    	{
    		case 1:
    		Texture = "desig_Alpinel2_web.IME_r";
    		break;
    		case 2:
    		Texture = "desig_Alpinel2_web.IME_en";
    		break;
    		case 3:
    		Texture = "desig_Alpinel2_web.IME_ru";
    		break;
    		case 4:
    		Texture = "desig_Alpinel2_web.IME_ru";
    		break;
    		case 5:
    		Texture = "L2UI.ChatWnd.IME_tw2";
    		break;
    		case 6:
    		Texture = "L2UI.ChatWnd.IME_tw3";
    		break;
    		case 7:
    		Texture = "L2UI.ChatWnd.IME_tw1";
    		break;
    		case 9:
    		Texture = "L2UI.ChatWnd.IME_cn1";
    		break;
    		case 10:
    		Texture = "L2UI.ChatWnd.IME_cn2";
    		break;
    		case 11:
    		Texture = "L2UI.ChatWnd.IME_cn3";
    		break;
    		case 12:
    		Texture = "L2UI.ChatWnd.IME_cn4";
    		break;
    		case 13:
    		Texture = "L2UI.ChatWnd.IME_cn4";
    		break;
    		case 14:
    		Texture = "L2UI.ChatWnd.IME_th";
    		break;
    		default:
    		Texture = "L2UI_CH3.ChatWnd.Chatting_IMEkr";
    		break;
    	}
    	Class'UIAPI_TEXTURECTRL'.SetTexture("ChatWnd.LanguageTexture",Texture);
    }
    
    function bool CheckFilter (EChatType Type, int WindowType, ESystemMsgType systemType)
    {
    	if ( UnknownFunction130(UnknownFunction129(UnknownFunction130(UnknownFunction153(WindowType,0),UnknownFunction150(WindowType,5))),UnknownFunction155(WindowType,5)) )
    	{
    		Debug(UnknownFunction112("ChatWnd: Error invalid windowType ",string(WindowType)));
    		return False;
    	}
    	if ( UnknownFunction130(UnknownFunction154(Type,8),UnknownFunction155(m_filterInfo[WindowType].bTrade,0)) )
    	{
    		return True;
    	} else {
    		if ( UnknownFunction130(UnknownFunction154(Type,0),UnknownFunction155(m_filterInfo[WindowType].bNormal,0)) )
    		{
    			return True;
    		} else {
    			if ( UnknownFunction130(UnknownFunction154(Type,4),UnknownFunction155(m_filterInfo[WindowType].bClan,0)) )
    			{
    				return True;
    			} else {
    				if ( UnknownFunction130(UnknownFunction154(Type,3),UnknownFunction155(m_filterInfo[WindowType].bParty,0)) )
    				{
    					return True;
    				} else {
    					if ( UnknownFunction130(UnknownFunction154(Type,1),UnknownFunction155(m_filterInfo[WindowType].bShout,0)) )
    					{
    						return True;
    					} else {
    						if ( UnknownFunction130(UnknownFunction154(Type,2),UnknownFunction155(m_filterInfo[WindowType].bWhisper,0)) )
    						{
    							return True;
    						} else {
    							if ( UnknownFunction130(UnknownFunction154(Type,9),UnknownFunction155(m_filterInfo[WindowType].bAlly,0)) )
    							{
    								return True;
    							} else {
    								if ( UnknownFunction130(UnknownFunction154(Type,17),UnknownFunction155(m_filterInfo[WindowType].bHero,0)) )
    								{
    									return True;
    								} else {
    									if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,10),UnknownFunction154(Type,18)),UnknownFunction154(Type,6)),UnknownFunction154(Type,7)) )
    									{
    										return True;
    									} else {
    										if ( UnknownFunction130(UnknownFunction132(UnknownFunction154(Type,16),UnknownFunction154(Type,15)),UnknownFunction155(m_filterInfo[WindowType].bUnion,0)) )
    										{
    											return True;
    										} else {
    											if ( UnknownFunction154(Type,5) )
    											{
    												if ( UnknownFunction132(UnknownFunction154(systemType,2),UnknownFunction154(systemType,6)) )
    												{
    													return True;
    												} else {
    													if ( UnknownFunction154(WindowType,5) )
    													{
    														if ( UnknownFunction154(systemType,3) )
    														{
    															if ( GetOptionBool("Game","SystemMsgWndDamage") )
    															{
    																return True;
    															} else {
    																return False;
    															}
    														} else {
    															if ( UnknownFunction154(systemType,7) )
    															{
    																if ( GetOptionBool("Game","SystemMsgWndExpendableItem") )
    																{
    																	return True;
    																} else {
    																	return False;
    																}
    															} else {
    																if ( UnknownFunction132(UnknownFunction154(systemType,1),UnknownFunction154(systemType,0)) )
    																{
    																	return True;
    																}
    															}
    														}
    														return False;
    													} else {
    														if ( UnknownFunction155(m_filterInfo[WindowType].bSystem,0) )
    														{
    															if ( UnknownFunction154(systemType,3) )
    															{
    																if ( UnknownFunction155(m_filterInfo[WindowType].bDamage,0) )
    																{
    																	return True;
    																} else {
    																	return False;
    																}
    															} else {
    																if ( UnknownFunction154(systemType,7) )
    																{
    																	if ( UnknownFunction155(m_filterInfo[WindowType].bUseitem,0) )
    																	{
    																		return True;
    																	} else {
    																		return False;
    																	}
    																}
    															}
    															return True;
    														}
    													}
    												}
    												return False;
    											}
    										}
    									}
    								}
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    	return False;
    }
    
    function InitFilterInfo ()
    {
    	local int i;
    	local int tempVal;
    
    	SetDefaultFilterValue();
    	i = 0;
    	if ( UnknownFunction150(i,5) )
    	{
    		if ( GetINIBool(m_sectionName[i],"system",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bSystem = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"chat",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bChat = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"normal",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bNormal = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"shout",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bShout = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"pledge",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bClan = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"party",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bParty = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"market",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bTrade = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"tell",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bWhisper = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"damage",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bDamage = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"ally",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bAlly = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"useitems",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bUseitem = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"hero",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bHero = tempVal;
    		}
    		if ( GetINIBool(m_sectionName[i],"union",tempVal,"chatfilter.ini") )
    		{
    			m_filterInfo[i].bUnion = tempVal;
    		}
    		UnknownFunction163(i);
    		goto JL000D;
    	}
    	SetDefaultFilterOn();
    	if ( GetINIBool("global","command",tempVal,"chatfilter.ini") )
    	{
    		m_NoUnionCommanderMessage = tempVal;
    	}
    }
    
    function SetDefaultFilterOn ()
    {
    	m_filterInfo[1].bTrade = 1;
    	m_filterInfo[2].bParty = 1;
    	m_filterInfo[3].bClan = 1;
    	m_filterInfo[4].bAlly = 1;
    }
    
    function SetDefaultFilterValue ()
    {
    	m_filterInfo[0].bSystem = 1;
    	m_filterInfo[0].bChat = 1;
    	m_filterInfo[0].bNormal = 1;
    	m_filterInfo[0].bShout = 1;
    	m_filterInfo[0].bClan = 1;
    	m_filterInfo[0].bParty = 1;
    	m_filterInfo[0].bTrade = 0;
    	m_filterInfo[0].bWhisper = 1;
    	m_filterInfo[0].bDamage = 1;
    	m_filterInfo[0].bAlly = 0;
    	m_filterInfo[0].bUseitem = 0;
    	m_filterInfo[0].bHero = 0;
    	m_filterInfo[0].bUnion = 1;
    	m_filterInfo[1].bSystem = 1;
    	m_filterInfo[1].bChat = 1;
    	m_filterInfo[1].bNormal = 0;
    	m_filterInfo[1].bShout = 1;
    	m_filterInfo[1].bClan = 0;
    	m_filterInfo[1].bParty = 0;
    	m_filterInfo[1].bTrade = 1;
    	m_filterInfo[1].bWhisper = 1;
    	m_filterInfo[1].bDamage = 1;
    	m_filterInfo[1].bAlly = 0;
    	m_filterInfo[1].bUseitem = 0;
    	m_filterInfo[1].bHero = 0;
    	m_filterInfo[1].bUnion = 0;
    	m_filterInfo[2].bSystem = 1;
    	m_filterInfo[2].bChat = 1;
    	m_filterInfo[2].bNormal = 0;
    	m_filterInfo[2].bShout = 1;
    	m_filterInfo[2].bClan = 0;
    	m_filterInfo[2].bParty = 1;
    	m_filterInfo[2].bTrade = 0;
    	m_filterInfo[2].bWhisper = 1;
    	m_filterInfo[2].bDamage = 1;
    	m_filterInfo[2].bAlly = 0;
    	m_filterInfo[2].bUseitem = 0;
    	m_filterInfo[2].bHero = 0;
    	m_filterInfo[2].bUnion = 0;
    	m_filterInfo[3].bSystem = 1;
    	m_filterInfo[3].bChat = 1;
    	m_filterInfo[3].bNormal = 0;
    	m_filterInfo[3].bShout = 1;
    	m_filterInfo[3].bClan = 1;
    	m_filterInfo[3].bParty = 0;
    	m_filterInfo[3].bTrade = 0;
    	m_filterInfo[3].bWhisper = 1;
    	m_filterInfo[3].bDamage = 1;
    	m_filterInfo[3].bAlly = 0;
    	m_filterInfo[3].bUseitem = 0;
    	m_filterInfo[3].bHero = 0;
    	m_filterInfo[3].bUnion = 0;
    	m_filterInfo[4].bSystem = 1;
    	m_filterInfo[4].bChat = 1;
    	m_filterInfo[4].bNormal = 0;
    	m_filterInfo[4].bShout = 1;
    	m_filterInfo[4].bClan = 0;
    	m_filterInfo[4].bParty = 0;
    	m_filterInfo[4].bTrade = 0;
    	m_filterInfo[4].bWhisper = 1;
    	m_filterInfo[4].bDamage = 1;
    	m_filterInfo[4].bAlly = 1;
    	m_filterInfo[4].bUseitem = 0;
    	m_filterInfo[4].bHero = 0;
    	m_filterInfo[4].bUnion = 0;
    	m_filterInfo[5].bSystem = 0;
    	m_filterInfo[5].bChat = 0;
    	m_filterInfo[5].bNormal = 0;
    	m_filterInfo[5].bShout = 0;
    	m_filterInfo[5].bClan = 0;
    	m_filterInfo[5].bParty = 0;
    	m_filterInfo[5].bTrade = 0;
    	m_filterInfo[5].bWhisper = 0;
    	m_filterInfo[5].bDamage = 0;
    	m_filterInfo[5].bAlly = 0;
    	m_filterInfo[5].bUseitem = 0;
    	m_filterInfo[5].bHero = 0;
    	m_filterInfo[5].bUnion = 0;
    	m_NoUnionCommanderMessage = 0;
    }
    
    function SetChatFilterButton ()
    {
    	local bool bSystemMsgWnd;
    	local bool bOption;
    
    	bSystemMsgWnd = GetOptionBool("Game","SystemMsgWnd");
    	Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.SystemMsgBox",bSystemMsgWnd);
    	bOption = GetOptionBool("Game","SystemMsgWndDamage");
    	Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.DamageBox",bOption);
    	bOption = GetOptionBool("Game","SystemMsgWndExpendableItem");
    	Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.ItemBox",bOption);
    	if ( UnknownFunction130(UnknownFunction153(m_chatType,0),UnknownFunction150(m_chatType,5)) )
    	{
    		switch (m_chatType)
    		{
    			case 0:
    			Class'UIAPI_TEXTBOX'.SetText("ChatFilterWnd.CurrentText",MakeFullSystemMsg(GetSystemMessage(1995),GetSystemString(144),""));
    			break;
    			case 1:
    			Class'UIAPI_TEXTBOX'.SetText("ChatFilterWnd.CurrentText",MakeFullSystemMsg(GetSystemMessage(1995),GetSystemString(355),""));
    			break;
    			case 2:
    			Class'UIAPI_TEXTBOX'.SetText("ChatFilterWnd.CurrentText",MakeFullSystemMsg(GetSystemMessage(1995),GetSystemString(188),""));
    			break;
    			case 3:
    			Class'UIAPI_TEXTBOX'.SetText("ChatFilterWnd.CurrentText",MakeFullSystemMsg(GetSystemMessage(1995),GetSystemString(128),""));
    			break;
    			case 4:
    			Class'UIAPI_TEXTBOX'.SetText("ChatFilterWnd.CurrentText",MakeFullSystemMsg(GetSystemMessage(1995),GetSystemString(559),""));
    			break;
    			default:
    		}
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxSystem",bool(m_filterInfo[m_chatType].bSystem));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxNormal",bool(m_filterInfo[m_chatType].bNormal));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxShout",bool(m_filterInfo[m_chatType].bShout));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxPledge",bool(m_filterInfo[m_chatType].bClan));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxParty",bool(m_filterInfo[m_chatType].bParty));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxTrade",bool(m_filterInfo[m_chatType].bTrade));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxWhisper",bool(m_filterInfo[m_chatType].bWhisper));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxDamage",bool(m_filterInfo[m_chatType].bDamage));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxAlly",bool(m_filterInfo[m_chatType].bAlly));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxItem",bool(m_filterInfo[m_chatType].bUseitem));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxHero",bool(m_filterInfo[m_chatType].bHero));
    		Class'UIAPI_CHECKBOX'.SetCheck("ChatFilterWnd.CheckBoxUnion",bool(m_filterInfo[m_chatType].bUnion));
    		if ( UnknownFunction129(Class'UIAPI_CHECKBOX'.IsChecked("ChatFilterWnd.CheckBoxSystem")) )
    		{
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxDamage",True);
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxItem",True);
    		} else {
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxDamage",False);
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxItem",False);
    		}
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxNormal",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxShout",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxPledge",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxParty",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxTrade",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxWhisper",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxAlly",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxHero",False);
    		Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxUnion",False);
    		switch (m_chatType)
    		{
    			case 1:
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxTrade",True);
    			break;
    			case 2:
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxParty",True);
    			break;
    			case 3:
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxPledge",True);
    			break;
    			case 4:
    			Class'UIAPI_CHECKBOX'.SetDisable("ChatFilterWnd.CheckBoxAlly",True);
    			break;
    			default:
    		}
    	} else {
    	}
    }
    
    function HandleChatWndStatusChange ()
    {
    	local UserInfo UserInfo;
    
    	GetPlayerInfo(UserInfo);
    	if ( UnknownFunction151(UserInfo.nClanID,0) )
    	{
    		ChatTabCtrl.SetDisable(3,False);
    	} else {
    		ChatTabCtrl.SetDisable(3,True);
    	}
    	if ( UnknownFunction151(UserInfo.nAllianceID,0) )
    	{
    		ChatTabCtrl.SetDisable(4,False);
    	} else {
    		ChatTabCtrl.SetDisable(4,True);
    	}
    }
    
    function HandleSetString (string a_Param)
    {
    	local string tmpString;
    
    	if ( ParseString(a_Param,"String",tmpString) )
    	{
    		ChatEditBox.SetString(tmpString);
    	}
    }
    
    function HandleSetFocus ()
    {
    	if ( UnknownFunction129(ChatEditBox.IsFocused()) )
    	{
    		ChatEditBox.SetFocus();
    	}
    }
    
    function Print (int Index)
    {
    	Debug(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112("Print type(",string(Index)),"), system :"),string(m_filterInfo[Index].bSystem)),", chat:"),string(m_filterInfo[Index].bChat)),",Normal:"),string(m_filterInfo[Index].bNormal)),", shout:"),string(m_filterInfo[Index].bShout)),",pledge:"),string(m_filterInfo[Index].bClan)),", party:"),string(m_filterInfo[Index].bParty)),", trade:"),string(m_filterInfo[Index].bTrade)),", whisper:"),string(m_filterInfo[Index].bWhisper)),", damage:"),string(m_filterInfo[Index].bDamage)),", ally:"),string(m_filterInfo[Index].bAlly)),",useitem:"),string(m_filterInfo[Index].bUseitem)),", hero:"),string(m_filterInfo[Index].bHero)));
    }
    
    function HandleMsnStatus (string param)
    {
    	local string Status;
    	local ButtonHandle Handle;
    
    	Handle = ButtonHandle(GetHandle("Chatwnd.MessengerBtn"));
    	ParseString(param,"status",Status);
    	if ( UnknownFunction122(Status,"online") )
    	{
    		Handle.SetTexture("L2UI_CH3.Msn.chatting_msn1","L2UI_CH3.Msn.chatting_msn1_down","");
    	} else {
    		if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction122(Status,"berightback"),UnknownFunction122(Status,"idle")),UnknownFunction122(Status,"away")),UnknownFunction122(Status,"lunch")) )
    		{
    			Handle.SetTexture("L2UI_CH3.Msn.chatting_msn2","L2UI_CH3.Msn.chatting_msn2_down","");
    		} else {
    			if ( UnknownFunction132(UnknownFunction122(Status,"busy"),UnknownFunction122(Status,"onthephone")) )
    			{
    				Handle.SetTexture("L2UI_CH3.Msn.chatting_msn3","L2UI_CH3.Msn.chatting_msn3_down","");
    			} else {
    				if ( UnknownFunction132(UnknownFunction122(Status,"offline"),UnknownFunction122(Status,"invisible")) )
    				{
    					Handle.SetTexture("L2UI_CH3.Msn.chatting_msn4","L2UI_CH3.Msn.chatting_msn4_down","");
    				} else {
    					if ( UnknownFunction122(Status,"none") )
    					{
    						Handle.SetTexture("L2UI_CH3.Msn.chatting_msn5","L2UI_CH3.Msn.chatting_msn5_down","");
    					}
    				}
    			}
    		}
    	}
    }
    
    function EChatType GetChatTypeByTabIndex (int Index)
    {
    	local EChatType Type;
    
    	Type = 0;
    	switch (m_chatType)
    	{
    		case 0:
    		Type = 0;
    		break;
    		case 1:
    		Type = 8;
    		break;
    		case 2:
    		Type = 3;
    		break;
    		case 3:
    		Type = 4;
    		break;
    		case 4:
    		Type = 9;
    		break;
    		default:
    		break;
    	}
    	return Type;
    }
    

     

    even some classes cannot be read from the "wotgreater" with "stream read error" .

    maybe using the l2io_legacy it's worth it, but they would still be obfuscate. 

  9. 20 minutes ago, Celestine said:

     

    it's possible to be adapted for other chronicles aswell i have this on h5 also

    As a hobby I'm using acis with protocol 216 and the idea was to give it a classic but conservative look.
    I've managed to put 5 bars for the skills horizontally and
    As a vertical option 3 bars successfully, 
    Now I'm trying to create the experience bar Neophron_Belt, I understand programming, but my knowledge of UnrealScript is very poor.

     

     

     

     

    58 minutes ago, Celestine said:

     

    it's possible to be adapted for other chronicles aswell i have this on h5 also

    You think it's possible to share the uc classes of l2sublimity that can work on the freya interface?, it's possible that h5 is almost the same without difference.

    can help me with this uc class, I can't compile because I don't know how to fix this code

     

    //================================================================================
    // SublimityDamageWnd.
    //================================================================================
    
    class SublimityDamageWnd extends SublimityItem;
    
    const TYPE_RESIST2= 12;
    const TYPE_RESIST= 11;
    const TYPE_BLOCK2= 10;
    const TYPE_BLOCK= 9;
    const TYPE_MISS2= 8;
    const TYPE_MISS= 7;
    const TYPE_EXP= 6;
    const TYPE_MANA= 5;
    const TYPE_HEAL= 4;
    const TYPE_CP= 3;
    const TYPE_DAMAGE2= 2;
    const TYPE_DAMAGE= 1;
    const DIRECTION_DOWN= 1;
    const DIRECTION_UP= -1;
    const TEX_COUNT= 15;
    const CONTAINER_COUNT= 30;
    var ButtonHandle hEnableBtn;
    var TextureHandle hDisableTex;
    var bool bShowing;
    var TextureHandle m_Digits[310];
    var int m_TextWidth[20];
    var int m_TextHeight[20];
    var int m_TextOffset[20];
    var int m_TextOffsetCorrection[20];
    var int m_LastUsedContainer;
    var int m_Direction[30];
    var int m_ContainerType[30];
    var int m_DamageQueue[20];
    var int m_DamageQueueCount[20];
    var int m_Type2Count;
    
    function OnLoad ()
    {
    	local int i;
    	local int ii;
    	local int C;
    
    	RegisterEvent(580);
    	RegisterEvent(40);
    	m_TextWidth[0] = 18;
    	m_TextWidth[1] = 11;
    	m_TextWidth[2] = 17;
    	m_TextWidth[3] = 17;
    	m_TextWidth[4] = 17;
    	m_TextWidth[5] = 17;
    	m_TextWidth[6] = 16;
    	m_TextWidth[7] = 17;
    	m_TextWidth[8] = 18;
    	m_TextWidth[9] = 16;
    	m_TextWidth[10] = 10;
    	m_TextWidth[11] = 10;
    	m_TextWidth[12] = 0;
    	m_TextWidth[13] = 60;
    	m_TextWidth[14] = 81;
    	m_TextWidth[15] = 85;
    	m_TextOffset[0] = 53;
    	m_TextOffset[1] = 77;
    	m_TextOffset[2] = 96;
    	m_TextOffset[3] = 118;
    	m_TextOffset[4] = 142;
    	m_TextOffset[5] = 165;
    	m_TextOffset[6] = 188;
    	m_TextOffset[7] = 211;
    	m_TextOffset[8] = 232;
    	m_TextOffset[9] = 257;
    	m_TextOffset[10] = 17;
    	m_TextOffset[11] = 35;
    	m_TextOffset[12] = 288;
    	m_TextOffset[13] = 17;
    	m_TextOffset[14] = 96;
    	m_TextOffset[15] = 196;
    	m_TextOffsetCorrection[0] = -1;
    	m_TextOffsetCorrection[1] = 0;
    	m_TextOffsetCorrection[2] = 0;
    	m_TextOffsetCorrection[3] = 0;
    	m_TextOffsetCorrection[4] = 0;
    	m_TextOffsetCorrection[5] = 0;
    	m_TextOffsetCorrection[6] = 0;
    	m_TextOffsetCorrection[7] = -2;
    	m_TextOffsetCorrection[8] = 0;
    	m_TextOffsetCorrection[9] = 0;
    	m_TextOffsetCorrection[10] = 0;
    	m_TextOffsetCorrection[11] = 0;
    	m_TextOffsetCorrection[12] = 0;
    	m_TextOffsetCorrection[13] = 0;
    	m_TextOffsetCorrection[14] = 0;
    	m_TextOffsetCorrection[15] = 0;
    	i = 1;
    	if ( UnknownFunction152(i,30) )
    	{
    		C = UnknownFunction144(i,10);
    		ii = 0;
    		if ( UnknownFunction150(ii,15) )
    		{
    			m_Digits[UnknownFunction146(C,ii)] = TextureHandle(GetHandle(UnknownFunction112(UnknownFunction112(UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(i)),"Wnd.Digit"),string(i)),string(UnknownFunction146(ii,1)))));
    			UnknownFunction163(ii);
    			goto JL0243;
    		}
    		UnknownFunction163(i);
    		goto JL0221;
    	}
    }
    
    function OnEvent (int Event_ID, string a_Param)
    {
    	switch (Event_ID)
    	{
    		case 580:
    		if ( UnknownFunction129(GetOptionBool("Game","SublimityOnScreenDisable")) )
    		{
    			HandleSystemMessage(a_Param);
    		}
    		break;
    		case 40:
    		HandleRestart();
    		break;
    		default:
    	}
    }
    
    function HandleRestart ()
    {
    	local int i;
    
    	i = 1;
    	if ( UnknownFunction152(i,30) )
    	{
    		HideWindow(UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(i)),"Wnd"));
    		UnknownFunction163(i);
    		goto JL0007;
    	}
    }
    
    function HandleSystemMessage (string a_Param)
    {
    	local string Index;
    	local string Param1;
    	local string Param2;
    
    	ParseString(a_Param,"Index",Index);
    	ParseString(a_Param,"Param1",Param1);
    	ParseString(a_Param,"Param2",Param2);
    	if ( UnknownFunction132(UnknownFunction122(Index,"35"),UnknownFunction122(Index,"1026")) )
    	{
    		ShowIndicator(1,int(Param1),20,False);
    	} else {
    		if ( UnknownFunction132(UnknownFunction122(Index,"36"),UnknownFunction122(Index,"37")) )
    		{
    			ShowIndicator(2,int(Param2),0,False);
    		} else {
    			if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction122(Index,"296"),UnknownFunction122(Index,"297")),UnknownFunction122(Index,"333")),UnknownFunction122(Index,"686")),UnknownFunction122(Index,"812")) )
    			{
    				ShowIndicator(2,int(Param1),0,False);
    			} else {
    				if ( UnknownFunction122(Index,"1066") )
    				{
    					ShowIndicator(4,int(Param1),0,False);
    				} else {
    					if ( UnknownFunction122(Index,"1067") )
    					{
    						ShowIndicator(4,int(Param2),0,False);
    					} else {
    						if ( UnknownFunction122(Index,"1068") )
    						{
    							ShowIndicator(5,int(Param1),250,False);
    						} else {
    							if ( UnknownFunction122(Index,"1069") )
    							{
    								ShowIndicator(5,int(Param2),0,False);
    							} else {
    								if ( UnknownFunction122(Index,"1405") )
    								{
    									ShowIndicator(3,int(Param1),0,False);
    								} else {
    									if ( UnknownFunction122(Index,"1406") )
    									{
    										ShowIndicator(3,int(Param2),0,False);
    									} else {
    										if ( UnknownFunction122(Index,"42") )
    										{
    											ShowIndicator(8,0,0,False);
    										} else {
    											if ( UnknownFunction122(Index,"43") )
    											{
    												ShowIndicator(7,0,0,False);
    											} else {
    												if ( UnknownFunction122(Index,"139") )
    												{
    													ShowIndicator(11,0,50,False);
    												} else {
    													if ( UnknownFunction132(UnknownFunction122(Index,"157"),UnknownFunction122(Index,"159")) )
    													{
    														ShowIndicator(12,0,0,False);
    													} else {
    														if ( UnknownFunction132(UnknownFunction122(Index,"111"),UnknownFunction122(Index,"1281")) )
    														{
    															ShowIndicator(10,0,200,False);
    														}
    													}
    												}
    											}
    										}
    									}
    								}
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    }
    
    function ShowIndicator (int Type, int Value, int nGroupThreshold, bool bGrouped)
    {
    	local int Container;
    
    	if ( UnknownFunction151(nGroupThreshold,0) )
    	{
    		UnknownFunction161(m_DamageQueue[Type],Value);
    		UnknownFunction161(m_DamageQueueCount[Type],1);
    		Class'UIAPI_WINDOW'.KillUITimer("SublimityDamageWnd",UnknownFunction144(-1,Type));
    		Class'UIAPI_WINDOW'.SetUITimer("SublimityDamageWnd",UnknownFunction144(-1,Type),nGroupThreshold);
    	} else {
    		UnknownFunction165(m_LastUsedContainer);
    		if ( UnknownFunction151(m_LastUsedContainer,30) )
    		{
    			m_LastUsedContainer = 1;
    		}
    		Container = m_LastUsedContainer;
    		ShowAndAnimate(Type,Container,Value,bGrouped);
    	}
    }
    
    function ShowAndAnimate (int Type, int Container, int Value, bool bGrouped)
    {
    	local string WindowName;
    	local int offsetX;
    	local int offsetY;
    
    	WindowName = UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(Container)),"Wnd");
    	Class'UIAPI_WINDOW'.KillUITimer("SublimityDamageWnd",Container);
    	Class'UIAPI_WINDOW'.KillUITimer("SublimityDamageWnd",UnknownFunction144(-100,Container));
    	Class'UIAPI_WINDOW'.SetAnchor(WindowName,"","TopLeft","TopLeft",0,0);
    	Class'UIAPI_WINDOW'.ClearAnchor(WindowName);
    	Class'UIAPI_WINDOW'.SetAlpha(WindowName,255);
    	SetValue(Type,Container,Value,bGrouped);
    	ShowWindow(WindowName);
    	if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,1),UnknownFunction154(Type,7)),UnknownFunction154(Type,9)),UnknownFunction154(Type,11)) )
    	{
    		SetDirection(Container,-1);
    		offsetX = UnknownFunction146(-120,UnknownFunction147(20,UnknownFunction167(40)));
    		offsetY = 0;
    	} else {
    		if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,2),UnknownFunction154(Type,8)),UnknownFunction154(Type,10)),UnknownFunction154(Type,12)) )
    		{
    			SetDirection(Container,1);
    			offsetX = UnknownFunction146(50,UnknownFunction146(-20,UnknownFunction167(40)));
    			offsetY = 0;
    		} else {
    			if ( UnknownFunction132(UnknownFunction154(Type,3),UnknownFunction154(Type,4)) )
    			{
    				SetDirection(Container,1);
    				offsetX = UnknownFunction146(-135,UnknownFunction147(20,UnknownFunction167(40)));
    				offsetY = UnknownFunction146(50,UnknownFunction167(0));
    			} else {
    				if ( UnknownFunction154(Type,5) )
    				{
    					SetDirection(Container,1);
    					offsetX = UnknownFunction146(-135,UnknownFunction147(20,UnknownFunction167(40)));
    					offsetY = UnknownFunction146(50,UnknownFunction167(0));
    				}
    			}
    		}
    	}
    	if ( UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,7),UnknownFunction154(Type,9)),UnknownFunction154(Type,11)) )
    	{
    		offsetY = 40;
    	} else {
    		if ( UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,8),UnknownFunction154(Type,10)),UnknownFunction154(Type,12)) )
    		{
    			offsetY = -40;
    		}
    	}
    	if ( UnknownFunction154(Type,2) )
    	{
    		UnknownFunction165(m_Type2Count);
    		if ( UnknownFunction154(m_Type2Count,7) )
    		{
    			m_Type2Count = 1;
    		}
    		offsetX = UnknownFunction146(50,UnknownFunction146(-20,UnknownFunction167(40)));
    		if ( UnknownFunction154(m_Type2Count,1) )
    		{
    			offsetX = UnknownFunction146(50,UnknownFunction167(5));
    		}
    		offsetY = 0;
    		if ( UnknownFunction151(m_Type2Count,3) )
    		{
    			offsetY = 50;
    		}
    	}
    	Class'UIAPI_WINDOW'.Move(WindowName,offsetX,offsetY);
    	Class'UIAPI_WINDOW'.Move(WindowName,0,UnknownFunction144(GetDirection(Container),0),0.1);
    	Class'UIAPI_WINDOW'.SetUITimer("SublimityDamageWnd",Container,0);
    }
    
    function SetDirection (int Container, int Direction)
    {
    	m_Direction[Container] = Direction;
    }
    
    function int GetDirection (int Container)
    {
    	return m_Direction[Container];
    }
    
    function OnTimer (int Container)
    {
    	local string WindowName;
    	local float FadeValue;
    	local bool bGrouped;
    
    	Class'UIAPI_WINDOW'.KillUITimer("SublimityDamageWnd",Container);
    	FadeValue = 0.0;
    	if ( UnknownFunction151(Container,0) )
    	{
    		WindowName = UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(Container)),"Wnd");
    		Class'UIAPI_WINDOW'.Move(WindowName,0,UnknownFunction144(GetDirection(Container),100),2.75);
    		if ( UnknownFunction154(m_ContainerType[Container],6) )
    		{
    			Class'UIAPI_WINDOW'.SetUITimer("SublimityDamageWnd",UnknownFunction144(-100,Container),0);
    		} else {
    			Class'UIAPI_WINDOW'.SetUITimer("SublimityDamageWnd",UnknownFunction144(-100,Container),0);
    		}
    	} else {
    		if ( UnknownFunction130(UnknownFunction150(Container,0),UnknownFunction151(Container,-100)) )
    		{
    			Container = UnknownFunction144(Container,-1);
    			bGrouped = False;
    			if ( UnknownFunction151(m_DamageQueueCount[Container],1) )
    			{
    				bGrouped = True;
    			}
    			ShowIndicator(Container,m_DamageQueue[Container],0,bGrouped);
    			m_DamageQueue[Container] = 0;
    			m_DamageQueueCount[Container] = 0;
    		} else {
    			Container = UnknownFunction144(-1,Container);
    			if ( UnknownFunction154(UnknownFunction125(string(Container)),3) )
    			{
    				Container = int(UnknownFunction128(string(Container),1));
    			} else {
    				Container = int(UnknownFunction128(string(Container),2));
    			}
    			WindowName = UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(Container)),"Wnd");
    			HideWindow(WindowName);
    		}
    	}
    }
    
    function TimerFadeOut (int Container, int Duration, int Steps)
    {
    	local int i;
    	local int C;
    	local int D;
    
    	i = 1;
    	C = UnknownFunction145(100,Steps);
    	D = UnknownFunction145(Duration,Steps);
    	if ( UnknownFunction152(i,Steps) )
    	{
    		Class'UIAPI_WINDOW'.SetUITimer("SublimityDamageWnd",UnknownFunction147(UnknownFunction144(-100,Container),UnknownFunction147(100,UnknownFunction144(i,C))),UnknownFunction144(i,D));
    		UnknownFunction165(i);
    		goto JL0028;
    	}
    }
    
    function SetValue (int Type, int Container, int Value, bool bGrouped)
    {
    	local int i;
    	local string S;
    	local string WindowName;
    	local string wValue;
    	local int C;
    	local int nDigit;
    	local int Length;
    	local int PreviousDigit;
    
    	m_ContainerType[Container] = Type;
    	WindowName = UnknownFunction112(UnknownFunction112("SublimityDamageWnd.SublimityDamage",string(Container)),"Wnd");
    	C = UnknownFunction144(Container,10);
    JL0061:
    	i = 0;
    	if ( UnknownFunction150(i,15) )
    	{
    		m_Digits[UnknownFunction146(C,i)].SetUV(0,0);
    		m_Digits[UnknownFunction146(C,i)].SetWindowSize(0,0);
    		UnknownFunction163(i);
    		goto JL0061;
    	}
    	wValue = string(Value);
    	if ( UnknownFunction132(UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,4),UnknownFunction154(Type,3)),UnknownFunction154(Type,6)),UnknownFunction154(Type,5)) )
    	{
    		wValue = UnknownFunction112("#+",wValue);
    	} else {
    		if ( UnknownFunction132(UnknownFunction154(Type,7),UnknownFunction154(Type,8)) )
    		{
    			wValue = "M";
    		} else {
    			if ( UnknownFunction132(UnknownFunction154(Type,9),UnknownFunction154(Type,10)) )
    			{
    				wValue = "B";
    			} else {
    				if ( UnknownFunction132(UnknownFunction154(Type,11),UnknownFunction154(Type,12)) )
    				{
    					wValue = "R";
    				} else {
    					if ( bGrouped )
    					{
    						wValue = UnknownFunction112("#",wValue);
    					}
    				}
    			}
    		}
    	}
    	Length = UnknownFunction125(wValue);
    	i = 1;
    	if ( UnknownFunction152(i,Length) )
    	{
    		S = UnknownFunction234(UnknownFunction128(wValue,i),1);
    		if ( UnknownFunction122(S,"+") )
    		{
    			nDigit = 10;
    		} else {
    			if ( UnknownFunction122(S,"-") )
    			{
    				nDigit = 11;
    			} else {
    				if ( UnknownFunction122(S,"#") )
    				{
    					nDigit = 12;
    				} else {
    					if ( UnknownFunction122(S,"M") )
    					{
    						nDigit = 13;
    					} else {
    						if ( UnknownFunction122(S,"B") )
    						{
    							nDigit = 14;
    						} else {
    							if ( UnknownFunction122(S,"R") )
    							{
    								nDigit = 15;
    							} else {
    								nDigit = int(S);
    							}
    						}
    					}
    				}
    			}
    		}
    		m_Digits[UnknownFunction146(C,UnknownFunction147(i,1))].SetUV(GetU(nDigit),GetV(Type));
    		m_Digits[UnknownFunction146(C,UnknownFunction147(i,1))].SetWindowSize(GetWidth(nDigit,Type),GetHeight(nDigit));
    		if ( UnknownFunction151(i,1) )
    		{
    			m_Digits[UnknownFunction146(C,UnknownFunction147(i,1))].SetAnchor(UnknownFunction112(UnknownFunction112(UnknownFunction112(WindowName,".Digit"),string(Container)),string(UnknownFunction147(i,1))),"TopLeft","TopLeft",UnknownFunction146(GetWidth(PreviousDigit,Type),GetOffsetCorrection(PreviousDigit)),0);
    		}
    		PreviousDigit = nDigit;
    		UnknownFunction163(i);
    		goto JL01A9;
    	}
    }
    
    function int GetU (int nDigit)
    {
    	return m_TextOffset[nDigit];
    }
    
    function int GetV (int Type)
    {
    	if ( UnknownFunction154(Type,1) )
    	{
    		return 18;
    	} else {
    		if ( UnknownFunction154(Type,2) )
    		{
    			return 68;
    		} else {
    			if ( UnknownFunction154(Type,3) )
    			{
    				return 118;
    			} else {
    				if ( UnknownFunction154(Type,5) )
    				{
    					return 168;
    				} else {
    					if ( UnknownFunction154(Type,4) )
    					{
    						return 218;
    					} else {
    						if ( UnknownFunction154(Type,6) )
    						{
    							return 268;
    						} else {
    							if ( UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,7),UnknownFunction154(Type,9)),UnknownFunction154(Type,11)) )
    							{
    								return 399;
    							} else {
    								if ( UnknownFunction132(UnknownFunction132(UnknownFunction154(Type,8),UnknownFunction154(Type,10)),UnknownFunction154(Type,12)) )
    								{
    									return 449;
    								}
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    	return 18;
    }
    
    function int GetWidth (int nDigit, int Type)
    {
    	if ( UnknownFunction154(nDigit,12) )
    	{
    		if ( UnknownFunction154(Type,1) )
    		{
    			return UnknownFunction146(31,2);
    		}
    		if ( UnknownFunction154(Type,3) )
    		{
    			return UnknownFunction146(20,2);
    		}
    		if ( UnknownFunction154(Type,5) )
    		{
    			return UnknownFunction146(24,2);
    		}
    		if ( UnknownFunction154(Type,4) )
    		{
    			return UnknownFunction146(22,2);
    		}
    		if ( UnknownFunction154(Type,6) )
    		{
    			return UnknownFunction146(31,2);
    		}
    	}
    	return m_TextWidth[nDigit];
    }
    
    function int GetHeight (int nDigit)
    {
    	return 27;
    }
    
    function int GetOffsetCorrection (int nDigit)
    {
    	return m_TextOffsetCorrection[nDigit];
    }
    

     

    thanks 

    please delete or close this post , I have already been able to solve my problem, a greeting. 
    🙂 

    I have already been able to solve my problem, a greeting. 
    :-)

     

  10. 40 minutes ago, Celestine said:

    not even worth searching this crap interface it had tons of errors and who ever copy pasted all functions from other interfaces did a huge mess you wont find it since not exists anymore.

    I have seen that you have made a clean inteeface in interlude with the damage on screen l2sublimity system would be possible to do that same on the freya interface ?

     

    The classes I've seen were something like this, I don't remember it well.

     

    L2sublimitydamagewnd , L2sublimityitem , uil2sublimitycommon ....

     

    What I'm looking to achieve is a simple interface with experience bar on the bottom side, danage on screen, a cast skill bar and 5 hability shortcut bars

  11. On 2/19/2021 at 8:09 PM, HeadHunter said:

    I see many people looking for that server files (that already shared here but dunno how log time before) i reupload it and here is the link :

     

    https://mega.nz/file/P3xyhDrT#9S9p7sq4wJSRiNyBsoc36VCLPHexMIHJcxzznDmdYpQ

     

    Free of Virus Scanned with Kaspersky.

    Have Fun Cheers.

    Hello, can you tell me which acis review corresponds to the source and which client should I download in order to access ?

    Thanks 

    14 hours ago, destrodevianne said:

    Hello, can you tell me which acis review corresponds to the source and which client should I download in order to access ?

    Thanks 

    Sorry , i think are this server classic gameplay interlude https://www.lineage2.gold/ , My doubt is settled 

    Thanks

×
×
  • Create New...