All files / js/levels bigrm-5.js

95.52% Statements 64/67
83.33% Branches 5/6
100% Functions 1/1
95.52% Lines 64/67

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 682x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x 2x       2x 2x 2x 2x 2x 2x 2x 2x 2x 30x 30x 2x 2x 12x 12x 2x 2x 56x 56x 2x 2x 2x 2x  
/**
 * bigrm-5 - NetHack special level
 * Converted from: bigrm-5.lua
 */
 
import * as des from '../sp_lev.js';
import { selection, percent } from '../sp_lev.js';
 
export async function generate() {
    // NetHack bigroom bigrm-5.lua	$NHDT-Date: 1652196022 2022/5/10 15:20:22 $  $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.1 $
    // Copyright (c) 1989 by Jean-Christophe Collet
    // Copyright (c) 1990 by M. Stephenson
    // NetHack may be freely redistributed.  See license for details.
    // 
    des.level_init({ style: "solidfill", fg: " " });
    des.level_flags("mazelevel", "noflip");
 
    await des.map(`\
                            ------------------                            
                    ---------................---------                    
              -------................................-------              
         ------............................................------         
      ----......................................................----      
    ---............................................................---    
  ---................................................................---  
---....................................................................---
|........................................................................|
|........................................................................|
|........................................................................|
---....................................................................---
  ---................................................................---  
    ---............................................................---    
      ----......................................................----      
         ------............................................------         
              -------................................-------              
                    ---------................---------                    
                            ------------------                            
`);
 
 
    if (percent(25)) {
       let sel = selection.match(".").percentage(2).grow();
       des.replace_terrain({ selection: sel, fromterrain: ".", toterrain: percent(50) && "I" || "C" });
    }
 
    await des.region(selection.area(0,0,72,18), "lit");
 
    des.stair("up");
    des.stair("down");
 
    des.non_diggable();
 
    for (let i = 1, __end_i = 15; i <= __end_i; i++) {
       await des.object();
    }
 
    for (let i = 1, __end_i = 6; i <= __end_i; i++) {
       await des.trap();
    }
 
    for (let i = 1, __end_i = 28; i <= __end_i; i++) {
      await des.monster();
    }
 
 
    return des.finalize_level();
}