TXT数据库原始代码:
--**********************************
--读取珍兽数据
--**********************************
function LuaFnGetPetDataBase(sceneId,selfId,hid,nid)
--珍兽数据库
--max is 17
--1 珍兽装备1 装备资质1 装备资质2
--2 珍兽装备2 装备资质1 装备资质2
--3 珍兽装备3 装备资质1 装备资质2
--4 珍兽装备4 装备资质1 装备资质2
--5 珍兽装备5 装备资质1 装备资质2
--6 珍兽进阶经验
--7 珍兽是否炼制过血利子或使用过
--8 珍兽进阶力量
--9 珍兽进阶灵气
--10 珍兽进阶身法
--11 珍兽进阶体力
--12 珍兽进阶定力
--13 珍兽融合度
--14 珍兽灵性 -1未幻化 0+ 幻化
--15 珍兽幻灵index
--16 原有外观数据
--17 幻灵前的外观数据
local handle = openfile("./"..GMDATA_TXT.."/PetSystem/PetDataBase/"..tostring(nid)..".txt", "r")
local nPetData = {}
if handle and nil ~= handle then
local nLineData = ""
for i = 1,17 do
nLineData = read(handle, "*l")
if nLineData == nil then
nLineData = 0 --这里防止异常错误
end
--珍兽装备数据
if i >= 1 and i <= 5 then
local pos1,pos2,nEquipID,nEquipAdpt_1,nEquipAdpt_2 = strfind(nLineData,"(.*)\t(.*)\t(.*)")
if pos1 ~= nil and pos2 ~=nil then
nPetData[i] = {tonumber(nEquipID),tonumber(nEquipAdpt_1),tonumber(nEquipAdpt_2)}
else
nPetData[i] = {0,0,0}
end
else
--其他额外数据
nPetData[i] = tonumber(nLineData);
end
end
closefile(handle)
else
for i = 1,17 do
if i >= 1 and i <= 5 then
nPetData[i] = {0,0,0}
elseif i == 14 then
nPetData[i] = -1
else
nPetData[i] = 0
end
end
end
--重置数据
return nPetData
end
|