function MonsterRace_Init(mon_referee)

              Char.SetData(mon_referee, %_%,101005);
                Char.SetData(mon_referee, %_ԭ%,101005);
	        Char.SetData(mon_referee, %_ͼ%, 0);
                Char.SetData(mon_referee, %_ͼ%,25000);
                Char.SetData(mon_referee, %_X%,23);
                Char.SetData(mon_referee, %_Y%,18);
                Char.SetData(mon_referee, %_%,4);
                Char.SetData(mon_referee, %_ԭ%,"Ĳ");
        	if (Char.SetTalkedEvent(nil, "refereeTalked", mon_referee) < 0) then
		           print("refereeTalked ע¼ʧܡ");
		               return false;
	        end

return true;
end



--ȫֱ
mr_start = 0;--ϷǷʼ
        
--Init,NPCʼĺ
--˺3õNPC
function Init()
        --3õNPC,úϢ
if (mon_1 == nil) then
                mon_1 = NL.CreateNpc(nil, "Init_mon");
                Char.SetData(mon_1,%_%,101800);
                Char.SetData(mon_1,%_ԭ%,101800);
	        Char.SetData(mon_1, %_ͼ%, 0);
                Char.SetData(mon_1,%_ͼ%,25000);
                Char.SetData(mon_1,%_X%,21);
                Char.SetData(mon_1,%_Y%,21);
                Char.SetData(mon_1,%_%,0);
                Char.SetData(mon_1,%_ԭ%,"粼");
                NLG.UpChar(mon_1);
end
if (mon_2 == nil) then
                mon_2 = NL.CreateNpc(nil, "Init_mon");
                Char.SetData(mon_2,%_%,101240);
                Char.SetData(mon_2,%_ԭ%,101240);
	        Char.SetData(mon_2, %_ͼ%, 0);
                Char.SetData(mon_2,%_ͼ%,25000);
                Char.SetData(mon_2,%_X%,20);
                Char.SetData(mon_2,%_Y%,21);
                Char.SetData(mon_2,%_%,0);
                Char.SetData(mon_2,%_ԭ%,"С");
                NLG.UpChar(mon_2);
end
if (mon_3 == nil) then
                mon_3 = NL.CreateNpc(nil, "Init_mon");
                Char.SetData(mon_3,%_%,101020);
                Char.SetData(mon_3,%_ԭ%,101020);
	        Char.SetData(mon_3, %_ͼ%, 0);
                Char.SetData(mon_3,%_ͼ%,25000);
                Char.SetData(mon_3,%_X%,19);
                Char.SetData(mon_3,%_Y%,21);
                Char.SetData(mon_3,%_%,0);
                Char.SetData(mon_3,%_ԭ%,"");
                NLG.UpChar(mon_3);
end
        return true;
end

--NPCĳʼ,ΪҪõ,ֱӷtrueȿ
function Init_mon()
        return true;
end

--Ͳ˵󴥷ĺ
function refereeTalked( _MeIndex, _PlayerIndex)
Init()  
        --жϷǷѾʼ
        if (mr_start == 0) then
                --ٵNPCŻ
                Char.SetData(mon_1,%_Y%,21);
                Char.SetData(mon_2,%_Y%,21);
                Char.SetData(mon_3,%_Y%,21);
                NLG.UpChar(mon_1);
                NLG.UpChar(mon_2);
                NLG.UpChar(mon_3);
                --ȡþnpcٶ
                math.randomseed(os.time());
                speed= math.random(800,2000);
                --npcһѭ¼ִǰĲ
                Char.SetLoopEvent(nil, "run", mon_1,speed);
                --õڶNPC
                math.randomseed(os.time()+speed);
                speed= math.random(800,2000);
                Char.SetLoopEvent(nil, "run", mon_2,speed);
                --õNPC
                math.randomseed(os.time()+speed);
                speed= math.random(800,2000);
                Char.SetLoopEvent(nil, "run", mon_3,speed);
                --ʼ,ʶΪ1
                NLG.TalkToFloor(0,25000,"ڿʼ.ԡ",4,0,_MeIndex);
                mr_start = 1;
        end
      
end

--NPC·ĺ
function run(_MeIndex)
        --жǷʼ
        if (mr_start == 1) then
                --NPCΪ
                NLG.SetAction(_MeIndex,1);
                --NPCǰһ
                NLG.WalkMove(_MeIndex,0);
                --ȡһµ´εٶ
                speed= math.random(800,2000);
                --жǷ񵽴յ
                if (Char.GetData(_MeIndex,%_Y%)==13) then
                        --,ñ,ʤľNPC
                        mr_start = 0;
                  NLG.SetAction(_MeIndex,6);
                                 NLG.UpChar(_MeIndex);
                   NLG.TalkToFloor(0,25000,"һ˱αʤŶ!",0,0,_MeIndex);
                end
                --ûյ,ѭ¼ʱ
                Char.SetLoopEvent(nil, "run", _MeIndex,speed);
        end
end



