PDA

View Full Version : My purifying script



jpatter123
08-18-2012, 08:59 PM
I wrote it in stormfront. There maybe better versions available in lich, but when I can I like to write my own scripts. If this works for you great! This script removes gems from one container (variable %1) and puts them in jars in container 2 (variable %2) it will put orbs in container 3(variable %3) and if no jar is present containing the gems it will get an empty jar from container 4 (variable %4). For example if your gems to be purified are in your cloak, your jars of gems are in your backpack, you keep orbs in your sack, and empty jars in your satchel the command would be

.puregem cloak backpack sack satchel

The gem list is not exhaustive, matter of fact it needs a lot added to it. To add a gem to the script (we'll use a gem called fake stone for the example) you would add

match fastone fake stone

fastone:
setvariable gem fake stone
goto purify

the script is set to end if you are injured, but since my bard is on the same account as one of my empaths and my other empath will be turned off in 7 days I will be re-writing the injured part to work with ;useherbs and I'll update when I do add it. I have encountered one problem and that is the rummage command will not differentiate when rummage in my bacpack ingredient uncut diamond will pull both uncut diamonds and uncut maernstrike diamonds. I will probably be adding support for a full backpack since my bards backpack already has 120 pounds in it and I feel most people with a full time purifying bard will need to use at least 2 storage containers. Those of you who use a locker char and want some help editing the script to work between two chars let me know and I'll be glad to help(ie pass the gem to char 2 who stores the gem in a jar or char 2 who hands over the jar to the bard). Enjoy


#Script usage is: .puregem (container 1 unpurified gems) (container 2 purified gems) (container 3 orb gems) (container 4 empty jars)
#Where containers are:
#1 - gems needing to be purified
#2 - purified gems
#3 - orb gems
#4 - empty jars
#NOTE: If a container is full, the script may fail.
#NOTE: If both hands are removed, the script will fail.

debug off

start:
setvariable gem
pause 1
put look in my %1
match shimshard shimmertine shard
match mstone green malachite stone
match rquartz piece of rose quartz
match btourmaline blue tourmaline
match ctourmaline clear tourmaline
match bltourmaline black tourmaline
match gtourmaline green tourmaline
match stopaz smoky topaz
match fjacinth fiery jacinth
match gzircon green zircon
match yzircon yellow zircon
match bspinel blue spinel
match bpearl black pearl
match ppearl pink pearl
match fagate fire agate
match agem aquamarine gem
match gblazestar golden blazestar
match cblazestar crimson blazestar
match ablazestar azure blazestar
match eblazestar emerald blazestar
match demerald a dragon's-tear emerald
match uemerald uncut emerald
match ddiamond dragon's-tear diamond
match mdiamond uncut maernstrike diamond
match wchalcedony piece of white chalcedony
match udiamond uncut diamond
match sruby star ruby
match druby dragon's-tear ruby
match syruby sylvarraend ruby
match uruby uncut ruby
match wyrdshard wyrdshard
match bonyx banded onyx
match ctopaz clear topaz
match gtopaz golden topaz
match gpearl grey pearl
match ofaenor olivine faenor-bloom
match otopaz orange imperial topaz
match etopaz green errisian topaz
match ptopaz pink topaz
match mopal moonglae opal
match wopal white opal
match bopal black opal
match gamber golden amber
match rcarbuncle red carbuncle
match yheliodor pale yellow heliodor
match yhyacinth yellow hyacinth
match pglimaerstone peach glimaerstone
match ceglimaerstone cerulean glimaerstone
match cglimaerstone clear glimaerstone
match sglimaerstone smoky glimaerstone
match dsapphire dragonseye sapphire
match gsapphire green sapphire
match bsapphire blue sapphire
match ysapphire yellow sapphire
match vsapphire violet sapphire
match ssapphire star sapphire
match pisapphire pink sapphire
match psapphire pale water sapphire
match gglimaerstone green glimaerstone
match rcoral red coral
match pmstone pink morganite stone
match rstone rhodochrosite stone
match pstone polished jet stone
match tstone turquoise stone
match vspinel violet spinel
match ggarnet green garnet
match wpearl white pearl
match rspinel red spinel
match llazuli lapis lazuli
match spgarnet orange spessartine garnet
match empty There is nothing in there.
Matchwait

shimshard:
setvariable gem shimmertine shard
goto purify

pglimaerstone:
setvariable gem peach glimaerstone
goto purify

pmstone:
setvariable gem morganite stone
goto purify

mstone:
setvariable gem malachite stone
goto purify

ceglimaerstone:
setvariable gem cerulean glimaerstone
goto purify

rquartz:
setvariable gem rose quartz
goto purify

mopal:
setvariable gem moonglae opal
goto purify

ggarnet:
setvariable gem green garnet
goto purify

gblazestar:
setvariable gem golden blazestar
goto purify

rcoral:
setvariable gem red coral
goto purify

gglimaerstone:
setvariable gem green glimaerstone
goto purify

ppearl:
setvariable gem pink pearl
goto purify

llazuli:
setvariable gem lapis
goto purify

btourmaline:
setvariable gem blue tourmaline
goto purify

ctourmaline:
setvariable gem clear tourmaline
goto purify

bltourmaline:
setvariable gem black tourmaline
goto purify

gtourmaline:
setvariable gem green tourmaline
goto purify

stopaz:
setvariable gem smoky topaz
goto purify

fjacinth:
setvariable gem fiery jacinth
goto purify

yzircon:
setvariable gem yellow zircon
goto purify

gzircon:
setvariable gem green zircon
goto purify

spgarnet:
setvariable gem spessartine garnet
goto purify

rspinel:
setvariable gem red spinel
goto purify

bspinel:
setvariable gem blue spinel
goto purify

bonyx:
setvariable gem banded onyx
goto purify

bpearl:
setvariable gem black pearl
goto purify

wpearl:
setvariable gem white pearl
goto purify

vspinel:
setvariable gem violet spinel
goto purify


fagate:
setvariable gem fire agate
goto purify

Cglimaerstone:
Setvariable gem clear glimaerstone
Goto purify

Sglimaerstone:
Setvariable gem smoky glimaerstone
Goto purify

Rstone:
setvariable gem rhodochrosite stone
goto purify

pstone:
setvariable gem jet stone
goto purify

tstone:
setvariable gem turquoise stone
goto purify

ofaenor:
setvariable gem olivine faenor-bloom
goto purify

Dsapphire:
Setvariable gem dragonseye sapphire
Goto purify

Gsapphire:
setvariable gem green sapphire
goto purify

pisapphire:
setvariable gem pink sapphire
goto purify

bsapphire:
setvariable gem blue sapphire
goto purify

ysapphire:
setvariable gem yellow sapphire
goto purify

ssapphire:
setvariable gem star sapphire
goto purify

psapphire:
setvariable gem water sapphire
goto purify

vsapphire:
setvariable gem violet sapphire
goto purify

agem:
setvariable gem aquamarine gem
goto purify

Yhyacinth:
Setvariable gem yellow hyacinth
Goto purify

Yheliodor:
Setvariable gem yellow heliodor
Goto purify

Rcarbuncle:
Setvariable gem red carbuncle
Goto purify

Gamber:
Setvariable gem golden amber
Goto purify

wchalcedony:
setvariable gem white chalcedony
goto purify

wopal:
setvariable gem white opal
goto purify

bopal:
setvariable gem black opal
goto purify

ablazestar:
setvariable gem azure blazestar
goto purify

cblazestar:
setvariable gem crimson blazestar
goto purify

eblazestar:
setvariable gem emerald blazestar
goto purify

jacinth:
setvariable gem jacinth
goto purify

sruby:
setvariable gem star ruby
goto purify

syruby:
setvariable gem sylvarraend ruby
goto purify

gpearl:
setvariable gem grey pearl
goto purify

uruby:
setvariable gem uncut ruby
goto purify

druby:
setvariable gem dragon ruby
goto purify

ctopaz:
setvariable gem clear topaz
goto purify

gtopaz:
setvariable gem golden topaz
goto purify

otopaz:
setvariable gem imperial topaz
goto purify

etopaz:
setvariable gem errisian topaz
goto purify

ptopaz:
setvariable gem pink topaz
goto purify

demerald:
setvariable gem dragon emerald
goto purify

uemerald:
setvariable gem uncut emerald
goto purify

ddiamond:
setvariable gem dragon diamond
goto purify

udiamond:
setvariable gem uncut diamond
goto purify

mdiamond:
setvariable gem maernstrike diamond
goto purify

wyrdshard:
setvariable gem wyrdshard
goto purify

empty:
echo **********************
echo *** ALL GEMS DONE ***
echo **********************
exit

purify:
put get my %gem% from my %1
puremore:
pause 4
put prep 1004
put cast my %gem%
match puremore its crystalline structure reforming as the gem becomes more perfect.
match puremore appearing smoother and more pure in color.
match done the crystalline structure of the gem improves somewhat.
match done you hear it crack loudly and strain under the force of the song.
match orb you sense that it cannot be purified any further.
match exploded damage
matchwait

done:
put rummage my %2 ingredient %gem%
match havejar and remove
match nojar but can't seem to locate any ingredient like that.
match fulljar The glass jar is full!
matchwait

fulljar:
put put my jar in my %1
goto done

havejar:
put put my %gem% in my jar
put put jar in my %2
goto start

nojar:
put get my jar from my %4
put put my %gem% in my jar
put put my jar in my %2
goto start

orb:
put put my %gem% in my %3
waitfor you put
goto start

exploded:
echo *********************************
echo *** CHECK YOUR HEALH STATUS ***
echo *********************************
exit

DaCapn
08-19-2012, 12:37 AM
A+ for the extensive effort of writing this as a SF script. I have to admit, when I saw it, I was thinking "if I were to write that, I'd write a quick bash script to just iterate over an array to echo out all of that text." Then I realized that would be writing a script to generate a script that accomplishes essentially the same task as the script that generated it but less efficiently. There certainly good options available on the lich repo. But as always, good on ya' for rolling your own.