package Ġfuel . h unter . scenes . base Ċ Ċ import Ġfuel . h unter . view . shadow . Shadow View . Companion . SH ADOW _ BOTTOM Ċ import Ġfuel . h unter . view . shadow . Shadow View . Companion . SH ADOW _ MIDDLE Ċ import Ġfuel . h unter . view . shadow . Shadow View . Companion . SH ADOW _ TOP Ċ Ċ type alias ĠView Type Detector Ġ= Ġ( index : ĠInt , Ġtotal : ĠInt ) Ġ-> ĠInt Ċ Ċ const Ġval ĠVIEW _ TYPE _ CATEGORY Ġ= Ġ- 1 Ċ Ċ object ĠView Type Detector s Ġ{ ĊĠĠĠ Ġval ĠDefault : ĠView Type Detector Ġ= Ġ{ Ġindex , Ġtotal Ġ-> ĊĠĠĠĠĠĠĠ Ġwhen Ġ( index ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠSH ADOW _ TOP ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtotal Ġ-> ĠSH ADOW _ BOTTOM ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠSH ADOW _ MIDDLE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar ĠCategory : ĠView Type Detector Ġ= Ġtype @{ Ġindex : ĠInt , Ġtotal : ĠInt Ġ-> ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ 0 ) Ġreturn @ type Ġ- 1 ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ 1 ) Ġreturn @ type ĠSH ADOW _ TOP ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġtotal ) Ġreturn @ type ĠSH ADOW _ BOTTOM ĊĠĠĠĠĠĠĠ ĠSH ADOW _ MIDDLE ĊĠĠĠ Ġ} Ċ } Ċ