%%% -------------------------------------------------------
%%% @author huangyongxing@yeah.net
%%% @doc
%%% 怪物配置入口模块
%%%
%%% 用于分拆配置为多个子模块，
%%% 同时子模块将增加变量防止生成大字面常量（literal），
%%% 规避OTP20+热更新移除旧模块时大字面常量拷贝引发的内存暴涨问题
%%% @end
%%% -------------------------------------------------------
-module(data_mon).
-export([
		get/1
	]).

%% 获取怪物配置
-spec get(MonTypeId) -> MonConfig when
	MonTypeId :: non_neg_integer(),
	MonConfig :: tuple(). 	% #mon{}
get(MonTypeId) ->
	Rem = MonTypeId rem 6,
	case Rem of
		1 -> data_mon_1:get(MonTypeId, Rem);
		2 -> data_mon_2:get(MonTypeId, Rem);
		3 -> data_mon_3:get(MonTypeId, Rem);
		4 -> data_mon_4:get(MonTypeId, Rem);
		5 -> data_mon_5:get(MonTypeId, Rem);
		_ -> data_mon_0:get(MonTypeId, Rem)
	end.
