Jewelry container problem

Help section from before the user variable changes that broke all macros

Moderator: MacroQuest Developers

Danim
decaying skeleton
decaying skeleton
Posts: 7
Joined: Sat Oct 05, 2002 1:36 pm

Jewelry container problem

Post by Danim » Tue Oct 29, 2002 1:12 pm

Hi, I've recently started my 7th shawl and for those of you who've done it know how much of a pain it is.

Well its at the point where I've got to get jewelcraft up and I took a tailoring macro *found in the macro depot, thanks whoever posted it really helped a lot* and have modified it to be used in Jewelcraft, this is what I've come up with so far.

Code: Select all

| 
| - Jewelcraft.mac - 
| 
| Need to have inventory window open already. 
|
| Useage: 
|   /macro Jewelcraft "#Item1" "#Item2" "#Item3" "#Item4" "#Item5" 
| 
| Replace # with the amount of that particular item.  Do not 
| feed it values greater than 9, and less than 1. 
| 

#include routines.mac 
#turbo 

#event NoCombine "You cannot combine these items in this container type!" 

Sub Main 
:startallover 
   /if "$p0"=="" /goto :Done 

   /call FindCombiner Jewelry Making
|   /echo Jewelry Making container in inventory slot $return 
|   /click right inv $return 

      |v0 is the Jewelry Making container 
   /varset v0 $return 


   /sendkey down ctrl 

:MakeItems 

      |v6 is used to tell it which slot in v0 
      |to place the next item you pickup 
   /varset v6 0 

|   /echo p0: "$p0"  p1: "$p1"  p2: "$p2"  p3: "$p3"  p4: "$p4"  

|--> First item 
      |v7 is used to hold each parameter in, so i can re-use code 
   /varset v7 "$p0" 

   /call PlaceItems 
   /if $return==0 /goto :Done 
   /if $return==10 /goto :nofind 

|   /echo $v0 - $v1 - $v2 - $v3 - $v4 - $v5 - $v6 - $v7 
|   /echo p0: "$p0"  p1: "$p1"  p2: "$p2"  p3: "$p3"  p4: "$p4"  

   /if "$p1"=="" /goto :combine 

|--> Second item 
   /varset v7 "$p1" 

   /call PlaceItems 
   /if $return==0 /goto :Done 
   /if $return==10 /goto :nofind 

   /if "$p2"=="" /goto :combine 
|--> Third item 
   /varset v7 "$p2" 

   /call PlaceItems 
   /if $return==0 /goto :Done 
   /if $return==10 /goto :nofind 

   /if "$p3"=="" /goto :combine 
|--> Fourth item 
   /varset v7 "$p3" 

   /call PlaceItems 
   /if $return==0 /goto :Done 
   /if $return==10 /goto :nofind 

   /if "$p4"=="" /goto :combine 
|--> Fifth item 
   /varset v7 "$p4" 

   /call PlaceItems 
   /if $return==0 /goto :Done 
   /if $return==10 /goto :nofind 

:Combine 
   /click left pack $v0 combine 
   /delay 10 
   /doevents 
   /if $return==99 /goto :Done 
   /click left auto 

   /goto :Done 

:nofind 
   /echo Didn't find: $arg(2,"$v7") 
   /goto :Done 
:zero 
   /echo You did not provide a value between 1 & 9 
:Done 
   /sendkey up ctrl 
/goto :startallover 
/return 


sub PlaceItems 
|   /echo $v0 - $v1 - $v2 - $v3 - $v4 - $v5 - $v6 - $v7 
   /for v1 1 to 9 
|      /echo "$v7" -> "$arg(1,"$v7")" 
      /if "$arg(1,"$v7")"=="$v1" /goto :DoneChecking 
   /next v1 
   /echo Char1 of v7 not 1-9 
      |This line only gets executed if the first char in $v7 is not 
      |a number between 1 & 9 
   /return 0 

   :DoneChecking 
|   /echo $v0 - $v1 - $v2 - $v3 - $v4 - $v5 - $v6 - $v7 

      |loops using v5 as a counter, from 1 to v1, to place the correct 
      |number of items stated in $v7 into your Jewelry Making kit, using v6 
      |to determine which slot in the kit to place the item(s) that were 
      |located.  v5 is set to 1 & incremented for each individual item, 
      |whereas v6 is only reset to 0 at the beginning of :MakeItems 
   /for v5 1 to $v1 
|      /echo v5: $v5 v1: $v1 
|      /echo $v7 -> $arg(1,"$v7") 
      /finditem similar $arg(2,"$v7") 
      /if $find()==FALSE /return 10   |a returned value of 10 is 
                  |/goto :nofind in sub main 
      /click left pack $v0 $v6 
      /varadd v6 1 
   /next v5 
/return $v1 

Sub Event_NoCombine 
/return 99 
unfortunatly I've been far from successful, as soon as I start it its saying I have no jewelry container *Which is in my 8th general slot* can anyone give me a hand with whats wrong, would really appreciate it.

User avatar
Stargazer
a lesser mummy
a lesser mummy
Posts: 32
Joined: Mon Sep 30, 2002 3:30 pm

Post by Stargazer » Tue Oct 29, 2002 2:28 pm

Just change your /call FindCombiner line to:

Code: Select all

  
 /call FindCombiner "Jewelry Making" 
and it should work fine.

Danim
decaying skeleton
decaying skeleton
Posts: 7
Joined: Sat Oct 05, 2002 1:36 pm

Thanks

Post by Danim » Tue Oct 29, 2002 4:43 pm

Thanks, its working like a dream now, glad to see it wasn't much wrong with it.

*sits and watches his increase skill spam :lol: *