-- 基本地图
function newBaseMap(mapName, mapID)
local objMap =
{
m_pMap = API_CreateEctype(mapID,0,mapName), --创建地图
m_ID = mapID --记录地图ID
}
function objMap:deleteMap()
API_DestroyEctype( self.m_pMap ) --消毁地图
end
function objMap:buildDieTrigger(roleID, pSomething, funcName) --创造死亡监视器
API_CreateDieTrigger(roleID, 0, pSomething, -1, funcName)
end
function objMap:recv(roleID, posX, posY) --接收角色
API_ActorGoToMap(roleID, self.m_pMap, posX, posY)
end
return objMap
end
-- 怪物地图类
function newMonsterMap(mapName, mapID)
local objMap = newBaseMap(mapName, mapID)
function objMap:buildMonster(monsterID, posX, posY)
local pMonster = API_CreateMonster(self.m_pMap, monsterID, posX, posY, 4, 0, -1) --创建怪物
return pMonster
end
return objMap
end
-----------------------------------------------------------------------------------------------------------------------------
local MAP_PAR =
{
MAP_NAME = "无洞",
MAP_ID = 1811,
MONSTER_ID = 502,
ROLE_POS = { X = 134, Y = 27},
MAP_EXITFUN = "End_WuYanDong_Easy"
}
local g_Map = nil
function Start_WuYanDong_Easy()
local nActorID = API_RequestGetActorID() --,获得玩家ID
local Watch=TimeWatch:new()
Watch:TraceMsg("Key_WYD","Custom_WYDFB",nActorID)
g_Map = newMonsterMap(MAP_PAR.MAP_NAME, MAP_PAR.MAP_ID)
local pMonster = g_Map:buildMonster(MAP_PAR.MONSTER_ID, MAP_PAR.ROLE_POS.X, MAP_PAR.ROLE_POS.Y)
g_Map:buildDieTrigger(nActorID, pMonster, MAP_PAR.MAP_EXITFUN)
g_Map:recv(nActorID, MAP_PAR.ROLE_POS.X, MAP_PAR.ROLE_POS.Y)
end
function End_WuYanDong_Easy(nActorID, lTaskID, lType, lID, lKillerType, lKillID)
API_ActorSendMsg(nActorID, 2, '系统通知自动退出副本')
g_Map:deleteMap()
end
-----------------------------------------------------------------------------------------------------------------------------