Back to "runebook" tags

Copy Runebook by Jaseowns

Description: This script will copy one rune book to another - it works best if you have one full rune book and one empty rune book.

1# Copy Runebook Script by Jaseowns
2# UO Outlands - video coming soon...
3# Requirements: two runebooks, one filled one blank - enough blank runes and regs to mark/recall
4# By default the runelist is 26 long (full runetome)
5# You can remove the list elements from runes_to_copy_list
6# Additional Info: 
7#   This script removes a rune from your "from" runetome, recalls to that location
8#   and use the description of that rune.  Once it recalls, it will attempt to Mark
9#   a blank rune and rename based on that description
10#   Assuming all goes well, it puts both runes back
11#   WARNING: if your runes are unsafe locations, this may fail.
12# References:
13#   // marked rune
14#   // recall rune 7956 0
15#   // unmarked rune
16#   // recall rune 7956 2882
17
18removelist runes_to_copy_list
19createlist runes_to_copy_list
20# The entire runebook is 16 runes you can comment these out to prevent running all runes
21pushlist runes_to_copy_list 1
22pushlist runes_to_copy_list 2
23pushlist runes_to_copy_list 3
24pushlist runes_to_copy_list 4
25pushlist runes_to_copy_list 5
26pushlist runes_to_copy_list 6
27pushlist runes_to_copy_list 7
28pushlist runes_to_copy_list 8
29pushlist runes_to_copy_list 9
30pushlist runes_to_copy_list 10
31pushlist runes_to_copy_list 11
32pushlist runes_to_copy_list 12
33pushlist runes_to_copy_list 13
34pushlist runes_to_copy_list 14
35pushlist runes_to_copy_list 15
36pushlist runes_to_copy_list 16
37
38if list runes_to_copy_list = 16 and counttype "recall rune" backpack 2882 < 16
39    overhead "Cannot continue" 34
40    overhead "You need at least 16 unmarked recall runes in your backpack" 88
41    stop
42elseif list runes_to_copy_list = 15 and counttype "recall rune" backpack 2882 < 15
43    overhead "Cannot continue" 34
44    overhead "You need at least 15 unmarked recall runes in your backpack" 88
45    stop
46elseif list runes_to_copy_list = 14 and counttype "recall rune" backpack 2882 < 14
47    overhead "Cannot continue" 34
48    overhead "You need at least 14 unmarked recall runes in your backpack" 88
49    stop
50elseif list runes_to_copy_list = 13 and counttype "recall rune" backpack 2882 < 13
51    overhead "Cannot continue" 34
52    overhead "You need at least 13 unmarked recall runes in your backpack" 88
53    stop
54elseif list runes_to_copy_list = 12 and counttype "recall rune" backpack 2882 < 12
55    overhead "Cannot continue" 34
56    overhead "You need at least 12 unmarked recall runes in your backpack" 88
57    stop
58elseif list runes_to_copy_list = 11 and counttype "recall rune" backpack 2882 < 11
59    overhead "Cannot continue" 34
60    overhead "You need at least 11 unmarked recall runes in your backpack" 88
61    stop
62elseif list runes_to_copy_list = 10 and counttype "recall rune" backpack 2882 < 10
63    overhead "Cannot continue" 34
64    overhead "You need at least 10 unmarked recall runes in your backpack" 88
65    stop
66elseif list runes_to_copy_list = 9 and counttype "recall rune" backpack 2882 < 9
67    overhead "Cannot continue" 34
68    overhead "You need at least 9 unmarked recall runes in your backpack" 88
69    stop
70elseif list runes_to_copy_list = 8 and counttype "recall rune" backpack 2882 < 8
71    overhead "Cannot continue" 34
72    overhead "You need at least 8 unmarked recall runes in your backpack" 88
73    stop
74elseif list runes_to_copy_list = 7 and counttype "recall rune" backpack 2882 < 7
75    overhead "Cannot continue" 34
76    overhead "You need at least 7 unmarked recall runes in your backpack" 88
77    stop
78elseif list runes_to_copy_list = 6 and counttype "recall rune" backpack 2882 < 6
79    overhead "Cannot continue" 34
80    overhead "You need at least 6 unmarked recall runes in your backpack" 88
81    stop
82elseif list runes_to_copy_list = 5 and counttype "recall rune" backpack 2882 < 5
83    overhead "Cannot continue" 34
84    overhead "You need at least 5 unmarked recall runes in your backpack" 88
85    stop
86elseif list runes_to_copy_list = 4 and counttype "recall rune" backpack 2882 < 4
87    overhead "Cannot continue" 34
88    overhead "You need at least 4 unmarked recall runes in your backpack" 88
89    stop
90elseif list runes_to_copy_list = 3 and counttype "recall rune" backpack 2882 < 3
91    overhead "Cannot continue" 34
92    overhead "You need at least 3 unmarked recall runes in your backpack" 88
93    stop
94elseif list runes_to_copy_list = 2 and counttype "recall rune" backpack 2882 < 2
95    overhead "Cannot continue" 34
96    overhead "You need at least 2 unmarked recall runes in your backpack" 88
97    stop
98elseif list runes_to_copy_list = 1 and counttype "recall rune" backpack 2882 < 1
99    overhead "Cannot continue" 34
100    overhead "You need at least 1 unmarked recall rune in your backpack" 88
101    stop
102endif
103
104if counttype "recall rune" backpack 0 > 0
105    overhead "Cannot continue" 34
106    overhead "Please remove any marked runes from your bag" 88
107    stop
108endif
109
110overhead "Select a runebook to copy FROM"
111setvar runebook_copy_from
112wait 500
113overhead "Select a runebook to copy TO"
114setvar runebook_copy_to
115
116
117overhead "Beginning Copy..." 88
118
119if not timerexists runes_to_copy_skill_check
120    createtimer runes_to_copy_skill_check
121    settimer runes_to_copy_skill_check 11000
122endif
123
124foreach rune_to_copy in runes_to_copy_list
125    clearsysmsg 
126    if mana < 20
127        while mana < 31
128            overhead "Waiting for at least 30 mana..." 22
129            if timer runes_to_copy_skill_check >= 11000
130                useskill 'meditation'
131                settimer runes_to_copy_skill_check 0
132            endif
133            wait 1000
134        endwhile
135    endif
136    
137    overhead "Pulling rune..." 88
138    overhead rune_to_copy 144
139
140    # Drop rune
141    dclick runebook_copy_from
142    waitforgump 1551740969
143    gumpresponse 3
144    wait 500
145    
146    if findtype "recall rune" backpack 0 as currentRune
147        gumpclose 1551740969
148        getlabel currentRune runeDescription
149        overhead runeDescription 88
150        cast Recall
151        wft 3500
152        target currentRune
153        wait 1000
154        if followers > 0
155            say 'All guard me'
156        endif        
157        cast Mark
158        wft 3500
159        if insysmsg "thus ruining thy spell"
160            overhead "Might be getting attacked... trying again."
161            cast Mark
162            wft 3500
163        endif
164        targettype "recall rune" backpack 2882
165        lift currentRune
166        drop runebook_copy_from 0 0 0
167        wait 500
168
169        if findtype "recall rune" backpack 0 as newRune
170            overhead "Rename and move to new book" 88
171            dclick newRune
172            wait 500
173            promptresponse runeDescription
174            wait 500
175            lift newRune
176            drop runebook_copy_to 0 0 0
177        else
178            overhead "Warning!" 34
179            overhead "Unable to find copied rune" 88
180        endif
181    else
182        overhead "Might be done..." 88
183    endif
184endfor
185
186overhead "Enjoy your copy!" 104
187stop