登录
×
  • 首页
  • 传奇论坛
  • 传奇版本库
  • 传奇服务端
  • 传奇三端手游
  • 传奇素材网
  • 传奇客户端
  • 下载排行
  • 获取邀请码
  • 搜索
    传奇素材网
    122801

    [铁血引擎] 铁血引擎装备加星、打孔及镶嵌,传奇一条龙镶嵌的宝石属性教程

     火... [复制链接]

    [铁血引擎] 铁血引擎装备加星、打孔及镶嵌,传奇一条龙镶嵌的宝石属性教程

     火... [复制链接]
    趣游论坛

    1万

    主题

    17

    回帖

    11万

    积分

    管理员

    积分
    112338

    灌水之王活跃会员突出贡献优秀版主荣誉管理论坛元老

    趣游论坛 2019-7-20 07:23:33 / 显示全部楼层 /阅读模式
    122801
    20190720071100.png


    注意:
      1.镶嵌的宝石,属性:AC2=攻击伤害增加, MAC2=物理伤害减少,DC2=魔法伤害减少,MC2=忽视目标防御,SC2=攻击伤害反弹

    框内物品破碎命令:DestroyItem


    镶嵌宝石拆除命令:DisDiamond 位置
    参数1: 位置为身上装备位置
    拆解装备上的镶嵌宝石,注意装备必须戴在身上

    1. 脚本:
    UPDATEITEMWIN
    格式:UPDATEITEMWIN N
    功能:打开装备升级界面
    说明:类型N=1 表示加星界面 N=2表示打孔界面 N=3表示镶嵌界面


    MAKEHOLESUCC:打孔成功
    ADDSTARSUCCESS: 加星成功

    DiamondSucc
    格式:DiamondSucc 孔号 宝石名
    功能:把宝石镶嵌在装备上



    UpdateItemToBag
    格式:UpdateItemToBag 位置(0~2)
    功能:将指定位置的升级物品返回到背包
    说明:0=装备位置
    1~5=五个孔的位置

    DELSTAR:
    格式:DELSTAR 要删的数量
    功能:删除升级装备的星星

    CHANGEITEMVALUE
    格式:ChangeItemValue 位置 操作符(+/-/=) 值
    功能:修改升级物品的属性,位置与极品属性设置一样

    UPDATEEND
    格式:UpdateEnd
    功能:标志升级动作完成。加在@StartUpdate触发段的最后执行

    CanUpdate
    格式: CanUpdate 变量
    功能:检测装备是否还有空孔
    说明:如果有空孔,返回空的孔位到指定的变量

    CHANGEITEMADDVALUE
    格式:ChangeItemAddValue 孔位 类型 操作符(+/-/=) 值
    功能:修改升级物品的特殊属性
    说明:类型=1,表示麻痹属性;=2表示复活属性,=3表示护身属性,=4表示防麻属性,=5表示破护身属性,=6表示破复活属性

    说明:类型=7,表示多倍攻击;=8表示冰冻攻击,=9表示防冰冻攻击
    值表示各种属性的机率

    CHANGEITEMVALUE
    格式:ChangeItemValue 位置 操作符(+/-/=) 值
    功能:修改升级物品的属性,位置与极品属性设置一样

    RandomEx 参数一 参数二

    参数一 变量值
    参数二 随机值

    功能 随机一个数值 赋值到 参数一的变量里

    CHECKITEMADDVALUE
    CHECKITEMADDVALUE 999 附加属性(0..28) (>,<,=,?) 数量
    当装备位置等于999时代表检测加星框内装备的附加属性
    功能:检测框内附加属性 查看装备位置及属性代码


    CHECKITEMADDVALUE
    GetAddStartItem 附加属性(0..28) 变量(支持D,N)
    功能获取框内指定属性值 查看装备位置及属性代码


    2. 触发
    当在五个孔里放入物品时,触发:QF中的@AddUpdateDiamond段,
    其中:S99=物品名
    D99=物品的Stdmode
    D98=物品的Shape
    D97=物品的AniCount
    D96=物品的Source
    D95=物品的Duramax
    D94=物品的Need
    D93=物品的NeedLevel
    D92=孔位序号

    当从五个孔里取出物品时,触发:QF中的@DelUpdateDiamond段,
    其中:S99=物品名
    D99=物品的Stdmode
    D98=物品的Shape
    D97=物品的AniCount
    D96=物品的Source
    D95=物品的Duramax
    D94=物品的Need
    D93=物品的NeedLevel
    D92=孔位序号

    当放入装备时,触发:QF中的@AddUpdateItem段,
    其中:S99=物品名
    D99=物品的Stdmode
    D98=物品的Shape
    D97=物品的AniCount
    D96=物品的Source
    D95=物品的Duramax
    D94=物品的Need
    D93=物品的NeedLevel
    D92=物品的星星数
    D91=物品打孔数量
    N999=物品的AC
    N998=物品的AC2
    N997=物品的MAC
    N996=物品的MAC2
    N995=物品的DC
    N994=物品的DC2
    N993=物品的MC
    N992=物品的MC2
    N991=物品的SC
    N990=物品的SC2
    N989=物品的HP
    N988=物品的MP
    N987=物品的AddDamage
    N986=物品的DelDamage
    N985=物品的HitPoint
    N984=物品的SpeedPoint
    N983=物品的HitSpeed
    N982=物品的AntiMagic
    N981=物品的PoisonMagic
    N980=物品的Strong
    N979=物品的Luck
    N978=物品的Color
    N977=物品的CC
    N976=物品的CC2
    N975=物品的JC
    N974=物品的JC2
    N973=物品的GC
    N972=物品的GC2

    当拿走装备时,触发:QF中的@DelUpdateItem段,
    其中:S99=物品名
    D99=物品的Stdmode
    D98=物品的Shape
    D97=物品的AniCount
    D96=物品的Source
    D95=物品的Duramax
    D94=物品的Need
    D93=物品的NeedLevel
    D92=物品的星星数
    D91=物品打孔数量
    N999=物品的AC
    N998=物品的AC2
    N997=物品的MAC
    N996=物品的MAC2
    N995=物品的DC
    N994=物品的DC2
    N993=物品的MC
    N992=物品的MC2
    N991=物品的SC
    N990=物品的SC2
    N989=物品的HP
    N988=物品的MP
    N987=物品的AddDamage
    N986=物品的DelDamage
    N985=物品的HitPoint
    N984=物品的SpeedPoint
    N983=物品的HitSpeed
    N982=物品的AntiMagic
    N981=物品的PoisonMagic
    N980=物品的Strong
    N979=物品的Luck
    N978=物品的Color
    N977=物品的CC
    N976=物品的CC2
    N975=物品的JC
    N974=物品的JC2
    N973=物品的GC
    N972=物品的GC2

    点击开始按钮后,触发:QF中的@StartUpdate段。

    =============================================================================================================

    [@main]

    <加星/@123(1)>\
    <打孔/@123(2)>\
    <镶嵌/@123(3)>


    ;装备加星,打孔,镶嵌======================================
    [@123()]
    #IF
    #ACT
    UPDATEITEMWIN <$ARG(1)>
    ;D1变表保存升级类型
    MOV D1 <$ARG(1)>
    MOV D2 0
    MOV D3 0
    MOV D4 0
    MOV D5 0
    MOV D6 0

    ;==========================================================

    ;以下是QF中的触发段

    ;放入装备时触发-------------------------------
    [@AddUpdateItem]
    ;检测放入的物品是否属于可升级装备
    #IF
    !Equal D99 5
    !Equal D99 6
    #ACT
    GuildNoticeMsg 11 254 该物品不能升级,请放入武器类装备! Self
    UpdateItemToBag 0
    break

    #IF
    Equal D1 1
    #ACT
    Goto @加星_放入装备
    break

    #IF
    Equal D1 2
    #Act
    Goto @打孔_放入装备
    break

    #IF
    Equal D1 3
    #Act
    Goto @镶嵌_放入装备
    break

    [@加星_放入装备]
    ;检测星星数量是否大于或等于10,如果小于10,则将D2变量设为1,表示装备升级类型是加星
    #IF
    !Small D92 10
    #Act

    GuildNoticeMsg 11 254 星星数量已达上限! Self
    UpdateItemToBag 0
    break
    #ElseAct
    MOV D2 1

    [@打孔_放入装备]
    ;检测孔数是否小于3,如果小于3,则将D2变量设为2,表示装备升级类型是打孔
    #IF
    !Small D91 3
    #Act
    GuildNoticeMsg 11 254 装备孔数已达上限! Self
    UpdateItemToBag 0
    break
    #ElseAct
    MOV D2 2

    [@镶嵌_放入装备]
    ;检测星星数量是否大于或等于10,如果小于10,则将D2变量设为3,表示装备升级类型是镶嵌
    #IF
    !CanUpdate D10
    #Act
    GuildNoticeMsg 11 254 没有孔位可以镶嵌! Self
    UpdateItemToBag 0
    break
    #ElseAct
    MOV D2 3

    ;放入材料时触发---------------------------------------
    [@AddUpdateDiamond]
    #IF
    Equal D2 1
    Equal D92 1
    #ACT
    Goto @加星_放入主材
    break

    #IF
    Equal D2 1
    Equal D92 2
    #ACT
    Goto @加星_放入辅材
    break

    #IF
    Equal D2 2
    Equal D92 1
    #ACT
    Goto @打孔_放入主材
    break

    #IF
    Equal D2 2
    Equal D92 2
    #ACT
    Goto @打孔_放入辅材
    break

    #IF
    Equal D2 3
    Equal D92 1
    #ACT
    Goto @镶嵌_放入主材
    break

    #IF
    Equal D2 3
    Equal D92 2
    #ACT
    Goto @镶嵌_放入辅材
    break

    [@加星_放入主材]
    ;检测加星的宝石类型是不是指定的类型,这里举例用100,当然也可以设成其他的值,只要不与数据库的其他装备冲突

    #IF
    !Equal D99 100
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的加星宝石! Self
    UpdateItemToBag 1
    break
    #ELSEACT
    ;D3变量用来表示已经放入宝石
    MOV D3 1
    ;D4变量保存宝石的shape值,用作升级成功时,增加装备的属性值,这里也可以指定其他字段
    MOV D4 <$STR(D98)>


    [@加星_放入辅材]
    ;检测辅材的类型
    #IF
    !Equal D99 101
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的辅助材料! Self
    UpdateItemToBag 2
    break
    #ELSEACT
    MOV D5 1 ;D5变量,用来表示已经放入辅材
    MOV D6 <$STR(D98)> ;D6变量,用来记录成功率,这里用辅格的shape字段来表示成功率,也可以改成其他字段

    [@打孔_放入主材]
    ;检测打孔的宝石类型是不是指定的类型,这里举例用102,当然也可以设成其他的值,只要不与数据库的其他装备冲突
    #IF
    !Equal D99 102
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的打孔宝石! Self
    UpdateItemToBag 1
    break
    #ELSEACT
    ;D3变量用来表示已经放入宝石
    MOV D3 1

    [@打孔_放入辅材]
    ;检测辅材的类型
    #IF
    !Equal D99 101
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的辅助材料! Self
    UpdateItemToBag 2
    break
    #ELSEACT
    MOV D5 1 ;D5变量,用来表示已经放入辅材
    MOV D6 <$STR(D98)> ;D6变量,用来记录成功率,这里用辅格的shape字段来表示成功率,也可以改成其他字段

    [@镶嵌_放入主材]
    ;检测打孔的宝石类型是不是指定的类型,这里举例用103,当然也可以设成其他的值,只要不与数据库的其他装备冲突
    #IF
    !Equal D99 103
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的镶嵌宝石! Self
    UpdateItemToBag 1
    break
    #ELSEACT
    ;D3变量用来表示已经放入宝石
    MOV D3 1
    MOV D4 <$STR(D98)> ;D4变量用来保存shape值,这里表示要镶嵌宝石增加的特殊属性类型
    MOV D5 <$STR(D97)> ;D5变量用来保存AniCount值,这里表示要镶嵌宝石的特殊属性机率
    MOV S1 <$STR(S99)> ;S1变量保存要镶嵌的宝石名

    [@镶嵌_放入辅材]
    ;检测辅材的类型
    #IF
    !Equal D99 101
    #ACT
    GuildNoticeMsg 11 254 请放入指定类型的辅助材料! Self
    UpdateItemToBag 2
    break
    #ELSEACT
    MOV D6 1 ;D6变量,用来表示已经放入辅材
    MOV D7 <$STR(D98)> ;D7变量,用来记录成功率,这里用辅格的shape字段来表示成功率,也可以改成其他字段

    ;取走材料时触发------------------------------
    [@DelUpdateDiamond]
    #IF
    Equal D2 1
    Equal D92 1
    #ACT
    Goto @加星_取下主材
    break

    #IF
    Equal D2 1
    Equal D92 2
    #ACT
    Goto @加星_取下辅材
    break

    #IF
    Equal D2 2
    Equal D92 1
    #ACT
    Goto @打孔_取下主材
    break

    #IF
    Equal D2 2
    Equal D92 2
    #ACT
    Goto @打孔_取下辅材
    break

    #IF
    Equal D2 3
    Equal D92 1
    #ACT
    Goto @镶嵌_取下主材
    break

    #IF
    Equal D2 3
    Equal D92 2
    #ACT
    Goto @镶嵌_取下辅材
    break

    [@加星_取下主材]
    #IF
    #ACT
    MOV D3 0
    MOV D4 0

    [@加星_取下辅材]
    #IF
    #ACT
    MOV D5 0
    MOV D6 0

    [@打孔_取下主材]
    #IF
    #ACT
    MOV D3 0

    [@打孔_取下辅材]
    #IF
    #ACT
    MOV D5 0
    MOV D6 0

    [@镶嵌_取下主材]
    #IF
    #ACT
    MOV D3 0
    MOV D4 0
    MOV D5 0


    [@镶嵌_取下辅材]
    #IF
    #ACT
    MOV D7 0
    MOV D6 0

    ;按下开始按钮触发--------------------------------
    [@StartUpdate]
    #IF
    Equal D2 1
    #ACT
    Goto @加星
    break

    #IF
    Equal D2 2
    #Act
    Goto @打孔
    break

    #IF
    Equal D2 3
    #Act
    Goto @镶嵌


    [@加星]
    #IF
    Equal D3 1
    Equal D5 1
    #ACT
    RandomEx D7 100

    #IF
    Small D7 <$STR(D6)>
    #Act
    ADDSTARSUCCESS
    CHANGEITEMVALUE 0 + <$STR(D4)>
    GuildNoticeMsg 11 254 加星成功! Self
    UPDATEEND
    UpdateItemToBag 0
    #ELSEACT
    GuildNoticeMsg 11 254 加星失败! Self
    UPDATEEND

    [@打孔]
    #IF
    Equal D3 1
    Equal D5 1
    #ACT
    RandomEx D7 100

    #IF
    Small D7 <$STR(D6)>
    #Act
    MAKEHOLESUCC
    GuildNoticeMsg 11 254 打孔成功! Self
    UPDATEEND
    UpdateItemToBag 0
    #ELSEACT
    GuildNoticeMsg 11 254 打孔失败! Self
    UPDATEEND

    [@镶嵌]
    #IF
    Equal D3 1
    Equal D6 1
    #ACT
    RandomEx D8 100

    #IF
    Small D8 <$STR(D7)>
    #Act
    DiamondSucc <$STR(D10)> <$STR(S1)>
    ChangeItemAddValue <$STR(D10)> <$STR(D4)> = <$STR(D5)>
    GuildNoticeMsg 11 254 镶嵌成功<$STR(D10)>_<$STR(S1)>! Self
    UPDATEEND
    UpdateItemToBag 0
    #ELSEACT
    GuildNoticeMsg 11 254 镶嵌失败! Self
    UPDATEEND
    ;==========================================================

    回复

    使用道具 举报

    mowei1111

    0

    主题

    21

    回帖

    78

    积分

    注册用户

    积分
    78
    mowei1111 2024-11-4 14:21:25 / 显示全部楼层
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫一扫加群沟通交流

    首页 论坛 !mobpost! 最新 我的