314bc5df
zhengshouren
提交服务器初始代码
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
local _M = {}
local redisproxy = redisproxy
function _M.clientRequest(agent, data)
local msg = MsgPack.unpack(data)
local role = agent.role
local action = _M[msg.cmd]
local bin = MsgPack.pack({ cmd = "指令失败" })
if not action then
SendPacket(actionCodes.Gm_receiveResponse, bin)
return true
end
local ret = action(role, msg)
bin = MsgPack.pack({ cmd = ret })
SendPacket(actionCodes.Gm_receiveResponse, bin)
return true
end
|
5e5d7680
zhouhaihai
热更新 优化
|
18
|
function _M.testhotfix(role, pms)
|
2d392ede
zhouhaihai
热更新 最终版
|
19
|
return csvdb["itemCsv"][1]["name"] .. " -=- " .. csvdb["itemCsv"][2]["name"] .. " -=- " .. role:getItemCount(123) .. " -=- " .. table.pack(next(role.heros))[2]:getBattleValue()
|
5e5d7680
zhouhaihai
热更新 优化
|
20
|
end
|
0a07bdd9
zhouahaihai
角色升级 。gm
|
21
|
|
58f3a42c
zhouhaihai
gm帮助
|
22
23
24
|
local helpDes = {{"描述", "指令", "参数1", "参数2" ,"参数3"}}
table.insert(helpDes, {"获得角色" , "hero", "角色类型"})
|
0a07bdd9
zhouahaihai
角色升级 。gm
|
25
26
|
function _M.hero(role, pms)
local heroType = tonum(pms.pm1)
|
056c01a0
zhouhaihai
简化装备
|
27
28
29
|
if not role:addHero({type = heroType}) then
return "失败"
end
|
0a07bdd9
zhouahaihai
角色升级 。gm
|
30
31
32
|
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
33
|
table.insert(helpDes, {"获得装备" , "equip", "装备类型" , "装备等级", "装备个数"})
|
43cc5f51
gaofengduan
调整 equip 数据结构
|
34
35
36
37
38
39
40
41
|
function _M.equip(role, pms)
local typ = tonum(pms.pm1)
local level = tonum(pms.pm2)
local count = tonum(pms.pm3)
role:addEquip({type = typ,level = level,count = count})
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
42
|
table.insert(helpDes, {"获得零件" , "rune", "零件类型", "零件id"})
|
ad484303
gaofengduan
add rune
|
43
44
45
46
47
48
49
|
function _M.rune(role, pms)
local typ = tonum(pms.pm1)
local id = tonum(pms.pm2)
local result = role:addRune({type = typ,id = id})
return result
end
|
58f3a42c
zhouhaihai
gm帮助
|
50
|
table.insert(helpDes, {"通关挂机副本", "fb", "挂卡id"})
|
cb85faac
zhouhaihai
增加gm命令
|
51
52
53
54
55
56
57
58
59
|
function _M.fb(role, pms) -- 直接通关
local carbonId = tonum(pms.pm1)
if not csvdb["idle_battleCsv"][carbonId] then return "不存在的carbon" end
local passCarbon = role:getProperty("hangPass")
local addPre
addPre = function(carbonId)
local carbonData = csvdb["idle_battleCsv"][carbonId]
for _, pre in ipairs(carbonData.prepose:toArray(true, "=")) do
passCarbon[pre] = 1
|
03a6166a
zhouhaihai
餐厅优化
|
60
|
role:checkTaskEnter("HangPass", {id = pre})
|
cb85faac
zhouhaihai
增加gm命令
|
61
62
63
64
65
66
|
addPre(pre)
end
end
passCarbon[carbonId] = 1
addPre(carbonId)
role:updateProperty({field = "hangPass", value = passCarbon})
|
03a6166a
zhouhaihai
餐厅优化
|
67
|
role:checkTaskEnter("HangPass", {id = carbonId})
|
cb85faac
zhouhaihai
增加gm命令
|
68
69
70
|
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
71
|
table.insert(helpDes, {"抵达挂机副本", "fbc", "副本id"})
|
6433fe76
zhouhaihai
到某一关
|
72
73
74
75
76
77
78
79
80
|
function _M.fbc(role, pms) -- 直接通关
local carbonId = tonum(pms.pm1)
if not csvdb["idle_battleCsv"][carbonId] then return "不存在的carbon" end
local passCarbon = {}
local addPre
addPre = function(carbonId)
local carbonData = csvdb["idle_battleCsv"][carbonId]
for _, pre in ipairs(carbonData.prepose:toArray(true, "=")) do
passCarbon[pre] = 1
|
03a6166a
zhouhaihai
餐厅优化
|
81
|
role:checkTaskEnter("HangPass", {id = pre})
|
6433fe76
zhouhaihai
到某一关
|
82
83
84
85
86
87
|
addPre(pre)
end
end
addPre(carbonId)
role:updateProperty({field = "hangInfo", value = {}})
role:updateProperty({field = "hangPass", value = passCarbon})
|
03a6166a
zhouhaihai
餐厅优化
|
88
|
role:checkTaskEnter("HangPass", {id = carbonId})
|
6433fe76
zhouhaihai
到某一关
|
89
90
91
|
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
92
|
table.insert(helpDes, {"好感度", "love", "角色类型", "好感度等级", "好感度经验"})
|
cb85faac
zhouhaihai
增加gm命令
|
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
function _M.love(role, pms)
local heroType = tonum(pms.pm1)
local level = tonum(pms.pm2)
local exp = tonum(pms.pm3)
local curPlus = csvdb["unit_love_plusCsv"][heroType]
if not curPlus then return "参数错误" end
level = math.max(math.min(curPlus.limit, level), 0)
local curEffect = csvdb["unit_love_effectCsv"][level]
exp = math.max(math.min(curEffect.loveValue, exp) , 0)
for _, hero in pairs(role.heros) do
if hero:getProperty("type") == heroType then
hero:updateProperty({field = "loveL", value = level})
hero:updateProperty({field = "loveExp", value = exp})
if role:getProperty("loveStatus"):getv(heroType, 0) < level then
role:changeUpdates({{type = "loveStatus", field = heroType, value = level}}) -- 总的
end
|
03a6166a
zhouhaihai
餐厅优化
|
109
|
role:checkTaskEnter("LoveBreak", {heroType = heroType, loveL = level})
|
cb85faac
zhouhaihai
增加gm命令
|
110
111
112
113
114
|
end
end
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
115
|
table.insert(helpDes, {"玩家经验", "exp", "经验"})
|
cb85faac
zhouhaihai
增加gm命令
|
116
117
118
119
120
121
122
|
function _M.exp(role, pms)
local exp = tonum(pms.pm1)
exp = math.floor(math.max(exp, 0))
role:addPlayExp(exp)
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
123
124
125
126
127
128
129
|
table.insert(helpDes, {"获得物品", "get", "物品ID", "个数"})
table.insert(helpDes, {"获得所有物品", "get", "ALL"})
table.insert(helpDes, {"获得所有装备", "get", "EQUIP"})
table.insert(helpDes, {"获得所有零件", "get", "RUNE"})
table.insert(helpDes, {"获得所有碎片", "get", "FRAG"})
table.insert(helpDes, {"获得所有食物", "get", "FOOD"})
table.insert(helpDes, {"获得所有角色", "get", "HERO"})
|
8c74292c
zhouahaihai
增加item 以及 角色突破
|
130
|
function _M.get(role, pms)
|
747f05a1
gaofengduan
add gm get all
|
131
|
if pms.pm1 == "ALL" then
|
58559948
zhouhaihai
getall gm
|
132
133
134
135
|
local reward = {}
for id, data in pairs(csvdb["gm_getallCsv"]) do
if csvdb["itemCsv"][id] then
reward[id] = data.number
|
747f05a1
gaofengduan
add gm get all
|
136
137
|
end
end
|
58559948
zhouhaihai
getall gm
|
138
|
role:award(reward)
|
3c8a6b8a
zhouhaihai
get equip
|
139
140
141
142
143
144
|
elseif pms.pm1 == "EQUIP" then
for itemId = 7000 , 8000 do
if csvdb["itemCsv"][itemId] then
role:award({[itemId] = 100})
end
end
|
966034ca
zhouhaihai
获取碎片零件gm
|
145
|
elseif pms.pm1 == "RUNE" then
|
58751698
zhouhaihai
修改id 区间
|
146
|
for itemId = 2000 , 3000 do
|
966034ca
zhouhaihai
获取碎片零件gm
|
147
|
if csvdb["itemCsv"][itemId] then
|
a0013f0b
zhouhaihai
零件分批推送
|
148
|
role:award({[itemId] = 1})
|
966034ca
zhouhaihai
获取碎片零件gm
|
149
150
151
152
153
154
155
156
|
end
end
elseif pms.pm1 == "FRAG" then
for itemId = 100 , 400 do
if csvdb["itemCsv"][itemId] then
role:award({[itemId] = 100})
end
end
|
3b069d52
zhouhaihai
增加获取 food 后台
|
157
158
159
160
161
162
|
elseif pms.pm1 == "FOOD" then
for itemId = 4000 , 5000 do
if csvdb["itemCsv"][itemId] then
role:award({[itemId] = 100})
end
end
|
cb85faac
zhouhaihai
增加gm命令
|
163
164
165
166
167
168
|
elseif pms.pm1 == "HERO" then
for itemId = 400 , 700 do
if csvdb["itemCsv"][itemId] then
role:award({[itemId] = 1})
end
end
|
747f05a1
gaofengduan
add gm get all
|
169
170
171
172
173
|
else
local itemId = tonum(pms.pm1)
if not csvdb["itemCsv"][itemId] then
return "物品不存在"
end
|
ee999bde
zhouhaihai
零件优化
|
174
|
local count = tonum(pms.pm2, 1)
|
747f05a1
gaofengduan
add gm get all
|
175
|
role:award({[itemId] = count})
|
8c74292c
zhouahaihai
增加item 以及 角色突破
|
176
|
end
|
8c74292c
zhouahaihai
增加item 以及 角色突破
|
177
178
179
|
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
180
|
table.insert(helpDes, {"冒险清除" , "advc"})
|
4b7c7c96
zhouahaihai
增加 清空 挂机 冒险gm 角色经验
|
181
182
|
function _M.advc(role, pms)
role:updateProperty({field = "advInfo", value = {}})
|
4faef572
zhouhaihai
冒险任务,冒险扫荡, 冒险中继
|
183
|
role:updateProperty({field = "advTask", value = {}})
|
4b7c7c96
zhouahaihai
增加 清空 挂机 冒险gm 角色经验
|
184
185
186
187
188
189
|
role:updateProperty({field = "advItems", value = ""})
role:updateProperty({field = "advTeam", value = {}})
role.advData = nil
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
190
|
table.insert(helpDes, {"冒险次数恢复", "advf"})
|
4faef572
zhouhaihai
冒险任务,冒险扫荡, 冒险中继
|
191
192
193
194
195
|
function _M.advf(role, pms)
role.dailyData:updateProperty({field = "advC", value = 0})
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
196
|
table.insert(helpDes, {"冒险通关", "adv", "章节id", "层数"})
|
4faef572
zhouhaihai
冒险任务,冒险扫荡, 冒险中继
|
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
|
function _M.adv(role, pms)
local chapterId = tonum(pms.pm1)
local layer = tonum(pms.pm2)
local advData = csvdb["adv_chapterCsv"][chapterId]
if not advData then return end
layer = math.min(layer, advData.limitlevel)
local advPass = role:getProperty("advPass")
local addPre
addPre = function(chapterId)
local advData = csvdb["adv_chapterCsv"][chapterId]
for pre, l in ipairs(advData.prepose:toNumMap()) do
if (advPass[pre] or 0) < l then
advPass[pre] = l
addPre(pre)
end
end
end
if (advPass[chapterId] or 0) < layer then
advPass[chapterId] = layer
addPre(chapterId)
role:updateProperty({field = "advPass", value = advPass})
end
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
224
|
table.insert(helpDes, {"冒险到达指定层", "advt", "章节id", "层数"})
|
4d943586
zhouhaihai
直通 advt gm
|
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
|
function _M.advt(role, pms)
local chapterId = tonum(pms.pm1)
local layer = tonum(pms.pm2)
local advData = csvdb["adv_chapterCsv"][chapterId]
if not advData then return "不存在的章节" end
layer = math.min(layer, advData.limitlevel)
local advData = role:getAdvData()
if not advData.chapterId then
return "先随便开启一关"
end
_M.adv(role, {pm1 = chapterId, pm2 = layer - 1})
advData.chapterId = chapterId
advData.level = layer
advData:saveDB()
return "成功"
end
|
f60b89b1
zhouhaihai
奖励副本
|
248
249
250
251
252
253
254
255
|
table.insert(helpDes, {"冒险队等级增加", "advl", "通关次数"})
function _M.advl(role, pms)
local winCount = tonum(pms.pm1)
winCount = math.max(0, winCount)
role:checkAdvLvByAddWin(winCount)
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
256
|
table.insert(helpDes, {"挂机清除" , "idlec"})
|
4b7c7c96
zhouahaihai
增加 清空 挂机 冒险gm 角色经验
|
257
258
259
260
261
262
263
264
|
function _M.idlec(role, pms)
role:updateProperty({field = "hangTeam", value = {}})
role:updateProperty({field = "hangInfo", value = {}})
role:updateProperty({field = "hangBag", value = {}})
role.advData = nil
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
265
|
table.insert(helpDes, {"爬塔到指定层", "tower", "层数"})
|
4af997e0
zhouhaihai
到达指定层
|
266
|
function _M.tower(role, pms)
|
0e06d7a6
zhouhaihai
中文逗号
|
267
|
local level = tonum(pms.pm1, 1)
|
4af997e0
zhouhaihai
到达指定层
|
268
269
270
271
272
|
if not csvdb["tower_battleCsv"][level] then return "不存在" end
role:updateProperty({field = "towerInfo", value = {c = globalCsv.tower_count_limit, l = level}})
return "成功"
end
|
58f3a42c
zhouhaihai
gm帮助
|
273
274
275
276
277
278
279
|
function _M.helpRpc(agent, data)
SendPacket(actionCodes.Gm_helpRpc, MsgPack.pack({help = helpDes}))
return true
end
|
314bc5df
zhengshouren
提交服务器初始代码
|
280
|
return _M
|