手游剑侠情缘商城限时特惠修改教程1、限时特惠仅需修改服务端即可。
2、修改文件位置:“Server/ServerSetting/Activity”文件夹,“Activity.tab”文件,122行附件找到并修改“开放时间”代码如下:
- 2018-08-09-00-00-00 2019-09-05-00-00-00 ShopAct ShopAct XM:限時商品 ServerSetting/Activity/ShopActWares_XM.tab
复制代码 3、找到对应的tab文件“ShopActWares_XM.tab”
- nGoodsId nTemplateId Name nPrice nLimitNum szMoneyType szShopType nSort nDiscount szTimeFrame szCloseTimeFrame szOpenTime szCloseTime
复制代码- 6001 6020 浮光若夢盛典箱3 3980 1 SilverBoard Dress 1 2017.10.02 23:59:59
复制代码 4、以下部分与商城修改类似,可用tab编辑器等编辑,如下:
- nGoodsId // 序号
- nTemplateId // 物品id
- Name // 物品名称
- nPrice // 物品价格
- nLimitNum // 可购买数量
- szMoneyType // 货币类型
- szShopType // 商店类型
- nSort // 物品显示位置
- nDiscount // 优惠
- szOpenTime // 开放时间
- szCloseTime // 关闭时间
复制代码 5、综合上面的内容自行修改,修改后打包服务端更新到服务器重启服务端即可!
6、远程获取“限时特惠”物品参数的原理:ShopAct.lua解析
- local tbAct = Activity:GetClass("ShopAct");
- tbAct.tbTimerTrigger = { }
- tbAct.tbTrigger = { Init = { }, Start = { }, End = { }, } // init 初始化 // start 开始 //end结束
- function tbAct:OnTrigger(szTrigger)
- if szTrigger == "Init" then //如果trigger等于init的话接着做下面的事
- elseif szTrigger == "Start" then // 如果trigger等于start(开始)就开始干下面的事
- local nStartTime = self:GetOpenTimeInfo() // 获取一下Activity.tab里的开放时间
- local szName = self.tbParam[3]; //获取一下ShopActWares_XM.tab这东西,从23行开始看
- self.szName = Lib:IsEmptyStr(szName) and "限時特惠" or szName
- ShopoadActShopWare(self:GetShopWares(), nStartTime) // 检查一下开始时间
- elseif szTrigger == "End" then // 如果trigger是end的话,那么直接关掉商店
- Shop:RemoveActShopWare()
- end
- end
- unction tbAct:GetShopWares() // 从这里就直接开始获取ShopActWares_XM.tab这里面的东西了,从这个地方可以开始以url的形式或者其他方法去获取到数据类型.
- local nOutsidePackage = tonumber(self.tbParam[2]) or 0;
- local tbFile = LoadTabFile(self.tbParam[1], "ddddssddssss", "nGoodsId", {"nGoodsId","nTemplateId", "nPrice", "nLimitNum", "szMoneyType","szShopType", "nSort","nDiscount","szTimeFrame", "szCloseTimeFrame","szOpenTime", "szCloseTime"},1,nOutsidePackage);
- return tbFile;
- end
- function tbAct:GetUiData( )
- return {szName = self.szName }
- end
复制代码
|