Difference between revisions of "Mutation Operators"
From GiderosMobile
m (Text replacement - "<source" to "<syntaxhighlight") |
m (Text replacement - "</source>" to "</syntaxhighlight>") |
||
Line 19: | Line 19: | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
score+=1 -- faster and less typing than score=score+1 | score+=1 -- faster and less typing than score=score+1 | ||
− | </ | + | </syntaxhighlight> |
'''"getDistance" function''' ('''see also the new <big>[[Math.distance]]</big> function''') | '''"getDistance" function''' ('''see also the new <big>[[Math.distance]]</big> function''') | ||
Line 32: | Line 32: | ||
return ((x2 - x1)^2 + (y2 - y1)^2)^0.5 | return ((x2 - x1)^2 + (y2 - y1)^2)^0.5 | ||
end | end | ||
− | </ | + | </syntaxhighlight> |
{|- | {|- |
Revision as of 14:30, 13 July 2023
Supported platforms:
Available since: Gideros 2017.11
Description
Operators to mutate a value.
- a += b = add 'b' to 'a'
- a -= b = subtract 'b from 'a'
- a *= b = multiply 'a' by 'b', result in 'a'
- a /= b = divide 'a' by 'b', result in 'a'
- a %= b = the result of 'a%b' is placed in 'a'
- a ^= b = the result of 'a^b' is placed in 'a' (^ is faster than a=math.pow(a,b))
- a ^= 0.5 = the result is faster than a=math.sqrt(a)
Examples
Simple larger example
score+=1 -- faster and less typing than score=score+1
"getDistance" function (see also the new Math.distance function)
--Non-optimized variant (5x slower):
function getDistance( x1, y1, x2, y2 )
return math.sqrt(math.pow(x2 - x1, 2) + math.pow(y2 - y1, 2))
end
--Optimized variant (5x faster):
function getDistance2(x1, y1, x2, y2)
return ((x2 - x1)^2 + (y2 - y1)^2)^0.5
end
Methods |
EventsConstants |