[DIALOG D_ALCHEMY_ITEM_PROPS]
40, 20
src.closealldialogs
PAGE 0
resizepic 0 0 5054 550 465
checkertrans 10 10 530 445
gumppictiled 10 205 170 45 2624
checkertrans 10 205 170 45
gumppictiled 10 390 365 30 2624
checkertrans 10 390 365 30
gumppictiled 10 285 170 70 2624
checkertrans 10 285 170 70
gumppictiled 10 10 530 30 2624
checkertrans 10 10 530 30
gumppictiled 10 45 160 155 2624
checkertrans 10 45 160 155
gumppictiled 175 45 365 100 2624
checkertrans 175 45 365 100
gumppictiled 175 150 365 100 2624
checkertrans 175 150 365 100
gumppictiled 175 255 365 100 2624
checkertrans 175 255 365 100
gumppictiled 175 360 365 60 2624
checkertrans 175 360 365 60

tilepic 40 60 <SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.ID>

xmfhtmlgumpcolor 190 15 200 35 1044001 0 0 32767 //alchemy menu

xmfhtmlgumpcolor 180 55 100 30 1011152 0 0 32767 //item
dhtmlgump 330 55 250 30 0 0 <DEF.BFONT_WHITE><SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.NAME><DEF.BFONTE>
IF (0<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>)
LOCAL.CRAFTCHANCE=<eval <floatval ((<src.alchemy>/(<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>/10))*0.75)-0.05>/10000>
LOCAL.EXCEPTIONALCHANCE=<eval <floatval ((<src.armslore>/(<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>/10))*0.75)-0.30>/10000>
ELSE
LOCAL.CRAFTCHANCE=100
LOCAL.EXCEPTIONALCHANCE=100
ENDIF
IF (<LOCAL.CRAFTCHANCE> > 100)
LOCAL.CRAFTCHANCE=100
ENDIF
IF (<LOCAL.EXCEPTIONALCHANCE> > 100)
LOCAL.EXCEPTIONALCHANCE=100
ENDIF

xmfhtmlgumpcolor 180 100 120 30 1044057 0 0 32767 //success chance
dtext 420 100 1153 <FVAL <LOCAL.CRAFTCHANCE>*10>%
xmfhtmlgumpcolor 180 120 120 30 1044058 0 0 32767 //exceptional chance
dtext 420 120 1153 <FVAL <LOCAL.EXCEPTIONALCHANCE>*10>%

dhtmlgump 180 160 250 30 0 0 <DEF.BFONT_WHITE>alchemy<DEF.BFONTE>
dtext 420 160 1153 <FVAL <serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>>

xmfhtmlgumpcolor 30 260 100 30 1044055 0 0 32767
dhtmlgump 200 260 300 200 0 0 <DEF.BFONT_WHITE><serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.RESMAKE><DEF.BFONTE>

xmfhtmlgumpcolor 30 360 100 30 1044056 0 0 32767
//xmfhtmlgumpcolor 200 360 300 30 1044059 0 0 32767
//xmfhtmlgumpcolor 200 380 300 30 1044152 0 0 32767

resizepic 10 430 5120 530 23
checkertrans 10 430 530 23

button 20 431 0fae 0fb0 1 0 1
xmfhtmlgumpcolor 55 433 100 30 1044150 0 0 32767 //back

button 320 431 4005 4006 1 0 2
xmfhtmlgumpcolor 355 433 100 30 1044151 0 0 32767 //make now

[DIALOG D_ALCHEMY_ITEM_PROPS BUTTON]
ON=1
DIALOG d_newcraft_dialog_alchemy

ON=2
SRC.F_CRAFTITEM_ALCHEMY

[DIALOG d_newcraft_dialog_alchemy]
40, 20
src.closealldialogs
PAGE 0 
resizepic 0 0 5054 550 465
gumppictiled 10 10 530 30 2624
checkertrans 10 10 530 30
gumppictiled 10 45 160 280 2624
checkertrans 10 45 160 280
gumppictiled 175 45 365 280 2624
checkertrans 175 45 365 280
//////
gumppictiled 10 330 160 40 2624
checkertrans 10 330 160 40
gumppictiled 175 330 365 40 2624
checkertrans 175 330 365 40
gumppictiled 10 375 530 85 2624
checkertrans 10 375 530 85
xmfhtmlgumpcolor 190 15 200 35 1044001 0 0 32767 //alchemy menu
xmfhtmlgumpcolor 10 45 150 35 1044010 0 0 32767 //categories

