lua 牛刀初试

2013-09-28 14:07:56 · 作者: · 浏览: 199

文件 MsgPro.lua

local Player = require"LuaScript/Player"local createPlayer = Player.createPlayerlocal p = createPlayer("asas",2)print(p:getlevel())print(p:getname())local msg_head = {}localfunction main_loop()    whiletruedo        peek_net_msg(1);        process();    endendlocalfunction process()    head = msg_read_int()    if head == -1thenreturn0;    endif msg_head[head] then        msg_head[head]();    end    release_net_msg();endlocalfunction init_msg_head()    msg_head[100001] = process_100001endlocalfunction process_100001()    endinit_msg_head()main_loop()

文件 Player.lua

--local createPlayermodule(..., package.seeall)local Player = {                         name="arch",                     career=0,                     level=1                }local PlayerMt = {__index = Player}function createPlayer(name,career)    returnsetmetatable(    {        name = name,        career = career,        level = 1    }    ,PlayerMt)endfunction Player:getlevel()    return self.levelendfunction Player:levelup()    self.level = self.level + 1endfunction Player:getname()    return self.nameendfunction Player:getcareer()    return self.careerendfunction Player:setcareer(nc)    self.career = ncend