-------------------------------------------------
--       Rendering, Geometry, and Motion
-------------------------------------------------

function p.get_solid_wrt_player() return true end

-------------------------------------------------
--            Type Init Function
-------------------------------------------------

function p.type_init(id)
    game_ment_type_init.monster(id) --Ok.
    ia_ment_set_builtin_var_f(id, "__radius", 1.0)
    ia_ment_set_builtin_var_s(id, "__mesh", "YellowBoxDevice")
    ia_ment_set_builtin_var_i(id, "__team_id_source", 0)
    ia_ment_set_builtin_var_i(id, "__team_id_target", 0)
    ia_ment_new_static_var_s(id, "identity_str", "Yellow Box Device (Key Stealer)")
    ia_ment_new_static_var_b(id, "identity_str_no_health", true)
    ia_ment_new_static_var_b(id, "shoots", true)
    ia_ment_new_static_var_f(id, "shoot_period", 0.1)
    ia_ment_new_static_var_s(id, "shoot_proj_type", "ment_yellow_box_device_proj")
    ia_ment_new_static_var_f(id, "shoot_proj_speed", 1000.0)
    ia_ment_new_static_var_f(id, "shoot_proj_ttl", 1.0)
    ia_ment_new_static_var_i(id, "shoot_proj_damage", 0)
    ia_ment_new_static_var_b(id, "emp_immune", true)
end

-------------------------------------------------
--             Inst Functions
-------------------------------------------------

function p.on_add_to_live_world(inst_id)
    game_ment_add_to_live.monster(inst_id)
end

function p.on_alarm(inst_id, alarm_name)
    game_ment_alarms.monster(inst_id, alarm_name)
end
