Remedy (script)

From Elanthipedia
Revision as of 21:39, 4 May 2015 by THIRESDR (talk | contribs) (fix some little things and added in breaking of herbs)
Jump to navigation Jump to search
Remedy (script)
Category Crafting
Front-end Genie
Author Thires


Description

Remedy crafting script, you need things pre-dryed or crushed.

Also having all the tools (bowl, mixing stick, mortar, pestle, sieve) would be helpful, hehe

It will keep cycling through till main ingredient is exhausted or you are mind locked.

Added in breaking of herbs and it will keep going for the option keep instead of stopping after one time.

Had to change the book from remedy book to remed book.

So no keep is for just training, keep is for well keeping. Have fun

Instructions

.remedy project herb catalyst

or

.remedy project herb catalyst herb

or

.remedy project herb catalyst keep

or

.remedy project herb catalyst herb keep

or

.remedy project herb catalyst herb break

or

.remedy project herb catalyst herb break keep

You get the idea

Container variables are at the top, 3 of them

One for crafting tools (water, alcohol, catalyst, pestle, mortar, remedy book... you get the idea)

One for storage (dried herb or crushed herb)

One for junk (used when there isn't a bucket or such around)

Script

action put #queue clear; send 1 $lastcommand when ^\.\.\.wait|^Sorry, you may only type

debuglevel 10

action var sieve yes when Upon completion you see some particulate clouding up the mixture|^A thick froth coats
action var smell yes when As you finish, the mixture begins to transition colors|takes on an odd hue
action var turn yes when Clumps of material stick to the sides|^Once finished you notice clumps of material
action var catalyst yes when ^You need another catalyst material to continue crafting
action var alcohol yes when ^You need another splash of alcohol to continue crafting some unfinished
action var water yes when ^You need another splash of water to continue crafting some unfinished
action var herb yes when ^You need another prepared herb to continue crafting
action var done yes when Applying the final touches, you complete working
###action goto Needmore when ^There is not enough

action var snap $1 when ^You count out (\d+) pieces of material there\.


if ("%0" = "") then {
	echo Usage is: remedy <project> <material> <catalyst> <material/break/keep> <break/keep> <break/keep>
	echo You can use example: coal.nugget or red.flower or need be
	echo you can grab other items using similar method
	echo example: first.coal.nugget, second.red.flower...
	echo So .remedy salve sufil coal.nugget
	echo If you want to keep what you make do this
	echo .remedy salve sufil coal.nugget keep
	echo .remedy ointment red.flower coal.nugget plovik keep
	echo .remedy salve sufil coal.nugget break
	echo Will break bigger pieces into piece of 5 for use. I hope...
	exit
}
	
var project %1
var material1 %2
var material2 %3
var material3 %4

var craftcontainer utility tote
var storagecontainer schematics tube
var junkcontainer carryall

if matchre("%project", "\b(salve|cream|ungent|balm|ointment|poultice)\b")) then var mortar yes
if matchre("%project", "\b(tonic|wash|potion|draught|elixir)\b")) then var bowl yes

GetMat:
	var crushed no
	var smell no
	var sieve no
	var turn no
	var catalyst no
	var alcohol no
	var water no
	var herb no
	var done no
	var snap 
	
	if (("%4" = "break") || ("%5" = "break") || ("%6" = "break")) then goto Break
	if "$righthandnoun" = "%material1" then goto Studybook
		else send get my %material1
			
	match Studybook You get
	match Studybook You pick
	match Studybook You are
	match End referring
	matchwait
	
StudyBook:
	send get my remed book
	send study my book
	pause
	send put my book in my %craftcontainer
	pause 0.8
	
Start:
	pause 0.8
	if "%mortar" = "yes" then goto Mortar
		elseif "%bowl" = "yes" then goto Bowl
	
Main:
	pause 0.8
	if "%done" = "yes" then goto Done
		elseif "%alcohol" = "yes" then goto Alcohol
			elseif "%water" = "yes" then goto Water
				elseif "%catalyst" = "yes" then goto Catalyst
					elseif "%sieve" = "yes" then goto Sieve
						elseif "%herb" = "yes" then goto Herb
					elseif "%smell" = "yes" then goto Smell
				elseif "%turn" = "yes" then goto Turn
			elseif "%mortar" = "yes" then goto Crush
		elseif "%bowl" = "yes" then goto Mix
	pause 0.8
	goto Main		

Break:
	pause 0.8
	send get my %material1
	pause 0.8
	send count my %material1
	pause 0.8
	if (%snap < 5) then goto Needmore
		elseif (%snap > 5) then {
			send mark my %material1 at 5
			pause 0.8
			send break my %material1
			pause 0.8
			send put my other %material1 in my %storagecontainer
			pause 0.8
			send count my %material1
			pause 3
		}
	if (%snap != 5) then {
		send put my %material1 in my %storagecontainer
		pause 0.8
		send get other %material1 from my %storagecontainer
		pause 0.8
		send count my %material1
	}
	pause 0.8
	goto StudyBook
	
