ActionScript - Trace Update Value from Tweener -
tweener doesn't update myvalue while passing param while tweening. why?
public var myvalue:number = 0.0; tweener.addtween(this, {myvalue: 1.0, time: 2.0, onupdate: tracevalue, onupdateparams: [myvalue]}); private function tracevalue(value:number):void { trace(value); }
primitive values passed value in actionscript, never reference. tweener updating value, gets passed tracevalue original value. in code above it'll trace out 0. solution pass in reference target object instead, , read value each time. if pass in field name can done dynamically flexibility. eg:
public var myvalue:number = 0.0; tweener.addtween(this, {myvalue: 1.0, time: 2.0, onupdate: tracevalue, onupdateparams: [this, 'myvalue']}); private function tracevalue(target:object, field:string):void { trace(target[field]); }
Comments
Post a Comment