package Ġcom . mir age . utils . messaging Ċ Ċ import Ġcom . mir age . utils . game . states . State Difference Ċ import Ġcom . mir age . utils . game . objects . properties . Equipment Ċ import Ġcom . mir age . utils . game . states . Simpl ified State Ċ Ċ sealed Ġclass ĠServer Message Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ/** ĠList Ġof Ġall Ġclasses Ġinherited Ġfrom Ġ[ Server Message ] Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġserver Message Classes Ġ= ĠlistOf < Class < *> >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠInitial GameState Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGameState Update Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠReturn Code Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠHuman oid Equipment Update Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGlobal Quest Update Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLocal Quest Update Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDisplay Text Message :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStart Dialog Message :: class . java ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġinternal Ġval Ġcode To Class Map : ĠMap < Int , ĠClass <* >> Ġ= ĠHashMap < Int , ĠClass <* >> (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ(( index , Ġvalue ) Ġin Ġserver Message Classes . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis [ index ] Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinternal Ġval Ġclass To Code Map : ĠMap < Class <* >, ĠInt > Ġ= ĠHashMap < Class <* >, ĠInt >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ(( index , Ġvalue ) Ġin Ġserver Message Classes . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis [ value ] Ġ= Ġindex ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ /** Ċ Ġ* ĠMessage Ġwith Ġfull Ġinformation Ġabout Ġgame Ġstate . Ċ Ġ* ĠThis Ġmessage Ġis Ġsent Ġonly Ġwhen Ġa Ġnew Ġclient Ġis Ġconnected Ġto Ġgame Ġlogic . Ċ Ġ* Ġ[ state Created Time Millis ] Ġ- Ġtime Ġof Ġ[ initialState ] Ġcreation . Ċ Ġ*/ Ċ data Ġclass ĠInitial GameState Message ( ĊĠĠĠĠĠĠĠ Ġval Ġmap Name : ĠString , ĊĠĠĠĠĠĠĠ Ġval ĠinitialState : ĠSimpl ified State , ĊĠĠĠĠĠĠĠ Ġval Ġplayer ID : ĠLong , ĊĠĠĠĠĠĠĠ Ġval Ġstate Created Time Millis : ĠLong Ċ ) Ġ: ĠServer Message () Ċ Ċ /** ĠThis Ġmessage Ġis Ġsent Ġby Ġlogic Ġafter Ġeach Ġtick Ġof Ġgame Ġloop Ġ*/ Ċ data Ġclass ĠGameState Update Message ( ĊĠĠĠĠĠĠĠ Ġval Ġdiff : ĠState Difference , ĊĠĠĠĠĠĠĠ Ġval Ġstate Created Time Millis : ĠLong Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠReturn Code Message ( ĊĠĠĠĠĠĠĠ Ġval Ġreturn Code : ĠInt Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠHuman oid Equipment Update Message ( ĊĠĠĠĠĠĠĠ Ġval Ġobject ID : ĠLong , ĊĠĠĠĠĠĠĠ Ġval Ġnew Equipment : ĠE quipment Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠGlobal Quest Update Message ( ĊĠĠĠĠĠĠĠ Ġval Ġglobal Quest Name : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġnew Phase ID : ĠInt Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠLocal Quest Update Message ( ĊĠĠĠĠĠĠĠ Ġval Ġlocal Quest Name : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġnew Phase ID : ĠInt Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠDisplay Text Message ( ĊĠĠĠĠĠĠĠ Ġval Ġtext : ĠString Ċ ) Ġ: ĠServer Message () Ċ Ċ data Ġclass ĠStart Dialog Message ( ĊĠĠĠĠĠĠĠ Ġval Ġdialog Name : ĠString Ċ ) Ġ: ĠServer Message ()