xmfhtmlgumpcolor 40 <EVAL 65+(22*0)> 100 35 1044530 0 0 32767 //refresh
button 10 <EVAL 65+(22*0)> 4005 4006 0 2 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*1)> 100 35 1044531 0 0 32767 //agility
button 10 <EVAL 65+(22*1)> 4005 4006 0 3 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*2)> 100 35 1044532 0 0 32767 //nightsight
button 10 <EVAL 65+(22*2)> 4005 4006 0 4 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*3)> 100 35 1044533 0 0 32767 //heal
button 10 <EVAL 65+(22*3)> 4005 4006 0 5 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*4)> 100 35 1044534 0 0 32767 //strength
button 10 <EVAL 65+(22*4)> 4005 4006 0 6 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*5)> 100 35 1044535 0 0 32767 //poison
button 10 <EVAL 65+(22*5)> 4005 4006 0 7 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*6)> 100 35 1044536 0 0 32767 //cure
button 10 <EVAL 65+(22*6)> 4005 4006 0 8 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*7)> 100 35 1044537 0 0 32767 //explosion
button 10 <EVAL 65+(22*7)> 4005 4006 0 9 1
xmfhtmlgumpcolor 40 <EVAL 65+(22*8)> 100 35 1074832 0 0 32767 //earthen mixtures
button 10 <EVAL 65+(22*8)> 4005 4006 0 10 1

xmfhtmlgumpcolor 280 45 150 35 1044011 0 0 32767 //selections
xmfhtmlgumpcolor 20 340 100 35 1044012 0 0 32767 //notices
dhtmlgump 200 330 320 35 0 0 <DEF.BFONT_WHITE><SRC.CTAG.ALCHEMY.MESSAGE><DEF.BFONTE>

button 290 425 4005 4006 1 0 23
xmfhtmlgumpcolor 325 427 100 35 1044013 0 0 32767 //make last
button 290 400 4005 4006 1 0 10000
IF (!(<SRC.TAG0.MARKITEM>))
xmfhtmlgumpcolor 325 402 100 35 1044017 0 0 32767 //mark item
ELSE
xmfhtmlgumpcolor 325 402 100 35 1044018 0 0 32767 //do not mark
ENDIF

button 20 425 0fb1 0fb3 1 0 0
xmfhtmlgumpcolor 55 427 100 35 1011441 0 0 32767 //exit

PAGE 2
xmfhtmlgumpcolor 215 65 150 35 1044538 0 0 32767 //Refresh
button 180 65 4005 4006 1 0 2
button 500 65 0FAB 0FAD 1 0 1002
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044539 0 0 32767 //Total Refresh
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 3
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1003

PAGE 3
xmfhtmlgumpcolor 215 65 150 35 1044540 0 0 32767 //agility
button 180 65 4005 4006 1 0 4
button 500 65 0FAB 0FAD 1 0 1004
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044541 0 0 32767 //greater agility
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 5
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1005

PAGE 4
xmfhtmlgumpcolor 215 65 150 35 1044542 0 0 32767 //night sight
button 180 65 4005 4006 1 0 6
button 500 65 0FAB 0FAD 1 0 1006

PAGE 5
xmfhtmlgumpcolor 215 65 150 35 1044543 0 0 32767 //lesser heal
button 180 65 4005 4006 1 0 7
button 500 65 0FAB 0FAD 1 0 1007
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044544 0 0 32767 //heal
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 8
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1008
xmfhtmlgumpcolor 215 <EVAL 65+(22*2)> 150 35 1044545 0 0 32767 //greater heal
button 180 <EVAL 65+(22*2)> 4005 4006 1 0 9
button 500 <EVAL 65+(22*2)> 0FAB 0FAD 1 0 1009

PAGE 6
xmfhtmlgumpcolor 215 65 150 35 1044546 0 0 32767 //strength
button 180 65 4005 4006 1 0 10
button 500 65 0FAB 0FAD 1 0 1010
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044547 0 0 32767 //greater strength
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 11
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1011

