Try this:
herofield[powPoints].text -= 1
It's just stored in a text field rather than a number field is all. You can still do math with it. You just have to be a little more careful. And since you're deep into this, here's the code to determine casting mods so you can see why:
Code:
var castingmod as string
var castingno1 as number
var castingno2 as number
var length1 as number
var lengthall as number
var start2 as number
var length2 as number
var rawnumber1 as number
var rawnumber2 as number
var iteminfo as string
var divisor as number
iteminfo = ""
divisor = herofield[acCastDiv].value
if (hero.tagis[Hero.NoPowerPts] <> 0) then
~ #-#
if (pos(field[powPoints].text,"-") > 0) then
length1 = pos(field[powPoints].text,"-")
start2 = pos(field[powPoints].text,"-") + 1
lengthall = length(field[powPoints].text)
length2 = lengthall - start2
rawnumber1 = left(field[powPoints].text,length1)
castingno1 = round(rawnumber1/herofield[acCastDiv].value,0,-1)
rawnumber2 = right(field[powPoints].text,length2)
castingno2 = round(rawnumber2/herofield[acCastDiv].value,0,-1)
castingmod = "-" & castingno1 & " to -" & castingno2
~ #/section
elseif (pos(lowercase(field[powPoints].text),"/section") > 0) then
length1 = pos(lowercase(field[powPoints].text),"/section")
rawnumber1 = left(field[powPoints].text,length1)
castingno1 = rawnumber1
castingmod = "-" & castingno1 & " per 2 sections"
~ Special
elseif (pos(lowercase(field[powPoints].text),"special") > 0) then
castingmod = "Special"
~ #/#
elseif (pos(field[powPoints].text,"/") > 0) then
length1 = pos(field[powPoints].text,"/")
start2 = pos(field[powPoints].text,"/") + 1
lengthall = length(field[powPoints].text)
length2 = lengthall - start2
rawnumber1 = left(field[powPoints].text,length1)
castingno1 = round(rawnumber1/herofield[acCastDiv].value,0,-1)
rawnumber2 = right(field[powPoints].text,length2)
castingno2 = round(rawnumber2/herofield[acCastDiv].value,0,-1)
castingmod = "-" & castingno1 & "/-" & castingno2
~ #+
elseif (pos(field[powPoints].text,"+") > 0) then
length1 = pos(field[powPoints].text,"+")
rawnumber1 = left(field[powPoints].text,length1)
castingno1 = round(rawnumber1/herofield[acCastDiv].value,0,-1)
castingmod = "-" & castingno1 & "+"
~ #/Corpse
elseif (pos(lowercase(field[powPoints].text),"/corpse") > 0) then
length1 = pos(lowercase(field[powPoints].text),"/corpse")
rawnumber1 = left(field[powPoints].text,length1)
castingno1 = round(rawnumber1/herofield[acCastDiv].value,0,-1)
castingmod = "-" & castingno1 & "/corpse"
~ #
else
castingno1 = round(field[powPoints].text/herofield[acCastDiv].value,0,-1)
castingmod = "-" & castingno1
endif
iteminfo &= "Casting Modifier: " & castingmod & "{br}"
else
iteminfo &= "Power Points: " & field[powPoints].text & "{br}"
endif