/* Ċ Ġ* ĠSPDX - License - Identifier : ĠApache - 2 . 0 Ċ Ġ*/ Ċ Ċ @ file : Ver ik Ċ @ file : Suppress (" ClassName ", Ġ" Convert Secondary Constructor To Primary ") Ċ Ċ package Ġdice Ċ Ċ import Ġimported . u vm _ pkg . u vm _ analysis _ port Ċ import Ġimported . u vm _ pkg . u vm _ component Ċ import Ġimported . u vm _ pkg . u vm _ phase Ċ import Ġio . ver ik . core .* Ċ Ċ class Ġdice _ roller Ġ: Ġu vm _ component Ġ{ ĊĊĠĠĠ Ġ@ In j ĊĠĠĠ Ġval Ġheader Ġ= Ġ"` u vm _ component _ utils (${ t < dice _ roller >() }); " ĊĊĠĠĠ Ġlateinit Ġvar Ġroll _ ap : Ġu vm _ analysis _ port < Int > ĊĊĠĠĠ Ġoverride Ġfun Ġbuild _ phase ( phase : Ġu vm _ phase ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġroll _ ap Ġ= Ġu vm _ analysis _ port (" roll _ ap ", Ġthis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Rand ĊĠĠĠ Ġvar Ġdie 1 : ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġ@ Rand ĊĠĠĠ Ġvar Ġdie 2 : ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġ@ Cons ĊĠĠĠ Ġvar Ġd 6 Ġ= Ġc ( die 1 Ġ>= Ġ 1 , Ġdie 1 Ġ<= Ġ 6 , Ġdie 2 Ġ>= Ġ 1 , Ġdie 2 Ġ<= Ġ 6 ) ĊĊĠĠĠ Ġ@ Task ĊĠĠĠ Ġoverride Ġfun Ġrun _ phase ( phase : Ġu vm _ phase ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġthe _ roll : ĠInt ĊĠĠĠĠĠĠĠ Ġphase !!. raise _ obj ection ( this ) ĊĠĠĠĠĠĠĠ Ġrepeat ( 2 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrandomize () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthe _ roll Ġ= Ġdie 1 Ġ+ Ġdie 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġroll _ ap . write ( the _ roll ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġphase . drop _ obj ection ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( name : ĠString , Ġparent : Ġu vm _ component ?) Ġ: Ġsuper ( name , Ġparent ) Ċ } Ċ