init.lua 766 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. local skynet = require "skynet"
  2. local s = require "service"
  3. s.client = {}
  4. s.gate = nil
  5. s.resp.client = function(source, cmd, msg)
  6. s.gate = source
  7. if s.client[cmd] then
  8. local ret_msg = s.client[cmd]( msg, source)
  9. if ret_msg then
  10. skynet.send(source, "lua", "send", s.id, ret_msg)
  11. end
  12. else
  13. skynet.error("s.resp.client fail", cmd)
  14. end
  15. end
  16. s.resp.kick = function(source)
  17. s.leave_scene()
  18. --在此处保存角色数据
  19. skynet.sleep(200)
  20. end
  21. s.resp.exit = function(source)
  22. skynet.exit()
  23. end
  24. s.resp.send = function(source, msg)
  25. skynet.send(s.gate, "lua", "send", s.id, msg)
  26. end
  27. s.init = function( )
  28. --playerid = s.id
  29. --在此处加载角色数据
  30. skynet.sleep(200)
  31. s.data = {
  32. coin = 100,
  33. hp = 200,
  34. }
  35. end
  36. s.start(...)