Jump to content

SkyFielD

Members
  • Posts

    25
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by SkyFielD

  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. cant move tatto for this slot
  4. lf change slot zaken for slot tatto
  5. 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 { }
  6. what file need deleth or edit for remove video freya hard edited client h5 ???
  7. This interface have Target status ? Shift argument other player ??
  8. How much u sell this check argument??
  9. https://youtu.be/Qje_kJZDsm0 Check time 1:26 is can add this deadz customizado free or pay ??
  10. 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
  11. u have any news about targetstatuswnd
  12. 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 ....
  13. 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
  14. help editer new argument plz , with add new argument refinerywnd / refoptionwnd in interface.u path deaz 2.1
  15. refinerywnd com add Novo argumento patch deadz ex clarity
  16. como criar um novo argumento ou editar um já existente na lista, por exemplo, colocar clareza do argumento, deadz 2,1 or xDarkDelux thx.
  17. --How To Use!! -- Start With Weapon you need to augment EQUIPPED! -- Start With Helmet on your Char!.. IF YOU REMOVE HELMET THE AUGMENTATION WILL STOP (so you can interrupt the script anytime you want) -- Choose The Next 4 variables Correctly (Write The Exact Names with Exact Capital Letters and Same Spaces!): local lifestoneName = "Life Stone - Level 85" local gemstoneName = "Gemstone B"; local gemstone_count = 58; local npcName = "Pushkin"; -- only Pushkin(Giran)/ Wilbert(Aden) Supported! ------Dont Touch Under This Line--------- local AugStatus = 0; local count = 0; AugStatusC = 0; function getItemByName(name) local invList = GetInventory(); for item in invList.list do if (item.Name == name) then return item; end; end; end; function openAugmentWindow(name) local target = GetTarget(); if (target ~= nil) then if (target:GetName() ~= name) then Command("/target " .. name); Sleep(100); end; else Command("/target " .. name); Sleep(100); end; target = GetTarget(); if (target ~= nil) and (target:GetName() == name) then if (name == "Wilbert") then Talk(); --ClickLinkAndWait("blacksmith_wilbert005.htm"); Click("05", "Augment an item"); Sleep(100); Click("01", "Augment an item"); Sleep(100); Click("00", "Start augmenting."); --QuestReply("menu_select?ask=-503&reply=100"); Sleep(100); return true; elseif (name == "Pushkin") then Talk(); --Sleep(100); ClickLinkAndWait("blacksmith_pushkin005.htm"); Sleep(100); ClickLinkAndWait("smelting_start.htm"); Sleep(100); QuestReply("menu_select?ask=-503&reply=100") Sleep(100); return true; end; end; return false; end; function getItemByName(name) local invList = GetInventory(); for item in invList.list do if (item.Name == name) then return item; end; end; end; function openAugmentCancelWindow(name) count = 2; target = GetTarget(); if (target ~= nil) then if (target:GetName() ~= name) then Command("/target " .. name); Sleep(100); end else Command("/target " .. name); Sleep(100); end; target = GetTarget(); if (target ~= nil) and (target:GetName() == name) then if (name == "Wilbert") then Talk(); Click("05", "Augment an item"); --ClickLinkAndWait("blacksmith_wilbert005.htm"); Sleep(100); Click("02", "Remove Augment"); --ClickLinkAndWait("smelting_break.htm"); Sleep(100); Click("00", "Remove the refined Life Stone."); --ClickLink("menu_select?ask=-503&reply=200"); Sleep(100); return true; elseif (name == "Pushkin") then Talk(); ClickLinkAndWait("blacksmith_pushkin005.htm"); Sleep(100); ClickLinkAndWait("smelting_break.htm"); Sleep(100); QuestReply("menu_select?ask=-503&reply=200"); Sleep(100); return true; end; end; return false; end; weaponId = GetMe():GetEquip_WeaponId(); if (weaponId == nil) or (weaponId == 0) then ShowToClient("AUGMENT", "You Dont have Any Weapon Equiped to augment!") ; else weapon = GetInventory():FindById(weaponId); if (weapon ~= nil) and ((weapon.RefineryOp2 ~= 0) or (weapon.RefineryOp1 ~= 0)) then ShowToClient("AUGMENT", "You Must Start With Non Augmented weapon!") ; else repeat if (weapon.RefineryOp2 == 0) and (weapon.RefineryOp1 == 0) then AugStatus = 0; lifestone = getItemByName(lifestoneName); gemstone = getItemByName(gemstoneName); if (lifestone == nil) then ShowToClient("AUGMENT", "Out of life stones."); break; end; if (gemstone == nil) then ShowToClient("AUGMENT", "Out of gemstones."); AugStatus = 1; break; end; if (gemstone.ItemNum < gemstone_count) then ShowToClient("AUGMENT", "Gemstones are not enough."); AugStatus = 1; break; end; ShowToClient("AUGMENT", "Augmenting .."); AugStatusC = AugStatusC+1; GetAugmentManager():setItemId(weaponId); GetAugmentManager():setLifeStoneId(lifestone.objectId); GetAugmentManager():setGemstoneId(gemstone.objectId, gemstone_count); GetAugmentManager():Augment(); if (openAugmentWindow(npcName) == false) then ShowToClient("AUGMENT", "NPC FAIL."); AugStatus = 1; break; end; repeat Sleep(100); weapon = GetInventory():FindById(weaponId); until weapon.RefineryOp1 ~= 0 if (weapon == nil) then ShowToClient("AUGMENT", "The Weapon Couldn't be Detected!"); AugStatus = 1; break; else if (GetAugmentManager():KeepAugment(weapon.RefineryOp2) == true) or (GetAugmentManager():KeepAugment(weapon.RefineryOp1) == true) then ShowToClient("AUGMENT", "Congratulation! You have achieved a desired augment!") AugStatus = 1; else ShowToClient("AUGMENT", "Obtained Useless Augment ...") end; end; count = 1; if (GetMe():GetEquip_HelmId() == 0) then ShowToClient("AUGMENT", "Augmentation Stoped Manualy by removing helment."); AugStatus = 1; break; end; else Sleep(100); ShowToClient("AUGMENT", "Canceling Augmentation .."); weapon = GetInventory():FindById(weaponId); if weapon == nil then ShowToClient("AUGMENT", "Weapon for cancel not detected."); count = 3 AugStatus = 1; break; end; if (count == 1) then GetAugmentManager():setItemId(weaponId); GetAugmentManager():AugmentCancel(); count = 2; end; Sleep(100); if (count == 2) and (openAugmentCancelWindow(npcName) == false) then ShowToClient("AUGMENT", "The NPC Dialog Is not Working Properly."); count = 3 AugStatus = 1; break; end; repeat Sleep(100); weapon = GetInventory():FindById(weaponId); until weapon.RefineryOp1 == 0 if not (weapon.RefineryOp1 == 0 and weapon.RefineryOp2 == 0) then ShowToClient("AUGMENT", "Augment Canceling Failed."); AugStatus = 1; break; end; if (GetMe():GetEquip_HelmId() == 0) then ShowToClient("AUGMENT", "Augmentation Stoped Manualy by removing helment."); AugStatus = 1; break; end; end; until weapon == nil or AugStatus == 1 ; ShowToClient("AUGMENT","Have Fun!"); end; end; DONT WORK ALL TIME, HE BUG STOP GOOD TIME, VERY SLOW HELP ME PLZ this script /xcfg selection argument /cfg play scritp in L2tower, i change sleep for 1000 / 1500 /100 dont work
  18. work now very thanks u man :D i am more happy.
  19. have option for dispel only char have buff not work buff other class.
  20. up, plz help me need this script
  21. no work help me plz :(
  22. erro in while delay(555) do
  23. repeat if(GetMe():GetBuffsCount() >= 1) then if (GetMe():GotBuff(1033) == true) then DeleteMyBuff(1033); -- Poison Resistance Sleep(100); end; if (GetMe():GotBuff(1353) == true) then DeleteMyBuff(1353); -- holy attack resistance bishop Sleep(100); end; end; until false; this script user l2tower need one same with this for l2adrenaline, why make party for farm have ppl all time give me buff end remover my. the configuration despell,only works if char have the buff.
  24. my name marcelo, playing l2 more 10 years, I hope I can help and learn from you. i am from brazil.
×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock