Blue引擎新INI功能示范脚本,全服自定义排行榜.INI; INI内容如下: [鲜花] ;全服自定义排行榜.INI=文件;[鲜花]=节 ;BLUEM2 =键 ;100=值 BLUEM2=100 网易=100 百度=100 如果手动修改INI内容后,请使用命令,INI_RELOAD 文件 //重新加载文件,可以用于手动修改了文本文件的情况下。 示例脚本:以下脚本只是演示,请GM自行完善 注:脚本使用的是S1-S20 M1-M20的个人变量,如果你的版本里有,请自行修改。 [@MAIN] <排序鲜花的排名(名字+数值)/@GET> <排序鲜花的排名(名字)/@GETEX>\\ <检查鲜花的排名(名字)/@GET1>\\ <清理鲜花数据/@INI_CLEAR_SECTION>\\ <关闭/@EXIT > [@GET1] #IF EQUAL S1 <$USERNAME> #ACT MESSAGEBOX 目前你排名第一。 BREAK #IF EQUAL S2 <$USERNAME> #ACT MESSAGEBOX 目前你排名第二。 BREAK #IF EQUAL S3 <$USERNAME> #ACT MESSAGEBOX 目前你排名第三。 BREAK #IF EQUAL S4 <$USERNAME> #ACT MESSAGEBOX 目前你排名第四。 BREAK #IF EQUAL S5 <$USERNAME> #ACT MESSAGEBOX 目前你排名第五。 BREAK #IF EQUAL S6 <$USERNAME> #ACT MESSAGEBOX 目前你排名第六。 BREAK #IF EQUAL S7 <$USERNAME> #ACT MESSAGEBOX 目前你排名第七。 BREAK #IF EQUAL S8 <$USERNAME> #ACT MESSAGEBOX 目前你排名第八。 BREAK #IF EQUAL S9 <$USERNAME> #ACT MESSAGEBOX 目前你排名第九。 BREAK #IF EQUAL S10 <$USERNAME> #ACT MESSAGEBOX 目前你排名第十。 BREAK #ELSEACT MESSAGEBOX 榜上无名,请再接再厉。 BREAK [@INI_CLEAR_SECTION] #IF CHECKLEVELEX > 0 #ACT INI_CLEAR_SECTION ..\QUESTDIARY\功能脚本\全服自定义排行榜.INI 鲜花 INI_SAVE ..\QUESTDIARY\功能脚本\全服自定义排行榜.INI INI_SORT_DELETE INI_排名__鲜花_IV SENDMSG 5 清楚鲜花数据成功。 [@GET] #IF CHECKLEVELEX > 0 #ACT INI_SORT_READ_SECTION_VALUES ..\QUESTDIARY\功能脚本\全服自定义排行榜.INI 鲜花 1 1 1 INI_排名__鲜花_IV 0 INI_SORT_SECTION_VALUES_COUNT INI_排名__鲜花_IV D0 ;SENDMSG 5 获取到排行数据:<$STR(D0)>条 #IF LARGE D0 1 #ACT INI_SORT_GET_SECTION_STRING INI_排名__鲜花_IV S0 ;;P0用于限制最多的排名次数 MOV P0 1 ;;S92用于累计排名,#ELSESAY的显示调用 MOV S92 SENDMSG 5 正在计算排名,请稍后。。。 DELAYGOTO 1 @GETIDENTVALUELOOP #ELSEACT MESSAGEBOX 目前没有数据。 BREAK ;按顺序获取排行字符串(IDENT_VALUE)到S1~S20 [@GETIDENTVALUELOOP] #IF LARGE D0 1 SMALL P0 10 #ACT MOV S90 S INC S90 <$STR(P0)> INC S92 <COLOR=CLYELLOW> INC S92 INC S92 <$STR(P0)>、 INC S92 <COLOR=$F7FFFF> INI_SORT_GET_IDENT_VALUE_STRING INI_排名__鲜花_IV <$STR(P0)> <$STR(S90)> MOV S91 <$STR(S INC S91 <$STR(P0)> INC S91 )> INC S92 <$STR(S91)> INC S92 \ ;SENDMSG 5 排名<$STR(P0)>:<$STR(S91)> DEC D0 1 INC P0 1 DELAYGOTO 1 @GETIDENTVALUELOOP #SAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ACT BREAK #IF LARGE D0 1 LARGE P0 9 SMALL P0 21 #ACT MOV S90 S INC S90 <$STR(P0)> INC S92 <COLOR=CLYELLOW> INC S92 <$STR(P0)>、 INC S92 <COLOR=$F7FFFF> INI_SORT_GET_IDENT_VALUE_STRING INI_排名__鲜花_IV <$STR(P0)> <$STR(S90)> MOV S91 <$STR(S INC S91 <$STR(P0)> INC S91 )> INC S92 <$STR(S91)> INC S92 \ ;SENDMSG 5 排名<$STR(P0)>:<$STR(S91)> DEC D0 1 INC P0 1 DELAYGOTO 1 @GETIDENTVALUELOOP #SAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ELSESAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ELSEACT SENDMSG 5 鲜花排名完毕。 BREAK [@GETEX] #IF CHECKLEVELEX > 0 #ACT INI_RELOAD ..\QUESTDIARY\功能脚本\全服自定义排行榜.INI INI_SORT_READ_SECTION_VALUES ..\QUESTDIARY\功能脚本\全服自定义排行榜.INI 鲜花 1 1 1 INI_排名__鲜花_IVEX 0 INI_SORT_SECTION_VALUES_COUNT INI_排名__鲜花_IVEX D0 ;SENDMSG 5 获取鲜花排行数据:<$STR(D0)>条 #IF LARGE D0 1 #ACT INI_SORT_GET_SECTION_STRING INI_排名__鲜花_IVEX S0 ;;P0用于限制最多的排名次数 MOV P0 1 ;;S92用于累计排名,#ELSESAY的显示调用 MOV S92 SENDMSG 5 正在计算排名,请稍后。。。 DELAYGOTO 1 @GETIDENTVALUELOOPEX BREAK #ELSEACT MESSAGEBOX 目前没有数据。 BREAK ;按顺序获取排行,分别获取IDENT和VALUE到S1~S20 [@GETIDENTVALUELOOPEX] #IF LARGE D0 1 SMALL P0 10 #ACT MOV S90 S INC S90 <$STR(P0)> MOV S95 M INC S95 <$STR(P0)> INC S92 <COLOR=CLYELLOW> INC S92 INC S92 <$STR(P0)>、 INC S92 <COLOR=$F7FFFF> INI_SORT_GET_IDENT_STRING INI_排名__鲜花_IVEX <$STR(P0)> <$STR(S90)> INI_SORT_GET_VALUE_INTEGER INI_排名__鲜花_IVEX <$STR(P0)> <$STR(S95)> MOV S91 <$STR(S INC S91 <$STR(P0)> INC S91 )> MOV S93 <$STR(M INC S93 <$STR(P0)> INC S93 )> INC S92 <$STR(S91)> INC S92 " " INC S92 " 鲜花数:" INC S92 <$STR(S93)> INC S92 " " INC S92 \ ;;SENDMSG 5 排名<$STR(P0)>:<$STR(S91)> DEC D0 1 INC P0 1 DELAYGOTO 1 @GETIDENTVALUELOOPEX #SAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ACT BREAK #IF LARGE D0 1 LARGE P0 9 SMALL P0 23 #ACT MOV S90 S INC S90 <$STR(P0)> MOV S95 M INC S95 <$STR(P0)> INC S92 <COLOR=CLYELLOW> INC S92 <$STR(P0)>、 INC S92 <COLOR=$F7FFFF>< /FONT> INI_SORT_GET_IDENT_STRING INI_排名__鲜花_IVEX <$STR(P0)> <$STR(S90)> INI_SORT_GET_VALUE_INTEGER INI_排名__鲜花_IVEX <$STR(P0)> <$STR(S95)> MOV S91 <$STR(S INC S91 <$STR(P0)> INC S91 )> MOV S93 <$STR(M INC S93 <$STR(P0)> INC S93 )> INC S92 <$STR(S91)> INC S92 " " INC S92 " 鲜花数:" INC S92 <$STR(S93)> INC S92 " " INC S92 \ ;;SENDMSG 5 排名<$STR(P0)>:<$STR(S91)> DEC D0 1 INC P0 1 DELAYGOTO 1 @GETIDENTVALUELOOPEX #SAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ELSESAY <$STR(S0)>的当前排名是:\ <$STR(S92)>\ <关闭/@EXIT> #ELSEACT SENDMSG 5 鲜花排名完毕。 BREAK |