Jump to content

SkyFielD

Members
  • Posts

    25
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

About SkyFielD

Profile Information

  • Gender
    Male

Recent Profile Visitors

1,055 profile views

SkyFielD's Achievements

Apprentice

Apprentice (3/16)

  • First Post Rare
  • Collaborator Rare
  • Conversation Starter Rare
  • Week One Done Rare
  • One Month Later Rare

Recent Badges

0

Reputation

  1. have this for free l2adrenaline ??? with make script???
  2. function TL2Control.LoadItems(ToWH: Boolean; List: array of Cardinal): Boolean; begin Engine.LoadItems(True, [148, 1, 50, 10000]); //put in warehouse: Sword Of Valhalla(x1), Adena(x10000); Engine.LoadItems(False, [148, 1, 50, 10000]); //take to warehouse: Sword Of Valhalla(x1), Adena(x10000); end. no work L2Adrenaline 1.71 cracked
  3. classe InventoryWnd estende UICommonAPI; const DIALOG_USE_RECIPE = 1111; // 레시피를 사용할 것인지를 물을 때 const DIALOG_POPUP = 2222; // 아이템사용 시 지정된 팝업메시지를 띄울 때 const DIALOG_DROPITEM = 3333; // 아이템을 바닥에 버릴 때(한개) const DIALOG_DROPITEM_ASKCOUNT = 4444; // 아이템을 바닥에 버릴 때(여러개, 개수를 물어본다) const DIALOG_DROPITEM_ALL = 5555; // 아이템을 바닥에 버릴 때(MoveAll 상태일 때) const DIALOG_DESTROYITEM = 6666; // 아이템을 휴지통에 버릴 때(한개) const DIALOG_DESTROYITEM_ALL = 7777; // 아이템을 휴지통에 버릴 때(MoveAll 상태일 때) const DIALOG_DESTROYITEM_ASKCOUNT = 8888; // 아이템을 휴지통에 버릴 때(여러개, 개수를 물어본다) const DIALOG_CRYSTALLIZE = 9999; // 아이템을 결정화 할때 const DIALOG_NOTCRYSTALLIZE = 9998; // 결정화가 불가능하다는 경고 const DIALOG_DROPITEM_PETASKCOUNT = 10000; // 펫인벤에서 아이템이 드롭되었을 때 const EQUIPITEM_Underwear = 0; const EQUIPITEM_Head = 1; const EQUIPITEM_Cabelo = 2; const EQUIPITEM_Cabelo2 = 3; const EQUIPITEM_Pescoço = 4; const EQUIPITEM_RHe = 5; const EQUIPITEM_Peito = 6; const EQUIPITEM_LHe = 7; const EQUIPITEM_REar = 8; const EQUIPITEM_LEar = 9; const EQUIPITEM_Luvas = 10; const EQUIPITEM_Legs = 11; const EQUIPITEM_Pés = 12; const EQUIPITEM_RFinger = 13; const EQUIPITEM_LFinger = 14; const EQUIPITEM_LBracelet = 15; const EQUIPITEM_RBacelete = 16; const EQUIPITEM_Deco1 = 17; const EQUIPITEM_Deco2 = 18; const EQUIPITEM_Deco3 = 19; const EQUIPITEM_Deco4 = 20; const EQUIPITEM_Deco5 = 21; const EQUIPITEM_Deco6 = 22; const EQUIPITEM_Cloak = 23; const EQUIPITEM_Cintura = 24; const EQUIPITEM_Max = 25; const INVENTÁRIO_ITEM_TAB = 0; const QUEST_ITEM_TAB = 1; var WindowHandle m_hInventoryWnd; var String m_WindowName; var ItemWindowHandle m_invenItem; var ItemWindowHandle m_questItem; var ItemWindowHandle m_equipItem[ EQUIPITEM_Max ]; var ItemWindowHandle m_hHennaItemWindow; var TextBoxHandle m_hAdenaTextBox; //var TabHandle m_invenTab; var ButtonHandle m_sortBtn; var ButtonHandle m_BtnRotateLeft; var ButtonHandle m_BtnRotateRight; var TextureHandle m_CloakSlot_Disable; var TextureHandle m_Talisman_Disable[ 6 ]; var CharacterViewportWindowHandle m_ObjectViewport; var array<ItemID> m_itemOrder; // 인벤토리 아이템의 순서를 로컬에 저장한다. var Vetor m_clickLocation; // 아이템 드롭할때 어디에 드롭할 지를 저장하고 있는다. var Array<ItemInfo> m_EarItemListStart; var Array<ItemInfo> m_EarItemList; var Array<ItemInfo> m_FingerItemLIstStart; var Array<ItemInfo> m_FingerItemLIst; var Array<ItemInfo> m_DecoItemList; var int m_invenCount; var bool m_bCurrentState; var int m_MaxInvenCount; var int m_MaxQuestItemInvenCount; var int m_MeshType; var int m_NpcID; var ButtonHandle m_hBtnCrystalize; var WindowHandle ColorNickNameWnd; //var int m_selectedItemTab; //INVENORY EXPAND var ButtonHandle m_BtnWindowExpand; var ButtonHandle m_BtnAugAdd; var ButtonHandle m_BtnAugDel; var ButtonHandle btnInfo; var TextureHandle m_QuestItembkgAdd2; var TextureHandle m_QuestItembkgAdd; //var TextureHandle m_tabbgLine; var TextureHandle m_InventoryItembg_expand; var int useExtendedInventory; var int extraSlotsCount; var int currentInvenCol; var bool éVert; var bool éIniciar; var ItemInfo TaliInfo1, TaliInfo2, TaliInfo3, TaliInfo4, TaliInfo5, TaliInfo6; var TaliWnd script_tali; var ItemControlWnd script_item; function OnRegisterEvent() { RegisterEvent(EV_InventoryClear); RegisterEvent(EV_InventoryOpenWindow); RegisterEvent(EV_InventoryHideWindow); RegisterEvent(EV_InventoryAddItem); RegisterEvent(EV_InventoryUpdateItem); RegisterEvent(EV_InventoryItemListEnd); RegisterEvent(EV_InventoryAddHennaInfo); RegisterEvent(EV_InventoryToggleWindow); RegisterEvent(EV_UpdateHennaInfo); RegisterEvent(EV_UpdateUserInfo); RegisterEvent(EV_DialogOK); RegisterEvent(EV_Restart); RegisterEvent(EV_SetMaxCount); RegisterEvent(EV_ChangeCharacterPawn); RegisterEvent(EV_ChatMessage); } function OnLoad() { if(CREATE_ON_DEMAND==0) OnRegisterEvent(); m_WindowName="InventárioWnd"; if(CREATE_ON_DEMAND==0) InitHandle(); else InitHandleCOD(); InitScrollBar(); GetINIInt("Inventário", "extraSlots", extraSlotsCount, "PatchSettings"); GetINIInt("Inventário", "useExtender", useExtendedInventory, "PatchSettings"); currentInvenCol = extraSlotsCount + 6 + 1; if ( (CorInvenção atual < 6) && (ColInvenção atual > 13) ) { ColInvenção atual = 6; } //m_questItem.SetCol(11); //m_questItem.ShowScrollBar(false); // m_questItem.SetWindowSize(395, 34); //m_questItem.SetScrollBarPosition( 20, 5, -3 ); // m_questItem.SetScrollBarPosition( 21, -338, -101 ); if ( useExtendedInventory == 1 ) { resizeInventory(extraSlotsCount); } m_bCurrentState = false; // m_selectedItemTab = INVENTORY_ITEM_TAB; script_tali = TaliWnd(GetScript("TaliWnd")); script_item = ItemControlWnd(GetScript("ItemControlWnd")); btnInfo.SetTooltipCustomType(MakeTooltipSimpleText("Excluir item - Ctrl+Alt+Click")); m_BtnAugAdd.SetTooltipCustomType(MakeTooltipSimpleText("Janela de Atributo")); m_BtnAugDel.SetTooltipCustomType(MakeTooltipSimpleText("Enchant Window")); } function InitHandle() { m_hInventoryWnd=GetHandle(m_WindowName); m_invenItem = ItemWindowHandle(GetHandle(m_WindowName $ ".InventoryItem")); m_questItem = ItemWindowHandle(GetHandle(m_WindowName $ ".QuestItem")); m_hAdenaTextBox = TextBoxHandle( GetHandle(m_WindowName $ ".AdenaText") ); // m_invenTab = TabHandle(GetHandle(m_WindowName $ ".InventoryTab")); m_sortBtn = ButtonHandle(GetHandle(m_WindowName $ ".SortButton")); m_BtnRotateLeft= ButtonHandle(GetHandle(m_WindowName $ ".BtnRotateLeft")); m_BtnRotateRight= ButtonHandle(GetHandle(m_WindowName $ ".BtnRotateRight")); m_ObjectViewport = CharacterViewportWindowHandle(GetHandle("InventoryWnd.ObjectViewport")); m_equipItem[ EQUIPITEM_Underwear ] = ItemWindowHandle( GetHandle( "EquipItem_Underwear" ) ); m_equipItem[ EQUIPITEM_Head ] = ItemWindowHandle( GetHandle( "EquipItem_Head" ) ); m_equipItem[ EQUIPITEM_Hair ] = ItemWindowHandle( GetHandle( "EquipItem_Hair" ) ); m_equipItem[ EQUIPITEM_Hair2 ] = ItemWindowHandle( GetHandle( "EquipItem_Hair2" ) ); m_equipItem[ EQUIPITEM_Neck ] = ItemWindowHandle( GetHandle( "EquipItem_Neck" ) ); m_equipItem[ EQUIPITEM_RHand ] = ItemWindowHandle( GetHandle( "EquipItem_RHand" ) ); m_equipItem[ EQUIPITEM_Chest ] = ItemWindowHandle( GetHandle( " m_equipItem[ EQUIPITEM_LHand ] = ItemWindowHandle( GetHandle( "EquipItem_LHand" ) ); m_equipItem[ EQUIPITEM_REar ] = ItemWindowHandle( GetHandle( "EquipItem_REar" ) ); m_equipItem[ EQUIPITEM_LEar ] = ItemWindowHandle( GetHandle( "EquipItem_LEar" ) ); m_equipItem[ EQUIPITEM_Gloves ] = ItemWindowHandle( GetHandle( "EquipItem_Gloves" ) ); m_equipItem[ EQUIPITEM_Legs ] = ItemWindowHandle( GetHandle( "EquipItem_Legs" ) ); m_equipItem[ EQUIPITEM_Feet ] = ItemWindowHandle( GetHandle( "EquipItem_Feet" ) ); m_equipItem[ EQUIPITEM_RFinger ] = ItemWindowHandle( GetHandle( "EquipItem_RFinger" ) ); m_equipItem[ EQUIPITEM_LFinger ] = ItemWindowHandle( GetHandle( " m_equipItem[ EQUIPITEM_LBracelet ] = ItemWindowHandle( GetHandle( "EquipItem_LBracelet" ) ); m_equipItem[ EQUIPITEM_RBracelet ] = ItemWindowHandle( GetHandle( "EquipItem_RBracelet" ) ); m_equipItem[ EQUIPITEM_Deco1 ] = ItemWindowHandle( GetHandle( "EquipItem_Talisman1" ) ); m_equipItem[ EQUIPITEM_Deco2 ] = ItemWindowHandle( GetHandle( "EquipItem_Talisman2" ) ); m_equipItem[ EQUIPITEM_Deco3 ] = ItemWindowHandle( GetHandle( "EquipItem_Talisman3" ) ); m_equipItem[ EQUIPITEM_Deco4 ] = ItemWindowHandle( GetHandle( "EquipItem_Talisman4" ) ); m_equipItem[ EQUIPITEM_Deco5 ] = ItemWindowHandle( GetHandle( "EquipItem_Talisman5" ) ); m_equipItem[ EQUIPITEM_Cloak ] = ItemWindowHandle( GetHandle( "EquipItem_Cloak" ) ); m_equipItem[ EQUIPITEM_Waist ] = ItemWindowHandle( GetHandle( "EquipItem_Waist" ) ); m_equipItem[ EQUIPITEM_LHand ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Head ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Gloves ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Legs ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Feet ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Hair2 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_CloakSlot_Disable = TextureHandle(GetHandle(m_WindowName $ ".CloakSlot_Disable")); m_Talisman_Disable[ 0 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman1_Disable")); m_Talisman_Disable[ 1 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman2_Disable")); m_Talisman_Disable[ 2 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman3_Disable")); m_Talisman_Disable[ 3 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman4_Disable")); m_Talisman_Disable[ 4 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman5_Disable")); m_Talisman_Disable[ 5 ] = TextureHandle(GetHandle(m_WindowName $ ".Talisman6_Disable")); m_hHennaItemWindow = ItemWindowHandle( GetHandle( " m_hBtnCrystallize = ButtonHandle(GetHandle(m_WindowName $ ".CrystallizeButton")); m_InventoryItembg_expand = TextureHandle(GetHandle("InventoryItembg_expand")); // m_tabbg = TextureHandle(GetHandle("InventoryWnd.tabbkg")); m_QuestItembkgAdd2 = TextureHandle(GetHandle("InventárioWnd.QuestItembkgAdd2")); m_QuestItembkgAdd = TextureHandle(GetHandle("InventárioWnd.QuestItembkgAdd")); m_BtnWindowExpand = ButtonHandle(GetHandle(m_WindowName $ ".BtnWindowExpand")); m_BtnAugAdd = ButtonHandle(GetHandle(m_WindowName $ ".AddAug")); m_BtnAugDel = ButtonHandle(GetHandle(m_WindowName $ ".DelAug")); btnInfo = ButtonHandle(GetHandle(m_WindowName $ " ColorNickNameWnd = GetHandle("ColorNickNameWnd"); } function InitHandleCOD() { m_hInventoryWnd=GetWindowHandle(m_WindowName); m_invenItem = GetItemWindowHandle(m_WindowName $ ".InventoryItem"); m_questItem = GetItemWindowHandle(m_WindowName $ ".QuestItem"); m_hAdenaTextBox = GetTextBoxHandle( m_WindowName $ ".AdenaText" ); // m_invenTab = GetTabHandle(m_WindowName $ ".InventoryTab"); m_sortBtn = GetButtonHandle(m_WindowName $ ".SortButton"); m_BtnRotateLeft= GetButtonHandle(m_WindowName $ ".BtnRotateLeft"); m_BtnRotateRight= GetButtonHandle(m_WindowName $ ".BtnRotateRight"); m_ObjectViewport = GetCharacterViewportWindowHandle("InventoryWnd.ObjectViewport"); m_equipItem[ EQUIPITEM_Underwear ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Underwear" ); m_equipItem[ EQUIPITEM_Head ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Head" ); m_equipItem[ EQUIPITEM_Hair ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Hair" ); m_equipItem[ EQUIPITEM_Hair2 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Hair2" ); m_equipItem[ EQUIPITEM_Neck ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Neck" ); m_equipItem[ EQUIPITEM_RHand ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_RHand" ); m_equipItem[ EQUIPITEM_Chest ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Chest" ); m_equipItem[ EQUIPITEM_REar ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_REar" ); m_equipItem[ EQUIPITEM_LEar ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_LEar" ); m_equipItem[ EQUIPITEM_Gloves ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Gloves" ); m_equipItem[ EQUIPITEM_Legs ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Legs" ); m_equipItem[ EQUIPITEM_Feet ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Feet" ); m_equipItem[ EQUIPITEM_RFinger ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_RFinger" ); m_equipItem[ EQUIPITEM_LFinger ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_LFinger" ); m_equipItem[ EQUIPITEM_LBracelet ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_LBracelet" ); m_equipItem[ EQUIPITEM_RBracelet ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_RBracelet" ); m_equipItem[ EQUIPITEM_Deco1 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman1" ); m_equipItem[ EQUIPITEM_Deco2 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman2" ); m_equipItem[ EQUIPITEM_Deco3 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman3" ); m_equipItem[ EQUIPITEM_Deco4 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman4" ); m_equipItem[ EQUIPITEM_Deco5 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman5" ); m_equipItem[ EQUIPITEM_Deco6 ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Talisman6" ); m_equipItem[ EQUIPITEM_Cloak ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Cloak" ); m_equipItem[ EQUIPITEM_Waist ] = GetItemWindowHandle( m_WindowName $ ".EquipItem_Waist" ); m_equipItem[ EQUIPITEM_LHand ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Head ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Gloves ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Legs ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_equipItem[ EQUIPITEM_Feet ].SetDisableTex( "L2UI.InventoryWnd. m_equipItem[ EQUIPITEM_Hair2 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_LBracelet ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_RBracelet ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_Deco1 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_Deco2 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_Deco3 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_Deco4 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); //~ m_equipItem[ EQUIPITEM_Deco5 ].SetDisableTex( "L2UI.InventoryWnd. //~ m_equipItem[ EQUIPITEM_Deco6 ].SetDisableTex( "L2UI.InventoryWnd.Icon_dualcap" ); m_CloakSlot_Disable = GetTextureHandle(m_WindowName $ ".CloakSlot_Disable"); m_Talisman_Disable[ 0 ] = GetTextureHandle(m_WindowName $ ".Talisman1_Disable"); m_Talisman_Disable[ 1 ] = GetTextureHandle(m_WindowName $ ".Talisman2_Disable"); m_Talisman_Disable[ 2 ] = GetTextureHandle(m_WindowName $ ".Talisman3_Disable"); m_Talisman_Disable[ 3 ] = GetTextureHandle(m_WindowName $ ".Talisman4_Disable"); m_Talisman_Disable[ 4 ] = GetTextureHandle(m_WindowName $ ".Talisman5_Disable"); m_Talisman_Disable[ 5 ] = GetTextureHandle(m_WindowName $ ".Talisman6_Disable"); m_hHennaItemWindow = GetItemWindowHandle( m_WindowName$.HennaItem" ); m_hBtnCrystallize = GetButtonHandle(m_WindowName $ ".CrystallizeButton"); m_InventoryItembg_expand = GetTextureHandle("InventoryWnd.InventoryItembg_expand"); // m_tabbg = GetTextureHandle("InventoryWnd.tabbkg"); m_QuestItembkgAdd2 = GetTextureHandle("InventárioWnd.QuestItembkgAdd2"); m_QuestItembkgAdd = GetTextureHandle("InventárioWnd.QuestItembkgAdd"); m_BtnWindowExpand = GetButtonHandle(m_WindowName $ ".BtnWindowExpand"); m_BtnAugAdd = GetButtonHandle(m_WindowName $ ".AddAug"); m_BtnAugDel = GetButtonHandle(m_WindowName $ ".DelAug"); ColorNickNameWnd = GetWindowHandle("ColorNickNameWnd"); } function InitScrollBar() { m_invenItem.SetScrollBarPosition( 0, 17, 0 ); m_questItem.SetScrollBarPosition( 0, 3, -3 ); } function OnEvent(int Event_ID, string param) { // debug("Invent Event ID :" $string(Event_ID)$" "$param); switch( Event_ID ) { case EV_InventoryClear: HandleClear(); pausa; case EV_InventoryOpenWindow: HandleOpenWindow(param); pausa; case EV_InventoryHideWindow: HandleHideWindow(); pausa; case EV_InventoryAddItem: //~ debug ("adicionar item"); HandleAddItem(param); pausa; case EV_InventoryUpdateItem: //~ debug ("update item" @ param); HandleUpdateItem(param); //FingerItemUpdate(); pausa; case EV_InventoryItemListEnd: HandleItemListEnd(); pausa; case EV_InventoryAddHennaInfo: HandleAddHennaInfo(param); pausa; case EV_UpdateHennaInfo: HandleUpdateHennaInfo(param); pausa; case EV_InventoryToggleWindow: HandleToggleWindow(); pausa; case EV_DialogOK: HandleDialogOK(); pausa; case EV_UpdateUserInfo: HandleUpdateUserInfo(); pausa; case EV_Restart: HandleRestart(); //~ SaveInventoryOrder(); pausa; case EV_SetMaxCount: HandleSetMaxCount(param); //~ debug("Obteve Evento SetMaxCount" @ param); pausa; case EV_ChangeCharacterPawn: HandleChangeCharacterPawn(param); pausa; case EV_ChatMessage: HandleChatMessage( param ); pausa; padrão: quebrar; }; } function HandleChatMessage( String param ) { local int SysMsgIndex; ParseInt(param, "SysMsgIndex", SysMsgIndex); if ( SysMsgIndex == 34 ) { isStart = false; m_hInventoryWnd.SetTimer(1130, 2000); script_tali.tal[0].Clear(); script_tali.tal[1].Clear(); script_tali.tal[2].Clear(); script_tali.tal[3].Clear(); } } function OnShow() { CheckShowCrystalizeButton(); SetAdenaText(); SetItemCount(); UpdateHennaInfo(); if ( useExtendedInventory == 1 ) { resizeInventory(extraSlotsCount); } } function SwitchExtendedInventory () { GetINIInt("Inventário", "extraSlots", extraSlotsCount, "PatchSettings"); if ( currentInvenCol != 6 ) { resizeInventory(-1); useExtendedInventory = 0; } else { resizeInventory(extraSlotsCount); useExtendedInventory = 1; } SetINIInt("Inventário", "useExtender", useExtendedInventory, "PatchSettings"); } function resizeInventory (int nSlotsCount) { local int Width; local int Altura; local int tmp_Width; local int paraExpandWidth; m_InventoryItembg_expand.GetWindowSize(Largura,Altura); nSlotsCount = nSlotsCount + 1; currentInvenCol = 6 + nSlotsCount; if (nSlotsCount > 0) { tmp_Width = (nSlotsCount + 1) * 36 + 1; m_BtnWindowExpand.SetTexture("L2UI_edKith.frames_df_Btn_Minimize","L2UI_edKith.frames_df_btn_Minimize_down","L2UI_edKith.frames_df_btn_Minimize_over"); } else { tmp_Width = 1; //deafault 1 m_BtnWindowExpand.SetTexture("L2UI_edKith.frames_df_btn_Expand","L2UI_edKith.frames_df_btn_Expand_down","L2UI_edKith.frames_df_btn_Expand_over"); } if ( Width != tmp_Width ) { if ( nSlotsCount > toExpandWidth = 36 * nSlotsCount; } else { currentInvenCol = 6; paraExpandWidth = 0; } m_hInventoryWnd.SetWindowSize(446 + toExpandWidth,433); m_QuestItembkgAdd2.HideWindow(); m_QuestItembkgAdd2.SetWindowSize(0, 35); m_invenItem.SetWindowSize(231 + toExpandWidth,288); m_QuestItembkgAdd.SetWindowSize(144, 35); m_questItem.SetWindowSize(415 + toExpandWidth, 34); m_InventoryItembg_expand.SetWindowSize(1 + toExpandWidth,288); // m_tabbg.SetWindowSize(242 + toExpandWidth,321); if (( nSlotsCount > 0 ) && ( nSlotsCount < 4 )) { m_QuestItembkgAdd2.HideWindow(); m_QuestItembkgAdd.SetWindowSize(144 + toExpandWidth, 35); } if ( nSlotsCount > 3 ) { m_QuestItembkgAdd.SetWindowSize(252, 35); m_QuestItembkgAdd2.ShowWindow(); if (nSlotsCount == 5) m_QuestItembkgAdd2.SetWindowSize(72, 35); if (nSlotsCount == 4) m_QuestItembkgAdd2.SetWindowSize(36, 35); } m_invenItem.SetCol(currentInvenCol); m_questItem.SetCol(currentInvenCol+5); // AddSystemMessageString(string(currentInvenCol)); // AddSystemMessageString(string(toExpandWidth)); // AddSystemMessageString(string(nSlotsCount)); // m_questItem.SetScrollBarPosition( 20, 5, -3 ); // m_questItem.SetScrollBarPosition( 21, -338, -101 ); // RequestItemList(); } } function CheckShowCrystallizeButton() { if( class'UIDATA_PLAYER'.static.HasCrystallizeAbility() ) m_hBtnCrystallize.ShowWindow(); else m_hBtnCrystallize.HideWindow(); } function OnHide() { if( m_bCurrentState ) SaveInventoryOrder(); } //Verifica GamingState - Iniciar função HandleRestart() { m_bCurrentState = false; } function OnEnterState( nome a_PrevStateName ) { isStart = true; m_bCurrentState = true; } function OnExitState( nome a_NextStateName ) { m_bCurrentState = false; } // Função de evento ItemWindow OnDBClickItemWithHandle( ItemWindowHandle a_hItemWindow, int index ) { debug("item db_click"); UseItem( a_hItemWindow, index ); } function OnRCicItemWithHandle( ItemWindowHandle a_hItemWindow, int index ) { debug("OnRCClickItem"); UseItem( a_hItemWindow, index ); } function OnSelectItemWithHandle( ItemWindowHandle a_hItemWindow, int a_Index ) { local int i; informações locais do ItemInfo; seqüência local ItemName; a_hItemWindow.GetSelectedItem( info ); //printItemInfo(info); //TextLink if( IsKeyDown( IK_Shift ) ) { a_hItemWindow.GetSelectedItem( info ); ItemName = class'UIDATA_ITEM'.static.GetRefineryItemName( info.Name, info.RefineryOp1, info.RefineryOp2 ); if (info.ItemNum > IntToInt64(1)) ItemName = ItemName @ "[" $ MakeCostString(Int64ToString(info.ItemNum)) $ "]"; if (info.Enchanted > 0) ItemName = "+" $ info.Enchanted @ ItemName; SetItemTextLink( info. // printItemInfo(info); //sysDebug(string(info.ID.ServerID)$" + "$ string(info.ID.ClassID)); //sysDebug(string(class'UIDATA_PLAYER'.static.GetPlayerID())); } //DeleteItem if( IsKeyDown( IK_Alt ) && IsKeyDown( IK_Ctrl ) ) { if (a_hItemWindow.GetSelectedItem( info )) { if (a_hItemWindow.FindItem(info.id) != -1) { if( class'UIDATA_PLAYER'. static.HasCrystallizeAbility() && class'UIDATA_ITEM'.static.IsCrystalzable(info.ID) ) { RequestCrystallizeItem(info.ID,IntToInt64(1)); } else { RequestDestroyItem(info.ID, info.ItemNum); PlayConsoleSound(IFST_TRASH_BASKET); } } } } // if( a_hItemWindow == m_invenItem ) // { a_hItemWindow.GetSelectedItem( info ); printItemInfo(info);} if( a_hItemWindow == m_invenItem ) return; if( a_hItemWindow == m_questItem ) return; for( i = 0; i < EQUIPITEM_MAX; ++i ) { if( a_hItemWindow != m_equipItem[ i ] ) m_equipItem[ i ].ClearSelect(); } } function OnDropItem( String strTarget, ItemInfo info, int x, int y ) { local int toIndex, fromIndex; // 인벤토리에서 온 것이 아니면 처리하지 않는다. debug("Inventário OnDropItem dest " $ strTarget $ ", fonte " $ info.DragSrcName $ " x:" $ x $ ", y:" $ y); if( !(info.DragSrcName == "InventoryItem" || info. DragSrcName == "QuestItem" || -1 != InStr( info.DragSrcName, "EquipItem" ) || info.DragSrcName == "PetInvenWnd") ) Retorna; if( strTarget == "InventoryItem" ) { if( info.DragSrcName == "InventoryItem" ) // Muda a posição do item { toIndex = m_invenItem.GetIndexAt( x, y, 1, 1 ); // Troca com outro item if( toIndex >= 0 ) { fromIndex = m_invenItem.FindItem(info.ID); if( toIndex != fromIndex ) m_invenItem.SwapItems( fromIndex, toIndex ); } } else if( -1 != InStr( info.DragSrcName, "EquipItem" ) ) // Desequipa o item { RequestUnequipItem(info.ID, info.SlotBitType); else if( info.DragSrcName == "PetInvenWnd" ) // Pet -> Inventário { if( IsStackableItem(info.ConsumeType) && info.ItemNum > IntToInt64(1) ) // Item múltiplo? { if( info.AllItemCount > IntToInt64(0) ) // 전부 옮길 것인가 { if ( CheckItemLimit( info.ID, info.AllItemCount ) ) { class'PetAPI'.static.RequestGetItemFromPet( info.ID, info.AllItemCount, false ); } } else { DialogSetID(DIALOG_DROPITEM_PETASKCOUNT); DialogSetReservedItemID(info.ID); // ServerID DialogSetParamInt64(info.ItemNum); DialogShow(DIALOG_Modalless, DIALOG_NumberPad, MakeFullSystemMsg( GetSystemMessage(72), info.Name ) ); } } else // Item único? { class'PetAPI'.static.RequestGetItemFromPet( info.ID, IntToInt64(1), false); } } } else if( strTarget == "QuestItem" ) { if( info.DragSrcName == "QuestItem" ) // Alterar a posição do item { toIndex = m_questItem.GetIndexAt( x, y, 1, 1 ); if( toIndex >= 0 ) // Troca com outro item { fromIndex = m_questItem.FindItem(info.ID); // ServerID if( toIndex != fromIndex ) { // 두개의 while 문 중에 어차피 한개에만 들어간다. while( fromIndex < toIndex ) // 앞으로 땡기기 { m_questItem.SwapItems( fromIndex, fromIndex + 1 ); ++ do Índice; } while( toIndex < fromIndex ) // 뒤로 밀어내기 { m_questItem.SwapItems( fromIndex, fromIndex - 1 ); --fromIndex; } } } else // move este item para o último { return; //fromIndex = m_invenItem.GetItemNum(); //while( toIndex < fromIndex - 1 ) //{ // m_invenItem.SwapItems( toIndex, toIndex + 1 ); // ++toIndex; // }; } } } else if( -1 != InStr( strTarget, "EquipItem" ) || strTarget == "ObjectViewportDispatchMsg" ) // Equipar o item { debug("Inven EquipItem: " $info.DragSrcName $" " $string(info. Tipo de item)); if( info.DragSrcName == "PetInvenWnd" ) // Pet -> Equip { class'PetAPI'.static.RequestGetItemFromPet( info.ID, IntToInt64(1), true ); } else if( -1 != InStr( info.DragSrcName, "EquipItem" ) ) //função da função. { } else if( EItemType(info.ItemType) != ITEM_ETCITEM ) { debug("RequestuseItem"); RequestUseItem(info.ID); } } else if( strTarget == "TrashButton" ) // Destruir item(após confirmação) { if( IsStackableItem(info.ConsumeType) && info.ItemNum > IntToInt64(1) ) // Vários itens? { if( info.AllItemCount > IntToInt64(0) ) // Cobrança de dados { DialogSetID(DIALOG_DESTROYITEM_ALL); DialogSetReservedItemID(info.ID); // ServerID DialogSetReservedInt2(info.AllItemCount); DialogShow(DIALOG_Modalless,DIALOG_Warning, MakeFullSystemMsg(GetSystemMessage(74), info.Name, "")); } senão { DialogSetID(DIALOG_DESTROYITEM_ASKCOUNT); DialogSetReservedItemID(info.ID); // ServerID DialogSetParamInt64(info.ItemNum); DialogShow(DIALOG_Modalless, DIALOG_NumberPad, MakeFullSystemMsg( GetSystemMessage(73), info.Name ) ); } } else // Item único? { // 파쇄하려 할때, 결정화가 가능한 상황이면 그냥 결정화 if( class'UIDATA_PLAYER'.static.HasCrystallizeAbility() && class'UIDATA_ITEM'.static.IsCrystallizable(info.ID) ) {static.IsCrystallizable(info.ID) ) { static.IsCrystallizable(info.ID); DialogSetReservedItemID(info.ID); DialogShow(DIALOG_Modalless,DIALOG_Warning, MakeFullSystemMsg(GetSystemMessage(2232), info.Name ) ); } else { DialogSetID(DIALOG_DESTROYITEM); DialogSetReservedItemID(info.ID); // ServerID DialogShow(DIALOG_Modalless, DIALOG_Warning, MakeFullSystemMsg( GetSystemMessage(74), info.Name ) ); } } } else if( strTarget == "CrystallizeButton" ) { if( info.DragSrcName == "InventoryItem" || ( -1 != InStr( info.DragSrcName, "EquipItem" ) ) ) { if( class'UIDATA_PLAYER'.static.HasCrystallizeAbility() && class'UIDATA_ITEM'.static.IsCrystalzable(info.ID) ) // Mostra a caixa de diálogo pedindo confirmação { DialogSetID(DIALOG_CRYSTALLIZE); DialogSetReservedItemID(info.ID); DialogShow(DIALOG_Modalless,DIALOG_Warning, MakeFullSystemMsg(GetSystemMessage(336), info.Name ) ); } else { DialogSetID(DIALOG_NOTCRYSTALLIZE); DialogShow(DIALOG_Modalless,DIALOG_Notice, MakeFullSystemMsg(GetSystemMessage(2171), info.Name ) ); } } } //~ SaveInventoryOrder(); } // 같은 아이템 창 에서 아이템 을 옮기는 은 은 은 은 에서 하도록 하고 여기서 는 바닥 바닥 에 버리는 상황 만 한다 한다. function OnDropItemSource( String strTarget, ItemInfo info ) { if( strTarget == "Console" ) { if( info.DragSrcName == "InventoryItem" || info.DragSrcName == "QuestItem" || ( -1 != InStr( info .DragSrcName, "EquipItem" ) ) ) { m_clickLocation = GetClickLocation(); if( IsStackableItem(info.ConsumeType) && info.ItemNum > IntToInt64(1) ) // Cobrança de dados de acesso { if( info.AllItemCount > IntToInt64(0) ) // Cobrança de dados { DialogHide(); DialogSetID( DIALOG_DROPITEM_ALL ); DialogSetReservedItemID(info.ID); // ServerID DialogSetReservedInt2(info.AllItemCount); DialogShow(DIALOG_Modalless,DIALOG_Warning, MakeFullSystemMsg(GetSystemMessage(1833), info.Name, "")); } else // 숫자를 물어볼 것인가 { DialogHide(); DialogSetID( DIALOG_DROPITEM_ASKCOUNT ); DialogSetReservedItemID(info.ID); // ServerID DialogSetParamInt64(info.ItemNum); DialogShow(DIALOG_Modalless,DIALOG_NumberPad, MakeFullSystemMsg(GetSystemMessage(71), info.Name, "")); } } else { DialogHide(); DialogSetID( DIALOG_DROPITEM ); DialogSetReservedItemID(info.ID); // ServerID DialogShow(DIALOG_Modalless,DIALOG_Warning, MakeFullSystemMsg(GetSystemMessage(400), info.Name, "")); } } } //~ SaveInventoryOrder(); } function bool IsEquipItem( out ItemInfo info ) { return info.bEquipped; } function bool IsQuestItem( out ItemInfo info ) { return EItemtype(info.ItemType) == ITEM_QUESTITEM; } function HandleClear() { InvenClear(); EquipItemClear(); m_questItem.Clear(); m_EarItemListStart.Length = 0; m_EarItemList.Length = 0; m_FingerItemLIst.Length = 0; m_FingerItemLIstStart.Length = 0; m_DecoItemList.Length = 0; } function int EquipItemGetItemNum() { local int i; local int ItemNum; for( i = 0; i < EQUIPITEM_Max; ++i ) { if(m_equipItem[ i ].IsEnableWindow()) // 세트아이템은 하나만 센다. { ItemNum = ItemNum + m_equipItem[ i ].GetItemNum(); } } retornar ItemNum; } function EquipItemClear() { local int i; for( i = 0; i < EQUIPITEM_Max; ++i ) m_equipItem[ i ].Clear(); } function bool LocalizarEquipItem(ItemID sID) { local int i; local int Índice; for( i = 0; i < EQUIPITEM_Max; ++i ) { Índice = m_equipItem[ i ].FindItem( sID ); // ServerID if( -1 != Index ) return true; } retorna falso; } function EquipItemDelete( ItemID sID ) { local int i; local int Índice; local ItemInfo TheItemInfo; for( i = 0; i < EQUIPITEM_Max; ++i ) { Índice = m_equipItem[ i ].FindItem( sID ); // ServerID if( -1 != Index ) { m_equipItem[ i ].Clear(); // 화살을 버리는 경우, 빈자리에 활 모양이 표시되어야한다. if( i == EQUIPITEM_LHand ) { if( m_equipItem[ EQUIPITEM_RHand ].GetItem( 0, TheItemInfo ) ) { if( TheItemInfo.SlotBitType == 16384 ) { m_equipItem[ EQUIPITEM_LHand ].Clear(); m_equipItem[ EQUIPITEM_LHand ].AddItem( TheItemInfo ); m_equipItem[ EQUIPITEM_LHand ].DisableWindow(); } } } if ( i >= EQUIPITEM_Deco1 && i <= EQUIPITEM_Deco6) //TaliWnd script_tali.tal[i - 17].Clear(); senão if (i == EQUIPITEM_REar) script_item.item3.Clear(); senão if ( i == EQUIPITEM_Neck ) script_item.item2.Clear(); else if ( ( i == EQUIPITEM_Neck ) ) script_item.item4.Clear(); senão if ( i == EQUIPITEM_Neck ) script_item.item1.Clear(); else if ( i == EQUIPITEM_Neck ) { script_item.item5.Clear(); script_item.tex5.SetTexture(""); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 145 , 34 ); else script_item.Me.SetWindowSize( 34 , 145 ); } } } } function EarItemUpdate() { local int i; local int LEarIndex, REarIndex; LEarIndex = -1; ÍndiceRear = -1; for( i = 0; i < m_EarItemList.Length; ++i ) { switch( IsLOrREar( m_EarItemList[i].ID ) ) { case -1: LEarIndex = i; pausa; caso 0: m_EarItemList.Remove( i, 1 ); pausa; caso 1: REarIndex = i; pausa; } } if( -1 != LEarIndex ) { //~ debug("왼쪽 귀걸이"); m_equipItem[ EQUIPITEM_LEar ].Clear(); m_equipItem[ EQUIPITEM_LEar ].AddItem( m_EarItemList[ LEarIndex ] ); } if( -1 != REarIndex ) { //~ debug("오른쪽 귀걸이"); m_equipItem[ EQUIPITEM_REar ].Clear(); m_equipItem[ EQUIPITEM_REar ].AddItem( m_EarItemList[ REarIndex ] ); script_item.item3.Clear(); script_item.item3.AddItem(m_EarItemList[ REarIndex ]); } } function EarItemUpdateStart() { local int i; local int LEarIndex, REarIndex; LEarIndex = -1; ÍndiceRear = -1; for( i = 0; i < m_EarItemListStart.Length; ++i ) { switch( IsLOrREar( m_EarItemListStart[i].ID ) ) { case -1: LEarIndex = i; pausa; caso 0: m_EarItemList.Remove( i, 1 ); pausa; caso 1: REarIndex = i; pausa; } } if( -1 != LEarIndex ) { m_equipItem[ EQUIPITEM_LEar ].Clear(); m_equipItem[ EQUIPITEM_LEar ].AddItem( m_EarItemListStart[ LEarIndex ] ); } if( -1 != REarIndex ) { m_equipItem[ EQUIPITEM_REar ].Clear(); m_equipItem[ EQUIPITEM_REar ].AddItem( m_EarItemListStart[ REarIndex ] ); script_item.item3.Clear(); script_item.item3.AddItem(m_EarItemListStart[ REarIndex ]); } } //~ Função RBraceletItemUpdate() //~ { //~ local int i; //~ if (g_RBraceTurnOn) //~ { //~ m_equipItem[ EQUIPITEM_Deco1 ].EnableWindow(); //~ m_equipItem[ EQUIPITEM_Deco2 ].EnableWindow(); //~ m_equipItem[ EQUIPITEM_Deco3 ].EnableWindow(); //~ m_equipItem[ EQUIPITEM_Deco4 ].EnableWindow(); //~ m_equipItem[ EQUIPITEM_Deco5 ].EnableWindow(); //~ m_equipItem[ EQUIPITEM_Deco6 ].EnableWindow(); //~ } //~ else //~ { //~ m_equipItem[ EQUIPITEM_Deco1 ].DisableWindow(); //~ m_equipItem[ EQUIPITEM_Deco2 ].DisableWindow(); //~ m_equipItem[ EQUIPITEM_Deco3 ].DisableWindow(); //~ m_equipItem[ EQUIPITEM_Deco4 ].DisableWindow(); //~ m_equipItem[ EQUIPITEM_Deco5 ].DisableWindow(); //~ m_equipItem[ EQUIPITEM_Deco6 ].DisableWindow(); //~ } //~ } function FingerItemUpdate() { local int i; local int LFingerIndex, RFingerIndex; LFingerIndex = -1; RFingerIndex = -1; // AddSystemMessageString(string(m_FingerItemList.Length) $ " FingerItemUpdate "); // AddSystemMessageString(string(m_FingerItemListStart.Length) $ " FingerItemUpdate Start"); for( i = 0; i < m_FingerItemList.Length; ++i ) { switch( IsLOrRFinger( m_FingerItemList[i].ID ) ) { case -1: LFingerIndex = i; // AddSystemMessageString((m_FingerItemList[i].Name) $ " case -1 " $ string(LFingerIndex)); pausa; case 0: // AddSystemMessageString((m_FingerItemList[i].Name) $" case 0 remove "); m_FingerItemList.Remove( i, pausa; caso 1: RFingerIndex = i; // AddSystemMessageString((m_FingerItemList[i].Name) $ " case 1 " $ string(RFingerIndex)); pausa; } } if( -1 != LFingerIndex ) { m_equipItem[ EQUIPITEM_LFinger ].Clear(); m_equipItem[ EQUIPITEM_LFinger ].AddItem( m_FingerItemList[ LFingerIndex ] ); } if( -1 != RFingerIndex ) { m_equipItem[ EQUIPITEM_RFinger ].Clear(); m_equipItem[ EQUIPITEM_RFinger ].AddItem( m_FingerItemList[ RFingerIndex ] ); script_item.item2.Clear(); script_item.item2.AddItem(m_FingerItemList[ RFingerIndex ]); } } function FingerItemUpdateStart() { local int i; local int LFingerIndex, RFingerIndex; LFingerIndex = -1; RFingerIndex = -1; // AddSystemMessageString(string(m_FingerItemList.Length) $ " FingerItemUpdateStart "); // AddSystemMessageString(string(m_FingerItemListStart.Length) $ " FingerItemUpdateStart Start"); for( i = 0; i < m_FingerItemListStart.Length; ++i ) { switch( IsLOrRFinger( m_FingerItemListStart[i].ID ) ) { case -1: LFingerIndex = i; // AddSystemMessageString((m_FingerItemListStart[i].Name) $ " case -1 " $ string(LFingerIndex)); pausa; case 0: // AddSystemMessageString((m_FingerItemListStart[i].Name) $" case 0 remove "); m_FingerItemList.Remove( i, 1 ); pausa; caso 1: RFingerIndex = i; // AddSystemMessageString((m_FingerItemListStart[i].Name) $ " case 1 " $ string(RFingerIndex)); pausa; } } if( -1 != LFingerIndex ) { m_equipItem[ EQUIPITEM_LFinger ].Clear(); m_equipItem[ EQUIPITEM_LFinger ].AddItem( m_FingerItemListStart[ LFingerIndex ] ); } if( -1 != RFingerIndex ) { m_equipItem[ EQUIPITEM_RFinger ].Clear(); m_equipItem[ EQUIPITEM_RFinger ].AddItem( m_FingerItemListStart[ RFingerIndex ] ); script_item.item2.Clear(); script_item.item2.AddItem(m_FingerItemListStart[ RFingerIndex ]); } } //~ function DecoItemUpdate() //~ { //~ local int i; //~ local int LFingerIndex, RFingerIndex; //~ LFingerIndex = -1; //~ RFingerIndex = -1; //~ for( i = 0; i < m_DecoItemList.Length; ++i ) //~ { //~ switch( IsLOrRFinger( m_FingerItemList[i].ID ) ) //~ { //~ case -1: / /~ LFingerIndex = i; //~ pausa; //~ case 0: //~ m_FingerItemList.Remove( i, 1 ); //~ pausa; //~ case 1: //~ RFingerIndex = i; //~ pausa; //~ } //~ } //~ if( -1 != LFingerIndex ) //~ { //~ m_equipItem[ EQUIPITEM_LFinger ].Clear(); //~ m_equipItem[ EQUIPITEM_LFinger ].AddItem( m_FingerItemList[ LFingerIndex ] ); //~} //~ if( -1 != RFingerIndex ) //~ { //~ m_equipItem[ EQUIPITEM_RFinger ].Clear(); //~ m_equipItem[ EQUIPITEM_RFinger ].AddItem( m_FingerItemList[ RFingerIndex ] ); //~ } //~ } function EquipItemUpdate( ItemInfo a_info ) { local ItemWindowHandle hItemWnd; local ItemInfo TheItemInfo; local bool ClearLHand; local ItemInfo RHand; local ItemInfo LHand; Pernas ItemInfo local; local ItemInfo luvas; Pés de ItemInfo locais; local ItemInfo Hair2; local SkillInfo TalismanSkill; local int; //~ local int j; local int decoIndex; //~ Debug ("현재 장착 슬롯 타입:" @ a_Info.SlotBitType); //~ Debug ("망토 착탈" @ a_Info.SlotBitType ); //~ UpdateTalismanSlotActivation(); //~ UpdateCloakSlotActivation(); //~ if (!m_equipItem[ EQUIPITEM_Cloak ].IsEnableWindow()) //~ if( m_equipItem[ EQUIPITEM_Cloak ].GetItem( 0, TheItemInfo ) ) //~ { //~ Debug("Equip Item Cloak Check"); //~ UpdateCloakSlotActivation(); //~ } //éTalismã = false; SetEnchantTex(a_Info); switch( a_Info.SlotBitType ) { case 1: // SBT_UNDERWEAR hItemWnd = m_equipItem[ EQUIPITEM_Underwear ]; pausa; case 2: // SBT_REAR case 4: // SBT_LEAR case 6: // SBT_RLEAR for( i = 0; i < m_EarItemList.Length; ++i ) { if( IsSameServerID(m_EarItemList[ i ].ID, a_Info.ID) ) { m_EarItemList[ i ] = a_Info; pausa; } } // m_EarItemList.Length ) { m_EarItemList.Length = m_EarItemList.Length + 1; m_EarItemList[m_EarItemList.Length-1] = a_Info; if (m_EarItemListStart.Length<2) { m_EarItemListStart.Length = m_EarItemListStart.Length + 1; m_EarItemListStart[m_EarItemListStart.Length-1] = a_Info; } } hItemWnd = Nenhum; if (!isStart) EarItemUpdate(); if (isStart) EarItemUpdateStart(); pausa; case 8: // SBT_NECK hItemWnd = m_equipItem[ EQUIPITEM_Neck ]; pausa; case 16: // SBT_RFINGER case 32: // SBT_LFINGER case 48: // SBT_RLFINGER // AddSystemMessageString(string(m_FingerItemList.Length) $ " ItemUpdate "); // AddSystemMessageString(string(m_FingerItemListStart.Length) $ " ItemUpdate Start"); for( i = 0; i < m_FingerItemList.Length; ++i ) { if( IsSameServerID(m_FingerItemList[ i ].ID, a_Info.ID) ) { m_FingerItemList[ i ] = a_Info; // AddSystemMessageString((m_FingerItemList[i].Name) ); pausa; } } // Como usar a função if( i == m_FingerItemList.Length ) { m_FingerItemList.Length = m_FingerItemList.Length + 1; m_FingerItemList[m_FingerItemList.Length-1] = a_Info; if (m_FingerItemListStart.Length<2) { m_FingerItemListStart.Length = m_FingerItemListStart.Length + 1; m_FingerItemListStart[m_FingerItemListStart.Length-1] = a_Info; } } hItemWnd = Nenhum; if (!isStart) FingerItemUpdate(); if (isStart) FingerItemUpdateStart(); pausa; case 64: // SBT_HEAD hItemWnd = m_equipItem[ EQUIPITEM_Head ]; hItemWnd.EnableWindow(); //~ UpdateCloakSlotActivation(); pausa; case 128: // SBT_RHAND hItemWnd = m_equipItem[ EQUIPITEM_RHand ]; pausa; case 256: // SBT_LHAND hItemWnd = m_equipItem[ EQUIPITEM_LHand ]; hItemWnd.EnableWindow(); pausa; case 512: // SBT_GLOVES hItemWnd = m_equipItem[ EQUIPITEM_Gloves ]; hItemWnd.EnableWindow(); // Atualiza a ativação do slot de manto quando o slot de manto não está equipado. Aplicado apenas aos slots de luvas, peito, pernas e pés. //~ if (!m_equipItem[ EQUIPITEM_Cloak ].IsEnableWindow()) //~ { //~ UpdateCloakSlotActivation(); //~ } break; case 1024: // SBT_CHEST hItemWnd = m_equipItem[ EQUIPITEM_Chest ]; // Atualiza a ativação do slot de manto quando o slot de manto não está equipado. Aplicado apenas aos slots de luvas, peito, pernas e pés. //~ if (!m_equipItem[ EQUIPITEM_Cloak ].IsEnableWindow()) //~ { //~ UpdateCloakSlotActivation(); //~ } break; case 2048: // SBT_LEGS hItemWnd = m_equipItem[ EQUIPITEM_Legs ]; hItemWnd.EnableWindow(); // Atualiza a ativação do slot de manto quando o slot de manto não está equipado. Aplicado apenas aos slots de luvas, peito, pernas e pés. //~ if (!m_equipItem[ EQUIPITEM_Cloak ].IsEnableWindow()) //~ { //~ UpdateCloakSlotActivation(); //~ } break; case 4096: // SBT_FEET hItemWnd = m_equipItem[ EQUIPITEM_Feet ]; hItemWnd.EnableWindow(); // Atualiza a ativação do slot de manto quando o slot de manto não está equipado. Aplicado apenas aos slots de luvas, peito, pernas e pés. //~ if( m_equipItem[ EQUIPITEM_Cloak ].GetItem( 0, TheItemInfo ) ) //~ { //~ if (!m_equipItem[ EQUIPITEM_Cloak ].IsEnableWindow()) //~ { //~ Debug("Equip Item Cloak Check"); //~ UpdateCloakSlotActivation(); //~ } //~ else //~ { //~ Debug("Equip Item Cloak None"); //~ } break; case 8192: // SBT_BACK hItemWnd = m_equipItem[ EQUIPITEM_Cloak ]; //~ Debug ("망토 착탈"); hItemWnd.EnableWindow(); pausa; case 16384: // SBT_RLHAND hItemWnd = m_equipItem[ EQUIPITEM_RHand ]; ClearLH e = true; //~ debug("보우건의 번호?"@ a_Info.WeaponType); // rhand 에 arco 가, lhand 에 화살 이 있는 경우 화살 을 그대로 보여 준다 - Neverdie if (isboworfishingrod (a_info)) { if (m_equipItem [Equipitem_lhand] .getItem (0, theiteminfo)) { se ) ClearLHand = false; } } // 보우건을 착용했을때 위와 같은 방법으로 볼트를 보여준다. if( IsBowOrFishingRod( a_Info ) ) { if( m_equipItem[ EQUIPITEM_LHand ].GetItem( 0, TheItemInfo ) ) { if( IsArrow( TheItemInfo ) ) ClearLHand = false; } } if( ClearLHand ) //LRHAND 경우에도 ex1 , ex2 가 있는게 있고 없는게 있어서 따로 처리가 필요합니다. ;; -innowind { if(Len(a_Info.IconNameEx1) !=0) { RHand = a_info; LHand = a_info; RHand.IconIndex = 1; LHand.IconIndex = 2; //RHand.IconName = a_Info.IconNameEx1; //LHand.IconName = a_Info.IconNameEx2; m_equipItem[ EQUIPITEM_RHand ].Clear(); m_equipItem[ EQUIPITEM_RHand ].AddItem(RHand); //m_equipItem[ EQUIPITEM_RHand ].DisableWindow(); m_equipItem[ EQUIPITEM_LHand ].Clear(); m_equipItem[ EQUIPITEM_LHand ].AddItem( LHand ); m_equipItem[ EQUIPITEM_LHand ].DisableWindow(); script_item.item4.Clear(); script_item.item4.AddItem(a_Info); script_item.item5.Clear(); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 145 , 34 ); else script_item.Me.SetWindowSize( 34 , 145 ); script_item.tex5.SetTexture(""); hItemWnd = Nenhum; // 아이콘 이미지가 보이지 않도록 기본 설정을 없애준다. } else // 활이나 창같이 아이콘이미지랑 똑같은 경우. { m_equipItem[ EQUIPITEM_LHand ].Clear(); m_equipItem[ EQUIPITEM_LHand ].AddItem( a_Info ); m_equipItem[ EQUIPITEM_LHand ].DisableWindow(); } } quebrar; case 32768: // SBT_ONEPIECE hItemWnd = m_equipItem[ EQUIPITEM_Chest ]; Pernas = a_Info; Legs.IconName = a_Info.IconNameEX2; //하의 아이콘을 그려준다. m_equipItem[ EQUIPITEM_Legs ].Clear(); m_equipItem[ EQUIPITEM_Legs ].AddItem( Legs ); m_equipItem[ EQUIPITEM_Legs ].DisableWindow(); pausa; case 65536: // SBT_HAIR hItemWnd = m_equipItem[ EQUIPITEM_Hair ]; pausa; case 131072: // SBT_ALLDRESS hItemWnd = m_equipItem[ EQUIPITEM_Chest ]; Cabelo2 = a_info; //원래는 head가 따로있어야 하지만 메모리 절약차원에서 hair2에 넣습니다. - Luvas innowind = a_info; Pernas = a_info; Pés = a_info; Hair2.IconName = a_Info.IconNameEx1; Gloves.IconName = a_Info.IconNameEx2; Legs.IconName = a_Info.IconNameEx3; Feet.IconName = a_Info.IconNameEx4; m_equipItem[ EQUIPITEM_Head ].Clear(); m_equipItem[ EQUIPITEM_Head ].AddItem( Hair2 ); m_equipItem[ EQUIPITEM_Head ].DisableWindow(); m_equipItem[ EQUIPITEM_Gloves ].Clear(); m_equipItem[ EQUIPITEM_Gloves ].AddItem( Luvas ); m_equipItem[ EQUIPITEM_Gloves ].DisableWindow(); m_equipItem[ EQUIPITEM_Legs ].Clear(); m_equipItem[ EQUIPITEM_Legs ].AddItem( Legs ); m_equipItem[ EQUIPITEM_Legs ].DisableWindow(); m_equipItem[ EQUIPITEM_Feet ].Clear(); m_equipItem[ EQUIPITEM_Feet ].AddItem( Pés ); m_equipItem[ EQUIPITEM_Feet ].DisableWindow(); pausa; case 262144: // SBT_HAIR2 hItemWnd = m_equipItem[ EQUIPITEM_Hair2 ]; hItemWnd.EnableWindow(); pausa; case 524288: // SBT_HAIRALL hItemWnd = m_equipItem[ EQUIPITEM_Hair ]; //Cabelo2 = a_info; //Hair2.IconName = a_Info.IconNameEx2; m_equipItem[ EQUIPITEM_Hair2 ].Clear(); m_equipItem[ EQUIPITEM_Hair2 ].AddItem( a_info ); m_equipItem[ EQUIPITEM_Hair2 ].DisableWindow(); pausa; case 1048576: //SBT_RBracelet hItemWnd = m_equipItem[ EQUIPITEM_RBracelet ]; m_equipItem[ EQUIPITEM_RBracelet ].Clear(); m_equipItem[ EQUIPITEM_RBacelet ].AddItem( a_info ); m_equipItem[ EQUIPITEM_RBacelet ].EnableWindow(); //~ g_RBraceTurnOn = true; //~ RBraceletItemUpdate(); pausa; case 2097152: //SBT_LBracelet hItemWnd = m_equipItem[ EQUIPITEM_LBracelet ]; m_equipItem[ EQUIPITEM_LBracelet ].Clear(); m_equipItem[ EQUIPITEM_LBracelet ].AddItem( a_info ); m_equipItem[ EQUIPITEM_LBraclet ].EnableWindow(); // Atualiza a ativação do slot do Talisman Item quando o slot do Bracelet não está equipado. //~ if (!m_equipItem[ EQUIPITEM_Deco1 ].IsEnableWindow()) //~ { //~ UpdateTalismanSlotActivation(); //~ } break; case 4194304: //SBT_Deco1; //~ debug ("아이템 번호" @ a_info.ItemType ); // UpdateTalismanSlotActivation(); // AddSystemMessageString(a_info.Description); // AddSystemMessageString(string(a_info.RelatedQuestId[0])); // AddSystemMessageString(string(a_info.Id.ClassID)); // // AddSystemMessageString(string(a_info.Id.ServerID)); // AddSystemMessageString(string(GetDecoIndex(a_info.Id))); decoIndex = GetDecoIndex(a_info.Id); // ParseInt( param, "RelatedQuestCnt", tmpInt); // if(tmpInt>0) // { // for(i=0; i<tmpInt; ++i) // ParseInt(param, "RelatedQuestID"$i, info.RelatedQuestID[i]); // } // if ((isStart) && (a_Info)) // { // // if ((decoIndex == -1) && (isStart)) // { // } // AddSystemMessageString(string(isStart)); if (decoIndex == -1) { // AddSystemMessageString("start"); for ( i = 0; i < 6; ++i ) { if (script_tali.tal[i].GetItem(0, TheItemInfo)) { // AddSystemMessageString("yacheika" @ i @ "polna"); if (a_info.Id.ServerID == TheItemInfo.Id.ServerID) { // AddSystemMessageString("yacheika" @ i @ "polna e taliki sovpadaut"); Retorna; // m_equipItem[ EQUIPITEM_Deco1 + i ].Clear(); // m_equipItem[ EQUIPITEM_Deco1 + i ].AddItem( a_info ); // m_equipItem[ EQUIPITEM_Deco1 + i ].EnableWindow(); //TaliWnd // // if (GetTalismanSkillID(a_info.ID.ClassID) != -1) // a_info.ID.ClassID = GetTalismanSkillID(a_info.ID.ClassID); // GetSkillInfo( a_info.ID.ClassID, 1, TalismanSkill ); // a_info.IconName = TalismanSkill.TexName; // a_info.ItemSubType = int(EShortCutItemType.SCIT_SKILL); // // script_tali.tal[i].Clear(); // script_tali.tal[i].AddItem(a_info); } } else { // AddSystemMessageString("yacheika" @ i @ "pusta"); if (i == 0) TaliInfo1 = a_info; if (i == 1) TaliInfo2 = a_info; if (i == 2) TaliInfo3 = a_info; if (i == 3) TaliInfo4 = a_info; if (i == 4) TaliInfo5 = a_info; if (i == 5) TaliInfo6 = a_info; m_equipItem[ EQUIPITEM_Deco1 + i ].Clear(); m_equipItem[ EQUIPITEM_Deco1 + i ].AddItem( a_info ); m_equipItem[ EQUIPITEM_Deco1 + i ].EnableWindow(); //TaliWnd if (GetTalismanSkillID(a_info.ID.ClassID) != -1) a_info.ID.ClassID = GetTalismanSkillID(a_info.ID.ClassID); // if ((a_info.ID.ClassID==23754) || a_info.ID.ClassID==23755)) // if (a_info.Enchanted >3) GetSkillInfo( a_info.ID.ClassID, a_info.Enchanted -3 , Talismã Skill); GetSkillInfo( a_info.ID.ClassID, 1, TalismanSkill ); a_info.IconName = TalismãHabilidade.TexName; a_info.ItemSubType = int(EShortCutItemType.SCIT_SKILL); // for(i = 0 ; i<MAX_RELATED_QUEST ; i++) // { // a_info.RelatedQuestID[i] = 0; // } script_tali.tal[i].Clear(); script_tali.tal[i].AddItem(a_info); Retorna; } } } // } if (decoIndex != -1) { // AddSystemMessageString("norm rejim"); m_equipItem[ EQUIPITEM_Deco1 + decoIndex ].Clear(); m_equipItem[ EQUIPITEM_Deco1 + decoIndex ].AddItem( a_info ); m_equipItem[ EQUIPITEM_Deco1 + decoIndex ].EnableWindow(); //TaliWnd if (GetTalismanSkillID(a_info.ID.ClassID) != -1) a_info.ID.ClassID = GetTalismanSkillID(a_info.ID.ClassID); GetSkillInfo( a_info.ID.ClassID, 1, TalismanSkill ); a_info.IconName = TalismãHabilidade.TexName; a_info.ItemSubType = int(EShortCutItemType.SCIT_SKILL); script_tali.tal[decoIndex].Clear(); script_tali.tal[decoIndex].AddItem(a_info); for (i = 0; i < 6; i++) { if (!m_equipItem[EQUIPITEM_Deco1+i].GetItem(0,TheItemInfo)) script_tali.tal[i].Clear(); } //TaliWnd } // UpdateTalismanSlotActivation(); pausa; case 268435456: hItemWnd = m_equipItem[ EQUIPITEM_Waist ]; pausa; } if( Nenhum != hItemWnd ) { hItemWnd.Clear(); //~ Debug("IconName="@a_Info.IconName); hItemWnd.AddItem( a_Info ); //AddSystemMessageString("a_Info.Name = "$a_Info.Name); if ( a_Info.SlotBitType == 8 ) //Colar { script_item.item1.Clear(); script_item.item1.AddItem(a_Info); } if ( (a_Info.SlotBitType == 128) || (a_Info.SlotBitType == 16384)) // RLH e wxcept Duals { script_item.item4.Clear(); script_item.item4.AddItem(a_Info); if( IsBowOrFishingRod( a_Info ) ) { if( m_equipItem[ EQUIPITEM_LHand ].GetItem( 0, TheItemInfo ) ) { if( !IsArrow( TheItemInfo ) ) { script_item.item5.Clear(); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 145 , 34 ); else script_item.Me.SetWindowSize( 34 , 145 ); script_item.tex5.SetTexture(""); } } } else { if (a_Info.SlotBitType == 16384) { script_item.item5.Clear(); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 145 , 34 ); else script_item.Me.SetWindowSize( 34 , 145 ); script_item.tex5.SetTexture(""); } } } // if (a_Info.SlotBitType == 268435456) // Cinto // { // script_item.item3.Clear(); // script_item.item3.AddItem(a_Info); // } if ( (a_Info.SlotBitType == 256) ) // LHand { script_item.item5.Clear(); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 182 , 34 ); else script_item.Me.SetWindowSize( 34 , 182 ); script_item.tex5.SetTexture("L2UI_CH3.etc.menu_outline"); script_item.item5.AddItem(a_Info); } } //~ UpdateTalismanSlotActivation(); //~ UpdateCloakSlotActivation(); } function HandleOpenWindow(string param) { local int open; ParseInt(param, "Abrir", abrir); if(abrir==0) return; AbrirJanela(); } function OpenWindow() { m_hInventoryWnd.ShowWindow(); m_hInventoryWnd.SetFocus(); } function HandleHideWindow() { HideWindow(m_WindowName); } function HandleAddItem(string param) { //local int Order; informações locais do ItemInfo; ParamToItemInfo( param, info ); //Debug ("HandleAddItem"); if( IsEquipItem(info) ) EquipItemUpdate( info ); else if( IsQuestItem(info) ) { m_questItem.AddItem( info ); } else { //ParseInt( param, "Ordem", Ordem); //debug("InvenOrder: "$string(Order)); //InvenAddItem( info, Order ); InvenAddItem( info ); } } function HandleUpdateItem(string param) { // local int Order; tipo de string local; informações locais do ItemInfo; índice int local; // debug("Inventário UpdateItem : " $ param); ParseString(param, "tipo", tipo); ParamToItemInfo( param, info ); // debug("bEQUIPED:"@INFO.bEquipped); SetEnchantTex(info); if( type == "adicionar" ) { if( IsEquipItem(info) ) { EquipItemUpdate( info ); } else if( IsQuestItem(info) ) { m_questItem.AddItem(info); índice = m_questItem.GetItemNum() - 1; while( index > 0 ) // 제일 앞으로! { m_questItem.SwapItems(index-1, index); --índice; } } else { //ParseInt( param, "Ordem", Ordem ); //InvenAddItem( info, Order ); InvenAddItem( info ); } } else if( type == "update" ) { // debug("업데이트? " $ param); if( IsEquipItem(info) ) { // debug("이즈이큅아이템?? " $ param); if( EquipItemFind(info.ID) ) // correspondência encontrada { // debug("이프로 ? " $ param); EquipItemUpdate( info ); } else // não encontrado em equipItemList. Nesse caso, mova o item de InvenItemList para EquipItemList { // debug("아이템 착용 프로세스1 인벤토리에서 지운다."); // debug("엘스로?? " $ param); InvenDelete( info ); // debug("아이템 착용 프로세스2"); EquipItemUpdate( info ); } } else if( IsQuestItem(info) ) { index = m_questItem.FindItem(info.ID); // ServerID if( index != -1 ) { m_questItem.SetItem(índice, info); } else // Neste caso, o item Equipado está sendo desequipado. { EquipItemDelete(info.ID); m_questItem.AddItem(info); } } else { índice = m_invenItem.FindItem(info.ID); // ServerID if( index != -1 ) { m_invenItem.SetItem( index, info ); } else // Neste caso, o item Equipado está sendo desequipado. { EquipItemDelete(info.ID); //InvenAddItem( info, 0 ); InvenAddItem( info ); } } } else if( type == "delete" ) { if( IsEquipItem(info) ) { EquipItemDelete(info.ID); } else if( IsQuestItem(info) ) { index = m_questItem.FindItem(info.ID); // ServerID m_questItem.DeleteItem(index); } else { InvenDelete( info ); } } UpdateItemUsabilidade(); SetAdenaText(); SetItemCount(); } function HandleItemListEnd() { SetAdenaText(); SetItemCount(); UpdateItemUsabilidade(); } function UpdateItemUsability() { m_invenItem.SetItemUsability(); m_questItem.SetItemUsability(); } function HandleAddHennaInfo(string param) { /* local int hennaID, isActive; ParseInt( param, "ID", hennaID ); ParseInt( param, "bActive", isActive ); */ UpdateHennaInfo(); } function HandleUpdateHennaInfo(string param) { UpdateHennaInfo(); } function UpdateHennaInfo() { local int i; local int HennaInfoCount; local int HennaID; local int IsActive; local ItemInfo HennaItemInfo; local UserInfo PlayerInfo; local int ClassStep; if( GetPlayerInfo( PlayerInfo ) ) { ClassStep = GetClassStep( PlayerInfo.nSubClass ); switch( ClassStep ) { case 1: case 2: case 3: m_hHennaItemWindow.SetRow( ClassStep ); pausa; padrão: m_hHennaItemWindow.SetRow( 0 ); pausa; } } m_hHennaItemWindow.Clear(); HennaInfoCount = class'HennaAPI'.static.GetHennaInfoCount(); if(HennaInfoCount > ClassStep) HennaInfoCount = ClassStep; for( i = 0; i < HennaInfoCount; ++i ) { if( class'HennaAPI'.static.GetHennaInfo( i, HennaID, IsActive ) ) { if( !class'UIDATA_HENNA'.static.GetItemName( HennaID, HennaItemInfo. Nome ) ) pausa; if( !class'UIDATA_HENNA'.static.GetDescription( HennaID, HennaItemInfo.Description ) ) break; if( !class'UIDATA_HENNA'.static.GetIconTex( HennaID, HennaItemInfo.IconName ) ) break; if( 0 == IsActive ) HennaItemInfo.bDisabled = true; senão HennaItemInfo.bDisabled = false; m_hHennaItemWindow.AddItem(HennaItemInfo); } } } function SetAdenaText() { local string adenaString; adenaString = MakeCostString( Int64ToString(GetAdena()) ); m_hAdenaTextBox.SetText(adenaString); m_hAdenaTextBox.SetTooltipString( ConvertNumToText(Int64ToString(GetAdena())) ); //debug("SetAdenaText " $ adenaString ); } function UseItem(ItemWindowHandle a_hItemWindow, int index ) { local ItemInfo info; local ItemInfo item1i,item2i,item3i,item4i,item5i; if( a_hItemWindow.GetItem(index, info) ) { if( !info.bDisabled ) // lpislhy { if( info.bRecipe ) // 제조법(레시피)를 사용할 것인지 물어본다 { DialogSetReservedItemID(info.ID); // ServerID DialogSetID(DIALOG_USE_RECIPE); DialogShow(DIALOG_Modalless,DIALOG_Warning, GetSystemMessage(798)); } else if( info.PopMsgNum > 0 ) // 팝업 메시지를 보여준다. { DialogSetID(DIALOG_POPUP); DialogSetReservedItemID(info.ID); // ServerID DialogShow(DIALOG_Modalless,DIALOG_Warning, GetSystemMessage(info.PopMsgNum)); } else { debug ("Enviando solicitação ao servidor:"); RequestUseItem(info.ID); script_item.item1.GetItem(0, item1i); script_item.item2.GetItem(0, item2i); script_item.item3.GetItem(0, item3i); script_item.item4.GetItem(0, item4i); script_item.item5.GetItem(0, item5i); //AddSystemMessageString("GOT ITEM INFO"); switch (info.ID) { case item1i.ID: script_item.item1.Clear(); //script_tali.tal4.DisableWindow(); //AddSystemMessageString("4th ITEM INFO clear"); pausa; caso item2i.ID: script_item.item2.Clear(); //script_tali.tal4.DisableWindow(); //AddSystemMessageString("4th ITEM INFO clear"); pausa; case item3i.ID: script_item.item3.Clear(); //script_tali.tal4.DisableWindow(); //AddSystemMessageString("4th ITEM INFO clear"); pausa; case item4i.ID: script_item.item4.Clear(); //script_tali.tal4.DisableWindow(); //AddSystemMessageString("4th ITEM INFO clear"); pausa; case item5i.ID: script_item.item5.Clear(); isVert = GetOptionBool( "Jogo", "IsShortcutWndVertical" ); if (!isVert) script_item.Me.SetWindowSize( 145 , 34 ); else script_item.Me.SetWindowSize( 34 , 145 ); script_item.tex5.SetTexture(""); //script_tali.tal4.DisableWindow(); //AddSystemMessageString("4th ITEM INFO clear"); pausa; } } } } } function int GetMyInventoryLimit() { //~ depurar ("MyInventoryLimit:" @ class'UIDATA_PLAYER'.static.GetInventoryLimit()); //~ return class'UIDATA_PLAYER'.static.GetInventoryLimit(); return m_MaxInvenCount; } function int GetQuestItemInventoryLimit() { return m_MaxQuestItemInvenCount; } function SetItemCount() { limite int local; contagem int local; identificador TextBoxHandle local; // if(m_selectedItemTab == INVENTORY_ITEM_TAB) // { contagem = m_invenCount + EquipItemGetItemNum(); limite = GetMyInventoryLimit(); // } // else if(m_selectedItemTab == QUEST_ITEM_TAB) // { // contagem = m_questItem.GetItemNum(); // limite = GetQuestItemInventoryLimit(); // } //conta = m_invenCount + m_questItem.GetItemNum() + EquipItemGetItemNum(); //conta = m_invenCount + EquipItemGetItemNum() + m_questItem.GetItemNum(); //conta = m_invenCount + m_questItem.GetItemNum() + EquipItemGetItemNum(); if(CREATE_ON_DEMAND==0) handle = TextBoxHandle(GetHandle(m_WindowName $ ".ItemCount")); else handle = GetTextBoxHandle(m_WindowName $ ".ItemCount"); handle.SetText("(" $ contagem $ "/" $ limite $ ")"); debug("SetItemCount : count " $ count $ ", limit : " $ limit ); } function HandleDialogOK() { local int id; local INT64 reservado2; sID do ItemID local; número INT64 local; if( DialogIsMine() ) { id = DialogGetID(); reservado2 = DialogGetReservedInt2(); numero = StringToInt64(DialogGetString()); sID = DialogGetReservedItemID(); // ItemID if( id == DIALOG_USE_RECIPE || id == DIALOG_POPUP ) { RequestUseItem(sID); } else if( id == DIALOG_DROPITEM ) { RequestDropItem( sID, IntToInt64(1), m_clickLocation ); } else if( id == DIALOG_DROPITEM_ASKCOUNT ) { if(número == IntToInt64(0)) número = IntToInt64(1); // 아무 숫자도 입력하지 않으면 1개 드랍으로 처리 RequestDropItem( sID, number, m_clickLocation ); } else if( id == DIALOG_DROPITEM_ALL ) { RequestDropItem( sID, reservado2, m_clickLocation ); } else if( id == DIALOG_DESTROYITEM ) { RequestDestroyItem(sID, IntToInt64(1)); PlayConsoleSound(IFST_TRASH_BASKET); } else if( id == DIALOG_DESTROYITEM_ASKCOUNT ) { RequestDestroyItem(sID, número); PlayConsoleSound(IFST_TRASH_BASKET); } else if( id == DIALOG_DESTROYITEM_ALL) { RequestDestroyItem(sID, reservado2); PlayConsoleSound(IFST_TRASH_BASKET); } else if( id == DIALOG_CRYSTALLIZE ) { RequestCrystallizeItem(sID,IntToInt64(1)); PlayConsoleSound(IFST_TRASH_BASKET); } else if ( id == DIALOG_DROPITEM_PETASKCOUNT ) { class'PetAPI'.static.RequestGetItemFromPet( sID, número, false); } } } function HandleUpdateUserInfo() { if( m_hInventoryWnd.IsShowWindow() ) { InvenLimitUpdate(); EarItemUpdate(); FingerItemUpdate(); CheckShowCrystalizeButton(); UpdateTalismanSlotActivation(); UpdateCloakSlotActivation(); } else { EarItemUpdate(); FingerItemUpdate(); // UpdateTalismanSlotActivation(); } } function HandleToggleWindow() { if( m_hInventoryWnd.IsShowWindow()) { m_hInventoryWnd.HideWindow(); PlayConsoleSound(IFST_INVENWND_CLOSE); } else { if( IsShowInventoryWndUponEvent() ) { RequestItemList(); m_hInventoryWnd.ShowWindow(); PlayConsoleSound(IFST_INVENWND_OPEN); } } } // 개인 창고, 혈맹, 화물창고, 교환창, 상점, 구매, 판매창, 개인, 개인 구매 창이 떠있을 경우 경우 무시 하는 // 다른 사람 개인 개인 상점 창 에서 내 가 구매 때 는 열려야함 사람 의 개인 상점 창 에서 내 가 구매 할 는 열려야함 열려야함 -;; - função innowind bool IsShowInventoryWndUponEvent() { local WindowHandle m_warehouseWnd; local WindowHandle m_privateShopWnd; local WindowHandle m_tradeWnd; local WindowHandle m_shopWnd; local WindowHandle m_multiSellWnd; local WindowHandle m_deliverWnd; local PrivateShopWnd m_scriptPrivateShopWnd; local WindowHandle m_PostBoxWnd, m_PostWriteWnd, m_PostDetailWnd_General, m_PostDetailWnd_SafetyTrade; //ramificação local WindowHandle m_BR_CashShopWnd; local WindowHandle m_BR_BuyingWnd; //fim do ramo //função de comando local WindowHandle m_ProductInventoryWnd; if(CREATE_ON_DEMAND==0) { m_warehouseWnd = GetHandle( "WarehouseWnd" ); //개인창고, 혈맹창고, 화물창고 m_privateShopWnd = GetHandle( "PrivateShopWnd" ); //개인판매, 개인구매 m_tradeWnd = GetHandle( "TradeWnd" ); //교환 m_shopWnd = GetHandle( "ShopWnd" ); //상점구매, 판매 m_multiSellWnd = GetHandle( "MultiSellWnd" ); //상점구매, 판매 m_deliverWnd = GetHandle( "DeliverWnd" ); //화물서비스 m_scriptPrivateShopWnd = PrivateShopWnd( GetScript("PrivateShopWnd") ); m_PostBoxWnd = GetHandle( "PostBoxWnd" ); m_PostWriteWnd = GetHandle("PostWriteWnd"); m_PostDetailWnd_General = GetHandle( "PostDetailWnd_General" ); m_PostDetailWnd_SafetyTrade = GetHandle( "PostDetailWnd_SafetyTrade" ); //filial m_BR_CashShopWnd = GetHandle( "BR_CashShopWnd" ); // 유료 상점 m_BR_BuyingWnd = GetHandle( "BR_BuyingWnd" ); // 유료 상점 // fim da ramificação m_ProductInventoryWnd = GetHandle("ProductInventoryWnd"); // 판매대행 } else { m_warehouseWnd = GetWindowHandle( "WarehouseWnd" ); //개인창고, 혈맹창고, 화물창고 m_privateShopWnd = GetWindowHandle( "PrivateShopWnd" ); //개인판매, 개인구매 m_tradeWnd = GetWindowHandle( "TradeWnd" ); //교환 m_shopWnd = GetWindowHandle( "ShopWnd" ); //상점구매, 판매 m_multiSellWnd = GetWindowHandle( "MultiSellWnd" ); //상점구매, 판매 m_deliverWnd = GetWindowHandle( "DeliverWnd" ); m_PostBoxWnd = GetWindowHandle( "PostBoxWnd" ); m_PostWriteWnd = GetWindowHandle( "PostWriteWnd" ); m_PostDetailWnd_General = GetWindowHandle( "PostDetailWnd_General" ); m_PostDetailWnd_SafetyTrade = GetWindowHandle( "PostDetailWnd_SafetyTrade" ); //filial m_BR_CashShopWnd = GetWindowHandle( "BR_CashShopWnd" ); // 유료 상점 m_BR_BuyingWnd = GetWindowHandle( "BR_BuyingWnd" ); // 유료 상점 // fim da ramificação m_ProductInventoryWnd = GetWindowHandle( "ProductInventoryWnd" ); // 판매대행 } if( m_warehouseWnd.IsShowWindow() ) return false; if( m_warehouseWnd.IsShowWindow() ) return false; if( m_tradeWnd.IsShowWindow() ) return false; if( m_shopWnd.IsShowWindow() ) return false; if( m_multiSellWnd.IsShowWindow() ) return false; if( m_deliverWnd.IsShowWindow() ) return false; if( m_privateShopWnd.IsShowWindow() && m_scriptPrivateShopWnd.m_type == PT_Sell ) return false; if (m_PostBoxWnd.IsShowWindow() || m_PostWriteWnd.IsShowWindow() || m_PostDetailWnd_General.IsShowWindow() || m_PostDetailWnd_SafetyTrade.IsShowWindow() ) return false; //branch if( m_BR_CashShopWnd.IsShowWindow() || m_BR_BuyingWnd.IsShowWindow() ) return false; //fim do ramo if( m_ProductInventoryWnd.IsShowWindow() ) return false; retorne verdadeiro; } function int IsLOrREar( ItemID sID ) { local ItemID LEar; local ItemID REar; local ItemID LFinger; local ItemID RFinger; GetAccessoryItemID( LEar, REar, LFinger, RFinger ); if( IsSameServerID(sID, LEar) ) return -1; senão if( IsSameServerID(sID, REar) ) return 1; senão retorna 0; } function int IsLOrRFinger( ItemID sID ) { local ItemID LEar; local ItemID REar; local ItemID LFinger; local ItemID RFinger; GetAccessoryItemID( LEar, REar, LFinger, RFinger ); if( IsSameServerID(sID, LFinger) ) return -1; else if( IsSameServerID(sID, RFinger) ) return 1; senão retorna 0; } function bool IsBowOrFishingRod( ItemInfo a_Info ) { //~ debug("보우건의 번호?"@ a_Info.WeaponType); if( 6 == a_Info.WeaponType || 10 == a_Info.WeaponType || 12 == a_Info.WeaponType ) return true; retorna falso; } function int IsDecoItem( ItemInfo a_Info ) { return a_Info.SlotBitType; } function bool IsArrow( ItemInfo a_Info ) { return a_Info.bArrow; } //Invent Item Order, ttmayrin function InvenLimitUpdate() { local int Count; local int CurLimit; local int Limite de Invenção; local int Contagem Adicionada; local int DeletedCount; local ItemInfo ClearItem; local ItemInfo CurItem; usuário local UserInfo; // Default Item // 아이템 착용후 슬롯 리셋 ClearItem.IconName = "L2ui_ct1.emptyBtn"; if( GetPlayerInfo( usuário ) ) { ClearItemID( ClearItem.ID ); InvenLimit = user.nInvenLimit; CurLimit = m_invenItem.GetItemNum(); // AddSystemMessageString("User InvenLimit : "$string(InvenLimit)$"InvenItem: "$string(CurLimit)); if( CurLimit < InvenLimit ) { Contagem Adicionada = InvenLimit - CurLimit; for( Count=0; Count<AddedCount; Count++ ) m_invenItem.AddItem( ClearItem ); } else if (CurLimit > InvenLimit) { DeletedCount = CurLimit - InvenLimit; for ( Contagem = m_InvenItem.GetItemNum()- 1; Contagem >= 0; Contagem-- ) { if (DeletedCount > 0) { m_InvenItem.GetItem(Contagem, CurItem ); if (!IsValidItemID(CurItem.ID)) { m_invenItem.DeleteItem(Count); DeletedCount--; } if (DeletedCount <= 0) { break; } } } } } } //função InvenAddItem( ItemInfo newItem, int order ) function InvenAddItem( ItemInfo newItem ) { local int idx; local int CurLimit; local int FindIdx; local ItemInfo curItem; FindIdx = -1; if( m_invenItem.GetItem( newItem.Order, curItem ) ) { if( !IsValidItemID( curItem.ID ) ) { // FindIdx = Order; FindIdx = newItem.Order; } } if( FindIdx < 0 ) { CurLimit = m_invenItem.GetItemNum(); for( idx=0; idx<CurLimit; idx++ ) { if( m_invenItem.GetItem( idx, curItem ) ) { if( !IsValidItemID(curItem.ID)) { FindIdx = idx; pausa; } } } } // if (newItem.Enchanted >0) newItem.ForeTexture = "icon.pvp_tab"; //if ((newItem.Enchanted >0) && (newItem.SlotBitType >0)) newItem.ForeTexture = "pug.enchant"$ String(newItem.Enchanted); SetEnchantTex(novoItem); if( FindIdx > -1 ) { m_invenItem.SetItem( FindIdx, newItem ); } else { m_invenItem.AddItem( newItem ); } m_invenCount++; } function InvenDelete( ItemInfo item ) { local int FindIdx; local ItemInfo ClearItem; ClearItemID(ClearItem.ID); //Coleção de dados de acesso ClearItem.IconName = "L2ui_ct1.emptyBtn"; FindIdx = m_invenItem.FindItem( item.ID ); if( FindIdx != -1 ) { m_invenItem.SetItem( FindIdx, ClearItem ); m_invenCount--; } } function InvenClear() { m_invenItem.Clear(); InvenLimitUpdate(); m_invenCount = 0; } function SaveInventoryOrder() { local int idx; local int Limite de Invenção; item ItemInfo local; array local<ItemID> IDList; array local<int> OrderList; InvenLimit = m_invenItem.GetItemNum(); debug("inven_limit" $ InvenLimit); for( idx=0; idx<InvenLimit; idx++ ) { if( m_invenItem.GetItem( idx, item ) ) { if( IsValidItemID( item.ID ) ) { IDList.Insert(IDList.Length, 1); IDList[IDList.Length-1] = item.ID; OrderList.Insert(OrderList.Length, 1); OrderList[OrderList.Length-1] = item.Order; } } } debug("idlist_length" $ IDList.Length); debug("orderlist_length" $ OrderList.Length); if( IDList.Length > 0 ) { debug("Salvando Inventário"); RequestSaveInventoryOrder( IDList, OrderList ); } SetINIInt("Inventário", "extraSlots", extraSlotsCount, "PatchSettings"); //SetINIInt("Inventory", "useExtender", useExtendedInventory, "PatchSettings"); } function OnClickButton( string strID ) { switch( strID ) { case "AddAug": if (class'UIAPI_WINDOW'.static.IsShowWindow("AutoAtt")) { class'UIAPI_WINDOW'.static.HideWindow("AutoAtt"); } else { class'UIAPI_WINDOW'.static.ShowWindow("AutoAtt"); class'UIAPI_WINDOW'.static.SetFocus("AutoAtt"); } // script_ref = RefineryWnd(GetScript("RefineryWnd")); // if (script_ref.m_RefineryWnd_Main.isShowWindow()) script_ref.m_RefineryWnd_Main.HideWindow(); // if(m_invenTab. // else// 어짜피 디스에이블 할꺼지만 보험차원에서.. // script_ref.ShowRefineryInterface(); // } quebrar; case "DelAug": if (class'UIAPI_WINDOW'.static.IsShowWindow("AutoItemEnchant")) { class'UIAPI_WINDOW'.static.HideWindow("AutoItemEnchant"); } else { class'UIAPI_WINDOW'.static.ShowWindow("AutoItemEnchant"); class'UIAPI_WINDOW'.static.SetFocus("AutoItemEnchant"); } // script_unref = UnrefineryWnd(GetScript("UnrefineryWnd")); // if (script_unref.m_UnRefineryWnd_Main.isShowWindow()) script_unref.m_UnRefineryWnd_Main.HideWindow(); // if (m_inventab.gettopindex () == 0) // 인벤토리 아이템 텝 이 활성 화 되어 있을 때 만 // {// 어짜피 디스 에이블 할꺼지만 보험 차원 에서 .. // else // executevent (ev_showrefineryCancelInteface); // } quebrar; case "sortbutton": // if (m_inventab.gettopindex () == 0) // 인벤토리 아이템 텝 이 활성 화 되어 있을 때 만 // {// 어짜피 디스 에이블 할꺼지만 보험 차원 에서 .. sortItem (m_invenitem); //função de comando SaveInventoryOrder(); // } quebrar; // case "InventoryTab0": // 인벤토리 아이템 텝 클릭 // m_sortBtn.EnableWindow(); // m_selectedItemTab = INVENTORY_ITEM_TAB; // SetItemCount(); // pausa; // case "InventoryTab1": // 퀘스트 아이템 텝 클릭 // m_sortBtn.DisableWindow(); // m_selectedItemTab = QUEST_ITEM_TAB; // SetItemCount(); // pausa; case "BtnWindowExpand": SwitchExtendedInventory(); SetItemCount(); RequestItemList(); SortItem(m_invenItem); //função de comando SaveInventoryOrder(); pausa; //~ case "BtnZoomReset": //~ debug ("ResetScale"); //~ m_ObjectViewport.SetCharacterScale(0.4f); //~ pausa; } } function OnLButtonDown (WindowHandle a_WindowHandle, int X, int Y) { //~ depuração ("ClickedDown"); if (a_WindowHandle == m_BtnRotateLeft) { //~ debug ("ClickedDown Button Left"); //~ class'UIAPI_CharacterViewportWindow'.static.StartRotation( "InventoryWnd.ObjectViewport", "false"); m_ObjectViewport.StartRotation(false); } else if (a_WindowHandle == m_BtnRotateRight) { //~ debug ("ClickedDown Button Right"); //~ class'UIAPI_CharacterViewportWindow'.static.StartRotation( "InventoryWnd.ObjectViewport", "true"); m_ObjectViewport.StartRotation(true); //~ else if (a_WindowHandle == m_BtnZoomIn) //~ { //~ m_ObjectViewport.StartZoom(false); //~ } //~ else if (a_WindowHandle == m_BtnZoomOut) //~ { //~ m_ObjectViewport.StartZoom(true); //~ } } function OnLButtonUp (WindowHandle a_WindowHandle, int X, int Y) { //~ debug ("ClickedUp"); if (a_WindowHandle == m_BtnRotateLeft) { //~ class'UIAPI_CharacterViewportWindow'.static.EndRotation( "InventoryWnd.ObjectViewport"); m_ObjectViewport.EndRotation(); } else if (a_WindowHandle == m_BtnRotateRight) { //~ class'UIAPI_CharacterVisewportWindow'.static.EndRotation( "InventoryWnd.ObjectViewport"); m_ObjectViewport.EndRotation(); } //~ else if (a_WindowHandle == m_BtnZoomIn) //~ { //~ m_ObjectViewport.EndZoom(); //~} //~ else if (a_WindowHandle == m_BtnZoomOut) //~ { //~ m_ObjectViewport.EndZoom(); //~ } } //#ifdef CT26P3 function SortItem( ItemWindowHandle ItemWnd) { local int i, j; local int invenLimit; item ItemInfo local; local EItemType eItemType; local int numAtivo; local int numArma; local int numArmor; local int numAccessary; local int numEtcItem; local int numAncientCrystalEnchantAm; local int numAncientCrystalEnchantWp; local int numCrystalEnchantAm; local int numCrystalEnchantWp; local int numBlessEnchantAm; local int numBlessEnchantWp; local int numEnchantAm; local int numEnchantWp; local int numIncEnchantPropAm; local int numIncEnchantPropWp; local int numPotion; local int numElixir; local int numSeta; local int numBolt; local int numReceita; local int próximoSlot; local int testInt; local Array<ItemInfo> AssetList; local Array<ItemInfo> Lista de Armas; local Array<ItemInfo> ArmorList; local Array<ItemInfo> AccesaryList; local Array<ItemInfo> EtcItemList; // etc item 구분 local Array<ItemInfo> AncientCrystalEnchantAmList; local Array<ItemInfo> AncientCrystalEnchantWpList; local Array<ItemInfo> CrystalEnchantAmList; local Array<ItemInfo> CrystalEnchantWpList; local Array<ItemInfo> BlessEnchantAmList; local Array<ItemInfo> BlessEnchantWpList; local Array<ItemInfo> EnchantAmList; //local Array<ItemInfo> EnchantAttrList; local Array<ItemInfo> EnchantWpList; local Array<ItemInfo> IncEnchantPropAmList; local Array<ItemInfo> IncEnchantPropWpList; local Array<ItemInfo> PotionList; local Array<ItemInfo> ElixirList; local Array<ItemInfo> ArrowList; local Array<ItemInfo> BoltList; local Array<ItemInfo> RecipeList; // 무게 순 정렬을 위한 변수 local ItemInfo temp; debug("Classificando o item inventado"); numAtivo = 0; numArma = 0; numArmadura = 0; numAcessório = 0; numPoção = 0; numEtcItem = 0; numAncientCrystalEnchantAm = 0; numAncientCrystalEnchantWp = 0; numCrystalEnchantAm = 0; numCrystalEnchantWp = 0; numBlessEnchantAm = 0; numBlessEnchantWp = 0; numIncEnchantPropAm = 0; numIncEnchantPropWp = 0; numEnchantAm = 0; numEnchantWp = 0; numPoção = 0; numElixir = 0; numSeta = 0; numBolt = 0; numReceita = 0; próximoSlot = 0; invenLimit = m_invenItem.GetItemNum(); // 1. 아이템들을 종류별로 구분 for (i = 0; i < invenLimit; ++i) { m_invenItem.GetItem(i, item); if(!IsValidItemID(item.ID)) { continue; } eItemType = EItemType(item.ItemType); switch (eItemType) { case ITEM_ASSET: AssetList[numAsset] = item; numAtivo = numAtivo + 1; pausa; case ITEM_WEAPON: WeaponList[numWeapon] = item; numArma = numArma + 1; pausa; case ITEM_ARMOR: ArmorList[numArmor] = item; numArmadura = numArmadura + 1; pausa; case ITEM_ACCESSARY: AccesaryList[numAccessary] = item; numAcessório = numAcessório + 1; pausa; case ITEM_ETCITEM: testInt = item.ItemSubType; //debug("gggggggg" $ testInt); //debug(int(item.ItemSubType)); switch (EEtcItemType(item.ItemSubType)) { case ITEME_ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_AM: AncientCrystalEnchantAmList[numAncientCrystalEnchantAm] = item; numAncientCrystalEnchantAm = numAncientCrystalEnchantAm + 1; pausa; case ITEME_ENCHT_ATTR_ANCIENT_CRYSTAL_ENCHANT_WP: AncientCrystalEnchantWpList[numAncientCrystalEnchantWp] = item; numAncientCrystalEnchantWp = numAncientCrystalEnchantWp + 1; pausa; case ITEME_ENCHT_ATTR_CRYSTAL_ENCHANT_AM: CrystalEnchantAmList [numCrystalEnchantAm] = item; numCrystalEnchantAm = numCrystalEnchantAm + 1; pausa; case ITEME_ENCHT_ATTR_CRYSTAL_ENCHANT_WP: CrystalEnchantWpList [numCrystalEnchantWp] = item; numCrystalEnchantWp = numCrystalEnchantWp + 1; pausa; case ITEME_BLESS_ENCHT_AM: BlessEnchantAmList[numBlessEnchantAm] = item; numBlessEnchantAm = numBlessEnchantAm + 1; pausa; caso ITEME_BLESS_ENCHT_WP: BlessEnchantWpList[numBlessEnchantWp] = item; numBlessEnchantWp = numBlessEnchantWp + 1; pausa; case ITEME_ENCHT_AM: EnchantAmList [numEnchantAm] = item; numEnchantAm = numEnchantAm + 1; pausa; case ITEME_ENCHT_WP: EnchantWpList[numEnchantWp] = item; numEnchantWp = numEnchantWp + 1; pausa; case ITEME_ENCHT_ATTR_INC_PROP_ENCHT_AM: IncEnchantPropAmList[numIncEnchantPropAm] = item; numIncEnchantPropAm = numIncEnchantPropAm + 1; pausa; case ITEME_ENCHT_ATTR_INC_PROP_ENCHT_WP: IncEnchantPropWpList[numIncEnchantPropWp] = item; numIncEnchantPropWp = numIncEnchantPropWp + 1; pausa; case ITEME_POTION: PotionList[numPotion] = item; numPotion = numPotion + 1; pausa; case ITEME_ELIXIR: ElixirList[numElixir] = item; numElixir = numElixir + 1; pausa; case ITEME_ARROW: ArrowList[numArrow] = item; numSeta = numSeta + 1; pausa; case ITEME_BOLT: BoltList[numBolt] = item; numBolt = numBolt + 1; pausa; case ITEME_RECIPE: RecipeList[numRecipe] = item; numReceita = numReceita + 1; pausa; padrão: EtcItemList[numEtcItem] = item; numEtcItem = numEtcItem + 1; pausa; } quebrar; default: debug("hein???"); EtcItemList[numEtcItem] = item; numEtcItem = numEtcItem + 1; pausa; } } // 2. 구분 된 아이템들을 각 리스트 당 무게순으로 정렬 for (i = 0; i < numAsset; ++i) { for (j = 0; j < numAsset - i; ++j) { if (j < numAsset - 1) { if (AssetList[j].Weight <AssetList[j + 1].Weight) { temp = AssetList[j]; ListadeAtivos[j] = ListadeAtivos[j + 1]; Lista de ativos[j + 1] = temp; } } } } for (i = 0; i < numWeapon; ++i) { for (j = 0; j < numWeapon - i; ++j) { if (j < numWeapon - 1) { if (Lista de Armas[j]. Peso < Lista de Armas[j + 1]. Peso) { temp = Lista de Armas[j]; Lista de Armas[j] = Lista de Armas[j + 1]; Lista de Armas[j + 1] = temp; } } } } for (i = 0; i < numArmor; ++i) { for (j = 0; j < numArmor - i; ++j) { if (j < numArmor - 1) { if (ArmorList[j].Weight < ArmorList[j + 1].Weight) { temp = ArmorList[j]; ArmorList[j] = ArmorList[j + 1]; ArmorList[j + 1] = temp; } } } } for (i = 0; i < numAccessary; ++i) { for (j = 0; j < numAccessary - i; ++j) { if (j < numAccessary - 1) { if (AccessaryList[j].Weight < Lista de acessórios[j + 1]. Peso) { temp = Lista de acessórios[j]; ListaAcessórios[j] = ListaAcessórios[j + 1]; Lista de acessórios[j + 1] = temp; } } } } for (i = 0; i < numAncientCrystalEnchantAm; ++i) { for (j = 0; j < numAncientCrystalEnchantAm - i; ++j) { if (j < numAncientCrystalEnchantAm - 1) { if (AncientCrystalEnchantAmList[j].Weight < AncientCrystalEnchantAmList[j + 1].Weight) { temp = AncientCrystalEnchantAmList[j]; AncientCrystalEnchantAmList[j] = AncientCrystalEnchantAmList[j + 1]; AncientCrystalEnchantAmList[j + 1] = temp; } } } } for (i = 0; i < numAncientCrystalEnchantWp; ++i) { for (j = 0; j < numAncientCrystalEnchantWp - i; ++j) { if (j < numAncientCrystalEnchantWp - 1) { if (AncientCrystalEnchantWpList[j].Weight < AncientCrystalEnchantWpList[j + 1].Weight) { temp = AncientCrystalEnchantWpList[j]; AncientCrystalEnchantWpList[j] = AncientCrystalEnchantWpList[j + 1]; AncientCrystalEnchantWpList[j + 1] = temp; } } } } for (i = 0; i < numCrystalEnchantAm; ++i) { for (j = 0; j < numCrystalEnchantAm - i; ++j) { if (j < numCrystalEnchantAm - 1) { if (CrystalEnchantAmList[j].Weight < CrystalEnchantAmList[j + 1].Weight) { temp = CrystalEnchantAmList[j]; CrystalEnchantAmList[j] = CrystalEnchantAmList[j + 1]; CrystalEnchantAmList[j + 1] = temp; } } } } for (i = 0; i < numCrystalEnchantWp; ++i) { for (j = 0; j < numCrystalEnchantWp - i; ++j) { if (j < numCrystalEnchantWp - 1) { if (CrystalEnchantWpList[j].Weight < CrystalEnchantWpList[j + 1].Weight) { temp = CrystalEnchantWpList[j]; CrystalEnchantWpList[j] = CrystalEnchantWpList[j + 1]; CrystalEnchantWpList[j + 1] = temp; } } } } for (i = 0; i < numBlessEnchantAm; ++i) { for (j = 0; j < numBlessEnchantAm - i; ++j) { if (j < numBlessEnchantAm - 1) { if (BlessEnchantAmList[j].Weight < BlessEnchantAmList[j + 1].Weight) { temp = BlessEnchantAmList[j]; BlessEnchantAmList[j] = BlessEnchantAmList[j + 1]; BlessEnchantAmList[j + 1] = temp; } } } } for (i = 0; i < numBlessEnchantWp; ++i) { for (j = 0; j < numBlessEnchantWp - i; ++j) { if (j < numBlessEnchantWp - 1) { if (BlessEnchantWpList[j].Weight < BlessEnchantWpList[j + 1].Weight) { temp = BlessEnchantWpList[j]; BlessEnchantWpList[j] = BlessEnchantWpList[j + 1]; BlessEnchantWpList[j + 1] = temp; } } } } for (i = 0; i < numEnchantAm; ++i) { for (j = 0; j < numEnchantAm - i; ++j) { if (j < numEnchantAm - 1) { if (EnchantAmList[j].Weight < EnchantAmList[j + 1].Weight) { temp = EnchantAmList[j]; EnchantAmList[j] = EnchantAmList[j + 1]; EnchantAmList[j + 1] = temp; } } } } for (i = 0; i < numEnchantWp; ++i) { for (j = 0; j < numEnchantWp - i; ++j) { if (j < numEnchantWp - 1) { if (EnchantWpList[j].Weight < EnchantWpList[j + 1].Weight) { temp = EnchantWpList[j]; EnchantWpList[j] = EnchantWpList[j + 1]; EnchantWpList[j + 1] = temp; } } } } for (i = 0; i < numIncEnchantPropAm; ++i) { for (j = 0; j < numIncEnchantPropAm - i; ++j) { if (j < numIncEnchantPropAm - 1) { if (IncEnchantPropAmList[j].Weight < IncEnchantPropAmList[j + 1].Weight) { temp = IncEnchantPropAmList[j]; IncEnchantPropAmLista[j] = IncEnchantPropAmLista[j + 1]; IncEnchantPropAmList[j + 1] = temp; } } } } for (i = 0; i < numIncEnchantPropWp; ++i) { for (j = 0; j < numIncEnchantPropWp - i; ++j) { if (j < numIncEnchantPropWp - 1) { if (IncEnchantPropWpList[j].Weight < IncEnchantPropWpList[j + 1].Weight) { temp = IncEnchantPropWpList[j]; IncEnchantPropWpList[j] = IncEnchantPropWpList[j + 1]; IncEnchantPropWpList[j + 1] = temp; } } } } for (i = 0; i < numPotion; ++i) { for (j = 0; j < numPotion - i; ++j) { if (j < numPotion - 1) { if (PotionList[j].Weight < Lista de Poções[j + 1]. Peso) { temp = Lista de Poções[j]; Lista de Poções[j] = Lista de Poções[j + 1]; Lista de Poções[j + 1] = temp; } } } } for (i = 0; i < numElixir; ++i) { for (j = 0; j < numElixir - i; ++j) { if (j < numElixir - 1) { if (ListaElixir[j]. Peso < Lista de Elixir[j + 1]. Peso) { temp = Lista de Elixir[j]; Lista de Elixir[j] = Lista de Elixir[j + 1]; ElixirList[j + 1] = temp; } } } } for (i = 0; i < numArrow; ++i) { for (j = 0; j < numArrow - i; ++j) { if (j < numArrow - 1) { if (ArrowList[j].Weight < ArrowList[j + 1].Weight) { temp = ArrowList[j]; ArrowList[j] = ArrowList[j + 1]; ArrowList[j + 1] = temp; } } } } for (i = 0; i < numBolt; ++i) { for (j = 0; j < numBolt - i; ++j) { if (j < numBolt - 1) { if (BoltList[j].Weight < BoltList[j + 1].Weight) { temp = BoltList[j]; BoltList[j] = BoltList[j + 1]; BoltList[j + 1] = temp; } } } } for (i = 0; i < numRecipe; ++i) { for (j = 0; j < numRecipe - i; ++j) { if (j < numRecipe - 1) { if (RecipeList[j].Weight < RecipeList[j + 1].Weight) { temp = BoltList[j]; ListaLista de Receitas[j] = ListaLista de Receitas[j + 1]; Lista de receitas[j + 1] = temp; } } } } for (i = 0; i < numEtcItem; ++i) { for (j = 0; j < numEtcItem - i; ++j) { if (j < numEtcItem - 1) { if (EtcItemList[j].Weight < EtcItemList[j + 1].Weight) { temp = EtcItemList[j]; EtcItemList[j] = EtcItemList[j + 1]; EtcItemList[j + 1] = temp; } } } } // 3. 인벤에 다시 삽입 InvenClear(); for (i = 0; i < numAsset; ++i) { m_invenItem.SetItem(nextSlot + i, AssetList[i]); } nextSlot = nextSlot + numAsset; for (i = 0; i < numWeapon; ++i) { m_invenItem.SetItem(nextSlot + i, WeaponList[i]); } próximoSlot = próximoSlot + numArma; for (i = 0; i < numArmor; ++i) { m_invenItem.SetItem(nextSlot + i, ArmorList[i]); } nextSlot = nextSlot + numArmor; for (i = 0; i < numAccessary; ++i) { m_invenItem.SetItem(nextSlot + i, AccesaryList[i]); } nextSlot = nextSlot + numAccessary; for (i = 0; i < numAncientCrystalEnchantAm; ++i) { m_invenItem.SetItem(nextSlot + i, AncientCrystalEnchantAmList[i]); } nextSlot = nextSlot + numAncientCrystalEnchantAm; for (i = 0; i < numAncientCrystalEnchantWp; ++i) { m_invenItem.SetItem(nextSlot + i, AncientCrystalEnchantWpList[i]); } nextSlot = nextSlot + numAncientCrystalEnchantWp; for (i = 0; i < numCrystalEnchantAm; ++i) { m_invenItem.SetItem(nextSlot + i, CrystalEnchantAmList[i]); } nextSlot = nextSlot + numCrystalEnchantAm; for (i = 0; i < numCrystalEnchantWp; ++i) { m_invenItem.SetItem(nextSlot + i, CrystalEnchantWpList[i]); } nextSlot = nextSlot + numCrystalEnchantWp; for (i = 0; i < numBlessEnchantAm; ++i) { m_invenItem.SetItem(nextSlot + i, BlessEnchantAmList[i]); } nextSlot = nextSlot + numBlessEnchantAm; for (i = 0; i < numBlessEnchantWp; ++i) { m_invenItem.SetItem(nextSlot + i, BlessEnchantWpList[i]); } nextSlot = nextSlot + numBlessEnchantWp; for (i = 0; i < numEnchantAm; ++i) { m_invenItem.SetItem(nextSlot + i, EnchantAmList[i]); } nextSlot = nextSlot + numEnchantAm; for (i = 0; i < numEnchantWp; ++i) { m_invenItem.SetItem(nextSlot + i, EnchantWpList[i]); } nextSlot = nextSlot + numEnchantWp; for (i = 0; i < numIncEnchantPropAm; ++i) { m_invenItem.SetItem(nextSlot + i, IncEnchantPropAmList[i]); } nextSlot = nextSlot + numIncEnchantPropAm; for (i = 0; i < numIncEnchantPropWp; ++i) { m_invenItem.SetItem(nextSlot + i, IncEnchantPropWpList[i]); } nextSlot = nextSlot + numIncEnchantPropWp; for (i = 0; i < numPotion; ++i) { m_invenItem.SetItem(nextSlot + i, PotionList[i]); } nextSlot = nextSlot + numPotion; for (i = 0; i < numElixir; ++i) { m_invenItem.SetItem(nextSlot + i, ElixirList[i]); } nextSlot = nextSlot + numElixir; for (i = 0; i < numArrow; ++i) { m_invenItem.SetItem(nextSlot + i, ArrowList[i]); } nextSlot = nextSlot + numSeta; for (i = 0; i < numBolt; ++i) { m_invenItem.SetItem(nextSlot + i, BoltList[i]); } nextSlot = nextSlot + numBolt; for (i = 0; i < numRecipe; ++i) { m_invenItem.SetItem(nextSlot + i, RecipeList[i]); } nextSlot = nextSlot + numRecipe; for (i = 0; i < numEtcItem; ++i) { m_invenItem.SetItem(nextSlot + i, EtcItemList[i]); } nextSlot = nextSlot + numEtcItem; // TTP #42420 m_invenCount를 InvenClear() 에서 초기화하므로 다시 셋팅해 줘야 합니다. - gorilazina 10.10.29. m_invenCount = nextSlot; debug("[Sorting Inven Item]" $ nextSlot $ "itens ordenados completos!!"); } //#endif //CT26P3 - gorillazin function UpdateTalismanSlotActivation() { local int Contagem; local int; usuário local UserInfo; local ItemInfo DisableItem; DisableItem.IconName = "L2UI_CT1.Inventory_DF_TalismanSlot_Disable"; //Encontre isso e preencha com o final. if( GetPlayerInfo( user ) ) { Count = user.nTalismanNum; //~ debug ("Ativação do Talismã" @ user.nTalismanNum); if (Contagem > 0) { for (i = 0; i<Contagem; i++) { m_Talisman_Disable[ i ].HideWindow(); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].Clear(); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].AddItem( DisableItem ); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].DisableWindow(); m_equipItem[ EQUIPITEM_Deco1 + i ].EnableWindow(); } } else { for (i = 0; i<6; i++) { m_Talisman_Disable[ i ].ShowWindow(); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].Clear(); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].AddItem( DisableItem ); m_equipItem[ EQUIPITEM_Deco1 + i ].DisableWindow(); } } //~ { //~ for (i = 0; i<Count; i++) //~ { //~ m_equipItem[ EQUIPITEM_Deco1 + i ].ClearItem(); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].AddItem( DisableItem ); //~ m_equipItem[ EQUIPITEM_Deco1 + i ].DisableWindow(); //~ } //~ } } } function UpdateCloakSlotActivation() { //~ local int i; usuário local UserInfo; local ItemInfo DisableItem; DisableItem.IconName = "L2UI_CT1.Inventory_DF_CloakSlot_Disable"; //Encontre isso e preencha com o final. if( GetPlayerInfo( user ) ) { //~ depurar ("FullArmor" @ user.nFullArmor); if (user.nFullArmor > 0) { m_CloakSlot_Disable.HideWindow(); //~ for (i = 0; i<Count; i++) //~ { //~ m_equipItem[ EQUIPITEM_Cloak ].Clear(); m_equipItem[ EQUIPITEM_Cloak ].EnableWindow(); //~ } } else { m_CloakSlot_Disable.ShowWindow(); m_equipItem[ EQUIPITEM_Cloak ].DisableWindow(); } } else { //~ debug("UserInfoRetrival Failed"); } } function HandleSetMaxCount(string param) { local int ExtraBeltCount; ParseInt (param, "Inventário", m_MaxInvenCount); ParseInt (param, "questItem", m_MaxQuestItemInvenCount); ParseInt (param, "extrabelt", ExtraBeltCount); //~ debug ("SetMaxCount Called"); m_invenItem.SetExpandItemNum(0, ExtraBeltCount); InvenLimitUpdate(); SetItemCount(); } function HandleChangeCharacterPawn(string param) { ParseInt (param, "MeshType", m_MeshType); switch (m_MeshType) { case 0: // 휴먼_전사_남 m_ObjectViewport.SetCharacterScale(1.f); m_ObjectViewport.SetCharacterOffsetX(-2); m_ObjectViewport.SetCharacterOffsetY(-6); pausa; case 1: // 휴먼_전사_여 m_ObjectViewport.SetCharacterScale(1.03f); m_ObjectViewport.SetCharacterOffsetX(-2); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; caso 8: // 휴먼_법사_남 m_ObjectViewport.SetCharacterScale(1.047f); m_ObjectViewport.SetCharacterOffsetX(2); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; case 9: // 휴먼_법사_여 m_ObjectViewport.SetCharacterScale(1.07f); m_ObjectViewport.SetCharacterOffsetX(-1); m_ObjectViewport.SetCharacterOffsetY(-9); pausa; case 6: // 엘프_전사_남 m_ObjectViewport.SetCharacterScale(0.98f); m_ObjectViewport.SetCharacterOffsetX(-2); m_ObjectViewport.SetCharacterOffsetY(-7); pausa; case 7: // 엘프_전사_여 m_ObjectViewport.SetCharacterScale(1.04f); m_ObjectViewport.SetCharacterOffsetX(-4); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; // case q // 엘프_법사_남 // SetCharacterOffsetX(-2); // SetCharacterOffsetY(-7); // 엘프_법사_여 // SetCharacterOffsetX(-4); // SetCharacterOffsetY(-8); case 2: // 다엘_전사_남 m_ObjectViewport.SetCharacterScale(0.99f); m_ObjectViewport.SetCharacterOffsetX(-1); m_ObjectViewport.SetCharacterOffsetY(-7); pausa; case 3: // 다엘_전사_여 m_ObjectViewport.SetCharacterScale(1.015f); m_ObjectViewport.SetCharacterOffsetX(-1); m_ObjectViewport.SetCharacterOffsetY(-7); pausa; // 다엘_법사_남 // SetCharacterOffsetX(-1); // SetCharacterOffsetY(-7); // 다엘_법사_여 // SetCharacterOffsetX(-1); // SetCharacterOffsetY(-7); case 10: // 오크_전사_남 m_ObjectViewport.SetCharacterScale(0.953f); m_ObjectViewport.SetCharacterOffsetX(0); m_ObjectViewport.SetCharacterOffsetY(-9); pausa; case 11: // 오크_전사_여 m_ObjectViewport.SetCharacterScale(0.97f); m_ObjectViewport.SetCharacterOffsetX(2); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; case 12: // 오크_법사_남 m_ObjectViewport.SetCharacterScale(0.955f); m_ObjectViewport.SetCharacterOffsetX(-2); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; case 13: // 오크_법사_여 m_ObjectViewport.SetCharacterScale(0.985f); m_ObjectViewport.SetCharacterOffsetX(0); m_ObjectViewport.SetCharacterOffsetY(-8); pausa; case 4: // 드워프_ 남 m_ObjectViewport.SetCharacterScale(1.043f); m_ObjectViewport.SetCharacterOffsetX(0); m_ObjectViewport.SetCharacterOffsetY(-2); pausa; case 5: // 드워프_여 m_ObjectViewport.SetCharacterScale(1.09f); m_ObjectViewport.SetCharacterOffsetX(0); m_ObjectViewport.SetCharacterOffsetY(-6); pausa; case 14: // 카마엘_ 남 m_ObjectViewport.SetCharacterScale(0.993f); m_ObjectViewport.SetCharacterOffsetX(-5); m_ObjectViewport.SetCharacterOffsetY(-6); pausa; case 15: // 카마엘_여 m_ObjectViewport.SetCharacterScale(1.01f); m_ObjectViewport.SetCharacterOffsetX(0); m_ObjectViewport.SetCharacterOffsetY(-6); pausa; } } function OnTimer(int TimerID) { // local ItemInfo TheItemInfo; // local ItemInfo TheItemInfoClear; switch (TimerID) { case 1130: // AddSystemMessageString("1130 trabalho"); if (GetDecoIndex(TaliInfo1.Id) != -1) EquipItemUpdate(TaliInfo1); if (GetDecoIndex(TaliInfo2.Id) != -1) EquipItemUpdate(TaliInfo2); if (GetDecoIndex(TaliInfo3.Id) != -1) EquipItemUpdate(TaliInfo3); if (GetDecoIndex(TaliInfo4.Id) != -1) EquipItemUpdate(TaliInfo4); if (GetDecoIndex(TaliInfo5.Id) != -1) EquipItemUpdate(TaliInfo5); if (GetDecoIndex(TaliInfo6.Id) != -1) EquipItemUpdate(TaliInfo6); FingerItemUpdateStart(); EarItemUpdateStart(); // UpdateTalismanSlotActivation(); // m_equipItem[17].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); // m_equipItem[18].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); // m_equipItem[19].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); // m_equipItem[20].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); // m_equipItem[21].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); // m_equipItem[22].GetItem(0, TheItemInfo); // AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); ExecuteEvent(EV_InventoryUpdateItem); m_hInventoryWnd.KillTimer(1130); pausa; // case 1131: // AddSystemMessageString("1130 trabalho"); //FingerItemUpdateStart(); // EarItemUpdateStart(); // UpdateTalismanSlotActivation(); /* m_equipItem[17].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); TheItemInfo = TheItemInfoClear; m_equipItem[18].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); TheItemInfo = TheItemInfoClear; m_equipItem[19].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); TheItemInfo = TheItemInfoClear; m_equipItem[20].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); TheItemInfo = TheItemInfoClear; m_equipItem[21].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); TheItemInfo = TheItemInfoClear; m_equipItem[22].GetItem(0, TheItemInfo); AddSystemMessageString(string(GetDecoIndex(TheItemInfo.Id))); AddSystemMessageString(TheItemInfo.Name); */ // TheItemInfo = TheItemInfoClear; // ExecuteEvent(EV_InventoryUpdateItem); // m_hInventoryWnd.KillTimer(1131); // m_hInventoryWnd.SetTimer(1131,3000); // pausa; } } propriedades padrão { }
  4. what file need deleth or edit for remove video freya hard edited client h5 ???
  5. This interface have Target status ? Shift argument other player ??
  6. https://youtu.be/Qje_kJZDsm0 Check time 1:26 is can add this deadz customizado free or pay ??
  7. can make edit amorgrp.dat and etcitemgrp.dat for this server https://dragon-network.net/ patch work more this 2x file cant add make crash can add macro fixo 3x barra same this link
  8. https://www.youtube.com/watch?v=Qje_kJZDsm0&lc=z234cd1pdlnizjn2cacdp434l353f2qdakcn20bptg5w03c010c.1582092395885792 WITH MAKE THIS, LF SEE TARGET WEAPON (ARGUMENT) VIDEO 1:25 ANY CAN MAKE THIS OR SAY ME WITH MAKE IDK FILE NEED SCRITP , OR ONLY EDIT targetstatuswnd ....
  9. any can help me with patch or with add this one patch for check argument ppl ? darkdelux patch have this more is pay lf free no have money
  10. help editer new argument plz , with add new argument refinerywnd / refoptionwnd in interface.u path deaz 2.1
×
×
  • Create New...