设为首页收藏本站
开启辅助访问 天气与日历 切换到宽版

传世资源-传世版本-传世单机-传世服务端-传世社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 231|回复: 0

[彩虹脚本] 彩虹引擎镶嵌宝石示例脚本

[复制链接]

438

主题

60

回帖

546

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
546
    发表于 2023-11-9 23:22:34 | 显示全部楼层 |阅读模式
    经典模式宝石系统示例:
    [@main]
    家族中从上古流传下的宝石工艺我直到最近才熟练掌握。\
    勇士,请问你需要什么帮助?\
    <宝石淬炼/@@GemRefreshSkill>\
    <宝石镶嵌/@@ItemOpenSlot>\
    <宝石炼化/@@GemUpgrade>\
    <宝石摘除/@@ItemDelGem>\
    [@@GemRefreshSkill]
    #IF
    TRUE
    #ACT
    UPGRADEUSERITEM $PARAM(0) 82 = $PARAM(1)

    [@@ItemOpenSlot]
    #IF
    EQUAL $PARAM(0) 0
    #ACT
    Goto @物品开孔
    #ELSEACT
    Goto @物品镶嵌

    [@物品开孔]
    #IFONE
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 5
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 6
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 10
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 11
    #ACT
    SENDMSG 5 武器和衣服不能镶嵌宝石
    break
    #IF
    LARGE $ITEMINFO[$PARAM(1)].MAXHOLE 1
    !LARGE $ITEMINFO[$PARAM(1)].MAXHOLE $ITEMINFO[$PARAM(1)].HOLECOUNT
    #ACT
    SENDMSG 5 孔位不可以开孔<$ITEMINFO[$PARAM(1)].GEM(0).HOLE>
    Break
    #IF
    EQUAL $ITEMINFO[$PARAM(1)].GEM[2].HOLE 0
    #ACT
    UPGRADEUSERITEM $PARAM(1) 167 2 1
    Break
    #IF
    EQUAL $ITEMINFO[$PARAM(1)].GEM[3].HOLE 0
    #ACT
    UPGRADEUSERITEM $PARAM(1) 167 3 1
    Break
    #IF
    EQUAL $ITEMINFO[$PARAM(1)].GEM[4].HOLE 0
    #ACT
    UPGRADEUSERITEM $PARAM(1) 167 4 1
    Break
    #IF
    EQUAL $ITEMINFO[$PARAM(1)].GEM[5].HOLE 0
    #ACT
    UPGRADEUSERITEM $PARAM(1) 167 5 1
    Break
    #IF
    TRUE
    #ACT
    SENDMSG 5 没有孔了
    Break

    [@物品镶嵌]
    #IFONE
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 5
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 6
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 10
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 11
    #ACT
    SENDMSG 5 武器和衣服不能镶嵌宝石
    break
    #IF
    TRUE
    #ACT
    MOV P0 $ITEMINFO[$PARAM(2)].SHAPE
    #IF
    EQUAL $ITEMINFO[$PARAM(2)].STDMODE 125
    LARGE P0 0
    EQUAL $ITEMINFO[$PARAM(1)].GEM[$STR(P0)].HOLE 1
    #ACT
    UPGRADEUSERITEM $PARAM(1) 167 $STR(P0) 2 $ITEMINFO[$PARAM(2)].ITEMEXT(81) $ITEMINFO[$PARAM(2)].ITEMEXT(82)
    TAKEM $PARAM(2)
    break
    #IF
    #ACT
    SENDMSG 5 <$ITEMINFO[$PARAM(2)].STDMODE>
    Break

    [@@GemUpgrade]
    #IF
    EQUAL $PARAM(0) 0
    #ACT
    Goto @宝石炼化
    #ELSEACT
    MOV P0 2
    Goto @转换源力


    [@转换源力]
    #IF
    EQUAL $ITEMINFO[$PARAM($STR(P0))].STDMODE 125
    LARGE $ITEMINFO[$PARAM($STR(P0))].SHAPE 0
    LARGE $PARAM(1) $STR(P0) -2
    SMALL P0 33
    #ACT
    CHANGGEMSOURCE $ITEMINFO[$PARAM($STR(P0))].SHAPE + 100
    SENDMSG 5 <$STR(P0)>
    TakeM $PARAM($STR(P0))
    INC P0 1
    Goto @转换源力
    break
    #ELSEACT
    SENDMSG 5 没有成功
    Break
    [@宝石炼化]
    #IF
    EQUAL $ITEMINFO[$PARAM(1)].STDMODE 125
    LARGE $ITEMINFO[$PARAM(1)].SHAPE 0
    #ACT
    UPGRADEUSERITEM $PARAM(1) 81 + 1
    CHANGGEMSOURCE $ITEMINFO[$PARAM(1)].SHAPE + 100
    break
    [@@ItemDelGem]
    #IF
    !EQUAL $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].HOLE 2
    #ACT
    Break
    #IF
    EQUAL $PARAM(1) 1
    #ACT
    GIVE 翡翠玉石 1
    UPGRADEUSERITEM $PARAM(10) 81 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].LV
    UPGRADEUSERITEM $PARAM(10) 82 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].MAG
    UPGRADEUSERITEM $PARAM(0) 167 $PARAM(1) 1
    Break
    #IF
    EQUAL $PARAM(1) 2
    #ACT
    GIVE 沧蓝晶石 1
    UPGRADEUSERITEM $PARAM(10) 81 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].LV
    UPGRADEUSERITEM $PARAM(10) 82 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].MAG
    UPGRADEUSERITEM $PARAM(0) 167 $PARAM(1) 1
    Break
    #IF
    EQUAL $PARAM(1) 3
    #ACT
    GIVE 紫魂锆石 1
    UPGRADEUSERITEM $PARAM(10) 81 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].LV
    UPGRADEUSERITEM $PARAM(10) 82 = $ITEMINFO[$PARAM(0)].GEM[$PARAM(1)].MAG
    UPGRADEUSERITEM $PARAM(0) 167 $PARAM(1) 1
    Break



    回复

    使用道具 举报

    快速回复 返回顶部 返回列表