PAGE 7
xmfhtmlgumpcolor 215 65 150 35 1044548 0 0 32767 //lesser poison
button 180 65 4005 4006 1 0 12
button 500 65 0FAB 0FAD 1 0 1012
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044549 0 0 32767 //poison
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 13
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1013
xmfhtmlgumpcolor 215 <EVAL 65+(22*2)> 150 35 1044550 0 0 32767 //greater poison
button 180 <EVAL 65+(22*2)> 4005 4006 1 0 14
button 500 <EVAL 65+(22*2)> 0FAB 0FAD 1 0 1014
xmfhtmlgumpcolor 215 <EVAL 65+(22*3)> 150 35 1044551 0 0 32767 //deadly poison
button 180 <EVAL 65+(22*3)> 4005 4006 1 0 15
button 500 <EVAL 65+(22*3)> 0FAB 0FAD 1 0 1015

PAGE 8
xmfhtmlgumpcolor 215 65 150 35 1044552 0 0 32767 //lesser cure
button 180 65 4005 4006 1 0 16
button 500 65 0FAB 0FAD 1 0 1016
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044553 0 0 32767 //cure
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 17
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1017
xmfhtmlgumpcolor 215 <EVAL 65+(22*2)> 150 35 1044554 0 0 32767 //greater cure
button 180 <EVAL 65+(22*2)> 4005 4006 1 0 18
button 500 <EVAL 65+(22*2)> 0FAB 0FAD 1 0 1018

PAGE 9
xmfhtmlgumpcolor 215 65 150 35 1044555 0 0 32767 //lesser explosion
button 180 65 4005 4006 1 0 19
button 500 65 0FAB 0FAD 1 0 1019
xmfhtmlgumpcolor 215 <EVAL 65+(22*1)> 150 35 1044556 0 0 32767 //explosion
button 180 <EVAL 65+(22*1)> 4005 4006 1 0 20
button 500 <EVAL 65+(22*1)> 0FAB 0FAD 1 0 1020
xmfhtmlgumpcolor 215 <EVAL 65+(22*2)> 150 35 1044557 0 0 32767 //greater explosion
button 180 <EVAL 65+(22*2)> 4005 4006 1 0 21
button 500 <EVAL 65+(22*2)> 0FAB 0FAD 1 0 1021

PAGE 10
xmfhtmlgumpcolor 215 65 150 35 1072881 0 0 32767 //hovering wisp
button 180 65 4005 4006 1 0 22
button 500 65 0FAB 0FAD 1 0 1022

[DIALOG d_newcraft_dialog_alchemy BUTTON]
ON=0
SRC.CTAG.ALCHEMY.MESSAGE=

ON=2 23
IF (<ARGN1> != 23)
F_SELECT_ALCHEMYITEM <EVAL <ARGN1>-2>
ENDIF
SRC.F_CRAFTITEM_ALCHEMY

ON=1002 1022
F_SELECT_ALCHEMYITEM <EVAL <ARGN1>-1002>
DIALOG D_ALCHEMY_ITEM_PROPS

ON=10000
IF (<SRC.TAG0.MARKITEM>)
SRC.TAG.MARKITEM=
ELSE
SRC.TAG.MARKITEM=1
ENDIF
DIALOG d_newcraft_dialog_alchemy

[FUNCTION F_CRAFTITEM_ALCHEMY]
LOCAL.ARMSLOREPROPCHANCE=<FEVAL <FLOATVAL ((<SRC.ARMSLORE>/3.25)+(<SRC.ALCHEMY>/3.25)+(<SRC.LUCK>/45))+5>>
	IF (<LOCAL.ARMSLOREPROPCHANCE> > 98)
	LOCAL.ARMSLOREPROPCHANCE=98
	ENDIF
LOCAL.ITEMIDPROPCHANCE=<FEVAL <FLOATVAL ((<SRC.ITEMID>/3.25)+(<SRC.ALCHEMY>/3.25)+(<SRC.LUCK>/45))+5>>
	IF (<LOCAL.ITEMIDPROPCHANCE> > 98)
	LOCAL.ITEMIDPROPCHANCE=98
	ENDIF
