class Game_Event < Game_Character
  def in_view_areaT(cx ,cy)
#~     return false unless @va_conditions
    case @va_conditions.view_areas_num
    when 0
      in_view_areaF(cx,cy)
    when 1

      in_view_areaF2(cx,cy)
    end  
    
  end  
  
  def out_view_areaT(cx ,cy)    
#~     return false unless @va_conditions
    case @va_conditions.not_view_areas_num
    when 0
 
      area_circle_norm2(cx,cy,8)
    when 1
      
      in_view_areaF2(cx,cy)
    end     
  end 
  
  def in_view_areaF(cx,cy)
    t = false
    t = view_area_frac1(cx,cy) && area_circle_norm1(cx,cy,7)
    t ||=  view_area_frac2(cx,cy)
    return t
    
  end    
  
  def in_view_areaF2(cx,cy)
    t = false
    t = view_area_frac1(cx,cy) && area_circle_norm1(cx,cy,4)
    t ||=  view_area_frac_rect(cx,cy,3,5,-1,1)
    return t
  end  
  
  def area_circle_norm1(cx,cy,r)
    sx = cx.abs
    sy = cy.abs
    return sx + sy < r
  end      
    

  
  def view_area_frac1(cx,cy)
    if (cy - cx < 0) && (cx + cy > 0)
      return true
    else
      return false
    end  
    
  end   

  def view_area_frac2(cx,cy)
    if (3<= cx && cx < 8) && (-1 <= cy && cy <= 1)
      return true
    else
      return false
    end  
    
  end  
  def view_area_frac_rect(cx,cy,a,b,c,d)
    if (a<= cx && cx <= b) && (c <= cy && cy <= d)
      return true
    else
      return false
    end  
    
  end    
  def area_circle_norm2(cx,cy,r)
    if cx ** 2 + cy ** 2 <= r ** 2
      return true
    else
      return false
    end  
    
  end    
  
end  