luafight打印日志
parent
3069ff56e1
commit
5429baf7a3
|
@ -11,3 +11,4 @@ out
|
|||
build
|
||||
out
|
||||
tmp/
|
||||
luafight/LogError/
|
||||
|
|
|
@ -25,45 +25,6 @@ local Random = Random
|
|||
local _fightData
|
||||
local _optionData
|
||||
|
||||
local function newPairs(tbl, func)
|
||||
if func == nil then
|
||||
return pairs(tbl)
|
||||
end
|
||||
|
||||
local ary = {}
|
||||
local lastUsed = 0
|
||||
for key --[[, val--]] in pairs(tbl) do
|
||||
if (lastUsed == 0) then
|
||||
ary[1] = key
|
||||
else
|
||||
local done = false
|
||||
for j=1,lastUsed do -- 进行插入排序
|
||||
if (func(key, ary[j]) == true) then
|
||||
arrayInsert( ary, key, j )
|
||||
done = true
|
||||
break
|
||||
end
|
||||
end
|
||||
if (done == false) then
|
||||
ary[lastUsed + 1] = key
|
||||
end
|
||||
end
|
||||
lastUsed = lastUsed + 1
|
||||
end
|
||||
|
||||
-- 定义并返回迭代器
|
||||
local i = 0
|
||||
local iter = function ()
|
||||
i = i + 1
|
||||
if ary[i] == nil then
|
||||
return nil
|
||||
else
|
||||
return ary[i], tbl[ary[i]]
|
||||
end
|
||||
end
|
||||
return iter
|
||||
end
|
||||
|
||||
local function PrintTable(tb)
|
||||
local indent_str = "{"
|
||||
local count = 0
|
||||
|
@ -100,23 +61,6 @@ local function PrintTable(tb)
|
|||
return indent_str
|
||||
end
|
||||
|
||||
|
||||
--捕获异常,并输出错误日志
|
||||
local function error( err )
|
||||
local time = string.format("%d-%d-%d-%d-%d-%d",
|
||||
os.date("%Y"),
|
||||
os.date("%m"),
|
||||
os.date("%d"),
|
||||
os.date("%H"),
|
||||
os.date("%M"),
|
||||
os.date("%S"))
|
||||
local file = io.open("luafight/LogError/"..time..".txt", "a")
|
||||
--file:write("fightData:\n"..PrintTable(_fightData).."\n")
|
||||
--file:write("optionData:\n"..PrintTable(_optionData).."\n")
|
||||
file:write("error:\n"..debug.traceback(err).."\n")
|
||||
io.close(file)
|
||||
end
|
||||
|
||||
local function generateRecordFile()
|
||||
local time = string.format("%d-%d-%d-%d-%d-%d",
|
||||
os.date("%Y"),
|
||||
|
@ -135,12 +79,13 @@ end
|
|||
|
||||
function BattleMain.Execute(args, fightData, optionData)
|
||||
_fightData = fightData
|
||||
_optionData = optionData
|
||||
_optionData = optionData or {}
|
||||
|
||||
print(PrintTable(fightData))
|
||||
--该开关用于输出战斗过程中的日志,用于验证前后端是否出现战斗不同步
|
||||
BattleLogic.IsOpenBattleRecord = false
|
||||
|
||||
local isError = false
|
||||
local errorCache
|
||||
if xpcall(function ()
|
||||
Random.SetSeed(args.seed)
|
||||
BattleLogic.Init(args.maxTime, fightData, optionData)
|
||||
|
@ -149,7 +94,10 @@ function BattleMain.Execute(args, fightData, optionData)
|
|||
while not BattleLogic.IsEnd do
|
||||
BattleLogic.Update()
|
||||
end
|
||||
end, error) then
|
||||
end, function (err)
|
||||
isError = true
|
||||
errorCache = "error:\n"..debug.traceback(err).."\n"
|
||||
end) then
|
||||
local resultList = {}
|
||||
if BattleLogic.Result == 1 then --胜利记录我方剩余血量
|
||||
local arr = BattleLogic.Query(function (r) return r.camp == 0 end, true)
|
||||
|
@ -157,7 +105,9 @@ function BattleMain.Execute(args, fightData, optionData)
|
|||
resultList[i] = arr[i]:GetRoleData(RoleDataName.Hp)
|
||||
end
|
||||
elseif BattleLogic.Result == 0 then --失败记录敌方剩余血量
|
||||
local arr = BattleLogic.Query(function (r) return r.camp == 1 end, true)
|
||||
local arr = Batt
|
||||
|
||||
leLogic.Query(function (r) return r.camp == 1 end, true)
|
||||
for i=1, #arr do
|
||||
resultList[i] = arr[i]:GetRoleData(RoleDataName.Hp)
|
||||
end
|
||||
|
@ -177,6 +127,20 @@ function BattleMain.Execute(args, fightData, optionData)
|
|||
|
||||
return resultList
|
||||
end
|
||||
if isError then --捕获异常,并输出错误日志
|
||||
local time = string.format("%d-%d-%d-%d-%d-%d",
|
||||
os.date("%Y"),
|
||||
os.date("%m"),
|
||||
os.date("%d"),
|
||||
os.date("%H"),
|
||||
os.date("%M"),
|
||||
os.date("%S"))
|
||||
local file = io.open("luafight/LogError/"..time..".txt", "a")
|
||||
file:write(errorCache)
|
||||
file:write("fightData:\n"..PrintTable(_fightData).."\n")
|
||||
file:write("optionData:\n"..PrintTable(_optionData).."\n")
|
||||
io.close(file)
|
||||
end
|
||||
return { result = -1 }
|
||||
end
|
||||
--BattleMain.Execute(1553167956, {playerData={{professionId=3,passivity={},type=1,skill={0,{40001,0.7,{1,2.3,2,},},{30011,0.7,{4,9,0.2,4,1,},{4,10,0.2,4,1,},},},superSkill={1.6,{20211,0.7,{1,3.3,2,},{15,1.98,2,1.98,},},},roleId=10022,camp=0,property={1,1676,1678,248,167,200,173,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=5,passivity={},type=1,skill={0,{40001,0.7,{11,0.93,2,2,0.2,},},},superSkill={3,{20000,0.7,{2,1.06,2,},{3,0.6,1,4,},},},roleId=10008,camp=0,property={1,2206,2208,221,193,232,130,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=4,passivity={},type=1,skill={0,{40001,0.7,{1,1.35,2,},},{30011,0.7,{3,0,0,5,},},},superSkill={2.5,{20000,0.7,{14,1.55,2,1,10023,0.2,},},},roleId=10023,camp=0,property={1,1439,1441,284,131,157,168,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=1,passivity={},type=1,skill={0,{40001,0.7,{1,1,1,},},{30011,0.7,{4,9,0.1,5,1,},{4,10,0.1,5,1,},},},superSkill={2.3,{20312,0.7,{19,1.35,1,0.5,5,},},},roleId=10013,camp=0,property={1,1678,1680,246,194,162,163,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=3,passivity={},type=1,skill={0,{40001,0.7,{1,2.3,2,},},{30011,0.7,{4,9,0.2,4,1,},{4,10,0.2,4,1,},},},superSkill={1.6,{20211,0.7,{1,3.3,2,},{15,1.98,2,1.98,},},},roleId=10022,camp=0,property={17,2732,2734,401,272,326,308,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},teamSkill={},},enemyData={{{professionId=0,passivity={},type=2,skill={0,{20013,0.7,{1,0.45,1,},},},superSkill={},roleId=1,camp=1,property={0,483,483,260,61,61,240,0,0,0.3,0.3,0.2,1.5,1,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=0,passivity={},type=2,skill={0,{20013,0.7,{1,0.45,1,},},},superSkill={},roleId=2,camp=1,property={0,483,483,260,61,61,80,0,0,0.3,0.3,0.2,1.5,1,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},{professionId=0,passivity={},type=2,skill={0,{20013,0.7,{1,0.45,1,},},},superSkill={},roleId=3,camp=1,property={0,483,483,260,61,61,7,0,0,0.3,0.3,0.2,1.5,1,0,0,0,0,0,0,0,0,0,0,0,0,},quality=1,},teamSkill={},},},})
|
||||
|
|
|
@ -37,7 +37,7 @@ public class CheckFight {
|
|||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Globals globals = JsePlatform.standardGlobals();
|
||||
Globals globals = JsePlatform.debugGlobals();
|
||||
transCoderObj = globals.loadfile(luaFileName).call();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue