Lua地图类

来源:互联网 发布:腾讯公益网络募捐平台 编辑:程序博客网 时间:2024/05/13 07:31
 


-- 基本地图
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
-----------------------------------------------------------------------------------------------------------------------------

原创粉丝点击