IF (0<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>)
LOCAL.CRAFTCHANCE=<eval <floatval ((<src.alchemy>/(<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>/10))*0.75)-0.05>/10000>
LOCAL.EXCEPTIONALCHANCE=<eval <floatval ((<src.armslore>/(<serv.itemdef.<SRC.CTAG.ALCHEMY.ITEM>.skillmake.1.val>/10))*0.75)-0.30>/10000>
ELSE
LOCAL.CRAFTCHANCE=100
LOCAL.EXCEPTIONALCHANCE=100
ENDIF
REF1=<SRC.FINDTYPE.t_mortar>
IF (!(<SRC.CTAG0.ALCHEMY.ITEM>))
SRC.CTAG.ALCHEMY.MESSAGE=You must select an item to make.
ELIF (!(<SRC.FINDTYPE.t_mortar>))
SRC.CTAG.ALCHEMY.MESSAGE=The tool must be on your person to use.
ELIF (!(<SRC.CANMAKESKILL <SRC.CTAG.ALCHEMY.ITEM>>))
SRC.CTAG.ALCHEMY.MESSAGE=You don't have the required skills to attempt this item.
ELIF (!(<SRC.CANMAKE <SRC.CTAG.ALCHEMY.ITEM>>))
SRC.CTAG.ALCHEMY.MESSAGE=You don't have the components needed to make that.
ELIF (<SRC.CTAG0.IJUSTCRAFTED>)
SRC.CTAG.ALCHEMY.MESSAGE=You must wait a few moments before crafting another item.
ELIF (<LOCAL.CRAFTCHANCE> >= <R1,100>)
SRC.SKILLGAIN alchemy <EVAL (<SRC.ALCHEMY>/10)+1>
SRC.CTAG.IJUSTCRAFTED=1
SRC.TIMERF 2,CTAG.IJUSTCRAFTED=
SRC.CTAG.ALCHEMY.MESSAGE=You craft the item.
SERV.NEWITEM=<SRC.CTAG.ALCHEMY.ITEM>
SERV.LOG <NAME> (<UID>) crafts <NEW.NAME> (<NEW.BASEID>)
NEW.BOUNCE
SRC.CONSUME <SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.RESOURCES>
	IF (<REF1.TAG0.CHARGES> == 1)
	SRC.MESSAGE @,,2 1044262
	REF1.TIMERF 1,REMOVE
	ELSE
	REF1.TAG0.CHARGES --
	REF1.RESENDTOOLTIP 1
	ENDIF
ELSE
SRC.CTAG.ALCHEMY.MESSAGE=You failed to create the item, and some of your materials are lost.
	FOR <SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.RESOURCES.COUNT>
	SRC.CONSUME <EVAL (30*<SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.RESOURCES.<dLOCAL._FOR>.VAL>)/100> <SERV.ITEMDEF.<SRC.CTAG.ALCHEMY.ITEM>.RESOURCES.<dLOCAL._FOR>.KEY>
	ENDFOR
	IF (<REF1.TAG0.CHARGES> == 1)
	SRC.MESSAGE @,,2 1044262
	REF1.TIMERF 1,REMOVE
	ELSE
	REF1.TAG0.CHARGES --
	REF1.RESENDTOOLTIP 1
	ENDIF
ENDIF
DIALOG d_newcraft_dialog_alchemy

[FUNCTION F_SELECT_ALCHEMYITEM]
DOSWITCH <ARGN1>
SRC.CTAG.ALCHEMY.ITEM=i_potion_refresh
SRC.CTAG.ALCHEMY.ITEM=i_potion_refreshtotal
SRC.CTAG.ALCHEMY.ITEM=i_potion_agility
SRC.CTAG.ALCHEMY.ITEM=i_potion_agilitygreat
SRC.CTAG.ALCHEMY.ITEM=i_potion_nightsight
SRC.CTAG.ALCHEMY.ITEM=i_potion_healless
SRC.CTAG.ALCHEMY.ITEM=i_potion_heal
SRC.CTAG.ALCHEMY.ITEM=i_potion_healgreat
SRC.CTAG.ALCHEMY.ITEM=i_potion_strength
SRC.CTAG.ALCHEMY.ITEM=i_potion_strengthgreat
SRC.CTAG.ALCHEMY.ITEM=i_potion_poisonless
SRC.CTAG.ALCHEMY.ITEM=i_potion_poison
SRC.CTAG.ALCHEMY.ITEM=i_potion_poisongreat
SRC.CTAG.ALCHEMY.ITEM=i_potion_poisondeadly
SRC.CTAG.ALCHEMY.ITEM=i_potion_cureless
SRC.CTAG.ALCHEMY.ITEM=i_potion_cure
SRC.CTAG.ALCHEMY.ITEM=i_potion_curegreat
SRC.CTAG.ALCHEMY.ITEM=i_potion_explosionless
SRC.CTAG.ALCHEMY.ITEM=i_potion_explosion
SRC.CTAG.ALCHEMY.ITEM=i_potion_explosiongreat
SRC.CTAG.ALCHEMY.ITEM=i_hovering_wisp
ENDDO

[EOF]