天龙八部元宝兑换代码
分享下天龍八部元寶兌換代碼,端的話大家自行網上找,看代碼:
--領CD-KEY、查詢點數、購買元寶
x888899_g_scriptId = PRIZE_SCRIPT_ID
x888899_g_prizeGems = {
50101001,
50101002,
50102001,
50102002,
50102003,
50102004,
50103001,
50104002,
50111001,
50111002,
50112001,
50112002,
50112003,
50112004,
50113001,
50113002,
50113003,
50113004,
50113005,
50114001
};
-- 檢查 CDKey
function x888899_AskCDKey( sceneId, selfId )
GetCharPrize( sceneId, selfId, 1, 980,0,0 ) --領CD-KEY (980是CD-KEY在Billing的物品類型)end
-- 檢查 財富卡
function x888899_AskNewUserCard( sceneId, selfId, card, op)
NewUserCard( sceneId, selfId, card, op) --領財富卡/體育競猜卡 (card是卡號字符串)end
-- 購買 元寶
function x888899_AskYuanBao( sceneId, selfId, nYuanBao, nPoint )
GetCharPrize(sceneId,selfId,3,999,nYuanBao,nPoint); --買nYuanBao個共nPoint點的元寶end
-- 查詢 點數
function x888899_AskPoint( sceneId, selfId )
GetCharPrize(sceneId,selfId,2,0,0,0); --查詢人物點數end
-- 抽獎
function x888899_AskPrize( sceneId, selfId )
GetCharPrize(sceneId,selfId,6,0,0,0); --先查詢人物獎品end
-- 檢查 CDKey 的返回回調函數
-- ntype 請參考 enum PRIZE_TYPE_ENUM
function x888899_PrizeRet( sceneId, selfId, ntype, nserial, num )
-- 另外,這里沒有 targetId,不知道寫 -1 會不會有問題
end
-- 抽獎成功后給玩家提示信息
function x888899_PrizeRetEnd( sceneId, selfId, retId )
if retId and retId == 15 thenx888899_NotifyFailBox( sceneId, selfId, -1, " 恭喜您成功領取了活動獎勵,請查收。" ) elseif( retId == 12 ) thenx888899_NotifyFailBox( sceneId, selfId, -1, " 恭喜您成功領取了活動獎勵,請查收。" ) endend
-- 新手卡或體育抽獎卡檢查
function x888899_OpenCard(sceneId,selfId,card)
if nil == card then return end --PrintStr(card) local targetId = -1 local firstbyte = strbyte(card) --'k' 體育卡 if 107 == firstbyte thenif GetMissionFlag( sceneId, selfId, MF_ActiveSportsCard ) == 1 thenx888899_NotifyFailBox( sceneId, selfId, targetId, " 你已經領取過活動獎勵,不能重復領取。" )returnend --'t' 新手卡 elseif 116 == firstbyte or 115 == firstbyte thenif GetMissionFlag( sceneId, selfId, MF_ActiveNewUserCard ) == 1 thenx888899_NotifyFailBox( sceneId, selfId, targetId, " 你已經激活過財富卡,無法再次激活領取條件。" )returnend elseif 99 == firstbyte thenif GetMissionFlag( sceneId, selfId, MF_ActiveNewUserCard666 ) == 1 thenx888899_NotifyFailBox( sceneId, selfId, targetId, " 你已經啟動過超級大力卡,無法再次啟動領取條件。" )returnend endx888899_AskNewUserCard( sceneId, selfId, card, 0)end
-- 購買 元寶 的返回回調函數
-- ntype 請參考 enum PRIZE_TYPE_ENUM
-- 1 代表 OPT_YUANBAO_ADD 增加元寶
function x888899_BuyRet( sceneId, selfId, ntype, nYuanBao, nLeftPoint )
if( 2 == ntype ) then --開始檢測點數是否為0if nYuanBao==0 thenBeginEvent(sceneId)strText = "您的點數不足,請充值后在試!"AddText(sceneId,strText)EndEvent(sceneId)DispatchMissionTips(sceneId,selfId)return end --結束檢測點數是否為0--開始判斷兌換比例后贈點總值是否大于2億 ------下面代碼中數值100000是您的兌換比例,如果1:10萬贈點就寫10000,1:20萬就寫200000local zd=nYuanBao*100000 ------下面代碼中ZengDian是檢測贈點總值,如果你是賣元寶,可修改為YuanBaolocal cxzd=YuanBao(sceneId,selfId,targetId,3)--local cxzd=ZengDian(sceneId,selfId,targetId,3)if zd+cxzd>200000000 thenBeginEvent(sceneId)strText = "兌換失敗,兌換元寶的值超過系統上限2億,請使用一部分后再兌換!"AddText(sceneId,strText)EndEvent(sceneId)DispatchMissionTips(sceneId,selfId)return end --結束判斷兌換比例后贈點總值是否大于2億--local mg=nYuanBao*2--local t_mg=mg--local nMenpaiPoint=GetHumanMenpaiPoint(sceneId, selfId)--mg=mg+nMenpaiPoint--SetHumanMenpaiPoint(sceneId, selfId, mg)------下面代碼中ZengDian給予兌換贈點,如果您是賣元寶,更換為YuanBao的即可YuanBao(sceneId,selfId,targetId,1,zd)--ZengDian(sceneId,selfId,targetId,1,zd)BeginEvent(sceneId)strText = "您成功的兌換了"..tostring(zd).."點元寶!"AddText(sceneId,strText)EndEvent(sceneId)DispatchMissionTips(sceneId,selfId)local nam = LuaFnGetName( sceneId, selfId )BroadMsgByChatPipe( sceneId, selfId, "#P恭喜玩家#W["..nam.."]#P,在#G洛陽(164.99)處,#P在線充值后兌換了#Y["..zd.."]#P元寶!", 4 )local newljcz=GetMissionData( sceneId, selfId, LEIJICHONGZHI )+zdSetMissionData(sceneId, selfId, LEIJICHONGZHI, newljcz)--CallScriptFunction( 181000, "OnDefaultEvent", sceneId, selfId, targetId) end -- local zd=nYuanBao*100000 --獲取點數 和比例的結果-- -- 另外,這里沒有 targetId,不知道寫 -1 會不會有問題
-- local targetId = -1 -- if( 2 == ntype ) then-- YuanBao(sceneId,selfId,targetId,1,zd)--在線兌換元寶-- --ZengDian(sceneId,selfId,targetId,1,zd)--在線兌換元寶-- --BuyYuanBaoCount(sceneId,selfId,targetId,1,zd)-- ----------------------------------------------------- --local menpaipoint = GetHumanMenpaiPoint(sceneId, selfId) --在線兌換門牌貢獻-- --SetHumanMenpaiPoint(sceneId, selfId, menpaipoint + zd)-- ---------------------------------------------------- --x888899_NotifyLeftPoint(sceneId,selfId,nLeftPoint)-- --給客戶端提示信息-- local strText = ""-- BeginEvent(sceneId)-- strText = "您成功的兌換了"..tostring(zd).."點贈點。"-- AddText(sceneId,strText)-- EndEvent(sceneId)-- DispatchMissionTips(sceneId,selfId)-- str="#e660066#gFFFF00 系統查詢到您已充值了 "..nYuanBao.." 元,現已為你成功轉換成 "..zd.." 點贈點,感謝您的支持,祝您游戲愉快!"-- BeginEvent(sceneId) -- AddText(sceneId, str) -- EndEvent(sceneId)-- DispatchEventList(sceneId,selfId,targetId)-- LuaFnMsg2Player( sceneId, selfId,strText,MSG2PLAYER_PARA)-- local nam = LuaFnGetName( sceneId, selfId )-- BroadMsgByChatPipe( sceneId, selfId, "#e660066#gFFFF00恭喜 【"..nam.."】 ,通過在線充值領取系統領取了 【"..zd.."】 點充值的贈點,一代牛人即刻誕生!", 4 ) -- endend
-- 查詢點數 的返回回調函數
function x888899_PointRet( sceneId, selfId, nLeftPoint )
x888899_NotifyLeftPoint(sceneId,selfId,nLeftPoint)end
-- 檢查獎品 開始的回調函數
function x888899_CheckRetBegin(sceneId,selfId)
LuaFnBeginAddItem( sceneId )end
-- 檢查獎品 添加檢查物品的回調函數
function x888899_CheckAddItem(sceneId,selfId,itemid,num)
LuaFnAddItem( sceneId, itemid, num)end
-- 檢查獎品 結束的回調函數
function x888899_CheckRetEnd(sceneId,selfId)
local ret = LuaFnEndAddItem( sceneId, selfId ) if 1 == ret then--檢查成功,開始抽獎x888899_NotifyFailBox( sceneId, selfId, -1, " 檢查成功,請稍等……正在領取獎品。" )GetCharPrize(sceneId,selfId,4,0,0,0); --查詢人物現在擁有的獎品 elsex888899_NotifyFailBox( sceneId, selfId, -1, " 對不起,您沒有足夠的物品欄空間,請整理后再來領取。" ) endend
-- 卡片檢查獎品 結束的回調函數
function x888899_CardCheckRetEnd(sceneId,selfId)
local ret = LuaFnEndAddItem( sceneId, selfId ) if 1 == ret then--檢查成功,開始開卡x888899_NotifyFailBox( sceneId, selfId, -1, " 檢查成功,請稍等……正在領取獎品。" )x888899_AskNewUserCard( sceneId, selfId, "MagicString", 1); elsex888899_NotifyFailBox( sceneId, selfId, -1, " 對不起,您沒有足夠的物品欄空間,請整理后再來領取。" ) endend
-- 卡片檢查獎品 結束的回調函數,對天使禮包放出做特殊日志 By Vega 20090121
function x888899_CardCheckRetEndTSLB(sceneId,selfId)
local ret = LuaFnEndAddItem( sceneId, selfId ) if 1 == ret then--檢查成功,開始開卡x888899_NotifyFailBox( sceneId, selfId, -1, " 檢查成功,請稍等……正在領取獎品。" )x888899_AskNewUserCard( sceneId, selfId, "MagicString", 1);local guid = LuaFnObjId2Guid(sceneId, selfId);if guid ~= nil then--local LogInfo = format("0X%08X,", guid);ScriptGlobal_AuditGeneralLog(LUAAUDIT_TSLBOUT, guid);end elsex888899_NotifyFailBox( sceneId, selfId, -1, " 對不起,您沒有足夠的物品欄空間,請整理后再來領取。" ) endend
-- 檢查 CDKey 的出錯返回回調函數
function x888899_PrizeRetErr( sceneId, selfId, retId )
--enum UserPrizeResult
--{
-- UPR_SUCCESS, //抽獎信息成功
-- UPR_ASKPOINT_SUCCESS, //查詢點數成功
-- UPR_ASKBUY_SUCCESS, //購買成功
-- UPR_ERR_NO_PRIZE, //沒有中獎
-- UPR_ERR_PRE_REQUEST, //正在處理上次的請求信息
-- UPR_ERR_PRIZE_BUSY, //等待處理的領獎信息過多
-- UPR_ERR_TIME_OUT, //處理領獎信息超時
-- UPR_ERR_EXPIRE_PRIZE, //獎品過期
-- UPR_ERR_CANT_NOW, //現在不能處理抽獎請求
-- UPR_ERR_NOENOUGH_POINT, //點數不足
-- UPR_ERR_GOODSCODE_ERR, //物品代碼錯誤
-- UPR_ERR_ALREADYGET_PRIZE, //已經領獎
-- UPR_NEWUSERCARD_SUCCESS, //財富卡成功
-- UPR_ERR_WRONGCARDNUMBER, //卡號錯誤
-- UPR_ERR_OTHERUSERUSE, //其他人已經使用
-- };
end
-- 對話窗口信息提示
function x888899_NotifyFailBox( sceneId, selfId, targetId, msg )
BeginEvent( sceneId )AddText( sceneId, msg ) EndEvent( sceneId ) DispatchEventList( sceneId, selfId, targetId )end
-- 通知客戶端剩余點數
function x888899_NotifyLeftPoint(sceneId,selfId,nLeftPoint)
BeginUICommand( sceneId )UICommand_AddInt( sceneId, nLeftPoint) EndUICommand( sceneId ) DispatchUICommand( sceneId, selfId, 2003 )end
-- 體育競猜卡隨機獲得獎品
function x888899_GetSportsPrize()
local total = getn(SPORTS_CARD_PRIZE) if total and total >= 1 thenlocal idx = random(1,total)return SPORTS_CARD_PRIZE[idx] elsereturn nil endend
整個代碼全在這里了,有興趣的朋友可以一起來討論。
總結:天龍八部元寶兌換代碼要看懂的話得會lua腳本語言,這游戲腳本都是這語言寫的,可以找個端回來本地架設看看效果。
總結
以上是生活随笔為你收集整理的天龙八部元宝兑换代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VSCode + xUnit 编写 C#
- 下一篇: ios 开发控件中心点_AppCan