当前位置 : 主页>技术研究>传奇技术>

非常实用的自助换卡系统脚本

来源: 作者: 点击:
;用户可以自定义此文件,但是在写的时候请注意凡是操作文本类的都不要修改 改了将会报错

(@@InPutString @@InPutInteger)
[@main]
#if
EQUAL M80 0
#act
var string human 我的序列号
var string human 生成序列号
var string human 兑换序列号
MOV M80 1

#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#act
MOV M50 0
;这里是兑换的比例,你可以更具自己的改 这里是4:1的比例 改成5 就是 5:1
MOV M51 4
MOV M52 0
MOV M53 0
MOV M54 0
MOV S50
MOV S51
MOV S53
MOV S54
MOV M50 <$GAMEGOLD>
DIV M52 <$STR(M50)> <$STR(M51)>
#elseact
messagebox 此功能未开启,请联系管理员!
break


#if
checklevelex > 0
#act
loadvar human 我的序列号 ..QuestDiaryQQ188078766制作自助换卡系统玩家卡号记录.txt
loadvar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt
loadvar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt
goto @检测是否未领取
#say
< 本服独家研制开发/SCOLOR=19><『私服界牛比功能』/SCOLOR=253><玩家自主换各区元宝/SCOLOR=19>
< 如果老区玩腻了想玩新区,可以在我这里自行兑换元宝卡号!/SCOLOR=19>
< 兑换好元宝卡后,用系统给你的卡号可以在任意区兑换元宝/SCOLOR=19>

<「/SCOLOR=254><无需要客服操作/SCOLOR=250><」/SCOLOR=254> <「/SCOLOR=254><一切玩家自主完成/SCOLOR=250><」/SCOLOR=254> <「/SCOLOR=254><长期玩家的福音/SCOLOR=250><」/SCOLOR=254>

< 兑换比例:/SCOLOR=19> <4:1 /SCOLOR=253> <比如此区1万元宝兑换到其他区就是2500元宝/SCOLOR=254>

 [<元宝兑换卡号/@自由兑换>] [<卡号兑换元宝/@@InPutString50>] [<查询我的卡号/@我的卡号>]


[@我的卡号]

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><我的卡号/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
   只显示最后一次成功兑换的记录,请玩家自行保存
   序列号:<$HUMAN(我的序列号)>
   显示到聊天框中后可进行复制 [ <显示到聊天框/@发送到聊天框>]
   [ <返回首页/@main> ]         [ <关闭窗口/@exit> ]

[@发送到聊天框]
#if
checkvar human 我的序列号 =
#act
messagebox 你还没有兑换过序列号!
#elseact
GuildNoticeMsg 255 0 =============================================================== Self
GuildNoticeMsg 255 0 点我可复制序列号[<$HUMAN(我的序列号)>] Self
GuildNoticeMsg 255 0 =============================================================== Self


[@自由兑换]
#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#say

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><自由兑换/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
   <兑换比例:/SCOLOR=31>{<$STR(M51)>:1/SCOLOR=150} <( 您一共可兑换/SCOLOR=31>{<$STR(M52)>/SCOLOR=150}<元宝 )/SCOLOR=31>
   <功能介绍:/SCOLOR=31><此功能将输入的元宝转换成点卡,可/SCOLOR=31>
        <在其他区兑换成元宝,元宝按照一定/SCOLOR=31>
        <比例兑换/SCOLOR=31>
        [ <输入元宝/@@InPutInteger52> ]  [ <返回首页/@main> ]

#elseact
messagebox 此功能未开启,请联系管理员!

[@CallInPutInteger52]
#if
LARGE N52 999
#elseact
messagebox     少于1000元宝无法兑换!
close
break

#if
checkgamegold ? <$STR(N52)>
#act
DIV M52 <$STR(N52)> <$STR(M51)>
#say

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><自由兑换/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
    您输入了<$STR(N52)>个元宝,您一共可换<$STR(M52)>个元宝
      [ <确定兑换/@确定兑换_自由> ]   [ <取消兑换/@exit> ]

#elseact
messagebox 您没有<$STR(N52)>个元宝,无法进行兑换!

