package Ġorg . apollo . game . action Ċ Ċ interface ĠAsync Action Trait Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġcontinuation Ġthat Ġthis Ġ` Action ` Ġis Ġexecuting . Ġ ĠMay Ġbe Ġ` null ` Ġif Ġthis Ġaction Ġhasn 't Ġstarted Ġyet . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġabstract Ġvar Ġcontinuation : ĠAction Coroutine ? ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUpdate Ġthis Ġaction , Ġinitializing Ġthe Ġcontinuation Ġif Ġnot Ġalready Ġinitialized . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return Ġ` true ` Ġif Ġthis Ġ` Action ` Ġhas Ġcompleted Ġexecution . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġupdate (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontinuation Ġ= Ġthis . continu ation ĊĠĠĠĠĠĠĠ Ġif Ġ( continu ation Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . continu ation Ġ= ĠAction Coroutine . start ( action ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcontinuation . pulse () ĊĠĠĠĠĠĠĠ Ġreturn Ġcontinuation . stopped () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCreate Ġa Ġnew Ġ` Action Block ` Ġto Ġexecute . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġaction () Ġ: ĠAction Block Ċ }