/* Ċ Ġ* ĠThe ĠMIT ĠLicense Ġ( MIT ) Ċ Ġ* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 ĠK w ai , ĠInc . ĠAll Ġrights Ġreserved . Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ġof Ċ Ġ* Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ġin Ċ Ġ* Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ġto Ċ Ġ* Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ġcopies Ġof Ċ Ġ* Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ġfurnished Ġto Ġdo Ġso , Ċ Ġ* Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ċ Ġ* Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , ĠFITNESS Ċ Ġ* ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE ĠAUTHORS ĠOR Ċ Ġ* ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER ĠLIABILITY , ĠWHETHER Ċ Ġ* ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , ĠOUT ĠOF ĠOR ĠIN Ċ Ġ* ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ Ċ package Ġcom . k ua ish ou . ak dan mak u . ecs . component . action Ċ Ċ import Ġandroid . graphics . Matrix Ċ import Ġandroid . graphics . PointF Ċ import Ġcom . badlogic . gdx . utils . Array Ċ import Ġcom . k ua ish ou . ak dan mak u . ecs . base . Dan mak u Base Component Ċ Ċ /** Ċ Ġ* Ġ æĮģ æľī ĠAction ï¼Į è®¡ç®Ĺ ĠAction Ġ ä»¥åıĬ è®¡ç®Ĺ åĲİ ç»ĵæŀľ çļĦ ĠComponent Ċ Ġ* Ċ Ġ* Ġ@ author ĠX ana Ċ Ġ* Ġ@ since Ġ 2 0 2 1 - 0 7 - 1 4 Ċ Ġ*/ Ċ class ĠAction Component Ġ: ĠDan mak u Base Component () Ġ{ ĊĊĠ Ġval Ġactions Ġ= ĠArray < Action >( 0 ) ĊĊĠ Ġval Ġposition Ġ= ĠPoint F () ĊĊĠ Ġvar Ġrotation Ġ= Ġ 0 f ĊĊĠ Ġval Ġscale Ġ= ĠPoint F ( 1 f , Ġ 1 f ) ĊĊĠ Ġvar Ġalpha Ġ= Ġ 1 f ĊĊĠ Ġvar Ġvisibility Ġ= Ġtrue ĊĊĠ Ġfun Ġto Transform Matrix ( matrix : ĠMatrix ) Ġ{ ĊĠĠĠ Ġmatrix . set Scale ( scale . x , Ġscale . y ) ĊĠĠĠ Ġmatrix . post Rotate ( rotation ) ĊĠĠĠ Ġmatrix . post Translate ( position . x , Ġposition . y ) ĊĠ Ġ} ĊĊĠ Ġfun Ġadd Action ( action : ĠAction ) Ġ{ ĊĠĠĠ Ġaction . target Ġ= Ġthis ĊĠĠĠ Ġaction . restart () ĊĠĠĠ Ġactions . add ( action ) ĊĠ Ġ} ĊĊĠ Ġfun Ġact ( time M ills : ĠLong ) Ġ{ ĊĠĠĠ Ġreset Property () ĊĠĠĠ Ġval Ġiter Ġ= Ġactions . iterator () ĊĠĠĠ Ġwhile Ġ( iter . hasNext ()) Ġ{ ĊĠĠĠĠĠ Ġval Ġaction Ġ= Ġiter . next () ĊĠĠĠĠĠ Ġaction . act ( time M ills ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġreset () Ġ{ ĊĠĠĠ Ġsuper . reset () ĊĠĠĠ Ġreset Property () ĊĠĠĠ Ġactions . clear () ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġreset Property () Ġ{ ĊĠĠĠ Ġitem . draw State . reset Action Property () ĊĠĠĠ Ġposition . set ( 0 f , Ġ 0 f ) ĊĠĠĠ Ġrotation Ġ= Ġ 0 f ĊĠĠĠ Ġscale . set ( 1 f , Ġ 1 f ) ĊĠĠĠ Ġalpha Ġ= Ġ 1 f ĊĠ Ġ} Ċ } Ċ