[@全额兑换1]
#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#act
MOV M50 <$GAMEGOLD>
DIV M52 <$STR(M50)> <$STR(M51)>
#say

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><全额兑换/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
   <兑换比例:/SCOLOR=31>{<$STR(M51)>:1/SCOLOR=150} <( 您一共可兑换/SCOLOR=31>{<$STR(M52)>/SCOLOR=150}<元宝 )/SCOLOR=31>
   <功能介绍:/SCOLOR=31><此功能可将您的元宝转换为点卡,可/SCOLOR=31>
        <在其他区兑换成元宝,元宝按照一定/SCOLOR=31>
        <比例兑换,兑换后本身元宝清空!/SCOLOR=31>
        [ <确定兑换/@换卡> ]  [ <我要兑换/@@InPutString50> ]
#elseact
messagebox 此功能未开启,请联系管理员!


[@全额兑换]
#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#elseact
messagebox 此功能未开启,请联系管理员!
close
break

#if
checkgamegold ? 1000
#act
MOV M50 <$GAMEGOLD>
DIV M52 <$STR(M50)> <$STR(M51)>
#say

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><自助换卡/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
    您一共拥有<$GAMEGOLD>元宝,您一共可换<$STR(M52)>个元宝
      [ <确定兑换/@确定兑换_全额> ]   [ <取消兑换/@exit> ]
#elseact
messagebox 少于1000元宝无法兑换!
close
break


[@确定兑换_全额]
#if
checkgamegold ? 1000
#elseact
messagebox 少于1000元宝无法兑换!
close
break

#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#act
MOV M50 <$GAMEGOLD>
DIV M52 <$STR(M50)> <$STR(M51)>
goto @开始兑换
#elseact
messagebox 此功能未开启,请联系管理员!
close
break


[@确定兑换_自由]
#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#elseact
messagebox 此功能未开启,请联系管理员!
close
break

#if
checkgamegold ? <$STR(N52)>
#elseact
messagebox 请勿使用非法手段获取本服元宝!
close
break


#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#act
MOV M50 <$STR(N52)>
DIV M52 <$STR(N52)> <$STR(M51)>
goto @开始兑换
#elseact
messagebox 此功能未开启,请联系管理员!
close
break


[@开始兑换]
#if
checklevelex > 0
#say
请稍后,系统正在算号中,请勿关闭窗口…………
#act
AddTextList .QuestDiaryQQ188078766制作自助换卡系统命令检测.txt <$USERNAME>:<$STR(M52)>:算号
goto @算号中_1


[@算号中_1]
#if
checklevelex > 0
#act
loadvar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt


#if
checkvar human 生成序列号 = 算号失败
#act
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt
messagebox 算号失败,请稍后在重试,这种问题可能是同时算号的人数太多造成!!
close
break

#if
checkvar human 生成序列号 = 连接失败
#act
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt
messagebox 算号失败,请联系管理员开启此服务!!
close
break


#if
checkvar human 生成序列号 =
#act
DelayCall 500 @算号中_1
#elseact
gamegold - <$STR(M50)>
MOV S50 <$HUMAN(生成序列号)>
calcvar human 我的序列号 = <$STR(S50)>
savevar human 我的序列号 ..QuestDiaryQQ188078766制作自助换卡系统玩家卡号记录.txt
GuildNoticeMsg 255 0 算号成功您的系列号可兑换<$STR(M52)>个元宝 Self
GuildNoticeMsg 255 0 =============================================================== Self
GuildNoticeMsg 255 0 序列号[<$STR(S50)>]此号可兑换[<$STR(M52)>]元宝 Self
GuildNoticeMsg 255 0 =============================================================== Self
AddTextList .QuestDiaryQQ188078766制作自助换卡系统玩家算号记录.txt [<$DATETIME>]玩家[<$USERNAME>]使用[<$STR(M50)>]元宝兑换序列号[<$STR(S50)>]此号可换[<$STR(M52)>]元宝
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt
#elsesay

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><自助换卡/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
  您的序列号已经发放,请妥善保管,如果丢失不予找回
    序列号:<$STR(S50)>
  <点聊天框中的序列号可以复制/@发送到> 请尽快使用您的序列号

[@发送到]
#if
checklevelex > 0
#act
GuildNoticeMsg 255 0 =============================================================== Self
GuildNoticeMsg 255 0 序列号[<$STR(S50)>]此号可兑换[<$STR(M52)>]元宝 Self
GuildNoticeMsg 255 0 =============================================================== Self

;以下为兑换卡号
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[@CallInPutString50]
您输入的序列号为:<$STR(S50)>

