package Ġde . gle ex . plt cmd . model . map generation . map generators . intermediate Ċ Ċ import Ġde . gle ex . plt cmd . model . map generation . map generators . Generation Context Ċ import Ġde . gle ex . plt cmd . model . map generation . map generators . data . Mutable World Ċ import Ġde . gle ex . plt cmd . model . world . coordinate . Coordinate Area Ċ import Ġde . gle ex . plt cmd . model . world . terrain . Terrain Type Ċ import Ġmu . Kotlin Logging Ċ import Ġkotlin . random . Random Ċ Ċ private Ġval Ġlog Ġ= ĠKotlin Logging . logger Ġ{} Ċ Ċ /** Ċ Ġ* ĠSimply Ġfill s Ġthe Ġgiven Ġarea Ġwith Ġthe Ġgiven Ġ[ Terrain Type ] Ġat Ġall Ġlocations Ġthat Ġdo Ġnot Ġyet Ġhave Ġa Ġtype . Ċ Ġ*/ Ċ class ĠFixed Type Fill er ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġterrain Type : ĠT errain Type , ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġrand : ĠRandom , ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġcontext : ĠGeneration Context Ċ ) Ġ: ĠInter mediate Generator () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġgenerate Area ( area : ĠCoordinate Area , Ġmutable World : ĠMutable World ) Ġ{ ĊĠĠĠĠĠĠĠ Ġmutable World . find ( area ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable World . type At ( it ) Ġ== Ġnull ĊĠĠĠĠĠĠĠ Ġ}. also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . debug Ġ{ Ġ" Fill ing Ġup Ġ${ it . size } Ġtiles Ġwith Ġtype Ġ$ terrain Type " Ġ} ĊĠĠĠĠĠĠĠ Ġ}. forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable World [ it ] Ġ= Ġterrain Type ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