32_a_freedoom
Monsters only attack when you're in their line of sight.
( (IP-MAT (NP-SBJ;{MONSTERS} (NS Monsters;{monster}))
(ADVP-NIM (ADV only;{only}))
(VBP;_I_ attack;{attack})
(PP-SCON (P-CONN when;{when})
(IP-ADV (NP-SBJ (PRO you;{you}))
(BEP;_Ipr_ <apos>re;{be[in]})
(PP-CLR (P-ROLE in;{in})
(NP (NP-GEN;{MONSTERS} (PRO;_genm_ their;{their}))
(N line;{line})
(PP (P-ROLE of;{of})
(NP (N sight;{sight})))))))
(PUNC .))
(ID 32_a_freedoom))
arc(r_0032_0003__attack,r_0032_0001__Monsters,arg0).
arc(r_0032_0003__attack,r_0032_0002__only,nim).
arc(r_0032_0004__when,r_0032_0003__attack,scope).
arc(r_0032_0004__when,r_0032_0006___apos_re_r_0032_0007__in,restriction).
arc(r_0032_0006___apos_re_r_0032_0007__in,r_0032_0005__you,arg0).
arc(r_0032_0006___apos_re_r_0032_0007__in,r_0032_0009__line,arg1).
arc(r_0032_0009__line,r_0032_0001__Monsters,gen).
arc(r_0032_0009__line,r_0032_0011__sight,r_0032_0010__of).
fof(formula,axiom,
! [R_0032_0006___APOS_RE_R_0032_0007__IN,R_0032_0005__YOU,R_0032_0001__MONSTERS,R_0032_0011__SIGHT,R_0032_0009__LINE] :
( ( r_0032_0001__Monsters(R_0032_0001__MONSTERS)
& r_0032_0005__you(R_0032_0005__YOU)
& r_0032_0011__sight(R_0032_0011__SIGHT)
& r_0032_0006___apos_re_r_0032_0007__in(R_0032_0006___APOS_RE_R_0032_0007__IN)
& has_arg1(R_0032_0006___APOS_RE_R_0032_0007__IN,R_0032_0009__LINE)
& r_0032_0009__line(R_0032_0009__LINE)
& has_r_0032_0010__of(R_0032_0009__LINE,R_0032_0011__SIGHT)
& has_gen(R_0032_0009__LINE,R_0032_0001__MONSTERS)
& has_arg0(R_0032_0006___APOS_RE_R_0032_0007__IN,R_0032_0005__YOU) )
=> ? [R_0032_0002__ONLY,R_0032_0003__ATTACK] :
( r_0032_0002__only(R_0032_0002__ONLY)
& r_0032_0003__attack(R_0032_0003__ATTACK)
& has_nim(R_0032_0003__ATTACK,R_0032_0002__ONLY)
& has_arg0(R_0032_0003__ATTACK,R_0032_0001__MONSTERS) ) ) ).