0%

客户端入口模块:ClientMain.lua

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
local api -- 控制街口对象表,,通过sf_start事件回调获得,存放在模块局部变量中,详情请查阅(api接口.txt)
local selfIndex -- 自己在桌面的的索引,通过 sf_start 开始游戏事件回调参数获得
local members -- 游戏玩家array数组,通过 sf_start 开始游戏事件回调参数获得
-- 每个玩家拥有 uid, name, position, vip, gold, gender

--- 开始游戏事件回调
-- @function sf_start
-- @tab members 所有玩家数组
-- @int index 自己在桌面的的索引,0是旁观,旁观用户不能操作游戏。
-- @tab nativeapi 控制街口对象表
-- @boolean again 是否是断线后重新加入游戏,true为断线后重新加入游戏,无需播放开始游戏等音效。
local function sf_start(membersArray,index,nativeapi,again)
-- 通常将所需变量保存到模块
members = membersArray -- 保存桌面玩家数组
selfIndex = index -- 保存自己的索引
api = nativeapi -- 保存API对象表
end

--- 游戏结束事件回调,表明这局游戏结束了
-- @function sf_over
local function sf_over()

end

--- 网络数据响应事件回调
-- @function sf_message
-- @tab data 服务器下发的数据表
-- @int index 哪个玩家发送来的信息,0服务器发送
local function sf_message(data,index)

end

--- 键盘按下事件回调
-- @function sf_keydown
-- @int keycode 键盘响应码,请查阅Constants.txt
-- @boolean repeated 是否是重复键,一般案下一个键时,为一次新键,不松手,会一直响应keydown,这个时候repeated为true,表明是重复键。
local function sf_keydown(keycode,repeated)

end

--- 键盘抬起回调
-- @function sf_keyup
-- @int keycode 键盘响应码,请查阅Constants.txt
local sf_keyup = function(keycode)

end

--- 触摸响应事件回调,只能在安卓平台和ios平台以及web平台使用
-- @function sf_touch
-- @int touchtype 手势种类,请查阅Constants
-- @int x x坐标
-- @int y y坐标, 坐标返回的是设计逻辑尺寸,请参考绘图接口中的逻辑坐标dwidth和dheight
-- @int fingers 本次手势的手指数,一般1到3个手指,在多的手指需要硬件支持,有的手机触摸屏支持10个手指,一般到四个手指。
-- @int gid 本次触摸的模式编号,100位全屏触摸编号,200位分屏触摸中的上半屏编号,300位分屏模式下的下半屏幕触摸编号
local function sf_touch(touchtype, x, y,fingers,gid)

end

--- 每一帧调用,用于时时游戏的更新,每一秒60帧
-- @function update
local function sf_update()

end

-- 导出接口方法
return {
start=sf_start,
over=sf_over,
message=sf_message,
keydown=sf_keydown,
keyup=sf_keyup, -- 可选
touch=sf_touch,
update=sf_update,
}