question: public Vector < Report > resolveAction ( IGame game ) { Vector < Report > reports = new Vector < Report > ( ) ; Report r ; if ( ! isPossible ( game ) ) { r = new Report ( 3445 ) ; r . subject = getEntityId ( ) ; r . newlines = 1 ; reports . addElement ( r ) ; return reports ; } final Entity attacker = getEntity ( game ) ; final Coords apos = attacker . getPosition ( ) ; final Targetable target = getTarget ( game ) ; final Coords tpos = target . getPosition ( ) ; if ( attacker . usedSearchlight ( ) ) { r = new Report ( 3450 ) ; r . subject = getEntityId ( ) ; r . add ( attacker . getDisplayName ( ) ) ; r . newlines = 1 ; reports . addElement ( r ) ; return reports ; } attacker . setUsedSearchlight ( true ) ; ArrayList < Coords > in = Coords . intervening ( apos , tpos ) ; for ( Coords c : in ) { for ( Entity en : game . getEntitiesVector ( c ) ) { LosEffects los = LosEffects . calculateLos ( game , getEntityId ( ) , en ) ; if ( los . canSee ( ) ) { en . setIlluminated ( true ) ; r = new Report ( 3455 ) ; r . subject = getEntityId ( ) ; r . newlines = 1 ; r . add ( en . getDisplayName ( ) ) ; r . add ( attacker . getDisplayName ( ) ) ; reports . addElement ( r ) ; } } } return reports ; }
target:  illuminate an entity and all entities that are between us and the hex