[@main]
#IF
CHECKLEVELEX > 0
#ACT
#CALL [鉴定加星鉴定使者.txt] @装备重鉴
Break
[@装备重鉴]
{
#IF
CHECKLEVELEX > 0
#ACT
OPENMERCHANTBIGDLG 9 318 1 0 1 1 1 430 12
#SAY
<本服装备自带星位,装备层次越好星位越多,极品鉴定属性也就越强!/SCOLOR=254>
<七个星位的装备可以鉴定满七星,八个星位装备可以八星,可以十三星!/SCOLOR=253>
<如果您对装备极品属性不满意,那就重新鉴定吧! → →/SCOLOR=250>
<请把需要重新鉴定放入右边的鉴定框内 → → → →/SCOLOR=249>
<ITEMBOX:6:0:47:370:-33:30:30:*:请放入要重新洗炼的装备>
<装备重鉴需要10000元宝/SCOLOR=255> <【/SCOLOR=249><前往重新洗炼/@开始重新洗炼><】/SCOLOR=249>
#ACT
BREAK
[@ItemIntoBox6]
#IF
CHECKLEVELEX > 0
#ACT
SetUpgradeItem 6
GETITEMADDVALUE -1 11 <$STR(N$加星数量)>
#OR
CHECKCUSTOMITEMVALUE -1 0 > 0
CHECKCUSTOMITEMVALUE -1 1 > 0
CHECKCUSTOMITEMVALUE -1 2 > 0
CHECKCUSTOMITEMVALUE -1 3 > 0
CHECKCUSTOMITEMVALUE -1 4 > 0
CHECKCUSTOMITEMVALUE -1 5 > 0
CHECKCUSTOMITEMVALUE -1 6 > 0
CHECKCUSTOMITEMVALUE -1 7 > 0
CHECKCUSTOMITEMVALUE -1 8 > 0
CHECKCUSTOMITEMVALUE -1 9 > 0
#ELSEACT
MESSAGEBOX 提 示:你的装备【<$BOXITEM[6].NAME>】还未鉴定,不能重新鉴定!
UpDateBoxItem 6
ReturnBoxItem 6
BREAK
#OR
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级8级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级9级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级 级装备.txt <$BOXITEM[6].NAME>
#ELSEACT
MESSAGEBOX 提 示:你的装备【<$BOXITEM[6].NAME>】无法鉴定!
UpDateBoxItem 6
ReturnBoxItem 6
BREAK
;#IF
;EQUAL N$加星数量 13
;#ACT
;MESSAGEBOX 提 示:你的装备【<$BOXITEM[6].NAME>】已达到13星,无需重新鉴定!
;UpDateBoxItem 6
;ReturnBoxItem 6
;BREAK
;—————————————————————————–
[@开始重新洗炼]
#IF
EQUAL P10 1
#ACT
SENDMSG 5 〖提示〗操作太过频繁….
Break
#IF
CHECKLEVELEX > 0
#ACT
SetUpgradeItem 6
GETITEMADDVALUE -1 11 <$STR(N$加星数量)>
#IF
Not CheckBoxItemCount 6
#ACT
MESSAGEBOX 提 示:请将需要重鉴的装备放入框中!
Break
;#IF
;EQUAL N$加星数量 13
;#ACT
;MESSAGEBOX 提 示:你的装备【<$BOXITEM[6].NAME>】已达到13星,无需重新鉴定!
;UpDateBoxItem 6
;ReturnBoxItem 6
;BREAK
#OR
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级8级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级9级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级级装备.txt <$BOXITEM[6].NAME>
CheckTextlist ..QuestDiary鉴定加星装备分级 级装备.txt <$BOXITEM[6].NAME>
#ELSEACT
MESSAGEBOX 提 示:你的装备【<$BOXITEM[6].NAME>】无法鉴定!
ReturnBoxItem 6
BREAK
#IF
CHECKGAMEGOLD < 10000
#ACT
MESSAGEBOX 提 示:你的元宝不足[10000颗]无法重鉴!
Break
#IF
CHECKGAMEGOLD > 9999
#ACT
GameGold – 10000
SetUpgradeItem 6
CHANGEITEMUPGRADECOUNT -1 = 0
CHANGECUSTOMITEMTEXT -1 [鉴定属性]:
CHANGECUSTOMITEMTEXTColor -1 146
CHANGECUSTOMITEMABIL -1 1 0 0
CHANGECUSTOMITEMABIL -1 2 0 0
CHANGECUSTOMITEMABIL -1 3 0 0
CHANGECUSTOMITEMABIL -1 4 0 0
CHANGECUSTOMITEMABIL -1 5 0 0
CHANGECUSTOMITEMABIL -1 6 0 0
CHANGECUSTOMITEMABIL -1 7 0 0
CHANGECUSTOMITEMABIL -1 1 1 3
CHANGECUSTOMITEMABIL -1 2 1 4
CHANGECUSTOMITEMABIL -1 3 1 5
CHANGECUSTOMITEMABIL -1 4 1 6
CHANGECUSTOMITEMABIL -1 5 1 7
CHANGECUSTOMITEMABIL -1 6 1 8
CHANGECUSTOMITEMABIL -1 7 1 9
CHANGECUSTOMITEMABIL -1 1 2 1
CHANGECUSTOMITEMABIL -1 2 2 2
CHANGECUSTOMITEMABIL -1 3 2 3
CHANGECUSTOMITEMABIL -1 4 2 4
CHANGECUSTOMITEMABIL -1 5 2 5
CHANGECUSTOMITEMABIL -1 6 2 6
CHANGECUSTOMITEMABIL -1 7 2 7
CHANGECUSTOMITEMABIL -1 1 3 1
CHANGECUSTOMITEMABIL -1 2 3 1
CHANGECUSTOMITEMABIL -1 3 3 1
CHANGECUSTOMITEMABIL -1 4 3 1
CHANGECUSTOMITEMABIL -1 5 3 1
CHANGECUSTOMITEMABIL -1 6 3 0
CHANGECUSTOMITEMABIL -1 7 3 0
CHANGECUSTOMITEMVALUE -1 1 = 0
CHANGECUSTOMITEMVALUE -1 2 = 0
CHANGECUSTOMITEMVALUE -1 3 = 0
CHANGECUSTOMITEMVALUE -1 4 = 0
CHANGECUSTOMITEMVALUE -1 5 = 0
CHANGECUSTOMITEMVALUE -1 6 = 0
CHANGECUSTOMITEMVALUE -1 7 = 0
CHANGEITEMADDVALUE -1 0 = 0
CHANGEITEMADDVALUE -1 1 = 0
CHANGEITEMADDVALUE -1 2 = 0
CHANGEITEMADDVALUE -1 3 = 0
CHANGEITEMADDVALUE -1 4 = 0
CHANGEITEMADDVALUE -1 11 = 0
MOV S$鉴定位置 -1
MOV S$当前鉴定名称 <$BOXITEM[6].NAME>
#CALL [鉴定加星鉴定几率.txt] @几率设置
#OR
CompareText <$BOXITEM[6].STDMODE> 15
CompareText <$BOXITEM[6].STDMODE> 16
CompareText <$BOXITEM[6].STDMODE> 19
CompareText <$BOXITEM[6].STDMODE> 22
CompareText <$BOXITEM[6].STDMODE> 24
CompareText <$BOXITEM[6].STDMODE> 26
CompareText <$BOXITEM[6].STDMODE> 28
CompareText <$BOXITEM[6].STDMODE> 30
CompareText <$BOXITEM[6].STDMODE> 51
CompareText <$BOXITEM[6].STDMODE> 62
CompareText <$BOXITEM[6].STDMODE> 63
CompareText <$BOXITEM[6].STDMODE> 64
CompareText <$BOXITEM[6].STDMODE> 65
CompareText <$BOXITEM[6].STDMODE> 48
#ACT
MOV S$弹窗提示 开启
#CALL [鉴定加星鉴定分类首饰鉴定.txt] @首饰鉴定
UpDateBoxItem 6
Break
#OR
CompareText <$BOXITEM[6].STDMODE> 10
CompareText <$BOXITEM[6].STDMODE> 11
CompareText <$BOXITEM[6].STDMODE> 66
CompareText <$BOXITEM[6].STDMODE> 67
#ACT
MOV S$弹窗提示 开启
#CALL [鉴定加星鉴定分类衣服鉴定.txt] @衣服鉴定
UpDateBoxItem 6
Break
#IF
CompareText <$BOXITEM[6].STDMODE> 5
#ACT
MOV S$弹窗提示 开启
#CALL [鉴定加星鉴定分类武器鉴定.txt] @武器鉴定
UpDateBoxItem 6
Break
}
一. 前提条件
熟悉MMORPG服务端开发基础知识,如网络模型、进程管理、数据库操作、多线程编程等。
了解《传奇》游戏的基本机制,包括装备属性、装备等级、装备品质、装备强化、装备镶嵌等。
具备C++编程能力,并且精通相关开发工具和开发环境。
二. 脚本设计
确定重鉴目标:明确需要实现的装备重鉴功能,例如重鉴装备属性、重鉴装备等级、重鉴装备品质、重鉴装备强化、重鉴装备镶嵌等。
确定重鉴规则:明确重鉴规则,例如重鉴时是否保留原有属性、是否保留原有等级、是否保留原有品质、是否保留原有强化、是否保留原有镶嵌等。
确定重鉴接口:明确重鉴接口,例如通过什么方式触发重鉴,例如通过命令行、通过游戏内的NPC、通过在线客服等。
三. 脚本编写
创建重鉴函数:根据确定的重鉴规则,编写重鉴函数,该函数主要完成以下功能:
检查重鉴条件:判断装备是否符合重鉴条件,例如装备是否达到重鉴最高级,或者是否满足特定的条件。
计算重鉴属性:根据确定的重鉴规则,计算重鉴后装备的属性、等级、品质、强化、镶嵌等。
更新重鉴记录:将重鉴信息更新到数据库中,例如更新装备表、属性表、等级表、品质表、强化表、镶嵌表等。
创建重鉴接口:根据确定的重鉴接口,编写重鉴接口,该接口主要完成以下功能:
接收重鉴请求:接收来自客户端或其他接口的重鉴请求,例如通过命令行、通过游戏内的NPC、通过在线客服等。
验证重鉴请求:验证重鉴请求的合法性,例如检查请求是否来自合法的用户,检查请求参数是否完整,检查请求的装备是否存在等。
调用重鉴函数:调用前面创建的重鉴函数,完成重鉴操作。
返回重鉴结果:返回重鉴结果给客户端或其他接口,例如返回成功或失败信息,返回重鉴后装备的属性、等级、品质、强化、镶嵌等。
四. 脚本测试
创建测试用例:根据确定的重鉴规则,创建测试用例,包括正确的测试用例和错误的测试用例。
执行测试用例:执行测试用例,检查脚本是否符合预期结果,例如检查重鉴函数是否能正确计算重鉴属性,检查重鉴接口是否能正确接收和处理重鉴请求。
修复 bug:如果测试用例不通过,需要修复 bug,直到所有测试用例通过为止。
五. 脚本部署
集成到服务端:将脚本集成到服务端代码中,并通过构建和打包工具生成可执行文件。
部署到服务器:将可执行文件部署到服务器上,并启动服务端进程。
监控服务端状态:通过监控工具或手动方式监控服务端状态,例如检查服务端是否正常运行,检查服务端日志是否正常输出。