package Ġcom . github . qu ill r aven . commons . ash ley . system Ċ Ċ import Ġcom . badlogic . ash ley . core . Entity Ċ import Ġcom . badlogic . ash ley . systems . Iter ating System Ċ import Ġcom . badlogic . gdx . math . Math Utils Ċ import Ġcom . github . qu ill r aven . commons . ash ley . component . Resize Component Ċ import Ġcom . github . qu ill r aven . commons . ash ley . component . Transform Component Ċ import Ġcom . github . qu ill r aven . commons . ash ley . component . resize Cmp Ċ import Ġcom . github . qu ill r aven . commons . ash ley . component . transform Cmp Ċ import Ġk tx . ash ley . all Of Ċ Ċ /** Ċ Ġ* ĠSystem Ġfor Ġmodifying Ġan Ġ[ entity 's ][ Entity ] Ġsize Ġby Ġlinear ly Ġinterpolate Ġits Ġ[ Transform Component . size ] Ċ Ġ* Ġfrom Ġthe Ġ[ Resize Component ] Ġ[ Resize Component . from Size ] Ġto Ġthe Ġ[ Resize Component . to Size ] Ġover Ġthe Ċ Ġ* Ġperiod Ġof Ġ[ Resize Component . duration ] Ġseconds . Ċ Ġ*/ Ċ class ĠResize System Ġ: ĠIter ating System ( all Of ( Transform Component :: class , ĠResize Component :: class ). get ()) Ġ{ ĊĠ Ġoverride Ġfun Ġprocess Entity ( entity : ĠEntity , Ġdelta Time : ĠFloat ) Ġ{ ĊĠĠĠ Ġval Ġresize Cmp Ġ= Ġentity . resize Cmp ĊĊĠĠĠ Ġresize Cmp . current Duration Ġ+= Ġdelta Time ĊĠĠĠ Ġval Ġprogress Ġ= Ġif Ġ( resize Cmp . duration Ġ== Ġ 0 f Ġ|| Ġresize Cmp . current Duration Ġ>= Ġresize Cmp . duration ) Ġ{ ĊĠĠĠĠĠĠ 1 f ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġresize Cmp . current Duration Ġ/ Ġresize Cmp . duration ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġwith ( entity . transform Cmp ) Ġ{ ĊĠĠĠĠĠ Ġsize . set ( ĊĠĠĠĠĠĠĠ ĠMath Utils . lerp ( resize Cmp . from Size . x , Ġresize Cmp . to Size . x , Ġprogress ), ĊĠĠĠĠĠĠĠ ĠMath Utils . lerp ( resize Cmp . from Size . y , Ġresize Cmp . to Size . y , Ġprogress ) ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġif Ġ( progress Ġ== Ġ 1 f ) Ġ{ ĊĠĠĠĠĠ Ġentity . remove ( Resize Component :: class . java ) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