#if
checktextlist .QuestDiaryQQ188078766制作自助换卡系统运行状态.txt 启动
#act
MOV S54
MOV M54 0
AddTextList .QuestDiaryQQ188078766制作自助换卡系统命令检测.txt <$USERNAME>:<$STR(S50)>:兑换
goto @换卡中_1
#say
正在查询序列号,请稍后………
#elseact
messagebox 服务尚未启动,请联系管理员开启此功能!!


[@换卡中_1]
#if
checklevelex > 0
#act
loadvar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt

#if
checkvar human 兑换序列号 = 连接失败
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt
messagebox 兑换失败,请联系管理员开启此服务!!
close
break

#if
checkvar human 兑换序列号 = 请重试
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt
messagebox 兑换失败,请稍后再试,此问题可能是过多玩家一起兑换序列号造成!
close
break


#if
checkvar human 兑换序列号 = 卡号不存在
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt
messagebox 兑换失败,您输入的序列号不存在或已被使用,请核对后尝试重新输入!!
close
break

#if
checkvar human 兑换序列号 =
#act
DelayCall 500 @换卡中_1
#elseact
MOV M54 <$HUMAN(兑换序列号)>
GameGold + <$STR(M54)>
AddTextList .QuestDiaryQQ188078766制作自助换卡系统玩家兑卡记录.txt [<$DATETIME>]玩家[<$USERNAME>]使用序列号[<$STR(S50)>]兑换[<$STR(M54)>]元宝
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt
messagebox 恭喜您成功兑换了[<$STR(M54)>]个元宝!
sendmsg 1 恭喜玩家[%s]使用自助元宝转区系统从其他区成功转入本区[<$STR(M54)>]元宝!!
#elsesay

 <┅┅∽┅┅∽┅┅∽┅/SCOLOR=151><〖/SCOLOR=19><兑换成功/SCOLOR=145><〗/SCOLOR=19><┅∽┅┅∽┅┅∽┅┅/SCOLOR=151>
  恭喜您成功使用序列号兑换元宝,以下为您的兑换信息
     序列号:<$STR(S50)>
     元宝数:<$STR(M54)>
 
  <您当前所拥有的元宝总数为:【/SCOLOR=250>{<$GAMEGOLD>/SCOLOR=253}<】/SCOLOR=250>


[@诏告全服]
#if
LARGE M54 1
#act
sendmsg 1 恭喜玩家[%s]使用自助元宝转区系统成功获得[<$STR(M54)>]元宝!!
goto @main
#elseact
goto @main

;此方法主要检测玩家是否已经兑换成功但是却为领取,一般造成这类情况是玩家意外掉线
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[@检测是否未领取]
#if
checkvar human 生成序列号 = 算号失败
#act
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt

#if
checkvar human 生成序列号 = 连接失败
#act
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt


#if
checkvar human 生成序列号 =
#elseact
GuildNoticeMsg 255 0 系统:由于您上次的意外造成未获取到序列号的情况,现在将序列号补发 Self
GuildNoticeMsg 255 0 =============================================================== Self
GuildNoticeMsg 255 0 补发上次的序列号[<$HUMAN(生成序列号)>] Self
GuildNoticeMsg 255 0 =============================================================== Self
calcvar human 我的序列号 = <$HUMAN(生成序列号)>
savevar human 我的序列号 ..QuestDiaryQQ188078766制作自助换卡系统玩家卡号记录.txt
calcvar human 生成序列号 =
savevar human 生成序列号 ..QuestDiaryQQ188078766制作自助换卡系统算号临时文本.txt


;兑换序列号 处理
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
#if
checkvar human 兑换序列号 = 连接失败
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt

#if
checkvar human 兑换序列号 = 请重试
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt

#if
checkvar human 兑换序列号 = 卡号不存在
#act
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt

#if
checkvar human 兑换序列号 =
#elseact
MOV M55 <$HUMAN(兑换序列号)>
gamegold + <$STR(M55)>
GuildNoticeMsg 255 0 系统:由于您上次的意外造成兑换了序列号但是未得到元宝,现在已补发 Self
GuildNoticeMsg 255 0 =============================================================== Self
GuildNoticeMsg 255 0 已补发您的元宝:[<$HUMAN(兑换序列号)>]元宝 Self
GuildNoticeMsg 255 0 =============================================================== Self
calcvar human 兑换序列号 =
savevar human 兑换序列号 ..QuestDiaryQQ188078766制作自助换卡系统兑换临时文本.txt

[@IsInFilterList]
#if
checklevelex > 0
#ACT
MESSAGEBOX 输入数据中包含了非法字符,请重新编辑!
栏目列表