• 注册
  • 投稿
  • 注册
  • 教程 教程 关注:19 内容:43

    传奇脚本免费分享-捡到更强的装备则向玩家提示(转载)

  • 查看作者
  • 打赏作者
  • 当前位置: 35博客圈 > 端游交流 > 教程 > 正文
    • 3
    • 教程
    • 首先,效果如下:

      传奇脚本免费分享-捡到更强的装备则向玩家提示(转载)

      优点:

      使用了热血传奇官方十周年自带ui,安全健康绿色环保(ui_n.wzl)
      具有装备位置判断,是武器就比较捡起的武器和正在使用的武器
      具有职业判断,比如角色是法师,就比较捡起的装备和地上的装备两者的魔法攻击力
      具有等级判断,如果等级太高则不弹出提示框
      具有性别判断(衣服),比如男角色捡起女衣服时不会弹出

      建议有一定脚本基础的人根据以下提示使用脚本:
      将此脚本安装于QF中,作为捡取事件[@PickUpItemEX]中的一部分
      演示图片中对话框里的图片素材需要自己调整,不会的话请自行搜索或请教他人
      演示图片中的对话框,位置是可调的,只需找到OPENMERCHANTBIGDLG语句,修改它的第五第六个参数(是X,Y的微调参数)
      脚本中使用了变量P0P1P2S0S1S2等,其实是很不建议这么做的;请在文本编辑器内使用ctrl+h,把每个变量替换成你想用的变量(建议自定义变量,比如n$捡起并比较0,S$捡起并比较0等

      请注意和其他脚本冲突的情况.比如这个脚本放在拾取鉴定脚本之后继续执行才比较合适

      扩展须知:
      此脚本只认装备的攻击力魔法力和精神力值(先看最大值再看最小值),如果想加入其他属性的比较(比如防御)…就自个看着办吧
      此脚本只认等级大小的判断,如果想加入其他判断,比如职业&等级那种…还是自个看着办吧,但比上一个简单

      以上功能是可以做到的,但脚本技术上和逻辑上稍微有些难度,,萌新可能搞不定

      脚本:

      [@PickUpItemEX]
      #act
      LINKPICKUPITEM
      mov p0 0
      GetItemFieldValue -1 needlevel p0
      GetItemFieldValue -1 need p1
      #if
      equal p1 0
      small <$Level> <$STR(P0)>
      #act
      break
      #elseact
      mov p0 0
      GetItemFieldValue -1 stdmode p0
      #if
      equal <$GENDER> 0
      equal <$STR(P0)> 10
      #act
      goto @捡物比较(0,<$Job>)
      #if
      equal <$GENDER> 1
      equal <$STR(P0)> 11
      #act
      goto @捡物比较(0,<$Job>)
      #or
      equal <$STR(P0)> 5
      equal <$STR(P0)> 6
      #act
      goto @捡物比较(1,<$Job>)
      #if
      equal <$STR(P0)> 30
      #act
      goto @捡物比较(2,<$Job>)
      #or
      equal <$STR(P0)> 19
      equal <$STR(P0)> 20
      equal <$STR(P0)> 21
      #act
      goto @捡物比较(3,<$Job>)
      #or
      equal <$STR(P0)> 15
      #act
      goto @捡物比较(4,<$Job>)
      #or
      equal <$STR(P0)> 24
      equal <$STR(P0)> 26
      #act
      goto @捡物比较(5,<$Job>)
      #or
      equal <$STR(P0)> 22
      equal <$STR(P0)> 23
      #act
      goto @捡物比较(7,<$Job>)
      #if
      equal <$STR(P0)> 25
      #act
      goto @捡物比较(9,<$Job>)
      #if
      equal <$STR(P0)> 64
      #act
      goto @捡物比较(10,<$Job>)
      #if
      equal <$STR(P0)> 62
      #act
      goto @捡物比较(11,<$Job>)
      #if
      equal <$STR(P0)> 63
      #act
      goto @捡物比较(12,<$Job>)
      [@捡物比较]
      #act
      mov p0 <$SCRIPTPARAM1>
      mov p1 <$SCRIPTPARAM2>
      #if
      equal p1 0
      #act
      mov s0 dc
      #if
      equal p1 1
      #act
      mov s0 mc
      #if
      equal p1 2
      #act
      mov s0 sc
      #if
      #act
      MOV p1 0
      mov p2 0
      GetItemFieldValue -1 h<$STR(S0)> p1
      GetItemFieldValue <$SCRIPTPARAM1> h<$STR(S0)> p2
      #if
      large p1 <$STR(P2)>
      #act
      goto @捡物对话框提示
      break
      #elseact
      GetItemFieldValue -1 1<$STR(S0)> p1
      GetItemFieldValue <$SCRIPTPARAM1> 1<$STR(S0)> p2
      #if
      large p1 <$STR(P2)>
      #act
      goto @捡物对话框提示
      break
      #or
      equal p0 5
      equal p0 7
      #act
      inc p0 1
      goto @捡物比较(<$STR(P0)>,<$Job>)
      [@捡物对话框提示]
      #act
      OPENMERCHANTBIGDLG 1 1590 0 3 -100 -250 1 380 3 0
      mov s1 无
      mov s2 无
      GetItemFieldValue -1 name_g s1
      GetUserItemName <$STR(P0)> S2
      GetItemFieldValue -1 idx p1
      clearLinkItem
      mov s0 <ItemShow:<$STR(P1)>:0:18:23:0:3>
      inc s0
      MOV S3 <ImgEx:1:1668:1669:1670:5:-25:/@捡物换装备(
      INC S3 <$STR(S1)>,<$STR(P0)>)>
      #say
      <$STR(S0)> \
            恭喜你获得更强的装备[<$STR(S1)>]\
            是否替换身上正在穿的[<$STR(S2)>]?\
                是          否\
             <$STR(S3)>    <ImgEx:1:1668:1669:1670:12:-25:/@EXIT>
      [@捡物换装备]
      #act
      close
      mov s0 <$SCRIPTPARAM1>
      mov p0 <$SCRIPTPARAM2>
      #if
      CheckItem <$STR(S0)> 1 0 1
      #act
      TakeOnItem <$STR(S0)> <$STR(p0)>
      #elseact
      sendmsg 5 你的背包里已没有此装备!

      20201215最新更新

      优化了脚本(减少变量的占用,和解除一了不必要的装备绑定状态)
      因为好多人都在给我赞,所以我受到了鼓励!
      然后就花了很多精力来优化它

      [@PickUpItemEX]
      #act
      LINKPICKUPITEM 
      mov p0 0
      GetItemFieldValue -1 needlevel p0
      GetItemFieldValue -1 need p1
      #if
      equal p1 0
      small <$Level> <$STR(P0)>
      #act
      updateitem -1
      clearLinkItem
      break
      #elseact
      mov p0 0
      GetItemFieldValue -1 stdmode p0
      #if
      equal <$GENDER> 0
      equal <$STR(P0)> 10
      #act
      goto @捡物比较(0)
      break
      #if
      equal <$GENDER> 1
      equal <$STR(P0)> 11
      #act
      goto @捡物比较(0)
      break
      #or
      equal <$STR(P0)> 5
      equal <$STR(P0)> 6
      #act
      goto @捡物比较(1)
      break
      #if
      equal <$STR(P0)> 30
      #act
      goto @捡物比较(2)
      break
      #or
      equal <$STR(P0)> 19
      equal <$STR(P0)> 20
      equal <$STR(P0)> 21
      #act
      goto @捡物比较(3)
      break
      #or
      equal <$STR(P0)> 15
      #act
      goto @捡物比较(4)
      break
      #or
      equal <$STR(P0)> 24
      equal <$STR(P0)> 26
      #act
      goto @捡物比较(5)
      break
      #or
      equal <$STR(P0)> 22
      equal <$STR(P0)> 23
      #act
      goto @捡物比较(7)
      break
      #if
      equal <$STR(P0)> 25
      #act
      goto @捡物比较(9)
      break
      #if
      equal <$STR(P0)> 64
      #act
      goto @捡物比较(10)
      break
      #if
      equal <$STR(P0)> 62
      #act
      goto @捡物比较(11)
      break
      #if
      equal <$STR(P0)> 63
      #act
      goto @捡物比较(12)
      break
      [@捡物比较]
      #act
      mov p0 <$SCRIPTPARAM1>
      #if
      equal <$Job> 0
      #act
      mov s0 dc
      #if
      equal <$Job> 1
      #act
      mov s0 mc
      #if
      equal <$Job> 2
      #act
      mov s0 sc
      #if
      #act
      MOV p1 0
      mov p2 0
      GetItemFieldValue -1 h<$STR(S0)> p1
      GetItemFieldValue <$SCRIPTPARAM1> h<$STR(S0)> p2
      #if
      large p1 <$STR(P2)>
      #act
      goto @捡物对话框提示
      break
      #elseact
      GetItemFieldValue -1 1<$STR(S0)> p3
      inc p1 <$STR(p3)>
      GetItemFieldValue <$SCRIPTPARAM1> 1<$STR(S0)> p3
      inc p2 <$STR(p3)>
      #if
      large p1 <$STR(P2)>
      #act
      goto @捡物对话框提示
      break
      #or
      equal p0 5
      equal p0 7
      #act
      inc p0 1
      goto @捡物比较(<$STR(P0)>)
      #elseact
      updateitem -1
      clearLinkItem
      [@捡物对话框提示]
      #act
      OPENMERCHANTBIGDLG 1 1590 0 3 -100 -250 1 380 3 0
      mov s1 无
      mov s2 无
      GetItemFieldValue -1 name_g s1
      GetUserItemName <$STR(P0)> S2
      GetItemFieldValue -1 idx p1
      updateitem -1
      clearLinkItem
      mov s0 <ItemShow:<$STR(P1)>:0:18:23:0:3>
      inc s0 
      MOV S3 <ImgEx:1:1668:1669:1670:5:-25:/@捡物换装备(
      INC S3 <$STR(S1)>,<$STR(P0)>)>
      #say
      <$STR(S0)> \
            恭喜你获得新装备[<$STR(S1)>]\
            是否替换身上的[<$STR(S2)>]?\
                是          否\
             <$STR(S3)>    <ImgEx:1:1668:1669:1670:12:-25:/@EXIT>
      [@捡物换装备]
      #act
      close
      mov s0 <$SCRIPTPARAM1>
      mov p0 <$SCRIPTPARAM2>
      #if
      CheckItem <$STR(S0)> 1 0 1
      #act
      TakeOnItem <$STR(S0)> <$STR(p0)>
      #elseact
      sendmsg 5 你的背包里已没有此装备!

      楼主辛苦了,谢谢楼主,楼主好人一生平安!

      回复

      楼主辛苦了,谢谢楼主,楼主好人一生平安!

      回复
      lv1

      楼主辛苦了,谢谢楼主,楼主好人一生平安!

      回复

      请登录之后再进行评论

      登录
      赞助商广告
      招租100元一个月,PC移动端同步,在首页和帖子页面展示, 带用户点击任务!
    • 做任务
    • 管理
    • 偏好设置
    • 到底部
    • 帖子间隔 侧栏位置: