อันนี้ผมแนะนำว่าให้กำหนดระยะการมองเห็นของยามแต่ละตัว (แต่ละ event) ไว้ครับ แล้วต้องตรวจเช็คเงื่อนไขสองอย่างก็คือ
แบบแรกคือตรวจเช็คที่ประตู
ตรวจเช็คเงื่อนไข : ประตู = เปิด
   ตรวจเช็คเงื่อนไข : ฮีโร่ = ระยะการมองเห็นของยาม
      -ยามเห็นเรา เพราะว่าอยู่ในระยะการมองเห็น
   เพิ่มเคส (กรณีเราไม่อยู่ในระยะการมองเห็นของยาม)
      -เราผ่านเข้าประตูได้
   จบ
เพิ่มเคส (กรณีประตูปิด)
   -ปล่อยว่างบรรทัดนี้ไว้เพราะตัวผู้เล่นไม่ได้กระทำการใดๆ...เริ่มอยากเพิ่มเหตุการณ์อะไรก็ได้
จบ
แบบที่สองคือตรวจเช็คที่ยาม
ตรวจเช็คเงื่อนไข : ระยะการมองเห็นของ event ยาม = ฮีโร่ (ตัวผู้เล่น)
   -ยามเห็นเรา เพราะว่าอยู่ในระยะการมองเห็น
เพิ่มเคส (กรณีเราไม่อยู่ในระยะการมองเห็นของยาม)
   -ไม่มีอะไรเกิดขึ้น
จบ
อาจจะงงหน่อยนะครับ ผมเองไม่ได้แต่งตัวโปรแกรมมาสักพักใหญ่แล้ว...อธิบายเองยังงงเองเลย -*-