2024 년에도 울온을

스토리 이벤트 : 타락한 브리튼 총독 / 블로그 8만 방문 이벤트 종료 / 10월 할로윈 이벤트 중

서드파티 & 매크로/Orion 사용법 & 스크립트

[Orion] 아이템 옮기기

작성자 : Tina ♥ 님 2024. 11. 26. 22:43
[작성자] Tina ♥ 님


옮길 아이템의 색상, 이름, 타입중 하나를 선택하여 실행하면

 

커서로 지정하여 아이템을 옮길 수 있도록 하는 스크립입니다.

function MoveItemTo_COLOR() {
   Orion.CharPrint(self, '33', '아이템 색상 이동 - 아이템을 선택해주세요!');   
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var item_color  = Orion.FindObject('cursor').Color();      
      if (item_color == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
      var bag = Orion.FindObject('cursor').Container();      
      if (bag == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }      
   }
   Orion.CharPrint(self, '44', '어디로 이동할까요?');      
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var box = Orion.FindObject('cursor').Serial();      
      if (box == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
   }      

   while (Orion.MoveItemType(any , item_color, bag, 0, box)) {   
         Orion.Wait(1200);   
   }
   
}


function MoveItemTo_NAME() {
   Orion.CharPrint(self, '33', '아이템 이름 이동 - 아이템을 선택해주세요!');   
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var item_name = Orion.FindObject('cursor').Name();      
      if (item_name == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
      var bag = Orion.FindObject('cursor').Container();      
      if (bag == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }      
   }
   Orion.CharPrint(self, '44', '어디로 이동할까요?');      
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var box = Orion.FindObject('cursor').Serial();      
      if (box == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
   }      
   
   var all_items = Orion.FindTypeEx(any, any, bag);        
     for (var i = 0; i < all_items.length; i++) {
             if (Orion.Contains(all_items[i].Properties(), item_name))
            {                    
            Orion.MoveItem(all_items[i].Serial(), 0, box);
            Orion.Wait(1200);                    
             }                
     }

}


function MoveItemTo_TYPE() {
   Orion.CharPrint(self, '33', '아이템 타입 이동 - 아이템을 선택해주세요!');   
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var item_type = Orion.FindObject('cursor').Graphic();      
      if (item_type == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
      var bag = Orion.FindObject('cursor').Container();      
      if (bag == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }      
   }
   Orion.CharPrint(self, '44', '어디로 이동할까요?');      
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var box = Orion.FindObject('cursor').Serial();      
      if (box == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
   }      
   while (Orion.MoveItemType(item_type , any, bag, 0, box)) {   
         Orion.Wait(1200);   
   }
   
}

 

 

 


 

 

이번 Treasures of the Shattered Sanctum 유물을

옮긴다면 아래와 같이 적용하여 사용할 수 있습니다.

 

// 1옴길아이템 먼저 선택 2 넣을 상자 선택
function 이벤트유물넣기() {
   Orion.CharPrint(self, '33', '아이템 색상 이동 - 아이템을 선택해주세요!');   
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var item_color  = Orion.FindObject('cursor').Color();      
      if (item_color == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
      var bag = Orion.FindObject('cursor').Container();      
      if (bag == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }      
   }
   Orion.CharPrint(self, '44', '어디로 이동할까요?');      
   if (Orion.WaitForAddObject('cursor') == 1)
   {
      var box = Orion.FindObject('cursor').Serial();      
      if (box == null)
      {
         Orion.Print('타켓 오류 다시 선택해주세요');
         return;
      }
   }      

   while (Orion.MoveItemType(any , item_color, bag, 0, box)) {   
         Orion.Wait(1200);   
   }
   
}