package Ġactor Ċ Ċ import Ġcom . so y wiz . k orge . view . Container Ċ import Ġcom . so y wiz . k orm a . geom . Point Ċ import Ġorg . j box 2 d . common . Vec 2 Ċ import Ġphys ic . internal . Physics Ċ Ċ /** Ċ Ġ* ĠAn Ġactor Ġis Ġbasically Ġan Ġobject Ġwhich Ġyou Ġcan Ġsee Ġon Ġscreen Ġ( Player , ĠEnemy , ĠGround , Ġ...) Ċ Ġ*/ Ċ Ċ abstract Ġclass ĠActor ( val Ġpar : ĠContainer ) Ġ: ĠContainer () Ġ{ ĊĊĠĠĠ Ġvar Ġposition : ĠPoint Ġ= ĠPoint ( this . y , Ġthis . y ) ĊĠĠĠ Ġvar Ġlast Position : ĠPoint Ġ= Ġposition ĊĠĠĠ Ġvar Ġnew Scale : ĠDouble Ġ= Ġthis . scale ĊĠĠĠ Ġvar Ġvelocity : ĠPoint Ġ= ĠPoint ( 0 . 0 , Ġ 0 . 0 ) ĊĠĠĠ Ġvar Ġlast Velocity : ĠPoint Ġ= ĠPoint ( 0 . 0 , Ġ 0 . 0 ) ĊĊĠĠĠ Ġvar Ġtimer : ĠInt Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġdead : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġabstract Ġfun ĠonCreate () ĊĠĠĠ Ġabstract Ġfun Ġon Execute ( dt : ĠDouble ) ĊĠĠĠ Ġabstract Ġfun ĠonDelete () ĊĊĠĠĠ Ġabstract Ġfun Ġupdate Graphics () ĊĊĠĠĠ Ġfun Ġinit Physics ( ĊĠĠĠĠĠĠĠ Ġis Dynamic : ĠBoolean , ĊĠĠĠĠĠĠĠ Ġf riction : ĠVec 2 Ġ= ĠVec 2 ( 2 . 0 f , Ġ 0 . 5 f ), ĊĠĠĠĠĠĠĠ Ġcoefficient : ĠVec 2 Ġ= ĠVec 2 ( 1 2 0 . 0 f , Ġ 1 2 0 . 0 f ), ĊĠĠĠĠĠĠĠ Ġcollision Callback : ĠPhysics .( Physics ) Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// par . phys ic . add Physics Component ( this , Ġf riction , Ġis Dynamic , Ġcoefficient , Ġcollision Callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġkill () Ċ }