Mortar:
	var mixer mortar
	pause 0.8
	send get my mortar
	pause 0.8
	send put my %material1 in my mortar
	pause 0.8
	
Crush:
	if "$righthandnoun" != "pestle" then {
		if "$righthandnoun" != "" then send put my $righthandnoun in my %craftcontainer
		pause 0.8
		send get my pestle
	}
	pause 0.8
	if ("%crushed" = "yes") then send crush my %project in my %mixer with my pestle
		else send crush my %material1 in my %mixer with my pestle
	var crushed yes
	pause 0.8
	goto Main
	
Bowl:
	var mixer bowl
	pause 0.8
	send get my bowl
	pause 0.8
	send put my %material1 in my bowl
	pause 0.8
	
Mix:
	if "$righthandnoun" != "stick" then {
		if "$righthandnoun" != "" then send put my $righthandnoun in my %craftcontainer
		pause 0.8
		send get my mix stick
	}
	pause 0.8
	if ("%crushed" = "yes") then send mix my %mixer with my stick
		else send mix my %mixer with my stick
	var crushed yes
	pause 0.8
	goto Main
	
Catalyst:
	pause 0.8
	if (matchre ("$righthandnoun", "\b(pestle|stick)\b") then {
		send put my $righthandnoun in my %craftcontainer
		pause 0.8
	}
	pause 0.8
	send get my %material2
	pause 0.8
	send put my %material2 in my %mixer
	pause 0.8
	send put my %material2 in my %craftcontainer
	var catalyst no
	pause 0.8
	goto Main
	
Water:
	pause 0.8
	if (matchre ("$righthandnoun", "\b(pestle|stick)\b") then {
		send put my $righthandnoun in my %craftcontainer
		pause 0.8
	}
	pause 0.8
	send get my water
	pause 0.8
	send pour my water in my %mixer
	pause 0.8
	send put my water in my %craftcontainer
	var water no
	pause 0.8
	goto Main
	
Alcohol:
	pause 0.8
	if (matchre ("$righthandnoun", "\b(pestle|stick)\b") then {
		send put my $righthandnoun in my %craftcontainer
		pause 0.8
	}
	pause 0.8
	send get my alcohol
	pause 0.8
	send pour my alcohol in my %mixer
	pause 0.8
	send put my alcohol in my %craftcontainer
	var alcohol no
	pause 0.8
	goto Main
	
Smell:
	pause 0.8
	send smell my %project
	pause 0.8
	var smell no
	pause 0.8
	goto Main
	
Turn:
	pause 0.8
	send turn my %mixer
	var turn no
	pause 0.8
	goto Main
	
Sieve:
	pause 0.8
	if (matchre ("$righthandnoun", "\b(pestle|stick)\b") then {
		send put my $righthandnoun in my %craftcontainer
		pause 0.8
	}
	pause 0.8
	send get my sieve
	pause 0.8
	send push my %project with my sieve
	pause 1
	send put my sieve in my %craftcontainer
	var sieve no
	pause 0.8
	goto Main
	
Herb:
	if (matchre ("$righthandnoun", "\b(pestle|stick)\b") then {
		send put my $righthandnoun in my %craftcontainer
		pause 0.8
	}
	pause 0.8
	send get my %material3
	pause 0.8
	send put my %material3 in my %mixer
	pause 0.8
	send put my %material3 in my %storagecontainer
	pause 0.8
	var herb no
	pause 0.8
	goto Main
	
Done:
	pause 0.8
	send put my $righthandnoun in my %craftcontainer
	pause 0.8
	if (("%4" = "keep") || ("%5" = "keep")  || ("%6" = "keep")) then goto Keep
	pause 3
	if (matchre ("$roomobjs", "\b(bucket|bin|barrel)\b") then send get my %project from my %mixer;put my %project in $1
		else send get my %project from my %mixer;put my %project in my %junkcontainer
	echo *****************
	echo ***** DONE ******
	echo *****************
	pause 0.8
	send put my %mixer in my %craftcontainer
	if ($Alchemy.LearningRate > 33) then exit
	pause 2
	goto GetMat
	
Keep:
	pause 0.8
	send get my %project from my %mixer;put my %project in my %craftcontainer
	pause 0.8
	send put my %mixer in my %craftcontainer
	pause 3
	if ($Alchemy.LearningRate > 33) then exit
	pause 0.8
	goto GetMat
	
Needmore:
	pause 0.8
	echo Don't have enough material to cut. Script ending.
	send put my %material1 in my %storagecontainer
	pause 0.8
	exit
	
End:
	echo Materials exhausted. Script ending.
	exit